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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1616 Actions


    Problem Report Number 1616
    Submitter's Classification Specification problem
    State Resolved
    Resolution Permanent Interpretation (PIN)
    Problem Resolution ID PIN.X.0173
    Raised 1996-08-14 08:00
    Updated 2003-03-13 08:00
    Published 1996-11-17 08:00
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.1.0
    Test Identification CAPI.os/files/unlink 2
    Specification System Interfaces and Libraries Issue 4 Version 2
    Location in Spec See Problem Text
    Problem Summary PIN4U.00039 This request seeks a permanent interpretation for implementations that follow historical practice
    Problem Text
    Although these tests are testing to the XSH4v2 specification as currently
    worded, we believe the specification is in error in making the following
    statement:

    The unlink() function will fail if:

    [EBUSY] The file named by the path argument cannot be unlinked
    because it is being used by the system or another process
    and the implementation considers this an error, or the file
    named by path is a named STREAM.

    In the case of STREAMS pipes, the conventional method is to remove (or
    unlink()) the device from the filesystem. Without unlink(), there is no
    defined method for removing named STREAMS created by mkfifo(). In other
    cases of named STREAMS, the easiest and most common method for cleanup
    is to unlink() the pathname.

    Allowing unlink() to support the removal of a named STREAM is consistent
    with historical SVR4 implementations. This allows the cleaning up of the
    filesystem of orphaned named STREAMS without requiring special programs
    to do so.

    We believe the specification (and test suite) should allow both behaviors
    and as such the description for EBUSY should be changed to:

    [EBUSY] The file named by the path argument cannot be unlinked
    because it is being used by the system or another process
    and the implementation considers this an error, or the file
    named by path is a named STREAM and the implementation
    considers this an error.
    Test Output
    TEST CASE: unlink

    TEST PURPOSE #2
    EBUSY in errno, return -1, and not unlink the file on
    a call to int unlink(const char *path) when the file
    named by path is a named STREAM.
    PREP: Create a regular file
    PREP: Get configured VSU_STREAM_DEV device name
    PREP: Open a streams device and associate a pathname
    with it
    TEST: unlink(path) when path refers to a named
    STREAM returns -1
    ERROR: The call to unlink() did not return the correct
    value
    Expected: -1 Received: 0
    2 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.

    This is not a grey area. The specification is clear and the test
    is consistent with the spec wording.

    The role of IRs are to interpret, but not to modify the specification.
    The base resolution process is provided for that purpose.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    This request was initially refused, however it is now being circulated to the
    Base Working Group as a result of an appeal.

    Review Type Expert Group Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    This item was discussed at last weeks Base WG meeting.
    The group ruled that the current requirement was troublesome
    in that on some implementations this led to resources being consumed
    that were then not released. A PIN is recommended.

    The EBUSY in unlink() for Eastwood has been updated to:
    [EBUSY] The file named by the path argument cannot be unlinked
    because it is being used by the system or another process
    and the implementation considers this an error, or the
    file named by path is a named STREAM and the
    implementation considers this an error.


    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Permanent Interpretation (PIN)
    Review Conclusion
    A Permanent Interpretation is granted.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority