Conformance Statement

Product Standard: 1003.1-2003 Shell and Utilities

[Note to submitter: This form contains a series of questions that need to be answered. Please complete all the fields in the questionnaire below to produce a conformance statement for your product. Please do not alter the formatting. This should be submitted as part of product registration within the web certification system. See the Guide to POSIX Certification for more information. Please note that this conformance statement will appear on the public register of certified products.]

Enter the name of the Organization that produced the implementation and the name of the author of the Conformance Statement.

Organization Enter_Organization_Name
Author Enter_Author_Name

1. 1003.1-2003 Shell and Utilities

Product Information

Enter the product name, version/release number, and product supplier for each product required to meet the conformance requirements. If more than one product is required, please list the additional products, and extend the table if necessary.

Product Identification Version/Release Number Product Supplier
Enter_Product_Identification Enter_Version_or_Release_Number Enter_Product_Supplier_Name

Environment Specification

Product registration applies to software products operating in a specific hardware or hardware/software environment.
A product may be registered either as a single product on a single hardware configuration, known as Platform Specific Certification, or as a family of binary-compatible products on a range of hardware, known as Product Family Certification. In the former case registration is on the basis of a single test report, in the latter two test reports from distinct members of the binary-compatible family are required.

Enter the level of Certification, either "Platform Specific Certification" or "Product Family Certification". If Product Family Certification then enter a full description below of the binary-compatible family

Level of Certification Binary-compatible Family
Enter_Certification_Level

Enter the precise hardware/software environment(s) tested and test suite and version number. If Product Family Certification then two testing environments should be entered below.

Testing Environment Indicator of Compliance Details
Enter_Testing_Environment
Test Suite Name: Enter_Test_Suite_Name
 
Test Suite Version: Enter_Test Suite_Version

1.1 Shell and Utilities Optional Features

Question 1: Which of the following options, obtained using the getconf utility, are available on the system?

Response

Macro Name Meaning Provided
POSIX2_C_DEV Implementation supports the C Language Development Utilities option. Enter_Yes_or_No
POSIX2_CHAR_TERM Implementation supports at least one terminal type. Enter_Yes_or_No
POSIX2_FORT_DEV Implementation supports the FORTRAN Development Utilities option. Enter_Yes_or_No
POSIX2_FORT_RUN Implementation supports the FORTRAN Run-time Utilities. Enter_Yes_or_No
POSIX2_LOCALEDEF Implementation supports the creation of locales by the localedef utility. Enter_Yes_or_No
POSIX2_PBS Implementation supports the Batch Environment Services and Utilities option. Enter_Yes_or_No
POSIX2_PBS_ACCOUNTING Implementation supports the Batch Accounting option. Enter_Yes_or_No
POSIX2_PBS_CHECKPOINT Implementation supports the Batch Checkpoint/Restart option. Enter_Yes_or_No
POSIX2_PBS_LOCATE Implementation supports the Locate Batch Job Request option. Enter_Yes_or_No
POSIX2_PBS_MESSAGE Implementation supports the Batch Job Message Request option. Enter_Yes_or_No
POSIX2_PBS_TRACK Implementation supports the Track Batch Job Request option. Enter_Yes_or_No
POSIX2_SW_DEV Implementation supports the Software Developments Utilities option. Enter_Yes_or_No
POSIX2_UPE Implementation supports the User Portability Utilities option. Enter_Yes_or_No

Rationale

For a 1003.1-2003 Shell and Utilities conformant implementation, these are all optional functionality that an implementation may or may not choose to support. 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, Base Definitions, Section 2.1.3.2 POSIX Shell and Utilities.


1.2 Utility Limits

Question 2: What are the values associated with the following constants obtained using the getconf utility?

Response

For each line in the table below, add the minimum and maximum values for your implementation. These values 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 getconf utility, or as defined in <limits.h>. The maximum value should be the largest value that is returned from the getconf utility.

Macro Name Meaning Minimum Maximum
BC_BASE_MAX Maximum ibase and obase values allowed by the bc utility. Enter_minimum Enter_maximum
BC_DIM_MAX Maximum number of elements permitted in an array by the bc utility. Enter_minimum Enter_maximum
BC_SCALE_MAX Maximum scale value allowed by the bc utility. Enter_minimum Enter_maximum
BC_STRING_MAX Maximum length of a string constant accepted by the bc utility. Enter_minimum Enter_maximum
CHARCLASS_NAME_MAX Maximum number of bytes in a character class name. Enter_minimum Enter_maximum
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. Enter_minimum Enter_maximum
EXPR_NEST_MAX Maximum number of expressions that can be nested within parentheses by the expr utility. Enter_minimum Enter_maximum
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. Enter_minimum Enter_maximum
RE_DUP_MAX Maximum number of repeated occurrences of a regular expression permitted when using interval notation. Enter_minimum Enter_maximum

Rationale

Each of these limits 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 _POSIX2_ 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 _POSIX2_ value provides a known lower bound for the range of possible values.

Reference

IEEE Std 1003.1-2001, Base Definitions, Issue 6, Chapter 13, Headers, <limits.h>.

IEEE Std 1003.1-2001, Shell and Utilities , Issue 6, Section 1.9, Utility Limits.


1.3 Specific Commands and Utilities

1.3.1 awk

Question 3: What is the limit on the number of open streams provided by awk?

Response

Enter_Value open streams.

Rationale

The number of open streams that are available to awk may differ between implementations, possibly depending on the number of streams that are available to a process ({FOPEN_MAX}).

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, awk, Input/Output and General Functions, close().


1.3.2 chown

Question 4: Does the implementation support user and group IDs for symbolic links?

Response

Enter_Yes_or_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, Shell and Utilities, Issue 6, Chapter 4, Utilities, chown.


1.3.3 cp

Question 5: What is the effect of alternate access control mechanisms on file copies?

Response

If the implementation has an alternate access control mechanism, describe the effect of the controls on file copying or an indication of where these controls are documented.



Rationale

Because of the additional restrictions on creating files and reading data from files, the cp utility may not behave as described when alternate access control mechanisms are in use.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, cp, DESCRIPTION (final paragraph).


1.3.4 ln

Question 6: Can ln create hard links to a directory?

Response

Enter_Yes_or_No

Rationale

Implementations may disallow the creation of hard links to a directory, even though the executing process has the appropriate privileges.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, ln, OPERANDS, source_file.


1.3.5 localedef

Question 7: What is the default character mapping used when the localedef -f option is not specified?

Response

Either enter the name of the default character mapping used by localedef, or alternatively provide a reference to your system documentation where this character mapping file is described. If your system does not allow creation of new locales, enter not applicable.



Rationale

The specification does not define a specific character mapping as the default for conforming systems. This character mapping provides encoding information for the members of the portable character set.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, localedef, OPTIONS, -f.


1.3.6 lp

Question 8: What lp option or operator command is used to suppress the printing of a banner page?

Response

Enter your reponse in the area below



Rationale

The user may require that banner pages are suppressed in cases where pre-printed forms are used and the stationary is of a non-standard length.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, lp, DESCRIPTION.


1.3.7 pax

Question 9: What is the default archive format used by pax?

Response

Enter "pax", "ustar" or "cpio".

Enter_Response

Rationale

The implementation has a choice in which format to use when creating archives. When it is reading an archive created in any format that it understands, the pax utility will read the archive in the format as written.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, pax, DESCRIPTION.


Question 10: How does pax handle reading and writing of archives that span multiple files?

Response

Provide a description of how pax reads and writes archives that exceed the size of the output/input media. Alternatively specify where it is documented.



Rationale

In many cases pax will take actions, such as prompting the user for the device name to use for the next archive file, when the current archive file is full. There may be extensions to the syntax of pax which allow the user to specify the address to use to access subsequent files.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, pax, DESCRIPTION.


Question 11: How does pax handle invalid filenames when it is extracting files from an archive?

Response

Provide a description of how pax handles invalid filenames on extraction, detailing the type of error message produced or the algorithm used to generate a filename. Alternatively specify where it is documented.



Rationale

An implementation may either extract the data associated with these files into files named in an implementation-defined manner or may issue an error indicating that the file is being ignored. If pax extracts the file, it is necessary for the user either to be informed of the file that is used or to know the algorithm that pax uses in generating these filenames.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, pax, EXTENDED DESCRIPTION, The cpio Filename.


1.3.8 printf

Question 12: Does printf support the e, E, f, g, and G floating point conversion specifications?

Response

Enter_Yes_or_No

Rationale

The support of these conversions is optional.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, printf, EXTENDED DESCRIPTION.


1.3.9 sh

Question 13: Is the environment variable IFS ignored when the shell is invoked?

Response

Enter_Yes_or_No

Rationale

The specification allows the sh command ignore the setting of the IFS environment variable on invocation. The setting of this variable has been used to breach security on systems which use the shell to interpret a call to the system() and execvp() interfaces.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, sh, ENVIRONMENT VARIABLES, IFS.


1.3.10 touch

Question 14: What is the latest date after the Epoch that can be used by touch?

Response

Enter_Response

Rationale

Because of the limitations on the storage of times in the stat structure associated with a file, there is a limitation on the valid dates that can be specified to touch. This is directly related to the value that can be stored in the integer or real-floating type time_t.

Reference

IEEE Std 1003.1, 2003 Edition, Shell and Utilities, Issue 6, Chapter 4, Utilities, touch, OPTIONS, -t.


1.4 Supported Environments

Question 15: 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.
Enter_Yes_or_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.
Enter_Yes_or_No
The implementation provides an execution environment with
32-bit int, and 64-bit long, pointer and off_t types.
Enter_Yes_or_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.
Enter_Yes_or_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.

 

 

 

 

 

 

 

 

 


3. Change History

Date Name Comment
New    
     
     

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.