|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0147 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 0147.
Report 0147 Actions
Problem Report Number 0147 Submitter's Classification Test Suite problem State Resolved Resolution Test Suite Deficiency (TSD) Problem Resolution ID TSD.X.0147 Raised 1994-05-25 08:00 Updated 2003-03-13 08:00 Published 1994-06-08 08:00 Product Standard Internationalised System Calls and Libraries (XPG4) Certification Program The Open Brand certification program Test Suite VSX4 version 4.3.4 Test Identification ANSI.os/streamio/fseek 15 Problem Summary TSD4.147 Error is generated in module ANSI.os/streamio/fflush/enospc.c, where at line 322 the following portion of code can be found: /* * Now complete writing of this block and try on the next one * This shou... Problem Text
Error is generated in module ANSI.os/streamio/fflush/enospc.c, where
at line 322 the following portion of code can be found:
/*
* Now complete writing of this block and try on the next one
* This should not cause a failure because we have already
* tried writing this block.
*/
if (fwrite((void*)outstr, BUFSIZ-1, 1, fp) != 1) {
err = errno;
if (errno == ENOSPC) {
xx_rpt(UNTESTED);
in_rpt("out of space on fwrite");
} else {
xx_rpt(FAILURE);
valrpt(1, 0, 0, err);
}
}
else
PATH_TRACE;
Therefore this behaviour is accepted by the test which should exit with
result "UNTESTED".
Instead since this portion of code is in a loop that increases the
variable "i" and since at the end of this routine there is the
following instruction (line 353):
PATH_XS_RPT(7+i);
the path count is expexcted to be 8 but the actual value
is 7 and test exits with result "UNRESOLVED".
It seems that a "break" instruction is missing:
if (fwrite((void*)outstr, BUFSIZ-1, 1, fp) != 1) {
err = errno;
if (errno == ENOSPC) {
xx_rpt(UNTESTED);
in_rpt("out of space on fwrite");
} else {
xx_rpt(FAILURE);
valrpt(1, 0, 0, err);
}
>>>> break;
}
else
PATH_TRACE;
By the way, this "break" instruction is already present in another
portion of code of the same module, which performs a similar control
(line 249):
if (fputc('a', fp) == EOF) {
testfail++;
if (errno == ENOSPC) {
xx_rpt(UNTESTED);
in_rpt("out of space on fputc");
} else {
xx_rpt(FAILURE);
in_rpt("fputc failed");
}
break;
}Test Output
************************************************************************
/tset/ANSI.os/streamio/fseek/T.fseek 15 Unresolved
Test Information:
out of space on fwrite
path tracing error: path counter 7, expected 8
************************************************************************Review Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
This is agreed to be a fault in the test suite and it is recommended that
a test suite deficiency be granted.
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 0147
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority