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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 0763 Actions


    Problem Report Number 0763
    Submitter's Classification Specification problem
    State Resolved
    Resolution Temporary Interpretation (TIN)
    Problem Resolution ID TIN.X.0054
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1995-09-07 08:00
    Product Standard Commands and Utilities V2 (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSC version 4.1.4
    Test Identification POSIX.cmd/mkdir/mkdir 28-32,34
    Specification Commands and Utilities Issue 4 Version 2
    Location in Spec See Problem Text
    Problem Summary TIN4C.00007 The tests expect that the mkdir -m command will be affected by the current setting of umask. This is not necessary.
    Problem Text
    The tests expect that the mkdir -m command will be affected
    by the current setting of umask. This is not necessary.

    Historically, the -m option was used to explicitly set permissions
    to the those specified by the mode argument. The umask was
    irrelevant in this case. Our implementation supports this
    behavior.

    The behavior of the -m option and its interaction with the
    umask was recently the subject of an interpretation (PASC
    1003.2-92 #67) with the resolution being that the standard was
    unclear on the matter and would be referred to the sponsor.

    We believe this interpretation supports our implementation's
    behavior and ask that a waiver be granted.
    Test Output
    400|1 28 1 16:21:15|IC Start
    200|1 1 16:21:15|TP Start
    520|1 1 1179660 1 1|Assertion #28 (A): When a single mode clause has op '+' and only param are specified
    520|1 1 1179660 1 1|Note: The behavior associated with this assertion is currently
    520|1 1 1179660 1 2|the subject of an IEEE POSIX.2 interpretation request and may
    520|1 1 1179660 1 3|change in a future revision of POSIX.2.
    520|1 1 1179660 1 4|Command failed: 'expr "Xdrwxrwxrwx" : 'Xdrw[a-z]r-[a-z]--[a-z]' >/dev/null 2>&1'
    220|1 1 1 16:21:23|FAIL
    410|1 28 1 16:21:24|IC End
    400|1 29 1 16:21:25|IC Start
    200|1 1 16:21:26|TP Start
    520|1 1 1179660 1 1|Assertion #29 (A): When single mode clause has only the op '+'
    520|1 1 1179660 1 1|Note: The behavior associated with this assertion is currently
    520|1 1 1179660 1 2|the subject of an IEEE POSIX.2 interpretation request and may
    520|1 1 1179660 1 3|change in a future revision of POSIX.2.
    520|1 1 1179660 1 4|Command failed: 'expr "Xdrwxrwxrwx" : 'Xdrw[a-z]r-[a-z]r-[a-z]' >/dev/null 2>&1'
    220|1 1 1 16:21:34|FAIL
    410|1 29 1 16:21:35|IC End
    400|1 30 1 16:21:36|IC Start
    200|1 1 16:21:36|TP Start
    520|1 1 1179660 1 1|Assertion #30 (A): When a single mode clause has op '-' and who and param are specified
    520|1 1 1179660 1 1|Note: The behavior associated with this assertion is currently
    520|1 1 1179660 1 2|the subject of an IEEE POSIX.2 interpretation request and may
    520|1 1 1179660 1 3|change in a future revision of POSIX.2.
    520|1 1 1179660 1 4|Command failed: 'expr "Xdrwxrwxr--" : 'Xdrw[a-z]r-[a-z]--[A-Z-]' >/dev/null 2>&1'
    220|1 1 1 16:21:48|FAIL
    410|1 30 1 16:21:48|IC End
    400|1 31 1 16:21:50|IC Start
    200|1 1 16:21:50|TP Start
    520|1 1 1179660 1 1|Assertion #31 (A): When a single mode clause has op '-' and only param are specified
    520|1 1 1179660 1 1|Note: The behavior associated with this assertion is currently
    520|1 1 1179660 1 2|the subject of an IEEE POSIX.2 interpretation request and may
    520|1 1 1179660 1 3|change in a future revision of POSIX.2.
    520|1 1 1179660 1 4|Command failed: 'expr "Xdr--r--r--" : 'Xdr-[A-Z-]r-[A-Z-]--[A-Z-]' >/dev/null 2>&1'
    220|1 1 1 16:22:00|FAIL
    410|1 31 1 16:22:00|IC End
    400|1 32 1 16:22:02|IC Start
    200|1 1 16:22:02|TP Start
    520|1 1 1179660 1 1|Assertion #32 (A): When single mode clause has only the op '-'
    520|1 1 1179660 1 1|Note: The behavior associated with this assertion is currently
    520|1 1 1179660 1 2|the subject of an IEEE POSIX.2 interpretation request and may
    520|1 1 1179660 1 3|change in a future revision of POSIX.2.
    520|1 1 1179660 1 4|Command failed: 'expr "Xdrwxrwxrwx" : 'Xdrw[a-z]r-[a-z]r-[a-z]' >/dev/null 2>&1'
    220|1 1 1 16:22:12|FAIL
    410|1 32 1 16:22:13|IC End
    400|1 34 1 16:22:25|IC Start
    200|1 1 16:22:25|TP Start
    520|1 1 1179660 1 1|Assertion #34 (A): When a single mode clause has op '=' and only param are specified
    520|1 1 1179660 1 1|Note: The behavior associated with this assertion is currently
    520|1 1 1179660 1 2|the subject of an IEEE POSIX.2 interpretation request and may
    520|1 1 1179660 1 3|change in a future revision of POSIX.2.
    520|1 1 1179660 1 4|Command failed: 'expr "Xd-wx-wx-wx" : 'Xd-w[a-z]--[a-z]--[a-z]' >/dev/null 2>&1'
    220|1 1 1 16:22:34|FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    The pasc-1003.2-67 interpretation request states

    Should mkdir -m mode utilize the current umask in setting permissions?
    I would propose that it does not.

    The test assertion in 2003.2 Draft 9 say it should based on the
    DESCRIPTION for mkdir which says it "shall perform actions equivalent
    to the POSIX.1 mkdir()"

    However, existing practise in System V (on which the rationale
    says this option was added) is to set the permission to the explict
    value specified by the mode argument to -m; and the text in lines
    6950-6956 state that "The mode option-argument shall be the same as
    the mode operand defined for the chmod utility". The chmod utility
    ignores the umask.

    So for an example, say
    $ umask 22
    $ mkdir -m 456 foodir
    $ ls -ld

    gives (on System V)

    dr--r-xrw- 2 andrew relx 512 Jul 1 04:29 foodir

    whereas the 2003.2 draft wants

    dr--r-xr-- 2 andrew relx 512 Jul 1 04:29 foodir

    The System V behaviour seems more inituitive as a user, and usage has
    been to, in a single command set the mode explicitly with the -m option,
    rather than call umask followed by mkdir -m xxx.

    My understanding of the rationale text lines 7184-7187 "For example,
    by default, the mode of the directory is affected by the file mode
    creation mask" is that this does not apply to the -m case, which
    is not the default.

    The official repsonse is

    The standard is unclear on this issue, and no conformance distinction can
    be made between alternative implementations based on this. This is being
    referred to the sponsor.

    Our opinion is this interpretation renders mkdir's interaction
    with the current umask undefined when the -m option is used.

    Anticipating future alignment of the POSIX 2003.2 methods which
    the tests listed above are based on with pasc-1003.2-67 a Temporary
    Interpretation is recommended.


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

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority