|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 2569 Details
Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges
This page provides all information on Problem Report 2569.
Report 2569 Actions
Problem Report Number 2569 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.1333 Raised 2011-09-29 22:41 Updated 2011-10-07 15:11 Published 2011-10-07 15:11 Product Standard Internationalised System Calls and Libraries Extended V3 (UNIX 03) Certification Program The Open Brand certification program Test Suite VSU version 5.3.3 Test Identification CAPI.os/devclass/ptsname/T.ptsname 3 Specification Base Definitions Issue 6 Location in Spec http://pubs.opengroup.org/onlinepubs/9699919799/functions/rename.html Problem Summary ENOSYS is not being accounted for when rename() returns with an error
on a pseudo-filesystem.Problem Text From tset/CAPI.os/devclass/ptsname/ptsname3.c:
171 if(rename(before, after) == -1) {
172 /*
173 * If the device is on a read-only filesystem, we can't
174 * rename it. Systems that use a pseudo-filesystem
<<<<<--- note the comment
175 * for slave ptys might also return other errors - here
176 * we allow EBUSY and EPERM.
177 */
178 if (errno == EROFS || errno == EBUSY || errno == EPERM) {
179 sprintf(ebuf,"INFO: rename() failed: %s",
180 err_lookup(errno));
181 tet_infoline(ebuf);
182 tet_result(TET_UNTESTED);
183 return;
184 }
185 uwerrno("rename"); <<<<---- enters here
186 return;
187 }
From vsx/SRC/common/capi_com/misc.c:
103 uwerrno(char *funcname)
104 {
105 sprintf(ebuf, "ERROR: %s failed, errno = %s", funcname,
err_lookup(errno));
106 tet_infoline(ebuf);
107 tet_result(TET_UNRESOLVED); <<<---- test labeled unresolved.
108 }
Executing rename() on our pseudo-filesystem returns ENOSYS and based on
the comment in the code it appears its expected to see other errno
values slip through and are not checked. If ENOSYS was added to the if
condition on line #178 of tset/CAPI.os/devclass/ptsname/ptsname3.c the
test would return UNTESTED instead of UNRESOLVED.
errno.h 155 #define ENOSYS 89 /* Unsupported file system
operation */Test Output **********************************************************************
/tset/CAPI.os/devclass/ptsname/T.ptsname 3 Unresolved
Test Description:
Base Required Deviance
A call to char *ptsname(int fildes) when the slave device name does
not exist in the file system shall return NULL.
Test Information:
PREP: Open master pseudo terminal
PREP: Get slave pseudo terminal
PREP: Unlock slave device
PREP: Get name of pseudo terminal device
PREP: Rename /dev/pts/3 to /dev/pts/3.save
ERROR: rename failed, errno = 89 (ENOSYS - Function not supported)
**********************************************************************
Test-Set Ended: 11:29:41
Test-Set Results Summary:
------------------------
3 Tests Executed
2 Tests Succeeded
1 Tests UnresolvedReview Information
Review Type TSMA Review Start Date 2011-09-29 22:41 Last Updated 2011-09-29 17:45 Completed 2011-09-29 17:45 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 2011-09-30 01:45 Last Updated 2011-10-07 15:10 Completed 2011-10-07 15:10 Status Complete Review Resolution Test Suite Deficiency (TSD) Review Conclusion A test suite deficiency is granted
Problem Reporting System Options:
- View Report 2569
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority