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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1581 Actions


    Problem Report Number 1581
    Submitter's Classification Specification problem
    State Resolved
    Resolution Permanent Interpretation (PIN)
    Problem Resolution ID PIN.X.0138
    Raised 1994-07-25 08:00
    Updated 2003-03-13 08:00
    Published 1995-08-18 08:00
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.0.2
    Test Identification CAPI.os/sockets/sendmsg 38
    Specification System Interfaces and Libraries Issue 4 Version 2
    Location in Spec See Problem Text
    Problem Summary PIN4U.00004 Requirement for ENAMETOOLONG is not sensible.
    Problem Text
    The size of sun_path has intentionally been left
    undefined in <sys/un.h>. This was done for good reasons.
    Different implementations have used different sizes.
    For example, BSD4.3 uses a size of 108. BSD4.4 uses a size
    of 104. Since most of the implementations today originated
    from BSD versions, most of the major vendors today use a size
    that ranges from 92 to 108. Changing the size of sun_path
    can create a significant binary compatibility issue especially in
    a client server environment when the client and server are
    relying on a different sun_path size.

    This test purpose is based on the error specification of
    ENONAMETOOLONG in the sendmsg() section. Such specifcation
    implicitly assumes the size of sun_path to be PATH_MAX+1. This
    is too restrictive and in conflict with the spirit of the definition
    of sun_path. It is also in conflict with the spirit of COSE which
    is to unify existing practices.

    Also the PATH_MAX value as returned by pathconf() can be a configurable
    value while the size of sun_path[] has to be a static definition. Tying
    the two together would require applications to recompile everytime the
    value of PATH_MAX is changed.

    The second part of the
    error specification should have bee removed. At the minimum it
    should have been classified as an optional error.
    Test Output
    TEST CASE: sendmsg

    TEST PURPOSE #38
    If the implementation supports the AF_UNIX communications
    domain and a connectionless socket type: ENAMETOOLONG in
    errno and return -1 on a call to sendmsg(int socket,
    const struct msghdr *message, int flags) when the address
    family of the socket is AF_UNIX and the length of the
    path exceeds PATH_MAX.

    JOURNAL FILE OUTPUT:
    --------------------

    TEST: AF_UNIX SOCK_DGRAM
    PREP: Create test sockaddr_un: path = ../tmp/unix.a20811
    PREP: Server: create socket
    PREP: Server: bind address ../tmp/unix.a20811 to socket
    PREP: Server: notify client server is ready
    PREP: Server: read and echo data
    INFO: Server received signal 15
    INFO: Server terminated
    PREP: Wait for server to be ready
    PREP: Create a socket
    PREP: Obtain pathconf(_PC_PATH_MAX) for ../tmp
    INFO: pathconf(_PC_PATH_MAX) for ../tmp is 1023
    PREP: Make a path PC_PATH_MAX + 1 characters long
    TEST: sendmsg fails with ENAMETOOLONG
    ERROR: Size of sun_path (92) insufficient for size of file
    name (1025)

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    This was already the subject of Base Resolution 43, which
    suggested the applicable tests be changed to give warning
    result codes in this situation.

    A permanent interpretation is recommended.

    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