If an interface is listed as "changed" (C), a brief description of differences between the SunOS release 4.x system call and the Solaris 2.6 system call is provided.
If an interface is listed as "the same" (S), the Solaris 2.6 interface will support all features of the SunOS release 4.x interface. In some cases the interface has been enhanced, but can be considered a complete superset of the SunOS release 4.x interface. Note that many system calls are now available as library routines. The Notes column will show the new routine man page reference.
If an interface has an "alternative" (A), check the Notes section for its replacement.
If an interface is listed as "not available" (N), you cannot use that interface.
If the interface includes errno values that are not supported in the standard, it is indicated with "#". errno differences do not necessarily break compatibility. Note that although EDQUOT, EFAULT, and EIO are often not listed with ABI or SVID, these errno values are supported by an ABI or SVID compliant system if appropriate.
The SunOS release 4.x software offers a System V Software installation option that provides System V compatible versions of many utilities, system calls, and library routines. The System V interfaces are included in the following tables. When referring to the System V version of a SunOS release 4.x interface, the string SysV is appended to the interface.
For complete information on all Solaris 2.6 interfaces, see the man Pages(2): System Calls.
System Calls are functions. Functions in this appendix are identified by an empty set of parentheses immediately following the function name. When you see a second set of parentheses containing a number, this nomenclature identifies the associated man page section.
Below are sample table entries followed by an interpretation of the table entry.
SunOS release 4.x System Call |
SunOS release 5.6 Status |
Alternative Available and Notes |
ABI |
SVID |
SVR4 |
BSD |
---|---|---|---|---|---|---|
mctl()(2) |
A |
The memcntl()(2) system call provides similar functionality. |
A |
A |
A |
S |
The mctl()() system call is not available in the ABI, SVID, SVR4, or the SunOS release 5.6 software. Any applications that use this system call should be rewritten to use the memcntl()() call. A version of mctl()() is available with the SunOS/BSD Compatibility package, but applications that use it will not be compatible with other SVR4 systems.
SunOS release 4.x System Call |
SunOS release 5.6 Status |
Alternative Available and Notes |
ABI |
SVID |
SVR4 |
BSD |
---|---|---|---|---|---|---|
getsockname()(2) |
S# |
The errno value ENOBUFS used by the SunOS release 4.x getsockname()() system call has been changed to ENOSR in the SVR4 and SunOS release 5.6 version. |
N |
N |
S# |
N |
The getsockname()() system call is not defined in the ABI, or SVID. The getsockname()() call in SunOS release 5.6 and SVR4 releases is the same as the one in the SunOS release 4.x software, except the SunOS release 5.6 software sets errno to ENOSR for the error condition that previously would have set errno to ENOBUFS.