Report 0022 Actions
Problem Report Number |
0022 |
Submitter's Classification |
Test Suite problem |
State |
Resolved |
Resolution |
Test Suite Deficiency (TSD) |
Problem Resolution ID |
TSD.PX.0008 |
Raised |
2004-07-03 07:45 |
Updated |
2004-07-07 19:03 |
Published |
2004-07-07 19:03 |
Product Standard |
1003.1-2003 System Interfaces |
Certification Program |
POSIX Certified by IEEE and The Open Group |
Test Suite |
VSX-PCTS2003 version 1.0B |
Test Identification |
POSIX.os/files/rename/T.rename 1 |
Problem Summary |
Rename test expects the wrong behavior for nonexistantdirectory/
|
Problem Text |
Section 4.11 of the Base Definitions volume states "A pathname that
contains at least one non-slash character and that ends with one or
more trailing slashes shall be resolved as if a single dot character
(?.?) were appended to the pathname"
Therefore, rename("rename-t.1", "A/D1/") is resolved as
rename("rename-t.1","A/D1/.") and should fail if D1 does not exist,
since D1 is an intermediate component. |
Test Output |
/tset/POSIX.os/files/rename/T.rename 1 Failed
Test Description:
On a call to rename(old, new), the pathnames old and new are resolved
in accordance with the requirements for pathname resolution.
Posix Ref: Component RENAME Assertion 5.5.3.2-05(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-06(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-07(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-08(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-09(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-10(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-11(C)
Posix Ref: Component RENAME Assertion 5.5.3.2-12(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-13(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-17(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-18(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-19(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-20(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-21(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-22(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-23(C)
Posix Ref: Component RENAME Assertion 5.5.3.2-24(A)
Posix Ref: Component RENAME Assertion 5.5.3.2-25(A)
Test Strategy:
CREATE directory hierarchy for pathname resolution using
init_pathres()
CREATE directory using crdir() with resolved pathname
OBTAIN file status information using stat() for resolved pathname
OBTAIN st_dev and st_ino for resolved pathname using stat()
RENAME resolved pathname to unresolved pathname using rename()
VERIFY that rename() returned successfully
VERIFY that st_dev and st_ino for resolved pathname are the same as
those of the unresolved pathname using stat()
VERIFY that resolved pathname no longer exists using eaccess()
OBTAIN st_dev and st_ino for unresolved pathname using stat()
RENAME unresolved pathname to resolved pathname using rename()
VERIFY that rename() returned successfully
VERIFY that st_dev and st_ino for resolved pathname are the same as
those of the unresolved pathname using stat()
VERIFY that unresolved pathname no longer exists using eaccess()
OBTAIN file status information using stat() resolved pathname
VERIFY that st_dev and st_ino for resolved pathname are the same as
those saved earlier
REMOVE directory using remove()
REMOVE directory hierarchy created by init_pathres using cln_pathres
Test Information:
rename("rename-t.1", "A/D1/") did not give correct results
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 2 (ENOENT)
rename("rename-t.1", "A/D1//") did not give correct results
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 2 (ENOENT)
rename("rename-t.1", "RelLinkToF/") did not give correct results
RETURN VALUES: expected: 0, observed: -1
ERRNO VALUES: expected: 0 (NO ERROR), observed: 2 (ENOENT) |
Review Information
Review Type |
TSMA Review |
Start Date |
2004-07-03 07:45 |
Last Updated |
2004-07-05 19:19 |
Completed |
2004-07-05 19:19 |
Status |
Complete |
Review Recommendation |
Test Suite Deficiency (TSD) |
Review Response |
This issue has been discussed by the Austin Group and the consensus was
that the behaviour of these rename() calls is unspecified. So the test
is wrong to expect the calls to succeed, but it would also be wrong to
expect the calls to fail. It should allow either behaviour. |
Review Type |
SA Review |
Start Date |
2004-07-05 18:19 |
Last Updated |
2004-07-07 01:29 |
Completed |
2004-07-07 01:29 |
Status |
Complete |
Review Resolution |
Test Suite Deficiency (TSD) |
Review Conclusion |
This PR represents an agreed test suite deficiency. |
Problem Reporting System Options:
|