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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1925 Actions


    Problem Report Number 1925
    Submitter's Classification Specification problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0561
    Raised 1999-04-20 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 VSX4 version 4.4.3
    Test Identification ANSI.os/streamio/fopen 25
    Problem Summary PG5R.004 This IR is for the following tests: ANSI.os/streamio/fopen 25 ANSI.os/streamio/freopen 26 ANSI.os/streamio/remove 14 POSIX.os/file/access 38 POSIX.os/file/chdir 7 POSIX.os/file/chmod 12 POSIX.os/file/...
    Problem Text
    This IR is for the following tests:

    ANSI.os/streamio/fopen 25
    ANSI.os/streamio/freopen 26
    ANSI.os/streamio/remove 14
    POSIX.os/file/access 38
    POSIX.os/file/chdir 7
    POSIX.os/file/chmod 12
    POSIX.os/file/chown 11
    POSIX.os/file/creat 23
    POSIX.os/file/link 17
    POSIX.os/file/mkdir 14
    POSIX.os/file/mkfifo 12
    POSIX.os/file/open 37
    POSIX.os/file/opendir 10
    POSIX.os/file/pathconf 21
    POSIX.os/file/rename 27
    POSIX.os/file/rmdir 15
    POSIX.os/file/stat 9
    POSIX.os/file/unlink 14
    POSIX.os/file/utime 13
    POSIX.os/procprim/execl 37
    POSIX.os/procprim/execle 37
    POSIX.os/procprim/execlp 37
    POSIX.os/procprim/execv 37
    POSIX.os/procprim/execve 37
    POSIX.os/procprim/execvp 37
    XOPEN.os/misc/ftw 9
    XOPEN.os/procenv/chroot 7

    This IR is for both VSX 4.4.3 and VSX+NFS 4.4.3 used for
    branding UNIX98.

    This request is to extend PIN4.006 for UNIX 98 branding.
    The UNIX 98 specification did not change the UNIX 95 requirements in
    this area. And POSIX 1003.1a still has not been approved as a formal
    standard.

    Test Output
    ************************************************************************
    /tset/ANSI.os/streamio/fopen/T.fopen 25 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and NULL returned by fopen() when the length of the path
    exceeds PATH_MAX bytes;
    otherwise
    a call to fopen() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component FOPEN Assertion 8.2.3.11-13(A)

    Test Strategy:
    CREATE directory using crdir()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    OPEN stream using a pathname of length PATH_MAX in fopen()
    VERIFY that fopen() returned successfully
    OPEN stream using a pathname of length PATH_MAX+1 in fopen()
    VERIFY that fopen() returned NULL and errno was set to ENAMETOOLONG
    OTHERWISE
    OPEN stream using a pathname of length PCTS_PATH_MAX in fopen()
    VERIFY that fopen() returned successfully

    Test Information:
    fopen(<1023 char path>, "w") did not return NULL
    ************************************************************************
    ************************************************************************
    /tset/ANSI.os/streamio/freopen/T.freopen 26 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and NULL returned by freopen() when the length of the path
    exceeds PATH_MAX bytes;
    otherwise
    a call to freopen() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component FREOPEN Assertion 8.2.3.11-15(A)

    Test Strategy:
    OPEN stream using fopen()
    CREATE directory using crdir()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    REOPEN stream using a pathname of length PATH_MAX in freopen()
    VERIFY that freopen() returned successfully
    OPEN stream using fopen()
    REOPEN stream using a pathname of length PATH_MAX+1 in freopen()
    VERIFY that freopen() returned NULL and errno was set to
    ENAMETOOLONG
    OTHERWISE
    REOPEN stream using a pathname of length PCTS_PATH_MAX in freopen()
    VERIFY that freopen() returned successfully

    Test Information:
    freopen(<1023 char path>, "w", fp) did not return NULL
    ************************************************************************
    ************************************************************************
    /tset/ANSI.os/streamio/remove/T.remove 14 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to remove(path) when the
    length of the path argument exceeds the maximum number of characters
    in a pathname {PATH_MAX};
    otherwise
    a call to remove(path) when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.

    Test Strategy:
    CREATE directory using crdir()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    REMOVE a pathname of length PATH_MAX using remove()
    VERIFY that remove() returned 0
    REMOVE a pathname of length PATH_MAX+1 using remove()
    VERIFY that remove() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    REMOVE a pathname of length PCTS_PATH_MAX using remove()
    VERIFY that remove() returned 0

    Test Information:
    remove("<1023 char path>") did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/access/T.access 38 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to access(path, amode)
    when the length of the path argument exceeds the maximum number of
    characters in a pathname {PATH_MAX};
    otherwise
    a call to access(path, amode) when the length of the path argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component ACCESS Assertion 5.6.3.4-43(A)

    Test Strategy:
    CREATE file using creat() with MODEANY
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    ACCESS the file via a pathname of length PATH_MAX with the access
    mode F_OK using access()
    VERIFY that access() returned 0
    ACCESS the file via a pathname of length PATH_MAX+1 with the access
    mode F_OK using access()
    VERIFY that access() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    ACCESS the file via a pathname of length PCTS_PATH_MAX with the
    access mode F_OK using access()
    VERIFY that access() returned 0

    Test Information:
    access("<1023 char name>", F_OK) did not give correct results
    file mode: 0100777, owner: 0, group: 2000
    process real uid: 2000, real gid: 2000
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/chdir/T.chdir 7 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno, a return value of -1 and the current directory remains
    unchanged on a call to chdir(path) when the length of the path
    argument exceeds the maximum number of characters in a pathname
    {PATH_MAX};
    otherwise
    a call to chdir(path) when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component CHDIR Assertion 5.2.1.4-28(A)

    Test Strategy:
    CREATE directory using crdir()
    CREATE child process using cppair()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not
    -1
    CHANGE directory to the new directory via a pathname of length
    PATH_MAX using chdir()
    VERIFY that chdir() returned 0
    CHANGE directory to the parent directory using chdir("..")
    CHANGE directory to the new directory via a pathname of length
    PATH_MAX+1 using chdir()
    VERIFY that chdir() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CHANGE directory to the new directory via a pathname of length
    PCTS_PATH_MAX using chdir()
    VERIFY that chdir() returned 0

    Test Information:
    chdir("<1023 char path>") did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/chmod/T.chmod 12 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to chmod(path, mode), when
    the length of the path argument exceeds the maximum number of
    characters in a pathname {PATH_MAX};
    otherwise
    a call to chmod(path, mode), when the length of the path argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component CHMOD Assertion 5.6.4.4-33(A)

    Test Strategy:
    CREATE file using crfile()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CHANGE the mode of the file via a pathname of length PATH_MAX using
    chmod() with S_IRWXU
    VERIFY that chmod() returned 0
    CHANGE the mode of the file via a pathname of length PATH_MAX+1
    using chmod() with S_IRWXU
    VERIFY that chmod() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CHANGE the mode of the file via a pathname of length PCTS_PATH_MAX
    using chmod() with S_IRWXU
    VERIFY that chmod() returned 0

    Test Information:
    chmod("<1023 char path>", 0700) did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/chown/T.chown 11 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to chown(path, owner,
    group) when the length of path argument exceeds the maximum number of
    characters in a pathname {PATH_MAX};
    otherwise
    a call to chown(path, owner, group) when the length of path argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component CHOWN Assertion 5.6.5.4-32(A)

    Test Strategy:
    WHEN testing the XNFS specification:
    CREATE child process using tet_fork()
    CHANGE to a directory on a file system that does not map the user id
    CREATE file using crfile()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CHANGE the owner and group of the file via a pathname of length
    PATH_MAX using chown() with effective group and user ids
    VERIFY that chown() returned 0
    CHANGE the owner and group of the file via a pathname of length
    PATH_MAX+1 using chown() with effective group and user ids
    VERIFY that chown() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CHANGE the owner and group of the file via a pathname of length
    PCTS_PATH_MAX using chown() with effective group and user ids
    VERIFY that chown() returned 0

    Test Information:
    chown("<1023 char path>", 0, 2000) did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/creat/T.creat 23 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to creat(path, mode) when
    the length of the path argument exceeds the maximum number of
    characters in a pathname {PATH_MAX};
    otherwise
    a call to creat(path, mode) when the length of the path argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component CREAT Assertion 5.3.2.4-50(A)
    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE a file via a pathname of length PATH_MAX using creat()
    VERIFY that creat() returned successfully
    CREATE a file via a pathname of length PATH_MAX+1 using creat()
    VERIFY that creat() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE a file via a pathname of length PCTS_PATH_MAX using creat()
    VERIFY that creat() returned successfully

    Test Information:
    creat("<1023 char path>", 0777) did not give correct results
    RETURN VALUES: expected: -1, observed: 5
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/link/T.link 17 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to link(path1, path2) when
    the length of the path1 or the path2 argument exceeds the maximum
    number of characters in a pathname {PATH_MAX};
    otherwise
    a call to link(path1, path2) when the length of the path1 or the path2
    argument equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component LINK Assertion 5.3.4.4-52(A)
    Posix Ref: Component LINK Assertion 5.3.4.4-53(A)

    Test Strategy:
    CREATE file using creat()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE link to file via a pathname of length PATH_MAX using link()
    with this pathname as path1
    VERIFY that link() returned 0
    CREATE link to file via a pathname of length PATH_MAX+1 using link()
    with this pathname as path1
    VERIFY that link() returned -1 and errno was set to ENAMETOOLONG
    CREATE file using creat()
    CREATE link to file using link() with a pathname of length PATH_MAX
    as path2
    VERIFY that link() returned 0
    CREATE link to file using link() with a pathname of length
    PATH_MAX+1 as path2
    VERIFY that link() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE link to file via a pathname of length PCTS_PATH_MAX using
    link() with this pathname as path1
    VERIFY that link() returned 0
    CREATE link to file using link() with a pathname of length
    PCTS_PATH_MAX as path2
    VERIFY that link() returned 0

    Test Information:
    link("<1023 char path>", "link-t.17b") did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)
    link("link-t.17b", "<1023 char path>") did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/mkdir/T.mkdir 14 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to mkdir(path, mode) when
    the length of path argument exceeds the maximum number of characters
    in a pathname {PATH_MAX};
    otherwise
    a call to mkdir(path, mode) when the length of path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component MKDIR Assertion 5.4.1.4-35(A)

    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE a directory via a pathname of length PATH_MAX using mkdir()
    VERIFY that mkdir() returned 0
    CREATE a directory via a pathname of length PATH_MAX+1 using mkdir()
    VERIFY that mkdir() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE a directory via a pathname of length PCTS_PATH_MAX using
    mkdir()
    VERIFY that mkdir() returned 0

    Test Information:
    mkdir("<1023 char path>", 0777) did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/mkfifo/T.mkfifo 12 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno, a return value of -1 and the FIFO shall not be created on a
    call to mkfifo(path, mode) when the length of the path argument
    exceeds the maximum number of characters in a pathname {PATH_MAX};
    otherwise
    a call to mkfifo(path, mode) when the length of the path argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component MKFIFO Assertion 5.4.2.4-33(A)

    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE FIFO with a pathname of length PATH_MAX using mkfifo()
    VERIFY that mkfifo() returned 0
    CREATE FIFO with a pathname of length PATH_MAX+1 using mkfifo()
    VERIFY that mkfifo() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE FIFO with a pathname of length PCTS_PATH_MAX using mkfifo()
    VERIFY that mkfifo() returned 0

    Test Information:
    mkfifo("<1023 char path>", 0777) did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/open/T.open 37 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to open(path, oflag) when
    the length of the path argument exceeds the maximum number of
    characters in a pathname {PATH_MAX};
    otherwise
    a call to open(path, oflag) when the length of the path argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component OPEN Assertion 5.3.1.4-64(A)

    Test Strategy:
    CREATE file using creat()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    OPEN the file via a pathname of length PATH_MAX using open() with
    O_RDONLY
    VERIFY that open() returned successfully
    OPEN the file via a pathname of length PATH_MAX+1 using open() with
    O_RDONLY
    VERIFY that open() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    OPEN the file via a pathname of length PCTS_PATH_MAX using open()
    with O_RDONLY
    VERIFY that open() returned successfully

    Test Information:
    open("<1023 char path>", O_RDONLY) did not give correct results
    RETURN VALUES: expected: -1, observed: 5
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/opendir/T.opendir 10 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of NULL on a call to opendir(dirname) when
    the length of the dirname argument exceeds the maximum number of
    characters in a pathname {PATH_MAX};
    otherwise
    a call to opendir(dirname) when the length of the dirname argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component OPENDIR Assertion 5.1.2.4-31(A)

    Test Strategy:
    CREATE directory using crdir()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    OPEN the new directory via a pathname of length PATH_MAX using
    opendir()
    VERIFY that opendir() did not return NULL
    OPEN the new directory via a pathname of length PATH_MAX+1 using
    opendir()
    VERIFY that opendir() returned NULL and errno was set to
    ENAMETOOLONG
    OTHERWISE
    OPEN the new directory via a pathname of length PCTS_PATH_MAX using
    opendir()
    VERIFY that opendir() did not return NULL

    Test Information:
    opendir("<1023 char path>") succeeded unexpectedly

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/pathconf/T.pathconf 21 Failed

    Test Description:
    The value returned by pathconf(path, _PC_PATH_MAX) when path refers to
    a directory and path is the current working directory, is the maximum
    length of a relative pathname.
    Posix Ref: Component PATHCONF Assertion 5.7.1.2-37(A)

    Test Strategy:
    OBTAIN a pathname that is too long using pathtoolng() - (tsetlib)
    NOTE - this has the effect of using pathconf() on the current
    directory with _PC_PATH_MAX as required by the test
    CREATE file using creat()
    VERIFY that creat() returned -1 and errno was set to ENAMETOOLONG

    Test Information:
    creat() with relative path longer than PATH_MAX did not fail with
    ENAMETOOLONG
    RETURN VALUES: expected: -1, observed: 5
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/rename/T.rename 27 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno, a return value of -1 and the named files are not changed on
    a call to rename(old, new) when the length of the old or new argument
    exceeds the maximum number of characters in a pathname {PATH_MAX};
    otherwise
    a call to rename(old, new) when the length of the old or new argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component RENAME Assertion 5.5.3.4-56(A)

    Test Strategy:
    CREATE file using crfile()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    RENAME the file via a pathname of length PATH_MAX to new pathname
    using rename()
    VERIFY that rename() returned 0
    RENAME the file via a pathname of length PATH_MAX+1 to new pathname
    using rename()
    VERIFY that rename() returned -1 and errno was set to ENAMETOOLONG
    CREATE file using crfile()
    RENAME the file to a new pathname of length PATH_MAX using rename()
    VERIFY that rename() returned 0
    CREATE file using crfile()
    RENAME the file to a new pathname of length PATH_MAX+1 using
    rename()
    VERIFY that rename() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    RENAME the file via a pathname of length PCTS_PATH_MAX to new
    pathname using rename()
    VERIFY that rename() returned 0
    CREATE file using crfile()
    RENAME the file to a new pathname of length PCTS_PATH_MAX using
    rename()
    VERIFY that rename() returned 0

    Test Information:
    rename("<1023 char path>", "rename-t.27b") did not give correct
    results
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 2 (ENOENT)
    rename("rename-t.27b", "<1023 char path>") did not give correct
    results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/rmdir/T.rmdir 15 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to rmdir(path) when the
    length of the path argument exceeds the maximum number of characters
    in a pathname {PATH_MAX}, and the directory shall not be removed;
    otherwise
    a call to rmdir(path) when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component RMDIR Assertion 5.5.2.4-36(A)

    Test Strategy:
    CREATE directory using crdir()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    REMOVE the directory via a pathname of length PATH_MAX using rmdir()
    VERIFY that rmdir() returned 0
    CREATE directory using crdir()
    REMOVE the directory via a pathname of length PATH_MAX+1 using
    rmdir()
    VERIFY that rmdir() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    REMOVE the directory via a pathname of length PCTS_PATH_MAX using
    rmdir()
    VERIFY that rmdir() returned 0

    Test Information:
    rmdir("<1023 char path>") did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************

    ************************************************************************
    /tset/POSIX.os/files/stat/T.stat 9 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to stat(path, buf) when
    the length of the path argument exceeds the maximum number of
    characters in a pathname {PATH_MAX};
    otherwise
    a call to stat(path, buf) when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component STAT Assertion 5.6.2.4-39(A)

    Test Strategy:
    CREATE file using crfile()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    OBTAIN status information for a pathname of length PATH_MAX using
    stat()
    VERIFY that stat() returned 0
    OBTAIN status information for a pathname of length PATH_MAX+1 using
    stat()
    VERIFY that stat() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    OBTAIN status information for a pathname of length PCTS_PATH_MAX
    using stat()
    VERIFY that stat() returned 0

    Test Information:
    stat("<1023 char path>", buf) did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/unlink/T.unlink 14 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to unlink(path) when the
    length of the path argument exceeds the maximum number of characters
    in a pathname {PATH_MAX};
    otherwise
    a call to unlink(path) when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component UNLINK Assertion 5.5.1.4-37(A)

    Test Strategy:
    CREATE file using creat()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    UNLINK the file via a pathname of length PATH_MAX using unlink()
    VERIFY that unlink() returned 0
    CREATE file using creat()
    UNLINK the file via a pathname of length PATH_MAX+1 using unlink()
    VERIFY that unlink() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    UNLINK the file via a pathname of length PCTS_PATH_MAX using
    unlink()
    VERIFY that unlink() returned 0

    Test Information:
    unlink("<1023 char path>") did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/files/utime/T.utime 13 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and a return value of -1 on a call to utime(path, times) when
    the length of the path argument exceeds the maximum number of
    characters in a pathname {PATH_MAX};
    otherwise
    a call to utime(path, times) when the length of the path argument
    equals PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component UTIME Assertion 5.6.6.4-35(A)

    Test Strategy:
    CREATE file using creat()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    SET access and modification times for a pathname of length PATH_MAX
    using utime()
    VERIFY that utime() returned 0
    SET access and modification times for a pathname of length
    PATH_MAX+1 using utime()
    VERIFY that utime() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    SET access and modification times for a pathname of length
    PCTS_PATH_MAX using utime()
    VERIFY that utime() returned 0

    Test Information:
    utime("<1023 char path>", NULL) did not give correct results
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/procprim/exec/T.execl 37 Failed

    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and -1 returned by execl() when the length of the path
    argument exceeds the number of characters in a pathname {PATH_MAX};
    Neither the argv[] and envp[] arrays of pointers nor the strings to
    which those array elements point are modified. File descriptors
    marked close-on-exec are not closed, signals set to be caught are not
    set to default, neither the effective user ID nor the effective group
    ID of the current process is changed, and neither the value of the
    global variable environ nor the pointers it contains nor the strings
    to which they point are modified.
    otherwise
    a call to execl() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component EXECL Assertion 3.1.2.4-59(A)

    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX using execl()
    VERIFY that execl() succeeded
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX+1 using execl()
    VERIFY that execl() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE child process
    EXECUTE file via a pathname of length PCTS_PATH_MAX using execl()
    VERIFY that execl() succeeded

    Test Information:
    execl(../exec_tok, ...) when ../exec_tok prefixed by 1012 char path
    did not return expected values
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/procprim/exec/T.execle 37 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and -1 returned by execle() when the length of the path
    argument exceeds the number of characters in a pathname {PATH_MAX};
    Neither the argv[] and envp[] arrays of pointers nor the strings to
    which those array elements point are modified. File descriptors
    marked close-on-exec are not closed, signals set to be caught are not
    set to default, neither the effective user ID nor the effective group
    ID of the current process is changed, and neither the value of the
    global variable environ nor the pointers it contains nor the strings
    to which they point are modified.
    otherwise
    a call to execle() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component EXECLE Assertion 3.1.2.4-59(A)

    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX using execle()
    VERIFY that execle() succeeded
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX+1 using execle()
    VERIFY that execle() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE child process
    EXECUTE file via a pathname of length PCTS_PATH_MAX using execle()
    VERIFY that execle() succeeded

    Test Information:
    execle(../exec_tok, ...) when ../exec_tok prefixed by 1012 char path
    did not return expected values
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/procprim/exec/T.execlp 37 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and -1 returned by execlp() when the length of the path
    argument exceeds the number of characters in a pathname {PATH_MAX};
    Neither the argv[] and envp[] arrays of pointers nor the strings to
    which those array elements point are modified. File descriptors
    marked close-on-exec are not closed, signals set to be caught are not
    set to default, neither the effective user ID nor the effective group
    ID of the current process is changed, and neither the value of the
    global variable environ nor the pointers it contains nor the strings
    to which they point are modified.
    otherwise
    a call to execlp() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component EXECLP Assertion 3.1.2.4-59(A)

    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX using execlp()
    VERIFY that execlp() succeeded
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX+1 using execlp()
    VERIFY that execlp() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE child process
    EXECUTE file via a pathname of length PCTS_PATH_MAX using execlp()
    VERIFY that execlp() succeeded

    Test Information:
    execlp(../exec_tok, ...) when ../exec_tok prefixed by 1012 char path
    did not return expected values
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/procprim/exec/T.execv 37 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and -1 returned by execv() when the length of the path
    argument exceeds the number of characters in a pathname {PATH_MAX};
    Neither the argv[] and envp[] arrays of pointers nor the strings to
    which those array elements point are modified. File descriptors
    marked close-on-exec are not closed, signals set to be caught are not
    set to default, neither the effective user ID nor the effective group
    ID of the current process is changed, and neither the value of the
    global variable environ nor the pointers it contains nor the strings
    to which they point are modified.
    otherwise
    a call to execv() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component EXECV Assertion 3.1.2.4-59(A)

    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX using execv()
    VERIFY that execv() succeeded
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX+1 using execv()
    VERIFY that execv() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE child process
    EXECUTE file via a pathname of length PCTS_PATH_MAX using execv()
    VERIFY that execv() succeeded

    Test Information:
    execv(../exec_tok, ...) when ../exec_tok prefixed by 1012 char path
    did not return expected values
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/procprim/exec/T.execve 37 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and -1 returned by execve() when the length of the path
    argument exceeds the number of characters in a pathname {PATH_MAX};
    Neither the argv[] and envp[] arrays of pointers nor the strings to
    which those array elements point are modified. File descriptors
    marked close-on-exec are not closed, signals set to be caught are not
    set to default, neither the effective user ID nor the effective group
    ID of the current process is changed, and neither the value of the
    global variable environ nor the pointers it contains nor the strings
    to which they point are modified.
    otherwise
    a call to execve() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component EXECVE Assertion 3.1.2.4-59(A)

    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX using execve()
    VERIFY that execve() succeeded
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX+1 using execve()
    VERIFY that execve() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE child process
    EXECUTE file via a pathname of length PCTS_PATH_MAX using execve()
    VERIFY that execve() succeeded

    Test Information:
    execve(../exec_tok, ...) when ../exec_tok prefixed by 1012 char path
    did not return expected values
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/POSIX.os/procprim/exec/T.execvp 37 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno and -1 returned by execvp() when the length of the path
    argument exceeds the number of characters in a pathname {PATH_MAX};
    Neither the argv[] and envp[] arrays of pointers nor the strings to
    which those array elements point are modified. File descriptors
    marked close-on-exec are not closed, signals set to be caught are not
    set to default, neither the effective user ID nor the effective group
    ID of the current process is changed, and neither the value of the
    global variable environ nor the pointers it contains nor the strings
    to which they point are modified.
    otherwise
    a call to execvp() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.
    Posix Ref: Component EXECVP Assertion 3.1.2.4-59(A)

    Test Strategy:
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX using execvp()

    VERIFY that execvp() succeeded
    CREATE child process
    EXECUTE file via a pathname of length PATH_MAX+1 using execvp()
    VERIFY that execvp() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    CREATE child process
    EXECUTE file via a pathname of length PCTS_PATH_MAX using execvp()
    VERIFY that execvp() succeeded

    Test Information:
    execvp(../exec_tok, ...) when ../exec_tok prefixed by 1012 char path
    did not return expected values
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 86 (ENAMETOOLONG), observed: 0 (NO ERROR)

    ************************************************************************
    ************************************************************************
    /tset/XOPEN.os/genuts/ftw/T.ftw 9 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ftw() returns
    -1 and sets errno to ENAMETOOLONG if the length of path exceeds
    PATH_MAX;
    otherwise
    a call to ftw() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.

    Test Strategy:
    CREATE directory using crdir()
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not -1
    TRAVERSE file tree via a pathname of length PATH_MAX using ftw()
    VERIFY that ftw() succeeded
    TRAVERSE file tree via a pathname of length PATH_MAX+1 using ftw()
    VERIFY that ftw() returned -1 and errno was set to ENAMETOOLONG
    OTHERWISE
    TRAVERSE file tree via a pathname of length PCTS_PATH_MAX using
    ftw()
    VERIFY that ftw() succeeded

    Test Information:
    ftw(<1023 char path>, ..., 2) returned 1 instead of -1

    ************************************************************************
    ************************************************************************
    /tset/XOPEN.os/procenv/chroot/T.chroot 7 Failed

    Test Description:
    If _POSIX_PATH_MAX <= {PATH_MAX} <= PCTS_PATH_MAX, then ENAMETOOLONG
    in errno root not changed and -1 returned by chroot() if path argument
    exceeds PATH_MAX characters;
    otherwise
    a call to chroot() when the length of the path argument equals
    PCTS_PATH_MAX does not give an ENAMETOOLONG error.

    Test Strategy:
    ASSIGN the NEWROOT privilege to the current process using setprv()
    VERIFY that setprv() returned 0
    CREATE child process
    IF pathconf() returns a value of PATH_MAX <= PCTS_PATH_MAX, and not
    -1
    SET "testpath" to contain a pathname to "." of length PATH_MAX
    CALL chroot("testpath")
    VERIFY that chroot() returned 0
    SET "testpath" to contain a pathname to "." of length PATH_MAX+1
    CALL chroot("testpath")
    VERIFY that chroot() returned -1 and errno was set to
    ENAMETOOLONG
    OTHERWISE
    SET "testpath" to contain a pathname to "." of length
    PCTS_PATH_MAX
    CALL chroot("testpath")
    VERIFY that chroot() returned 0

    Test Information:
    chroot(<1023 char path>) returned 0, expected -1

    ************************************************************************

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    It is recommended that this request be forwarded to the Base Working
    Group for review.

    It is worth noting the following points:

    (1) The PATH_MAX limit as specified in the CAE includes the
    trailing null byte and this specification has been stable for
    nearly 7 years.

    (2) The test suite has tested this requirement for XPG4, UNIX 95 and UNIX 98.

    (3) The draft POSIX.1a amendment has consistently stated that
    the PATH_MAX limit includes the trailing null byte

    (4) No currently UNIX 98 branded system has requested a PIN


    We recommend that this request be refused.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    This request should go for a 14 day review. The intent is to clarify
    the requirements for UNIX 98. Approval or refusal will have no effect
    on the existing registrations under UNIX 95.

    Review Type Expert Group Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    The Base Working Group says:

    We agree with the consultants initial response. The request
    should be rejected.

    The X/Open decision:

    The request is rejected.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority