Report 0062 Actions
Problem Report Number |
0062 |
Submitter's Classification |
Test Suite problem |
State |
Resolved |
Resolution |
Test Suite Deficiency (TSD) |
Problem Resolution ID |
TSD.PX.0033 |
Raised |
2014-02-26 22:13 |
Updated |
2014-02-26 16:18 |
Published |
2014-02-26 16:18 |
Product Standard |
PSE52 Realtime Controller 1003.1-2003 System |
Certification Program |
POSIX Certified by IEEE and The Open Group |
Test Suite |
VSX4-PSE version 4.7.7 |
Test Identification |
tset/POSIX.os/files/access/T.access.1,2,5-7,14-17 |
Specification |
PSE52 Realtime Controller 1003.1-2003 System Product Standard |
Location in Spec |
access |
Problem Summary |
PSE52 privileged access requires setuid root but non-privileged access
requires non-root |
Problem Text |
PSE52 access tests require elevated privilege for tests 26-35, requiring
that the test binary be
setuid root. Be definition when the binary is setuid root the test
files are created as being owned
by root, causing the tests for basic access functionality to fail. When
the tests are run as user
vsx0 the basic functionality tests succeed but, obviously, the
privileged access tests fail due to
being unable to obtain sufficient privilege. |
Test Output |
************************************************************************
/tset/POSIX.os/files/access/T.access 1 Unresolved
Test Description:
On a call to access(path, amode), the pathname path is resolved in
accordance with the requirements for pathname resolution.
Test Information:
deletion reason: rmdir("F") failed - errno 13 (EACCES)
deletion reason: could not create directory "F"
deletion reason: could not create directory "A/F"
deletion reason: could not create directory "F"
deletion reason: could not create directory "A/F"
deletion reason: could not create directory "F"
deletion reason: could not create directory "A/F"
deletion reason: could not create directory "A/F"
deletion reason: could not create directory "A/D1"
deletion reason: could not create directory "A/D1"
deletion reason: could not create directory "A/D1"
************************************************************************
************************************************************************
/tset/POSIX.os/files/access/T.access 2 Failed
Test Description:
On a call to access(path, amode), the filename path shall support
portable filenames.
Test Strategy:
VERIFY that :
process has suitable privileges
group id is not vsxg0,
user id is not vsx0,
effective user id not vsx0 or vsx1
effective group id not vsxg0 or vsxg1
supplementary group list does not contain vsxg1
DETERMINE whether privileged access to files is permitting from the
environment variable VSX_PRIV_ACCESS_SUPP
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
FOR each portable file nane
CREATE a file with that name
FOR each portable file nane with each of the file modes: 0, S_IRUSR,
S_IWUSR, S_IXUSR, S_IRUSR|S_IWUSR, S_IRUSR|S_IXUSR and S_IWUSR|S_IXUSR
ACCESS the current file with the current file mode set using
access()
VERIFY that access() returned 0
ACCESS the current file with the current file mode denied using
access()
VERIFY that access() returned -1 and errno was set to EACCES
UNLINK each portable file name using unlink()
Test Information:
access("JKLMNOPQR_", R_OK) did not give correct results
file mode: 0100400, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
access("_STUVWXYZ.", W_OK) did not give correct results
file mode: 0100200, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
access(".abcdefghi", X_OK) did not give correct results
file mode: 0100100, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
access("jklmnopqr_", R_OK|W_OK) did not give correct results
file mode: 0100600, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
access("_stuvwxyz.", R_OK|X_OK) did not give correct results
file mode: 0100500, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
access("0123456789-", W_OK|X_OK) did not give correct results
file mode: 0100300, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
************************************************************************
************************************************************************
/tset/POSIX.os/files/access/T.access 5 Failed
Test Description:
A call to access() on a file with read permission for owner of file
succeeds for amode R_OK when the owner of the file matches the real
user ID, and shall return a value of zero.
Test Strategy:
VERIFY that :
process has suitable privileges
group id is not vsxg0,
user id is not vsx0,
effective user id not vsx0 or vsx1
effective group id not vsxg0 or vsxg1
supplementary group list does not contain vsxg1
DETERMINE whether privileged access to files is permitting from the
environment variable VSX_PRIV_ACCESS_SUPP
CREATE file using crfile() with user vsx0 and group vsxg0 and file
mode S_IRUSR
CLOSE file using close()
ACCESS the file with the access mode R_OK using access()
VERIFY that access() returned 0
UNLINK file using unlink()
WHEN not testing the XNFS specification and not in PSE52 mode:
CREATE FIFO using mkfifo() with file mode S_IRUSR
CHANGE ownership of FIFO to user vsx0 and group vsxg0
ACCESS the file with the access mode R_OK using access()
VERIFY that access() returned 0
UNLINK FIFO using unlink()
Test Information:
access("access-t.cN", R_OK) did not give correct results
file mode: 0100000, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
************************************************************************
************************************************************************
/tset/POSIX.os/files/access/T.access 6 Failed
Test Description:
A call to access() on a file with write permission for owner of file
succeeds for amode W_OK when the owner of the file matches the real
user ID, and shall return a value of zero.
Test Strategy:
VERIFY that :
process has suitable privileges
group id is not vsxg0,
user id is not vsx0,
effective user id not vsx0 or vsx1
effective group id not vsxg0 or vsxg1
supplementary group list does not contain vsxg1
DETERMINE whether privileged access to files is permitting from the
environment variable VSX_PRIV_ACCESS_SUPP
CREATE file using crfile() with user vsx0 and group vsxg0 and file
mode S_IWUSR
CLOSE file using close()
ACCESS the file with the access mode W_OK using access()
VERIFY that access() returned 0
UNLINK file using unlink()
WHEN not testing the XNFS specification and not in PSE52 mode:
CREATE FIFO using mkfifo() with file mode S_IWUSR
CHANGE ownership of FIFO to user vsx0 and group vsxg0
ACCESS the file with the access mode W_OK using access()
VERIFY that access() returned 0
UNLINK FIFO using unlink()
Test Information:
access("access-t.cN", W_OK) did not give correct results
file mode: 0100000, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
************************************************************************
************************************************************************
/tset/POSIX.os/files/access/T.access 7 Failed
Test Description:
A call to access() on a file with execute permission for owner of file
succeeds for amode X_OK when the owner of the file matches the real
user ID, and shall return a value of zero.
Test Strategy:
VERIFY that :
process has suitable privileges
group id is not vsxg0,
user id is not vsx0,
effective user id not vsx0 or vsx1
effective group id not vsxg0 or vsxg1
supplementary group list does not contain vsxg1
DETERMINE whether privileged access to files is permitting from the
environment variable VSX_PRIV_ACCESS_SUPP
CREATE file using crfile() with user vsx0 and group vsxg0 and file
mode S_IXUSR
CLOSE file using close()
ACCESS the file with the access mode X_OK using access()
VERIFY that access() returned 0
UNLINK file using unlink()
WHEN not testing the XNFS specification and not in PSE52 mode:
CREATE FIFO using mkfifo() with file mode S_IXUSR
CHANGE ownership of FIFO to user vsx0 and group vsxg0
ACCESS the file with the access mode X_OK using access()
VERIFY that access() returned 0
UNLINK FIFO using unlink()
Test Information:
access("access-t.cN", X_OK) did not give correct results
file mode: 0100000, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
************************************************************************
************************************************************************
/tset/POSIX.os/files/access/T.access 14 Failed
Test Description:
A call to access() on a file with read and write permission for owner
of file succeeds for amode R_OK|W_OK when the owner of the file
matches the real user ID, and shall return a value of zero.
Test Strategy:
VERIFY that :
process has suitable privileges
group id is not vsxg0,
user id is not vsx0,
effective user id not vsx0 or vsx1
effective group id not vsxg0 or vsxg1
supplementary group list does not contain vsxg1
DETERMINE whether privileged access to files is permitting from the
environment variable VSX_PRIV_ACCESS_SUPP
CREATE file using crfile() with user vsx0 and group vsxg0 and file
mode S_IRUSR|S_IWUSR
CLOSE file using close()
ACCESS the file with the access mode R_OK|W_OK using access()
VERIFY that access() returned 0
UNLINK file using unlink()
WHEN not testing the XNFS specification and not in PSE52 mode:
CREATE FIFO using mkfifo() with file mode S_IRUSR|S_IWUSR
CHANGE ownership of FIFO to user vsx0 and group vsxg0
ACCESS the file with the access mode R_OK|W_OK using access()
VERIFY that access() returned 0
UNLINK FIFO using unlink()
Test Information:
access("access-t.cN", R_OK|W_OK) did not give correct results
file mode: 0100000, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
************************************************************************
************************************************************************
/tset/POSIX.os/files/access/T.access 15 Failed
Test Description:
A call to access() on a file with read and execute permission for
owner of file succeeds for amode R_OK|X_OK when the owner of the file
matches the real user ID, and shall return a value of zero.
Test Strategy:
VERIFY that :
process has suitable privileges
group id is not vsxg0,
user id is not vsx0,
effective user id not vsx0 or vsx1
effective group id not vsxg0 or vsxg1
supplementary group list does not contain vsxg1
DETERMINE whether privileged access to files is permitting from the
environment variable VSX_PRIV_ACCESS_SUPP
CREATE file using crfile() with user vsx0 and group vsxg0 and file
mode S_IRUSR|S_IXUSR
CLOSE file using close()
ACCESS the file with the access mode R_OK|X_OK using access()
VERIFY that access() returned 0
UNLINK file using unlink()
WHEN not testing the XNFS specification and not in PSE52 mode:
CREATE FIFO using mkfifo() with file mode S_IRUSR|S_IXUSR
CHANGE ownership of FIFO to user vsx0 and group vsxg0
ACCESS the file with the access mode R_OK|X_OK using access()
VERIFY that access() returned 0
UNLINK FIFO using unlink()
Test Information:
access("access-t.cN", R_OK|X_OK) did not give correct results
file mode: 0100000, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
************************************************************************
************************************************************************
/tset/POSIX.os/files/access/T.access 16 Failed
Test Description:
A call to access() on a file with write and execute permission for
owner of file succeeds for amode W_OK|X_OK when the owner of the file
matches the real user ID, and shall return a value of zero.
Test Strategy:
VERIFY that :
process has suitable privileges
group id is not vsxg0,
user id is not vsx0,
effective user id not vsx0 or vsx1
effective group id not vsxg0 or vsxg1
supplementary group list does not contain vsxg1
DETERMINE whether privileged access to files is permitting from the
environment variable VSX_PRIV_ACCESS_SUPP
CREATE file using crfile() with user vsx0 and group vsxg0 and file
mode S_IWUSR|S_IXUSR
CLOSE file using close()
ACCESS the file with the access mode W_OK|X_OK using access()
VERIFY that access() returned 0
UNLINK file using unlink()
WHEN not testing the XNFS specification and not in PSE52 mode:
CREATE FIFO using mkfifo() with file mode S_IWUSR|S_IXUSR
CHANGE ownership of FIFO to user vsx0 and group vsxg0
ACCESS the file with the access mode W_OK|X_OK using access()
VERIFY that access() returned 0
UNLINK FIFO using unlink()
Test Information:
access("access-t.cN", W_OK|X_OK) did not give correct results
file mode: 0100000, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
************************************************************************
************************************************************************
/tset/POSIX.os/files/access/T.access 17 Failed
Test Description:
A call to access() on a file with read, write and execute permission
for owner of file succeeds for amode R_OK|W_OK|X_OK when the owner of
the file matches the real user ID, and shall return a value of zero.
Test Strategy:
VERIFY that :
process has suitable privileges
group id is not vsxg0,
user id is not vsx0,
effective user id not vsx0 or vsx1
effective group id not vsxg0 or vsxg1
supplementary group list does not contain vsxg1
DETERMINE whether privileged access to files is permitting from the
environment variable VSX_PRIV_ACCESS_SUPP
CREATE file using crfile() with user vsx0 and group vsxg0 and file
mode S_IRWXU
CLOSE file using close()
ACCESS the file with the access mode R_OK|W_OK|X_OK using access()
VERIFY that access() returned 0
UNLINK file using unlink()
WHEN not testing the XNFS specification and not in PSE52 mode:
CREATE FIFO using mkfifo() with file mode S_IRWXU
CHANGE ownership of FIFO to user vsx0 and group vsxg0
ACCESS the file with the access mode R_OK|W_OK|X_OK using access()
VERIFY that access() returned 0
UNLINK FIFO using unlink()
Test Information:
access("access-t.cN", R_OK|W_OK|X_OK) did not give correct results
file mode: 0100000, owner: 0, group: 100
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 13 (EACCES)
************************************************************************
|
Review Information
Review Type |
TSMA Review |
Start Date |
2014-02-26 22:13 |
Last Updated |
2014-02-26 15:34 |
Completed |
2014-02-26 15:34 |
Status |
Complete |
Review Recommendation |
Test Suite Deficiency (TSD) |
Review Response |
This is accepted as a fault in the test suite. |
Review Type |
SA Review |
Start Date |
2014-02-26 23:34 |
Last Updated |
2014-02-26 16:17 |
Completed |
2014-02-26 16:17 |
Status |
Complete |
Review Resolution |
Test Suite Deficiency (TSD) |
Review Conclusion |
A test suite deficiency is granted. |
Problem Reporting System Options:
|