Conformance Statement
  


















Conformance Statement

Product
Standard: 1003.1-2003 System Interfaces

Organization

Green Hills Software, Inc.

Author

Roy Pollock


1. 1003.1-2003 System Interfaces

Product Information

Product Identification

Version/Release Number

Product Supplier

INTEGRITY

5.0

Green Hills Software, Inc.

MULTI

4.0.4

Green Hills Software, Inc.

Environment Specification

Level of Certification

Binary-compatible Family

Platform Specific Certification

 

 

Testing Environment

Indicator of Compliance Details

INTEGRITY 5.0 PPC, Motorola MCP750-HA with 128 MB RAM, 20 GB IDE harddisk. Built with MULTI 4.0.4 PPC

Test Suite Name: VSX-PCTS 2003
 
Test Suite Version: 1.0B


1.1 General Attributes

1.1.1 System Interfaces, Supported Features

Question 1: Are the required features below supported for all system
configurations?

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.

Variable

_POSIX_NO_TRUNC

Pathname components longer than {NAME_MAX) generate an error.

Yes

 

 


_POSIX_CHOWN_RESTRICTED only applies to the FFS and NFS file systems.

Rationale

Although all implementations
conforming to IEEE Std 1003.1-2001 support the features described above, there
may be system-dependent or file system-dependent configuration procedures that
can remove or modify any or all of these features. Such configurations should
not be made if strict compliance is required.

Reference

IEEE Std 1003.1, 2003 Edition,
Section 2.1.3, POSIX Conformance.


1.1.2 System Interfaces, Optional Features

Question 2: Which of the following options does the system claim
support for?

Response

Macro Name

Meaning

Provided

 

 

 

_POSIX_ADVISORY_INFO

Implementation supports the advisory information option.

No

_POSIX_ASYNCHRONOUS_IO

Implementation supports the asynchronous input and output option.

Yes

_POSIX_BARRIERS

Implementation supports the barriers option.

No

_POSIX_CLOCK_SELECTION

Implementation supports the clock selection option.

No

_POSIX_CPUTIME

Implementation supports the process cpu-time clocks option.

No

_POSIX_FSYNC

Implementation supports the file synchronization option.

Yes

_POSIX_IPV6

Implementation supports the IPV6 option.

No

_POSIX_MAPPED_FILES

Implementation supports the memory mapped files option.

No

_POSIX_MEMLOCK

Implementation supports the process memory locking option.

Yes

_POSIX_MEMLOCK_RANGE

Implementation supports the range memory locking option.

Yes

_POSIX_MEMORY_PROTECTION

Implementation supports the memory protection option.

No

_POSIX_MESSAGE_PASSING

Implementation supports the message passing option.

Yes

_POSIX_MONOTONIC_CLOCK

Implementation supports the monotonic clock option.

No

_POSIX_PRIORITIZED_IO

Implementation supports the prioritized input and output option.

No

_POSIX_PRIORITY_SCHEDULING

Implementation supports the process scheduling option.

No

_POSIX_RAW_SOCKETS

Implementation supports the raw sockets option.

No

_POSIX_REALTIME_SIGNALS

Implementation supports the realtime signals extension option.

Yes

_POSIX_SEMAPHORES

Implementation supports the semaphores option.

Yes

_POSIX_SHARED_MEMORY_OBJECTS

Implementation supports the shared memory objects option.

Yes

_POSIX_SPAWN

Implementation supports the spawn option.

Yes

_POSIX_SPIN_LOCKS

Implementation supports the spin locks option.

No

_POSIX_SPORADIC_SERVER

Implementation supports the process sporadic server option.

No

_POSIX_SYNCHRONIZED_IO

Implementation supports the synchronized input and output option.

No

_POSIX_THREAD_ATTR_STACKADDR

Implementation supports the thread stack address attribute option.

Yes

_POSIX_THREAD_CPUTIME

Implementation supports the thread cpu-time clocks option.

No

_POSIX_THREAD_ATTR_STACKSIZE

Implementation supports the thread stack size attribute option.

Yes

_POSIX_THREAD_PRIO_INHERIT

Implementation supports the thread priority inheritence option.

Yes

_POSIX_THREAD_PRIO_PROTECT

Implementation supports the thread priority protection option.

Yes

_POSIX_THREAD_PRIORITY_SCHEDULING

Implementation supports the thread execution scheduling option.

Yes

_POSIX_THREAD_PROCESS_SHARED

Implementation supports the thread process-shared synchronization option.

No

_POSIX_THREAD_SAFE_FUNCTIONS

Implementation supports the thread-safe functions option.

Yes

_POSIX_THREAD_SPORADIC_SERVER

Implementation supports the thread sporadic server option.

No

_POSIX_THREADS

Implementation supports the threads option. o

Yes

_POSIX_TIMEOUTS

Implementation supports the timeouts option.

Yes

_POSIX_TIMERS

Implementation supports the timers option.

Yes

_POSIX_TRACE

Implementation supports the trace option.

No

_POSIX_TRACE_EVENT_FILTER

Implementation supports the trace event filter option.

No

_POSIX_TRACE_INHERIT

Implementation supports the trace inherit option.

No

_POSIX_TRACE_LOG

Implementation supports the trace log option.

No

_POSIX_TYPED_MEMORY_OBJECTS

Implementation supports the typed memory onjects option.

No

Rationale

It is optional whether an
implementation claims support for the features associated with these options.
Although this product standard does not cover these areas it is useful
information for procurers and application writers.

Reference

IEEE Std 1003.1, 2003 Edition,
Section 2.1.3, POSIX Conformance.


1.1.3 Float, Stdio, and Limit Values

Question 3: 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.

2

FLT_MANT_DIG

Number of base-FLT_RADIX digits in the float significand.

24

DBL_MANT_DIG

Number of base-FLT_RADIX digits in the double significand.

53

LDBL_MANT_DIG

Number of base-FLT_RADIX digits in the long double significand.

53

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.

6

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.

15

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.

15

FLT_MIN_EXP

Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised float.

-125

DBL_MIN_EXP

Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised double.

-1021

LDBL_MIN_EXP

Minimum negative integer such that FLT_RADIX raised to that power minus 1 is a normalised long double.

-1021

FLT_MIN_10_EXP

Minimum negative integer such that 10 raised to that power is in the range of normalised floats.

-37

DBL_MIN_10_EXP

Minimum negative integer such that 10 raised to that power is in the range of normalised doubles.

-307

LDBL_MIN_10_EXP

Minimum negative integer such that 10 raised to that power is in the range of normalised long doubles.

-307

FLT_MAX_EXP

Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite float.

128

DBL_MAX_EXP

Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite double.

1024

LDBL_MAX_EXP

Maximum integer such that FLT_RADIX raised to that power minus 1 is a representable finite long double.

1024

FLT_MAX_10_EXP

Maximum integer such that 10 raised to that power is in the range of representable finite floats.

38

DBL_MAX_10_EXP

Maximum integer such that 10 raised to that power is in the range of representable finite doubles.

308

LDBL_MAX_10_EXP

Maximum integer such that 10 raised to that power is in the range of representable finite long doubles.

308

FLT_MAX

Maximum representable finite float.

3.40282347e+38f

DBL_MAX

Maximum representable finite double.

1.7976931348623157e+308

LDBL_MAX

Maximum representable finite long double.

1.7976931348623157e+308

FLT_EPSILON

Difference between 1.0 and the least value greater than 1.0 that is representable as a float.

1.175494350822287508e-38f

DBL_EPSILON

Difference between 1.0 and the least value greater than 1.0 that is representable as a double.

2.2204460492503131e-16

LDBL_EPSILON

Difference between 1.0 and the least value greater than 1.0 that is representable as a long double.

2.2204460492503131e-16

FLT_MIN

Minimum normalised positive float.

1.175494350822287508e-38f

DBL_MIN

Minimum normalised positive double.

2.2250738585072014e-308

LDBL_MIN

Minimum normalised positive long double.

2.2250738585072014e-308

Rationale

This set of constants provides useful
information regarding the underlying architecture of the implementation.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <float.h>.


Question 4: What are the values associated with the following
constants (optionally specified in the <limits.h> header file)?

Response

For the lines in the table below,
add the minimum and maximum values for your implementation. This value may be
stated to be "Unlimited" if your implementation does not impose a
limit. The minimum should be the smallest value that is returned from sysconf()
or pathconf(), or as defined in <limits.h>. The maximum value should be
the largest value that is returned from sysconf() or pathconf().

Macro Name

Meaning

Minimum

Maximum

ARG_MAX

Maximum length of argument to the exec functions including the environment data.

0x1000

0x1000

CHILD_MAX

Maximum number of processes per user ID.

32

32

FILESIZEBITS

Minimum number of bits needed to represent as a signed integer value the maximum size of a regular file.

32

64

HOST_NAME_MAX

Maximum length of a host name as returned from gethostname().

255

255

LINK_MAX

Maximum number of links to a single file.

1

32000

LOGIN_NAME_MAX

Maximum length of a login name.

9

9

MAX_CANON

Maximum number of bytes in a terminal canonical input line.

255

Unlimited

MAX_INPUT

Maximum number of bytes for which space will be available in a terminal input queue.

255

Unlimited

NAME_MAX

Maximum number of bytes in a filename (not including terminating null).

16

255

OPEN_MAX

Maximum number of open files that one process can have open at any one time.

256

256

PAGESIZE

Size of a page in bytes.

0x1000

0x1000

PATH_MAX

Maximum number of bytes in a pathname (including the terminating null).

1025

1025

PIPE_BUF

Maximum number of bytes that is guaranteed to be atomic when writing to a pipe.

512

512

STREAM_MAX

Number of streams that one process can have open at one time.

16

16

SYMLINK_MAX

Number of bytes in a symbolic link.

1024

1024

SYMLOOP_MAX

Number of symbolic links that can be reliably traversed in the resolution of a pathname in the absence of a loop.

32

32

TTY_NAME_MAX

Maximum length of terminal device name.

9

9

TZNAME_MAX

Maximum number of bytes supported for the name of a time zone.

6

6

Rationale

Each of these limits can vary
within bounds set by the Base Definitions Volume. The minimum permitted value
is specified in Chapter 13, <limits.h>.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <limits.h>.


Question 5: What are the values associated with the following constant
specified in the <limits.h> header file?

Response

For the line in the table below,
add the minimum and maximum values for your implementation. This value may be
stated to be "Unlimited" if your implementation does not impose a
limit. The minimum should be the smallest value that is returned from
sysconf(), or as defined in <limits.h>. The maximum value should be the
largest value that is returned from sysconf().

Macro Name

Meaning

Minimum

Maximum

NGROUPS_MAX

Maximum number of simultaneous supplementary group IDs per process.

8

8

Rationale

This limit can vary within bounds
set by the Base Definitions Volume. The minimum value that a limit can take on
any conforming system is given in the corresponding _POSIX_ value. A specific
conforming implementation may provide a higher minimum value than this and the
maximum value that it provides can differ from the minimum. Some conforming
implementations may provide a potentially infinite value as the maximum, in
which case the value is considered to be indeterminate. The minimum value must
always be definitive since the _POSIX_ value provides a known lower bound for
the range of possible values.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <limits.h>.


Question 6: 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.

255

INT_MAX

Maximum value of an int.

0x7fffffff

LONG_MAX

Maximum value of a long int.

0x7fffffff

LLONG_MAX

Maximum value of a long long.

0x7fffffffffffffff

MB_LEN_MAX

Maximum number of bytes in a character, for any supported locale.

1

SHRT_MAX

Maximum value of a short.

0x7fff

SSIZE_MAX

Maximum value of an object of type ssize_t.

0x7fffffff

UINT_MAX

Maximum value of an unsigned int.

0xffffffff

ULONG_MAX

Maximum value of an unsigned long int.

0xffffffff

ULLONG_MAX

Maximum value of a unigsned long long.

0xffffffffffffffff

USHRT_MAX

Maximum value of an unsigned short int.

0xffff

Rationale

This set of constants provides useful
information regarding the underlying architecture of the implementation.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <limits.h>.


Question 7: 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.

1023

FOPEN_MAX

Number of streams which the implementation guarantees can be open simultaneously.

16

L_ctermid

Maximum size of character array to hold ctermid() output.

9

L_tmpnam

Maximum size of character array to hold tmpnam() output.

16

TMP_MAX

Minimum number of unique filenames generated by tmpnam(), which is the maximum number of times an application can call tmpnam() reliably.

1048576

Rationale

This set of constants provides
useful information about the implementation.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <stdio.h>.


1.1.4 Error Conditions

Question 8: Which of the following option errors, ( denoted by
"may fail" within the specification ), listed in the System Interfaces
Volume are detected in the circumstances specified?

Response

Function

Error

Detected

accept()

EINVAL

Yes

ENOMEM

Yes

access()

EINVAL

No

ENAMETOOLONG

Yes

ETXTBSY

No

cfsetispeed()

EINVAL

Yes

cfsetospeed()

EINVAL

Yes

chdir()

ENAMETOOLONG

Yes

ELOOP

Yes

chmod()

EINTR

No

EINVAL

Yes

ELOOP

Yes

ENAMETOOLONG

Yes

chown()

EINTR

No

EINVAL

No

EIO

Yes

ELOOP

Yes

ENAMETOOLONG

Yes

close()

EIO

Yes

closedir()

EBADF

Yes

EINTR

No

connect()

EACCESS

Yes

EADDRINUSE

Yes

ECONNRESET

Yes

EHOSTUNREACH

Yes

EINVAL

Yes

ELOOP

Yes

ENAMETOOLONG

Yes

ENETDOWN

Yes

ENOBUFS

Yes

EOPNOTSUP

Yes

erfc() *

Range Error

Yes

exec

ELOOP

Yes

ENAMETOOLONG

Yes

ENOMEM

Yes

ETXTBSY

No

exp() *

Range Error

Yes

exp2() *

Range Error

Yes

expm1() *

Range Error

Yes

fchdir()

EINTR

No

EIO

Yes

fchmod()

EINVAL

Yes

fchown()

EINVAL

Yes

EIO

Yes

EINTR

No

fclose()

ENXIO

No

fcntl()

EDEADLK

No

fdim() *

Range Error

Yes

fdopen()

EBADF

Yes

EINVAL

Yes

EMFILE

Yes

ENOMEM

Yes

fflush()

ENXIO

No

fgetc()

ENOMEM

Yes

ENXIO

No

fgetpos()

EBADF

Yes

ESPIPE

Yes

fgetwc()

ENOMEM

Yes

ENXIO

No

fileno()

EBADF

Yes

fmod() *

Range Error

Yes

fopen()

EINVAL

Yes

ELOOP

Yes

EMFILE

Yes

ENAMETOOLONG

Yes

ENOMEM

Yes

ETXTBSY

No

fork()

ENOMEM

Yes

fpathconf()

EBADF

Yes

EINVAL

Yes

fputc()

ENOMEM

Yes

ENXIO

No

fputwc()

ENOMEM

Yes

ENXIO

No

fread()

ENOMEM

Yes

ENXIO

No

freopen()

EINVAL

Yes

ELOOP

Yes

ENAMETOOLONG

Yes

ENOMEM

Yes

ENXIO

No

ETXTBSY

No

fscanf()

ENOMEM

Yes

ENXIO

No

fstat()

EOVERFLOW

Yes

ftell()

ESPIPE

Yes

fwide()

EBADF

No

fwprintf()

ENOMEM

Yes

ENXIO

No

fwscanf()

ENOMEM

Yes

ENXIO

No

getcwd()

EACCES

Yes

ENOMEM

Yes

getgrgid()

EIO

No

EINTR

No

EMFILE

No

ENFILE

No

getgrnam()

EIO

No

EINTR

No

EMFILE

No

ENFILE

No

getlogin()

EMFILE

No

ENFILE

No

ENXIO

Yes

getpeername()

ENOBUFS

Yes

getpwnam()

EIO

No

EINTR

No

EMFILE

No

ENFILE

No

getpwuid()

EIO

No

EINTR

No

EMFILE

No

ENFILE

No

getsockname()

EINVAL

Yes

ENOBUFS

Yes

getsockopt()

EACCESS

Yes

EINVAL

Yes

ENOBUFS

Yes

if_nameindex()

ENOBUFS

Yes

isatty()

EBADF

Yes

ENOTTY

Yes

ldexp() *

Range Error

Yes

link()

ELOOP

Yes

ENAMETOOLONG

Yes

lstat()

ELOOP

Yes

ENAMETOOLONG

Yes

EOVERFLOW

Yes

mbrlen()

EINVAL

No

EILSEQ

No

mbrtowc()

EINVAL

No

EILSEQ

No

mbsrtowcs()

EINVAL

No

EILSEQ

No

mbstowcs()

EILSEQ

No

mkdir()

ELOOP

Yes

ENAMETOOLONG

Yes

mkfifo()

ELOOP

Yes

ENAMETOOLONG

Yes

open()

EAGAIN

Yes

EINVAL

Yes

ELOOP

Yes

ENAMETOOLONG

Yes

ETXTBSY

No

opendir()

ELOOP

Yes

EMFILE

Yes

ENAMETOOLONG

Yes

ENFILE

Yes

pathconf()

EACCES

Yes

EINVAL

Yes

ELOOP

Yes

ENAMETOOLONG

Yes

ENOENT

Yes

ENOTDIR

Yes

popen()

EMFILE

Yes

EINVAL

Yes

pow() *

Range Error

Yes

putc()

ENOMEM

Yes

ENXIO

No

putchar()

ENOMEM

Yes

ENXIO

No

puts()

ENOMEM

Yes

ENXIO

No

putwc()

ENOMEM

Yes

ENXIO

No

putwchar()

ENOMEM

Yes

ENXIO

No

read()

EIO

Yes

ENOBUFS

Yes

ENOMEM

Yes

ENXIO

No

readdir()

EBADF

Yes

ENOENT

Yes

readlink()

EACCES

Yes

ELOOP

Yes

ENAMETOOLONG

Yes

recv()

EIO

Yes

ENOBUFS

Yes

ENOMEM

Yes

recvfrom()

EIO

Yes

ENOBUFS

Yes

ENOMEM

Yes

recvmsg()

EIO

Yes

ENOBUFS

Yes

ENOMEM

Yes

remove()

EBUSY

Yes

ELOOP

Yes

ENAMETOOLONG

Yes

ETXTBSY

No

rename()

ELOOP

Yes

ENAMETOOLONG

Yes

ETXTBSY

No

rmdir()

ELOOP

Yes

ENAMETOOLONG

Yes

send()

EACCESS

Yes

EIO

Yes

ENETDOWN

Yes

ENETUNREACH

Yes

ENOBUFS

Yes

sendmsg()

EACCESS

Yes

EDESTADDRREQ

Yes

EHOSTUNREACH

Yes

EIO

Yes

EISCONN

Yes

ENETDOWN

Yes

ENETUNREACH

Yes

ENOBUFS

Yes

ENOBUFS

Yes

ENOMEM

Yes

sendto()

EACCESS

Yes

EDESTADDRREQ

Yes

EHOSTUNREACH

Yes

EIO

Yes

EISCONN

Yes

ENETDOWN

Yes

ENETUNREACH

Yes

ENOBUFS

Yes

ENOMEM

Yes

setsockopt()

ENOMEM

Yes

ENOBUFS

Yes

setvbuf()

EBADF

Yes

shutdown()

ENOBUFS

Yes

sigaction()

EINVAL

Yes

sigaddset()

EINVAL

No

sigdelset()

EINVAL

No

sigismember()

EINVAL

No

signal()

EINVAL

Yes

sigwait()

EINVAL

Yes

socket()

EACCESS

Yes

ENOBUFS

Yes

ENOMEM

Yes

socketpair()

EACCESS

Yes

ENOBUFS

Yes

ENOMEM

Yes

stat()

ELOOP

Yes

ENAMETOOLONG

Yes

EOVERFLOW

Yes

strcoll()

EINVAL

Yes

strerror()

EINVAL

Yes

strtod()

EINVAL

Yes

strtoimax()

EINVAL

Yes

strtol()

EINVAL

Yes

strtoul()

EINVAL

Yes

strtoumax()

EINVAL

Yes

strxfrm()

EINVAL

Yes

swprintf()

ENOMEM

Yes

ENXIO

No

swcsanf()

ENOMEM

Yes

ENXIO

No

symlink()

ELOOP

Yes

ENAMETOOLONG

Yes

system()

ECHILD

Yes

tcdrain()

EIO

Yes

tcflow()

EIO

Yes

tcflush()

EIO

Yes

tcsendbreak()

EIO

Yes

tcsetattr()

EIO

Yes

tmpfile()

EMFILE

Yes

ENOMEM

No

towctrans()

EINVAL

No

ttyname()

EBADF

Yes

ENOTTY

Yes

ungetwc()

EILSEQ

No

unlink()

ELOOP

Yes

ENAMETOOLONG

Yes

ETXTBSY

No

utime()

ELOOP

Yes

ENAMETOOLONG

Yes

vfscanf()

EILSEQ

No

EINVAL

Yes

ENOMEM

Yes

ENXIO

No

vfwprintf()

ENOMEM

Yes

ENXIO

No

vfwscanf()

ENOMEM

Yes

ENXIO

No

wcrtomb()

EINVAL

No

EILSEQ

Yes

wcscoll()

EINVAL

No

wcsrtombs()

EINVAL

No

EILSEQ

Yes

wcstod()

EINVAL

Yes

wcstoimax()

EINVAL

Yes

wcstoumax()

EINVAL

Yes

wcstol()

EINVAL

Yes

wcstombs()

EILSEQ

No

wcstoul()

EINVAL

Yes

wcsxfrm()

EINVAL

No

wctrans()

EINVAL

No

wprintf()

ENOMEM

Yes

ENXIO

No

write()

ENETDOWN

No

ENETUNREACH

No

ENXIO

No

wscanf()

ENOMEM

Yes

ENXIO

No

Rationale

Each of the above error
conditions is marked as optional in the System Interfaces Volume and an
implementation may return this error in the circumstances specified or may not
provide the error indication.

Reference

IEEE Std 1003.1, 2003 Edition,
the System Interfaces Volume, Section 2.3, Error Numbers.


1.1.5 Mathematical Interfaces

Question 9: What format of floating-point numbers is supported by this
implementation?

Response

 

IEEE floating-point in software

Rationale

Most implementations support IEEE
floating-point format either in hardware or software. Some implementations support
other formats with different exponent and mantissa accuracy. These differences
need to be defined.

Reference

IEEE Std 1003.1, 2003 Edition,
the System Interfaces Volume, Section 1.7, Relationship to Other Formal
Standards.


Question 10: Which floating-point exceptions are supported by this
implementation for the fegetexecptflag(), feraiseexcept(), fesetexecptflag(),
and fetestexecptflag() functions?

Response

 


None

Rationale

The behavior of a conforming implementation
in this area is not mandated in the specification and needs to be defined.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <fenv.h>.


Question 11: Which floating-point rounding directions are supported by
this implementation for the fegetround(), and fesetround() functions?

Response

 


FE_TONEAREST

Rationale

The behavior of a conforming
implementation in this area is not mandated in the specification and needs to
be defined.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <fenv.h>.


Question 12: Is a non-stop floating-point exception mode supported by
this implementation?

Response

No

Rationale

The behavior of a conforming
implementation in this area is not mandated in the specification and needs to
be defined.

Reference

IEEE Std 1003.1, 2003 Edition,
the System Interfaces Volume, Chapter 3, System Interfaces, feholdexcept().


1.2 Process Handling

1.2.1 Process Generation

Question 13: Which file types (regular, directory, FIFO, special and
so on) are considered to be executable?

Response

 


regular

Rationale

The EACCES error associated with exec functions occurs in circumstances when the implementation does not support execution of files of the type specified. A list of these file types needs to be provided.

Reference

IEEE Std 1003.1, 2003 Edition,
the System Interfaces Volume, Chapter 3, System Interfaces, exec.


1.3 File Handling

1.3.1 Access Control

Question 14: What file access control mechanisms does the
implementation provide?

Response

 


Standard access control is provided.

Rationale

the System Interfaces Volume
notes that implementations may provide additional or alternate file access control mechanisms, or both.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 4, General Concepts, Section 4.4, File
Access Permissions.


1.3.2 Files and Directories

Question 15: Are any additional or alternate file access control
mechanisms implemented that could cause fstat() or stat() to fail?

Response

No

Rationale

the System Interfaces Volume
notes that there could be an interaction between additional and alternate
access controls and the success of fstat() and stat(). This would
suggest that an implementation can allow access to a file but not allow the
process to gain information about the status of the file.

Reference

IEEE Std 1003.1, 2003 Edition,
the System Interfaces Volume, Chapter 3, System Interfaces, fstat() and stat().


1.4 Internationalized System Interfaces

1.4.1 Coded Character Sets

Question 16: What coded character sets are supported by the
implementation?

Response

 


ISO 8859-1:1987

Rationale

The Base Definitions Volume states
that conforming implementations support one or more coded character sets, and
that each of these includes the portable character set.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 6, Character Set.


Question 17: What is the implementation's underlying internal codeset?

Response

 


ISO 8859-1:1987

Rationale

It is useful to be aware of the
underlying codeset of the implementation.

Reference

IEEE Std 1003.1, 2003 Edition, The
Base Definitions Volume, Chapter 6, Character Set.


1.5 Sockets

1.5.1 Listen Queues

Question 18: What is the limit the implementation places on the length
of a socket's listen queue?

Response

 


None

Rationale

The specification states that an
implementation may limit the length of a socket's listen queue, and that this
limit may be imposed if the setting of the backlog argument exceeds an
implementation-defined maximum value.

Reference

IEEE Std 1003.1, 2003 Edition,
the System Interfaces Volume, Chapter 3, listen().


1.5.2 Address Families, Socket Types, and Protocols

Question 19: 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

No

AF_INET

TCP

STREAM

Yes

AF_INET

UDP

DGRAM

Yes

AF_INET6

TCP

STREAM

No

AF_INET6

UDP

DGRAM

No

AF_INET

N/A

RAW

Yes

 

 

 

Rationale

The specification states that the
domains, socket types and protocols supported by a conforming system are implementation-defined.
The 1003.1-2003 System Interfaces Product Standard states that conforming
products shall be available in configurations that support at least following
socket domains:

·        
AF_INET, with at least SOCK_STREAM and SOCK_DGRAM
socket types

·        
AF_UNIX, with at least the SOCK_STREAM socket type.

Reference

IEEE Std 1003.1, 2003 Edition,
the System Interfaces Volume, Chapter 2.10, Sockets

Product Standard, 1003.1-2003
System Interfaces


1.5.3 Socket Types

Question 20: What Socket Types does the implementation support?

Response

 


SOCK_STREAM, SOCK_DGRAM, SOCK_RAW

Rationale

The specification states that
there are four socket types defined - SOCK_RAW, SOCK_STREAM, SOCK_SEQPACKET and
SOCK_DGRAM - but does not state which are required. Implementations may also
support additional socket types.

Reference

IEEE Std 1003.1, 2003 Edition,
the System Interfaces Volume, Chapter 2.10, Sockets, Section 2.10.6, Socket
Types.


1.6 C-language Compilation Environment

Question 21: 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.

No

The implementation provides a C-language compilation environment with
32-bit int, and 64-bit long, pointer and off_t types.

No

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.

No

Rationale

The Base Definitions Volume
defines these scenarios as possible C-language compilation environment
offerings.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <unistd.h>.


Question 22: 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.

No

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.

No

Rationale

The Base Definitions Volume defines
four scenarios as possible C-language compilation environment offerings but
does not define which corresponding execution environments are supported.

Reference

IEEE Std 1003.1, 2003 Edition,
The Base Definitions Volume, Chapter 13, Headers, <unistd.h>.


2. Appendix

This appendix contains additional, explanatory material
that was provided by the vendor. This should include any setup required to
define a conforming environment on the system.

To set up a conforming system environment, load the board with the image posix_system, built under servers.gpj, or another appropriate image as detailed in the INTEGRITY Library Guide. To compile conforming client applications, link with the libraries libposix_sys_client.a and libivfs.a.

 

 

 

 

 

 

 

 

 


3. Change History

Date

Name

Comment

July 14, 2004

Roy Pollock

Initial Revision

July 16, 2004

Roy Pollock

Corrections to testing environment details

July 23, 2004 

Roy Pollock

Correct various mistakes related to function support

July 27, 2004 

Certification Administrator

Final corrections on behalf of applicant to Question 8


Version 1.0 15 October 2003
 Copyright © 1998-2003 The
Open Group. All Rights Reserved.
 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. POSIX is a registered trademark of the IEEE. All other trademarks
are the property of their respective owners.