DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
API compatibility

C general purpose library (libgen) interfaces

The C general purpose library (/usr/ccs/lib/libgen.a) is documented on the Section 3G manual pages.

Binary compatibility for the libgen interfaces and data structures is guaranteed for:

There are a number of differences between the SCO OpenServer and UnixWare implementations of libgen that impact source compatibility. These are noted in the table below.

Name of Interface Legacy compatibility UDK compatibility
Compiled using SCO OpenServer DevSys Compiled using SCO UnixWare 2.1.X SDK Compiled using UnixWare 7 UDK
Library Name Works on UnixWare 7? Library Name Works on UnixWare 7? Library Name Works on SCO OpenServer? Works on SCO UnixWare 2.1.X?
advance libgen Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
basename libgen Yes libgen Yes libgen Yes Yes
bgets libgen Yes libgen Yes libgen Yes Yes
bufsplit libgen Yes libgen Yes libgen Yes Yes
closelog libsocket Yes libgen Yes libgen
libc
Yes Yes
compile libgen Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
copylist libgen Yes libgen Yes libgen Yes Yes
crypt libgen Yes libgen Yes libgen Yes Yes
dirname libgen Yes libgen Yes libgen Yes Yes
eaccess libc Yes libgen Yes libgen Yes; notes. Yes; notes.
encrypt libgen Yes libgen Yes libgen Yes Yes
endspent libgen Yes libgen Yes libgen Yes Yes
endutent libc Yes libgen
libc89.a
Yes libc Yes Yes
endutxent libgen Yes libgen Yes libgen Yes Yes
fgetspent libgen Yes libgen Yes libgen Yes; notes. Yes

Name of Interface Legacy compatibility UDK compatibility
Compiled using SCO OpenServer DevSys Compiled using SCO UnixWare 2.1.X SDK Compiled using UnixWare 7 UDK
Library Name Works on UnixWare 7? Library Name Works on UnixWare 7? Library Name Works on SCO OpenServer? Works on SCO UnixWare 2.1.X?
getmntany -- -- libgen Yes libgen Yes; notes. Yes
getmntent -- -- libgen Yes libgen Yes; notes. Yes
getspent libgen Yes libgen Yes libgen Yes; notes. Yes
getspnam libgen Yes libgen Yes libgen Yes; notes. Yes
getutent libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
getutid libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
getutline libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
getutmp libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes

Name of Interface Legacy compatibility UDK compatibility
Compiled using SCO OpenServer DevSys Compiled using SCO UnixWare 2.1.X SDK Compiled using UnixWare 7 UDK
Library Name Works on UnixWare 7? Library Name Works on UnixWare 7? Library Name Works on SCO OpenServer? Works on SCO UnixWare 2.1.X?
getutmpx libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
getutxent libgen Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
getutxid libgen Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
getutxline libgen Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
getvfsany -- -- libgen Yes libgen -- Yes
getvfsent -- -- libgen Yes libgen -- Yes
getvfsfile -- -- libgen Yes libgen -- Yes
getvfsspec -- -- libgen Yes libgen -- Yes
gmatch libgen Yes libgen Yes libgen Yes Yes

Name of Interface Legacy compatibility UDK compatibility
Compiled using SCO OpenServer DevSys Compiled using SCO UnixWare 2.1.X SDK Compiled using UnixWare 7 UDK
Library Name Works on UnixWare 7? Library Name Works on UnixWare 7? Library Name Works on SCO OpenServer? Works on SCO UnixWare 2.1.X?
isencrypt libgen Yes libgen Yes libgen Yes Yes
lckpwdf libgen Yes libgen Yes libgen Yes; notes. Yes
mkdirp libsocket Yes libgen Yes libgen Yes Yes
openlog libsocket Yes libgen Yes libgen
libc
Yes; notes. Yes
p2lcose libgen Yes libgen Yes libgen Yes Yes
p2open libgen Yes libgen Yes libgen Yes Yes
pathfind libgen Yes libgen Yes libgen Yes Yes
pututline libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
pututxline libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
regcmp libgen Yes libgen Yes libgen Yes Yes
regex libgen Yes libgen Yes libgen Yes Yes
rmdirp libsocket Yes libgen Yes libgen Yes Yes

Name of Interface Legacy compatibility UDK compatibility
Compiled using SCO OpenServer DevSys Compiled using SCO UnixWare 2.1.X SDK Compiled using UnixWare 7 UDK
Library Name Works on UnixWare 7? Library Name Works on UnixWare 7? Library Name Works on SCO OpenServer? Works on SCO UnixWare 2.1.X?
setkey libgen Yes libgen Yes libgen Yes Yes
setlogmask libsocket Yes libgen Yes libgen
libc
Yes Yes
setspent libgen Yes libgen Yes libgen Yes Yes
setutent libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
setutxent libgen Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
step libgen Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
strcadd libgen Yes libgen Yes libgen Yes Yes
strccpy libgen Yes libgen Yes libgen Yes Yes
streadd libgen Yes libgen Yes libgen Yes Yes
strecpy libgen Yes libgen Yes libgen Yes Yes
strfind libgen Yes libgen Yes libgen Yes Yes
strrspn libgen Yes libgen Yes libgen Yes Yes
strtrns libgen Yes libgen Yes libgen Yes Yes
syslog libsocket Yes libgen Yes libgen
libc
Yes Yes
ulckpwdf libgen Yes libgen Yes libgen Yes; notes. Yes
updwtmp libc Yes libgen Yes libgen Yes Yes
updwtmpx libgen Yes libgen Yes libgen Yes Yes
utmpname libc Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
utmpxname libgen Yes libgen
libc89.a
Yes libgen
libc
Yes Yes
vsyslog libsocket Yes libgen Yes libgen
libc
Yes Yes

``Compatibility Table Legend''

mnttab source compatibility notes

SCO OpenServer has a different mnttab structure than the one supported on UnixWare.

   /* UnixWare mnttab structure */
   struct mnttab {
           char    *mnt_special;
           char    *mnt_mountp;
           char    *mnt_fstype;
           char    *mnt_mntopts;
           char    *mnt_time;
   };
   

/* SCO OpenServer mnttab structure */ struct mnttab { char mt_dev[32], mt_filsys[32]; short mt_ro_flg; time_t mt_time; };

pwd.lock file compatibility notes

On SCO OpenServer, the lock file used by the ulckpwdf and lckpwdf routines is /etc/.pwd.lock; on UnixWare, it is /etc/security/ia/.pwd.lock.

spwd structure source compatibility notes

The UnixWare implementation adds four elements to the spwd structure.

   /* UnixWare spwd structure */
   struct spwd{
          char    sp_namp;
          char    sp_pwdp;
          long    sp_lstchg;
          long    sp_min;
          long    sp_max;
          long    sp_warn;
          long    sp_inact;
          long    sp_expire;
          unsigned long   sp_flag;
   };
   

/* SCO OpenServer spwd structure */ struct spwd { char *sp_namp; char *sp_pwdp; long sp_lstchg; long sp_min; long sp_max; };


Next topic: Threads and asynchronous I/O (libthread) interfaces
Previous topic: ttyslot source compatibility notes

© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 27 April 2004