| |
Home • About Us •A-Z Index• Search • |
Organization | Apple Inc. |
---|---|
Author | Sue Grady |
Product Identification | Version/Release Number | Product Supplier |
---|---|---|
OS X Yosemite | version 10.10 | Apple Inc |
Testing Environment | Binary-compatible Family | Portability Environment | Indicator of Compliance | Compliance Details | |
---|---|---|---|---|---|
1. |
|
|
Internationalised System Calls and Libraries Extended V3 | Test Report from Test Suite | Test Suite: VSX4.7.8, VSX5.3.7, VSU5.3.8, VSTH5.5.8, VSRT5.4.9 Test Report: journal_vsx, journal_vsu, journal_vsth, journal_vsrt |
Question 1: Which of the following XSI Option Groups are supported by the implementation?
Response
Encryption | Yes |
Realtime | No |
Advanced Realtime | No |
Realtime Threads | No |
Advanced Realtime Threads | No |
Tracing | No |
XSI STREAMS | No |
Legacy | No |
Support for an XSI Option Group can only be claimed if all interfaces in that group behave according to the relevant descriptions in System Interfaces, Issue 6.
If an implementation does not support an Option Group then the system need not support the functions or functional behavior.
Question 2: Which of the following options are supported by the implementation?
Response
IEC 60559 Floating-Point option | No |
IPV6 | Yes |
Raw Sockets | No |
Support for these options enables additional semantics for interfaces as described in the relevant descriptions in System Interfaces, Issue 6.
Question 3: For each of the symbolic constants, specified in the <unistd.h> header file, are the associated features always available on the system?
Response
Macro Name | Meaning | Provided |
---|---|---|
_POSIX_CHOWN_RESTRICTED | The use of chown() is restricted to a process with appropriate privileges, and to changing the group ID of a file only to the effective group ID of the process or one of its supplementary group IDs. | Yes |
_POSIX_NO_TRUNC | Pathname components longer than {NAME_MAX) generate an error. | Yes |
Question 4: What are the values associated with the following constants specified in the <float.h> header file?
Response
Macro Name | Meaning | Value |
---|---|---|
FLT_RADIX | Radix of the exponent representation. | |
FLT_MANT_DIG | Number of base-FLT_RADIX digits in the float significand. |
|
DBL_MANT_DIG | Number of base-FLT_RADIX digits in the double significand. |
|
LDBL_MANT_DIG | Number of base-FLT_RADIX digits in the long double significand. |
|
FLT_DIG | Number of decimal digits, q, such that any floating-point number with q digits can be rounded into a float representation and back again without change to the q digits. |
|
DBL_DIG | Number of decimal digits, q, such that any floating-point number with q digits can be rounded into a double representation and back again without change to the q digits. |
|
LDBL_DIG | Number of decimal digits, q, such that any floating-point number with q digits can be rounded into a long double representation and back again without change to the q digits. |
|
FLT_MIN_EXP | Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised float. |
|
DBL_MIN_EXP | Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised double. |
|
LDBL_MIN_EXP | Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised long double. |
|
FLT_MIN_10_EXP | Minimum negative integer such that 10 raised to that power is in the range of normalised floats. |
|
DBL_MIN_10_EXP | Minimum negative integer such that 10 raised to that power is in the range of normalised doubles. |
|
LDBL_MIN_10_EXP | Minimum negative integer such that 10 raised to that power is in the range of normalised long doubles. |
|
FLT_MAX_EXP | Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite float. |
|
DBL_MAX_EXP | Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite double. |
|
LDBL_MAX_EXP | Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite long double. |
|
FLT_MAX_10_EXP | Maximum integer such that 10 raised to that power is in the range of representable finite floats. |
|
DBL_MAX_10_EXP | Maximum integer such that 10 raised to that power is in the range of representable finite doubles. |
|
LDBL_MAX_10_EXP | Maximum integer such that 10 raised to that power is in the range of representable finite long doubles. |
|
FLT_MAX | Maximum representable finite float. |
|
DBL_MAX | Maximum representable finite double. |
|
LDBL_MAX | Maximum representable finite long double. |
|
FLT_EPSILON | Difference between 1.0 and the least value greater than 1.0 that is representable as a float. |
|
DBL_EPSILON | Difference between 1.0 and the least value greater than 1.0 that is representable as a double. |
|
LDBL_EPSILON | Difference between 1.0 and the least value greater than 1.0 that is representable as a long double. |
|
FLT_MIN | Minimum normalised positive float. |
|
DBL_MIN | Minimum normalised positive double. |
|
LDBL_MIN | Minimum normalised positive long double. |
|
Rationale
This set of constants provides useful information regarding the underlying architecture of the implementation.
Reference
Technical Standard, Base Definitions, Issue 6, Chapter 13, Headers, <float.h>.
Question 5: What are the values associated with the following constants (optionally specified in the <limits.h> header file)?
Response
Macro Name | Meaning | Minimum | Maximum |
---|---|---|---|
ARG_MAX | Maximum length of argument to the exec functions including the environment data. | 4096 | 256K |
ATEXIT_MAX | Maximum number of functions that may be registered with atexit(). | 32 | 2147483647 |
CHILD_MAX | Maximum number of processes per user ID. | 25 | RLIM_INIFNITY |
FILESIZEBITS | Minimum number of bits needed to represent as a signed integer value the maximum size of a regular file. | 32 | 34 UFS, 64 HFS |
HOST_NAME_MAX | Maximum length of a host name as returned from gethostname(). | 255 | 255 |
IOV_MAX | Maximum number of iovec structures that one process has available for use with readv() or writev(). | 16 | 16 |
LINK_MAX | Maximum number of links to a single file. | 8 | 8 |
LOGIN_NAME_MAX | Maximum length of a login name. | 9 | 255 |
MAX_CANON | Maximum number of bytes in a terminal canonical input line. | 255 | 255 |
MAX_INPUT | Maximum number of bytes for which space will be available in a terminal input queue. | 255 | 255 |
NAME_MAX | Maximum number of bytes in a filename (not including terminating null). | 255 | 255 |
OPEN_MAX | Maximum number of open files that one process can have open at any one time. | 20 | RLIM_INFINITY |
PAGESIZE | Size of a page in bytes. | 1 | 4096 |
PAGE_SIZE | Same as PAGESIZE. If either PAGESIZE or PAGE_SIZE is defined, the other will be defined with the same value. | 1 | 4096 |
PATH_MAX | Maximum number of bytes in a pathname (including the terminating null). | 1024 | 1024 |
PIPE_BUF | Maximum number of bytes that is guaranteed to be atomic when writing to a pipe. | 512 | 512 |
PTHREAD_DESTRUCTOR_ITERATIONS | Maximum number of attempts made to destroy a thread's thread-specific data values on thread exit. | 4 | 4 |
PTHREAD_KEYS_MAX | Maximum number of data keys that can be created by a process. | 128 | 128 |
PTHREAD_STACK_MIN | Minimum size in bytes of thread stack storage. | 0 | 8192 |
PTHREAD_THREADS_MAX | Maximum number of threads that can be created by a process. | 64 | 2560 |
STREAM_MAX | Number of streams that one process can have open at one time. | 8 | 8 |
SYMLINK_MAX | Number of bytes in a symbolic link. | 255 | 255 |
SYMLOOP_MAX | Number of symbolic links that can be reliably traversed in the resolution of a pathname in the absence of a loop. | 8 | 8 |
TTY_NAME_MAX | Maximum length of terminal device name. | 9 | 255 |
TZNAME_MAX | Maximum number of bytes supported for the name of a time zone. | 6 | 255 |
Question 6: What are the values associated with the following constants specified in the <limits.h> header file?
Response
Macro Name | Meaning | Minimum | Maximum |
---|---|---|---|
BC_BASE_MAX | Maximum ibase and obase values allowed by the bc utility. | 99 | 99 |
BC_DIM_MAX | Maximum number of elements permitted in an array by the bc utility. | 2048 | 2048 |
BC_SCALE_MAX | Maximum scale value allowed by the bc utility. | 99 | 99 |
BC_STRING_MAX | Maximum length of a string constant accepted by the bc utility. | 1000 | 1000 |
CHARCLASS_NAME_MAX | Maximum number of bytes in a character class name. | 14 | 14 |
COLL_WEIGHTS_MAX | Maximum number of weights that can be assigned to an entry of the LC_COLLATE order keyword in the locale definition file. | 2 | 2 |
EXPR_NEST_MAX | Maximum number of expressions that can be nested within parentheses by the expr utility. | 32 | 32 |
LINE_MAX | Maximum length in bytes including the trailing newline of a utility's input line when the utility is described as processing text files. | 2048 | 2048 |
NGROUPS_MAX | Maximum number of simultaneous supplementary group IDs per process. | 8 | 16 |
RE_DUP_MAX | Maximum number of repeated occurrences of a regular expression permitted when using interval notation. | 255 | 255 |
Question 7: What are the values associated with the following numerical constants specified in the <limits.h> header file?
Response
Macro Name | Meaning | Value |
---|---|---|
CHAR_MAX | Maximum value of a char. |
|
INT_MAX | Maximum value of an int. |
|
LONG_BIT | Number of bits in a long int. |
|
LONG_MAX | Maximum value of a long int. |
|
LLONG_MAX | Maximum value of a long long. |
|
MB_LEN_MAX | Maximum number of bytes in a character, for any supported locale. |
|
SHRT_MAX | Maximum value of a short. |
|
SSIZE_MAX | Maximum value of an object of type ssize_t. |
|
UINT_MAX | Maximum value of an unsigned int. |
|
ULONG_MAX | Maximum value of an unsigned long int. |
|
ULLONG_MAX | Maximum value of a unsigned long long. |
|
USHRT_MAX | Maximum value of an unsigned short int. |
|
WORD_BIT | Number of bits in a word or int. |
|
Question 8: What are the values associated with the following numerical constants specified in the <stdio.h> header file?
Response
Macro Name | Meaning | Value |
---|---|---|
FILENAME_MAX | Maximum size in bytes of the longest filename string that the implementation guarantees can be opened. |
|
FOPEN_MAX | Number of streams which the implementation guarantees can be open simultaneously. |
|
L_ctermid | Maximum size of character array to hold ctermid() output. |
|
L_tmpnam | Maximum size of character array to hold tmpnam() output. |
|
TMP_MAX | Minimum number of unique filenames generated by tmpnam(), which is the maximum number of times an application can call tmpnam() reliably. |
|
Question 9: Which of the following option errors, ( denoted by "may fail" within the specification ), listed in System Interfaces, Issue 6 are detected in the circumstances specified?
Response
Function | Error | Detected |
---|---|---|
accept() | EINVAL |
|
ENOMEM | Yes | |
EPROTO | No | |
access() | EINVAL | No |
ENAMETOOLONG | Yes | |
ETXTBSY | No | |
asin() * | Range Error | Yes |
asinh() * | Range Error | Yes |
atan() * | Range Error | Yes |
atanh() * | Range Error | Yes |
atan2() * | Range Error | No |
bind() | EACCESS | Yes |
EINVAL | Yes | |
EISCONN | No | |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ENOBUFS | No | |
catclose() | EBADF | Yes |
EINTR | No | |
catgets() | EBADF | No |
EBADMSG | No | |
EINTR | No | |
EINVAL | No | |
ENOMSG | No | |
catopen() | EACCES | No |
EMFILE | No | |
ENAMETOOLONG | Yes | |
ENFILE | No | |
ENOENT | Yes | |
ENOMEM | No | |
ENOTDIR | No | |
cfsetispeed() | EINVAL | No |
cfsetospeed() | EINVAL | No |
chdir() | ENAMETOOLONG | Yes |
ELOOP | Yes | |
chmod() | EINTR | Yes |
EINVAL | No | |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
chown() | EINTR | Yes |
EINVAL | No | |
EIO | No | |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
close() | EIO | Yes |
closedir() | EBADF | Yes |
EINTR | Yes | |
connect() | EACCESS | Yes |
EADDRINUSE | Yes | |
ECONNRESET | No | |
EHOSTUNREACH | Yes | |
EINVAL | Yes | |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ENETDOWN | Yes | |
ENOBUFS | Yes | |
EOPNOTSUP | Yes | |
endpwent() | EIO | No |
erf() * | Range Error | No |
erfc() * | Range Error | No |
exec | ELOOP | Yes |
ENAMETOOLONG | Yes | |
ENOMEM | Yes | |
ETXTBSY | No | |
exp() * | Range Error | No |
exp2() * | Range Error | No |
expm1() * | Range Error | No |
fchdir() | EINTR | Yes |
EIO | Yes | |
fchmod() | EINTR | Yes |
EINVAL | No | |
fchown() | EINVAL | No |
EIO | Yes | |
EINTR | Yes | |
fclose() | ENXIO | No |
fcntl() | EDEADLK | No |
fdim() * | Range Error | No |
fdopen() | EBADF | Yes |
EINVAL | Yes | |
EMFILE | No | |
ENOMEM | Yes | |
fflush() | ENXIO | Yes |
fgetc() | ENOMEM | No |
ENXIO | Yes | |
fgetpos() | EBADF | No |
ESPIPE | Yes | |
fgetwc() | ENOMEM | No |
ENXIO | Yes | |
fileno() | EBADF | No |
fma() * | Domain Error | Yes |
Range Error | Yes | |
fmod() * | Range Error | Yes |
fopen() | EINVAL | Yes |
ELOOP | Yes | |
EMFILE | Yes | |
ENAMETOOLONG | Yes | |
ENOMEN | Yes | |
ETXTBSY | No | |
fork() | ENOMEM | No |
fpathconf() | EBADF | Yes |
EINVAL | Yes | |
fprintf() | EINVAL | Yes |
EILSEQ | Yes | |
ENOMEM | Yes | |
fputc() | ENOMEM | No |
ENXIO | Yes | |
fputwc() | ENOMEM | No |
ENXIO | Yes | |
fread() | ENOMEM | No |
ENXIO | Yes | |
freopen() | EINVAL | Yes |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ENOMEM | No | |
ENXIO | Yes | |
ETXTBSY | No | |
fscanf() | EILSEQ | Yes |
EINVAL | Yes | |
ENOMEM | Yes | |
ENXIO | Yes | |
fstat() | EOVERFLOW | No |
ftell() | ESPIPE | Yes |
ftok() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
ftw() | EINVAL | Yes |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
fwide() | EBADF | No |
fwprintf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
EINVAL | Yes | |
fwscanf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
EINVAL | Yes | |
getcwd() | EACCES | Yes |
ENOMEM | Yes | |
getgrent() | EINTR | No |
EIO | No | |
EMFILE | No | |
ENFILE | No | |
getgrgid() | EIO | No |
EINTR | No | |
EMFILE | No | |
ENFILE | No | |
getgrgid_r() | ERANGE | Yes |
getgrnam() | EIO | No |
EINTR | No | |
EMFILE | No | |
ENFILE | No | |
getgrnam_r() | ERANGE | Yes |
getitimer() | EINVAL | Yes |
getlogin() | EMFILE | No |
ENFILE | No | |
ENXIO | No | |
getlogin_r() | ERANGE | Yes |
getpeername() | ENOBUFS | No |
getpgid() | EINVAL | No |
getpwent() | EIO | No |
EMFILE | No | |
ENFILE | No | |
getpwnam() | EIO | No |
EINTR | No | |
EMFILE | No | |
ENFILE | No | |
getpwnam_r() | ERANGE | Yes |
getpwuid() | EIO | No |
EINTR | No | |
EMFILE | No | |
ENFILE | No | |
getpwuid_r() | ERANGE | Yes |
getsockname() | EINVAL | Yes |
ENOBUFS | Yes | |
getsockopt() | EACCESS | No |
EINVAL | Yes | |
ENOBUFS | Yes | |
grantpt() | EBADF | Yes |
EINVAL | No | |
EACCES | Yes | |
hcreate() | ENOMEM | Yes |
hsearch() | ENOMEM | Yes |
hypot() * | Range Error | No |
iconv() | EBADF | No |
iconv_close() | EBADF | No |
iconv_open() | EMFILE | No |
ENFILE | No | |
ENOMEM | No | |
EINVAL | Yes | |
if_nameindex() | ENOBUFS | Yes |
isatty() | EBADF | Yes |
ENOTTY | Yes | |
j0() | Range Error | No |
j1() | Range Error | No |
jn() | Range Error | No |
lchown() | EIO | No |
EINTR | Yes | |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ldexp() * | Range Error | No |
link() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
listen() | EACCESS | Yes |
EINVAL | Yes | |
ENOBUFS | No | |
lockf() | EAGAIN | No |
EDEADLK | No | |
EINVAL | Yes | |
ENOLCK | No | |
EOPNOTSUPP | Yes | |
log1p() * | Range Error | Yes |
lstat() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
EOVERFLOW | No | |
mblen() | EILSEQ | Yes |
mbrlen() | EINVAL | Yes |
EILSEQ | Yes | |
mbrtowc() | EINVAL | Yes |
EILSEQ | Yes | |
mbsrtowcs() | EINVAL | Yes |
EILSEQ | Yes | |
mbstowcs() | EILSEQ | Yes |
mbtowc() | EILSEQ | Yes |
mkdir() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
mkfifo() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
mknod() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
nftw() | ELOOP | Yes |
EMFILE | Yes | |
ENAMETOOLONG | Yes | |
ENFILE | Yes | |
open() | EAGAIN | Yes |
EINVAL | Yes | |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ENOMEM | No | |
ETXTBSY | No | |
opendir() | ELOOP | Yes |
EMFILE | No | |
ENAMETOOLONG | Yes | |
ENFILE | No | |
pathconf() | EACCES | Yes |
EINVAL | Yes | |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ENOENT | Yes | |
ENOTDIR | Yes | |
popen() | EMFILE | Yes |
EINVAL | Yes | |
posix_openpt() | EINVAL | Yes |
EAGAIN | Yes | |
pow() * | Range Error | Yes |
pread() | ENXIO | Yes |
printf() | ENOMEM | Yes |
pthread_attr_setstack() | EACCESS | No |
EINVAL | Yes | |
pthread_cancel() | ESRCH | Yes |
pthread_cond_broadcast() | EINVAL | Yes |
pthread_cond_destroy() | EBUSY | Yes |
EINVAL | Yes | |
pthread_cond_init() | EBUSY | No |
EINVAL | No | |
pthread_cond_signal() | EINVAL | Yes |
pthread_cond_timedwait() | EINVAL | Yes |
pthread_cond_wait() | EINVAL | Yes |
pthread_condattr_destroy() | EINVAL | No |
pthread_condattr_setpshared() | EINVAL | Yes |
pthread_join() | EDEADLK | No |
pthread_key_delete() | EINVAL | Yes |
pthread_mutex_destroy() | EBUSY | Yes |
EINVAL | Yes | |
pthread_mutex_init() | EBUSY | No |
EINVAL | Yes | |
pthread_mutex_lock() | EINVAL | Yes |
EAGAIN | Yes | |
EDEADLK | Yes | |
pthread_mutex_trylock() | EINVAL | Yes |
EAGAIN | Yes | |
pthread_mutex_unlock() | EINVAL | Yes |
EAGAIN | No | |
EPERM | Yes | |
pthread_mutexattr_destroy() | EINVAL | Yes |
pthread_mutexattr_gettype() | EINVAL | Yes |
pthread_mutexattr_init() | ENOMEM | No |
pthread_mutexattr_setpshared() | EINVAL | Yes |
pthread_mutexattr_settype() | EINVAL | Yes |
pthread_once() | EINVAL | No |
pthread_rwlock_destroy() | EBUSY | Yes |
EINVAL | Yes | |
pthread_rwlock_init() | EBUSY | Yes |
EINVAL | Yes | |
pthread_rwlock_rdlock() | EINVAL | Yes |
EDEADLK | Yes | |
EAGAIN | Yes | |
pthread_rwlock_tryrdlock() | EINVAL | Yes |
EAGAIN | Yes | |
pthread_rwlock_trywrlock() | EINVAL | Yes |
pthread_rwlock_unlock() | EINVAL | Yes |
EPERM | No | |
pthread_rwlock_wrlock() | EINVAL | Yes |
EDEADLK | Yes | |
pthread_rwlockattr_destroy() | EINVAL | No |
pthread_rwlockattr_setpshared() | EINVAL | Yes |
pthread_setcancelstate() | EINVAL | Yes |
pthread_setcanceltype() | EINVAL | Yes |
pthread_setspecific() | EINVAL | Yes |
putc() | ENOMEM | No |
ENXIO | Yes | |
putchar() | ENOMEM | No |
ENXIO | Yes | |
putenv() | ENOMEM | Yes |
puts() | ENOMEM | Yes |
ENXIO | Yes | |
pututxline() | EPERM | Yes |
putwc() | ENOMEM | No |
ENXIO | Yes | |
EILSEQ | Yes | |
putwchar() | ENOMEM | No |
ENXIO | Yes | |
EILSEQ | Yes | |
pwrite() | EINVAL | No |
ENXIO | Yes | |
read() | EIO | Yes |
ENOBUFS | Yes | |
ENOMEM | Yes | |
ENXIO | Yes | |
readdir() | EBADF | Yes |
ENOENT | No | |
readdir_r() | EBADF | Yes |
readlink() | EACCES | No |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
readv() | EINVAL | Yes |
realpath() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
ENOMEM | No | |
recv() | EIO | No |
ENOBUFS | Yes | |
ENOMEM | No | |
recvfrom() | EIO | No |
ENOBUFS | Yes | |
ENOMEM | No | |
recvmsg() | EIO | No |
ENOBUFS | Yes | |
ENOMEM | Yes | |
remove() | EBUSY | No |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ETXTBSY | No | |
rename() | EBUSY | No |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ETXTBSY | No | |
rmdir() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
round() * | Range Error | Yes |
scalb() * | Range Error | Yes |
send() | EACCESS | Yes |
EIO | No | |
ENETDOWN | Yes | |
ENETUNREACH | Yes | |
ENOBUFS | Yes | |
sendmsg() | EACCESS | Yes |
EDESTADDRREQ | Yes | |
EHOSTUNREACH | Yes | |
EIO | Yes | |
EISCONN | Yes | |
ENETDOWN | Yes | |
ENETUNREACH | Yes | |
ENOBUFS | Yes | |
ENOMEM | Yes | |
sendto() | EACCESS | Yes |
EDESTADDRREQ | Yes | |
EHOSTUNREACH | Yes | |
EIO | Yes | |
EISCONN | Yes | |
ENETDOWN | Yes | |
ENETUNREACH | Yes | |
ENOBUFS | Yes | |
ENOMEM | Yes | |
setitimer() | EINVAL | Yes |
setpriority() | EPERM | Yes |
EACCES | Yes | |
setpwent() | EIO | No |
EMFILE | No | |
ENFILE | No | |
setrlimit() | EINVAL | Yes |
setsockopt() | ENOMEM | No |
ENOBUFS | Yes | |
setvbuf() | EBADF | Yes |
shmctl() | EOVERFLOW | No |
shutdown() | ENOBUFS | Yes |
sigaction() | EINVAL | Yes |
sigaddset() | EINVAL | No |
sigdelset() | EINVAL | No |
sigismember() | EINVAL | No |
signal() | EINVAL | Yes |
sigwait() | EINVAL | Yes |
sin() * | Range Error | Yes |
sinh() * | Range Error | No |
socket() | EACCESS | No |
ENOBUFS | Yes | |
ENOMEM | Yes | |
socketpair() | EACCESS | No |
ENOBUFS | Yes | |
ENOMEM | Yes | |
stat() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
EOVERFLOW | No | |
statvfs() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
strcoll() | EINVAL | Yes |
strdup() | ENOMEM | Yes |
strerror() | EINVAL | Yes |
strerror_r() | ERANGE | Yes |
strtod() | EINVAL | No |
strtoimax() | EINVAL | Yes |
strtol() | EINVAL | Yes |
strtoumax() | EINVAL | Yes |
strtoul() | EINVAL | Yes |
strxfrm() | EINVAL | Yes |
swprintf() | EILSEQ | Yes |
EINVAL | Yes | |
swcsanf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
symlink() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
system() | ECHILD | No |
tan() * | Range Error | Yes |
tanh() * | Range Error | No |
tcdrain() | EIO | Yes |
tcflow() | EIO | Yes |
tcflush() | EIO | Yes |
tcsendbreak() | EIO | Yes |
tcsetattr() | EIO | Yes |
tmpfile() | EMFILE | Yes |
ENOMEM | Yes | |
towctrans() | EINVAL | Yes |
truncate() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
ttyname() | EBADF | Yes |
ENOTTY | Yes | |
ttyname_r() | EBADF | Yes |
ENOTTY | Yes | |
ERANGE | Yes | |
ungetwc() | EILSEQ | Yes |
unlink() | EBUSY | No |
ELOOP | Yes | |
ENAMETOOLONG | Yes | |
ETXTBSY | No | |
unlockpt() | EBADF | Yes |
EINVAL | No | |
usleep() | EINVAL | Yes |
utime() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
utimes() | ELOOP | Yes |
ENAMETOOLONG | Yes | |
vfscanf() | EILSEQ | Yes |
EINVAL | Yes | |
ENOMEM | Yes | |
ENXIO | Yes | |
vfwprintf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
EINVAL | Yes | |
vfwscanf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
EINVAL | Yes | |
wcrtomb() | EINVAL | Yes |
EILSEQ | Yes | |
wcscoll() | EINVAL | Yes |
wcsrtombs() | EINVAL | Yes |
EILSEQ | Yes | |
wcstod() | EINVAL | Yes |
wcstoimax() | EINVAL | Yes |
wcstoumax() | EINVAL | Yes |
wcstol() | EINVAL | Yes |
wcstombs() | EILSEQ | Yes |
wcstoul() | EINVAL | Yes |
wcsxfrm() | EINVAL | Yes |
wctrans() | EINVAL | Yes |
wprintf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
EINVAL | Yes | |
write() | EINVAL | No |
ENETDOWN | Yes | |
ENETUNREACH | Yes | |
ENXIO | Yes | |
writev() | EINVAL | Yes |
wscanf() | ENOMEM | Yes |
ENXIO | Yes | |
EILSEQ | Yes | |
y0() | Domain Error | Yes |
Range Error | Yes | |
y1() | Domain Error | Yes |
Range Error | Yes | |
yn() | Domain Error | Yes |
Range Error | Yes |
Rationale
Each of the above error conditions is marked as optional in System Interfaces, Issue 6 and an implementation may return this error in the circumstances specified or may not provide the error indication.
Reference
Technical Standard, System Interfaces, Issue 6, Section 2.3, Error Numbers.
Question 10: What format of floating-point numbers is supported by this implementation?
Response
Question 11: Which floating-point exceptions are supported by this implementation for the fegetexecptflag(), feraiseexcept(), fesetexecptflag(), and fetestexecptflag() functions?
Response
Question 12: Which floating-point rounding directions are supported by this implementation for the fegetround(), and fesetround() functions?
Response
Question 13: Is a non-stop floating-point exception mode supported by this implementation?
Response
No
Question 14: Are the optional data encryption interfaces provided?
Response
Function | Provided |
---|---|
crypt() | Yes |
encrypt() | Yes |
setkey() | Yes |
Export Restrictions:
Question 15: Which file types (regular, directory, FIFO, special and so on) are considered to be executable?
Response
Question 16: What file access control mechanisms does the implementation provide?
Response
Question 17: Are any additional or alternate file access control mechanisms implemented that could cause fstat() or stat() to fail?
Response
Yes
Question 18: What coded character sets are supported by the implementation?
Response
Question 19: What is the implementation's underlying internal codeset?
Response
Question 20: Does closing the master side of a pseudo-terminal flush all queued input and output?
Response
No
Question 21: Does closing the slave side of a pseudo-terminal cause a zero-length message to be sent to the master?
Response
No
Question 22: What naming conventions are associated with the master side of pseudo-terminal devices?
Response
Question 23: What types of file can be polled?
Response
Question 24: What is the direction of stack growth?
Response
From higher to lower addresses.
Question 25: Which of the following si_code values may be generated?
Response
Signal | Code | Generated? |
---|---|---|
SIGILL | ILL_ILLOPC | Yes |
ILL_ILLOPN | No | |
ILLL_ILLADR | No | |
ILL_ILLTRP | Yes | |
ILL_PRVOPC | Yes | |
ILL_PRVREG | No | |
ILL_COPROC | No | |
ILL_BADSTK | No | |
SIGFPE | FPE_INTDIV | No |
FPE_INTOVF | No | |
FPE_FLTDIV | Yes | |
FPE_FLTOVF | Yes | |
FPE_FLTUND | Yes | |
FPE_FLTRES | Yes | |
FPE_FLTINV | Yes | |
FPE_FLTSUB | No | |
SIGSEGV | SEGV_MAPERR | Yes |
SEGV_ACCERR | Yes | |
SIGBUS | BUS_ADRALN | Yes |
BUS_ADRERR | No | |
BUS_OBJERR | No | |
SIGTRAP | TRAP_BRKPT | No |
TRAP_TRACE | No | |
SIGCHLD | CLD_EXITED | Yes |
CLD_KILLED | Yes | |
CLD_DUMPED | Yes | |
CLD_TRAPPED | Yes | |
CLD_STOPPED | Yes | |
CLD_CONTINUED | Yes | |
SIGPOLL | POLL_IN | No |
POLL_OUT | No | |
POLL_MSG | No | |
POLL_ERR | No | |
POLL_PRI | No | |
POLL_HUP | No | |
Any | SI_USER | No |
SI_QUEUE | No | |
SI_TIMER | No | |
SI_ASYNCIO | No | |
SI_MESGQ | No |
Question 26: Does the setpgrp() function create a new session?
Response
No
Question 27: Does the implementation generate a core file when the following signals are delivered to a process?
Response
Signal | Core File Generated |
---|---|
SIGABRT | Yes |
SIGFPE | Yes |
SIGILL | Yes |
SIGQUIT | Yes |
SIGSEGV | Yes |
SIGBUS | Yes |
SIGSYS | Yes |
SIGTRAP | Yes |
SIGXCPU | No |
SIGXFSZ | No |
Question 28: What is the limit the implementation places on the length of a socket's listen queue?
Response
128
Question 29: What combinations of address family, socket types, and protocols does the implementation support?
Response
Address Family | Protocol | Socket Type | Supported? |
---|---|---|---|
AF_UNIX | N/A | STREAM | Yes |
AF_UNIX | N/A | SEQPACKET | No |
AF_UNIX | N/A | DGRAM | Yes |
AF_INET | TCP | STREAM | Yes |
AF_INET | UDP | DGRAM | Yes |
AF_INET6 | TCP | STREAM | Yes |
AF_INET6 | UDP | DGRAM | Yes |
Question 30: What socket types does the implementation support?
Response
Question 31: Which functions have cancellation points that occur when a thread is executing?
Response
Function | Cancellation Point? |
---|---|
catclose() | No |
catgets() | No |
catopen() | No |
closedir() | No |
closelog() | No |
ctermid() | No |
dbm_close() | No |
dbm_delete() | No |
dbm_fetch() | No |
dbm_nextkey() | No |
dbm_open() | No |
dbm_store() | No |
dlclose() | No |
dlopen() | No |
endgrent() | No |
endhostent() | No |
endnetent() | No |
endprotoent() | No |
endpwent() | No |
endservent() | No |
endutxent() | No |
fclose() | No |
fcntl() | Yes |
fflush() | No |
fgetc() | No |
fgetpos() | No |
fgets() | No |
fgetwc() | No |
fgetws() | No |
fopen() | No |
fprintf() | No |
fputc() | No |
fputs() | No |
fputwc() | No |
fputws() | No |
fread() | No |
freopen() | No |
fscanf() | No |
fseek() | No |
fseeko() | No |
fsetpos() | No |
ftell() | No |
ftello() | No |
ftw() | No |
fwprintf() | No |
fwrite() | No |
fwscanf() | No |
getc() | No |
getc_unlocked() | No |
getchar() | No |
getchar_unlocked() | No |
getcwd() | No |
getdate() | No |
getgrent() | No |
getgrgid() | No |
getgrgid_r() | No |
getgrnam() | No |
getgrnam_r() | No |
gethostbyaddr() | No |
gethostbyname() | No |
gethostent() | No |
gethostname() | No |
getlogin() | No |
getlogin_r() | No |
getnetbyaddr() | No |
getnetbyname() | No |
getnetent() | No |
getprotobyname() | No |
getprotobynumber() | No |
getprotoent() | No |
getpwent() | No |
getpwnam() | No |
getpwnam_r() | No |
getpwuid() | No |
getpwuid_r() | No |
gets() | No |
getservbyname() | No |
getservbyport() | No |
getservent() | No |
getutxent() | No |
getutxid() | No |
getutxline() | No |
getwc() | No |
getwchar() | No |
getwd() | No |
glob() | No |
iconv_close() | No |
iconv_open() | No |
ioctl() | No |
lseek() | No |
mkstemp() | No |
nftw() | No |
opendir() | No |
openlog() | No |
pclose() | No |
perror() | No |
popen() | No |
printf() | No |
pthread_rwlock_rdlock() | No |
pthread_rwlock_wrlock() | No |
putc() | No |
putc_unlocked() | No |
putchar() | No |
putchar_unlocked() | No |
puts() | No |
pututxline() | No |
putwc() | No |
putwchar() | No |
readdir() | No |
readdir_r() | No |
remove() | No |
rename() | No |
rewind() | No |
rewinddir() | No |
scanf() | No |
seekdir() | No |
semop() | No |
setgrent() | No |
sethostent() | No |
setnetent() | No |
setprotoent() | No |
setpwent() | No |
setutxent() | No |
strerror() | No |
syslog() | No |
tmpfile() | No |
tmpnam() | No |
ttyname() | No |
ttyname_r() | No |
ungetc() | No |
ungetwc() | No |
unlink() | No |
vfprintf() | No |
vfwprintf() | No |
vprintf() | No |
vwprintf() | No |
wprintf() | No |
wscanf() | No |
Question 32: What C-language compilation environments are provided?
Response
Programming Environment | Provided |
---|---|
The implementation provides a C-language compilation environment with
32-bit int, long, pointer and off_t types. | No |
The implementation provides a C-language compilation environment with
32-bit int, long and pointer types and an off_t type using at least 64 bits. | Yes |
The implementation provides a C-language compilation environment with 32-bit int, and 64-bit long, pointer and off_t types. | Yes |
The implementation provides a C-language compilation environment with int using at least 32-bits, and long, pointer and off_t types using at least 64 bits. | Yes |
Question 33: What execution environments are provided on the system under test?
Response
Execution Environment | Provided |
---|---|
The implementation provides an execution environment with 32-bit int, long, pointer and off_t types. | No |
The implementation provides an execution environment with 32-bit int, long and pointer types and an off_t type using at least 64 bits. | Yes |
The implementation provides an execution environment with 32-bit int, and 64-bit long, pointer and off_t types. | Yes |
The implementation provides an execution environment with int using at least 32-bits, and long, pointer and off_t types using at least 64 bits. | Yes |
Question 34: Does the implementation support _POSIX_PRIORITIZED_IO?
Response
The system does not support _POSIX_PRIORITIZED_IO.
Question 35: If the Realtime Option Group is supported, what asynchronous I/O operations are cancelable with aio_cancel()?
Response
Question 36: If the Realtime Threads Option Group is supported, what scheduling policy is associated with SCHED_OTHER?
Response
Question 37: If the Realtime Threads Option Group is supported, what scheduling contention scopes are supported: PTHREAD_SCOPE_PROCESS, PTHREAD_SCOPE_SYSTEM, or both?
Response
Not applicable - the Realtime Threads Option Group is not supported.
Question 38: If the Realtime Threads Option Group is supported, what is the default scheduling contention scope when a process is created?
Response
Not applicable - the Realtime Threads Option Group is not supported.
Copyright ©
All rights reserved.
Date | Name | Comment |
---|---|---|
19-Sep-2014 | Sue Grady | Yosemite |
The Open Group and Boundaryless Information Flow are trademarks
and UNIX is a registered trademark of The Open Group in the United States
and other countries. All other trademarks are the property of their
respective owners.