HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1119 Details

Help Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges

This page provides all information on Problem Report 1119.


Report 1119 Actions


    Problem Report Number 1119
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0321
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries Extended V2 (UNIX 98)
    Certification Program The Open Brand certification program
    Test Suite VSU version 5.0.2
    Test Identification base/readv 70, 71, 72
    Problem Summary PG4U.00152 Patch 5.0.3 exists as a workaround. Apply this patch prior to branding.
    Problem Text

    These are slightly different instances of the failures described in
    TSD4U.00238 and TSD4U.00239. The argument for test case #71 parallels
    that for #70 and #72.

    Test Output

    TEST PURPOSE #70
    If the implementation allows creation of a file
    description with an offset maximum less than the
    largest size it supports for an off_t:
    On a call to ssize_t readv(int fildes, const struct
    iovec *iov, int iovcnt) for a regular file data
    transfer shall not occur past the offset maximum
    established in the open file description associated
    with fildes.
    PREP: Check for existence of programming environments
    PREP: Obtain off_t size in XBS5_ILP32_OFF32 environment
    PREP: Obtain off_t size in XBS5_ILP32_OFFBIG environment
    PREP: Obtain off_t size in XBS5_ILP64_OFF64 environment
    PREP: Obtain off_t size in XBS5_LPBIG_OFFBIG environment
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a regular file
    set the offset to a value that is less than which can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_ILP32_OFFBIG(64-bit off_t) enviro
    nment, passing
    it the open file descriptor
    TEST: No data transfer takes place past the offset maximum for the fil
    e
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In LFS program: readv() did not fail as expected. Expected: -1 Re
    cevied: 0
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a regular file
    set the offset to a value that is less than which can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_ILP64_OFF64(64-bit off_t) environ
    ment, passing
    it the open file descriptor
    TEST: No data transfer takes place past the offset maximum for the fil
    e
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In LFS program: readv() did not fail as expected. Expected: -1 Re
    cevied: 0
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In LFS program: readv() did not fail as expected. Expected: -1 Re
    cevied: 0
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a regular file
    set the offset to a value that is less than which can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_LPBIG_OFFBIG(64-bit off_t) enviro
    nment, passing
    it the open file descriptor
    TEST: No data transfer takes place past the offset maximum for the fil
    e
    70 FAIL


    TEST PURPOSE #71
    If the implementation allows creation of a file
    description with an offset maximum less than the
    largest size it supports for an off_t:
    EOVERFLOW in errno and return -1 on a call to ssize_t
    readv(int fildes, const struct iovec *iov, int iovcnt)
    when the file is a regular file, nbyte is greater than
    zero, the starting position is before the end of file,
    and the starting position is equal to the offset
    maximum established in the open file description
    associated with fildes.
    PREP: Check for existence of programming environments
    PREP: Obtain off_t size in XBS5_ILP32_OFF32 environment
    PREP: Obtain off_t size in XBS5_ILP32_OFFBIG environment
    PREP: Obtain off_t size in XBS5_ILP64_OFF64 environment
    PREP: Obtain off_t size in XBS5_LPBIG_OFFBIG environment
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a regular file
    set the offset equal to the value that can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_ILP32_OFFBIG(64-bit off_t) enviro
    nment, passing
    it the open file descriptor
    TEST: readv returns -1 and sets errno to EOVERFLOW when offset is the
    offset maximum
    PREP: Wait for child
    INFO: Read child's test result
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a regular file
    set the offset equal to the value that can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_ILP64_OFF64(64-bit off_t) environ
    ment, passing
    it the open file descriptor
    TEST: readv returns -1 and sets errno to EOVERFLOW when offset is the
    offset maximum
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In 32-bit program: open() failed, errno = 79(Value too large for
    defined data type)
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a regular file
    set the offset equal to the value that can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_LPBIG_OFFBIG(64-bit off_t) enviro
    nment, passing
    it the open file descriptor
    TEST: readv returns -1 and sets errno to EOVERFLOW when offset is the
    offset maximum
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In 32-bit program: open() failed, errno = 79(Value too large for
    defined data type)
    71 UNRESOLVED

    TEST PURPOSE #72
    If the implementation allows creation of a file
    description with an offset maximum less than the
    largest size it supports for an off_t:
    EOVERFLOW in errno and return -1 on a call to ssize_t
    readv(int fildes, const struct iovec *iov, int iovcnt)
    when the file is a regular file, nbyte is greater than
    zero, the starting position is before the end of file,
    and the starting position is greater than the offset
    maximum established in the open file description
    associated with fildes.
    PREP: Check for existence of programming environments
    PREP: Obtain off_t size in XBS5_ILP32_OFF32 environment
    PREP: Obtain off_t size in XBS5_ILP32_OFFBIG environment
    PREP: Obtain off_t size in XBS5_ILP64_OFF64 environment
    PREP: Obtain off_t size in XBS5_LPBIG_OFFBIG environment
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a file that is larger than which can be represented in 32-
    bit off_t,
    set the offset greater than the value that can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_ILP32_OFFBIG(64-bit off_t) enviro
    nment, passing
    it the open file descriptor
    TEST: readv returns -1 and sets errno to EOVERFLOW when offset is beyo
    nd the offset maximum
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In LFS program: readv() did not fail as expected. Expected: -1 Re
    cevied: 0
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a file that is larger than which can be represented in 32-
    bit off_t,
    set the offset greater than the value that can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_ILP64_OFF64(64-bit off_t) environ
    ment, passing
    it the open file descriptor
    TEST: readv returns -1 and sets errno to EOVERFLOW when offset is beyo
    nd the offset maximum
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In 32-bit program: open() failed, errno = 79(Value too large for
    defined data type)
    PREP: Open communication pipe for child
    PREP: Fork a child
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
    environment that:
    opens a file that is larger than which can be represented in 32-
    bit off_t,
    set the offset greater than the value that can be
    represented in 32-bit off_t,
    execs program compiled in XBS5_LPBIG_OFFBIG(64-bit off_t) enviro
    nment, passing
    it the open file descriptor
    TEST: readv returns -1 and sets errno to EOVERFLOW when offset is beyo
    nd the offset maximum
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In 32-bit program: open() failed, errno = 79(Value too large for
    defined data type)
    72 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We recommend this request be refused.

    VSU5.0.3 provides a workaround for these failures. We recommend
    that the implementation be required to apply this patch prior to
    making a single branding run.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused. VSU5.0.3 should be used for the effected
    tests or for the whole test run.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority