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

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1298 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 1298.


Report 1298 Actions


    Problem Report Number 1298
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0580
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1998-07-10 08:00
    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 CAPIbase/readv 70
    Problem Summary TSD4U.00238 This test needs to set the size of the file before it reads from it.
    Problem Text
    There are multiple problems with this test, two of which have been
    addressed by TSD4U.00225 (on systems that don't support the 64-bit
    compilation environment) and TSD4U.00222 (on systems that support a
    64-bit compilation environment but not a 64-bit execution environment).
    Note that because of the problem noted in TSD4U.00225 (makefile test
    for "unsupported" rather than "undefined" for getconf options), this
    test is also wrongly testing the unsupported XBS5_LP64_OFF64
    and XBS5_LPBIG_OFFBIG environments on the system under test. However,
    the test continues because as per XSH5, XBS5_ILP64_OFF64_CFLAGS
    and XBS5_LPBIG_OFFBIG_CFLAGS are still valid options to getconf
    though we return the null string for each in this case. This results
    in make creating default 32-bit, off32 binaries, when the test is
    expecting LP64_OFF64 and LPBIG_OFFBIG binaries.

    Once we can get by the failures noted above, we are left with the remaining
    failure with readv() which is occuring in the valid 32-bit tests as well:

    ERROR: In LFS program: readv() did not fail as expected. Expected:
    -1 Recevied:

    This failure is the result of an error in the test. The test attempts
    to read past a small off_t file's limit expecting the read to fail. The
    read does not fail however, because the file has no size or data. Hence
    the readv() statement returns 0 because there is no data to read. This
    test functions properly if it is updated such that the created file has
    data or a size established so there is something to read. update, the
    test functions correctly.
    Test Output
    TEST CASE: readv

    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: Wait for child
    INFO: Read child's test result
    ERROR: In LFS program: readv() did not fail as expected. Expected: -1 Recevied: 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_ILP32_OFFBIG(64-bit off_t) environment, passing
    it the open file descriptor
    TEST: No data transfer takes place past the offset maximum for the file
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In LFS program: readv() did not fail as expected. Expected: -1 Recevied: 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_ILP64_OFF64(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) environment, passing
    it the open file descriptor
    TEST: No data transfer takes place past the offset maximum for the file
    PREP: Wait for child
    INFO: Read child's test result
    ERROR: In LFS program: readv() did not fail as expected. Expected: -1 Recevied: 0
    PREP: Connect child's pipe to stdout
    PREP: Execute a program compiled in XBS5_LPBIG_OFFBIG(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) environment, passing
    it the open file descriptor
    TEST: No data transfer takes place past the offset maximum for the file
    70 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We agree this is a Test Suite Deficiency in the test suite versions listed.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Test Suite Deficiency (TSD)
    Review Conclusion
    This is an agreed Test Suite Deficiency.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority