|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1282 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 1282.
Report 1282 Actions
Problem Report Number 1282 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.0564 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published 1998-08-10 08:00 Product Standard Internationalised System Calls and Libraries Extended V2 (UNIX 98) Certification Program The Open Brand certification program Test Suite VSU version 5.0.2 Test Identification CAPIbase/readv 71 Problem Summary TSD4U.00254 This test may fail on an implementation that supports neither a 64-bit build nor execution enviroment. Problem Text
This test passes if you eliminate the XBS5_LP64_OFF64 and
XBS5_LPBIG_OFFBIG test environments which are not supported on the
implementation under test. However, because of a bug in the
test suite, the test is proceeding as if these are supported. The
problem contributing to this failure was previously addressed by
TSD4U.00225 in which it is agreed that the makefile needs to be
updated to test for -1 or "undefined", rather than -1 or "unsupported".
Because the makefile is currently checking for "unsupported", rather
than "undefined", make continues its attempt to build t71smloff3 and
t71smloff4 (via getconf XBS5_LP64_OFF64_CFLAGS and
XBS5_LPBIG_OFFBIG_CFLAGS options). This succeeds on this particular
implementation because we return a null string for these constants
(as per XSH5 which states that these must be valid for getconf even
if the support does not exist). Remember that the application should
first check support for XBS5_LP64_OFF64 and XBS5_LPBIG_OFFBIG.
So the t71smloff3 and t71smloff4 binaries are actually getting
created as default 32-bit, off32 binaries. This in turn is resulting
in the failures for the non-supported XBS5_ILP64_OFF64 and
XBS5_LPBIG_OFFBIG environments.
Test Output
TEST CASE: readv
TEST PURPOSE #71
If the implementation allows creation of a file
description with an offset maximum less than the
largest size it supports for an off_t:
EOVERFLOW in errno and return -1 on a call to ssize_t
readv(int fildes, const struct iovec *iov, int iovcnt)
when the file is a regular file, nbyte is greater than
zero, the starting position is before the end of file,
and the starting position is equal to the offset
maximum established in the open file description
associated with fildes.
PREP: Check for existence of programming environments
PREP: Obtain off_t size in XBS5_ILP32_OFF32 environment
PREP: Obtain off_t size in XBS5_ILP32_OFFBIG environment
PREP: Obtain off_t size in XBS5_ILP64_OFF64 environment
PREP: Obtain off_t size in XBS5_LPBIG_OFFBIG environment
PREP: Open communication pipe for child
PREP: Fork a child
PREP: Connect child's pipe to stdout
PREP: Execute a program compiled in XBS5_ILP32_OFF32(32-bit off_t)
environment that:
opens a regular file
set the offset equal to the value that can be
represented in 32-bit off_t,
execs program compiled in XBS5_ILP32_OFFBIG(64-bit off_t) environment,
passing it the open file descriptor
TEST: readv returns -1 and sets errno to EOVERFLOW when offset is the offset
maximum
PREP: Wait for child
INFO: Read child's test result
PREP: Open communication pipe for child
PREP: Fork a child
PREP: Connect child's pipe to stdout
PREP: Execute a program compiled in XBS5_ILP64_OFF64(32-bit off_t)
environment that:
opens a regular file
set the offset equal to the value that can be
represented in 32-bit off_t,
execs program compiled in XBS5_ILP32_OFFBIG(64-bit off_t) environment,
passing it the open file descriptor
TEST: readv returns -1 and sets errno to EOVERFLOW when offset is the offset
maximum
PREP: Wait for child
INFO: Read child's test result
ERROR: In 32-bit program: open() failed, errno = 79(Value too large for defined
data type)
PREP: Open communication pipe for child
PREP: Fork a child
PREP: Connect child's pipe to stdout
PREP: Execute a program compiled in XBS5_LPBIG_OFFBIG(32-bit off_t)
environment that:
opens a regular file
set the offset equal to the value that can be
represented in 32-bit off_t,
execs program compiled in XBS5_ILP32_OFFBIG(64-bit off_t) environment,
passing it the open file descriptor
TEST: readv returns -1 and sets errno to EOVERFLOW when offset is the offset
maximum
PREP: Wait for child
INFO: Read child's test result
ERROR: In 32-bit program: open() failed, errno = 79(Value too large for defined
data type)
71 UNRESOLVED
Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
We agree this is a test suite deficiency in the test
suite version(s) listed.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Test Suite Deficiency (TSD) Review Conclusion
This is an agreed Test Suite Deficiency.
Problem Reporting System Options:
- View Report 1282
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority