|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1195 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 1195.
Report 1195 Actions
Problem Report Number 1195 Submitter's Classification Test Suite problem State Resolved Resolution Rejected (REJ) Problem Resolution ID REJ.X.0397 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published null Product Standard Internationalised System Calls and Libraries Extended (UNIX 95) Certification Program The Open Brand certification program Test Suite VSU version 4.1.0 Test Identification base/select 2 Problem Summary PG4U.00070 This test may fail on non-ASCII IUTs. Problem Text
This test may fail on non-ASCII IUTs.
These assertion as written is non-portable to a non-ASCII platform,
for the same reason as cited in TSD4U.00124, however the actual
symptoms of the failure as seen in the journal are different.
The AF_UNIX SOCK_DGRAM portion of the assertion is failing because
the sendto() called from the server (in the subroutine unix_server)
fails EINVAL because no sockaddr is filled in. (It was corrupted
for the same reason cited in TSD4U.00124.) The subsequent select
by the client times out because there is nothing to read, and the
test fails.
The following picture helps clarify this:
SERVER CLIENT
------- ----------
socket
bind
recvfrom socket
connect
write
select (on read)
sendto (fails - EINVAL
no sockaddr filled in)
select times out - nothing
to read.
The problem becomes even clearer when compared with the similar
picture for the AF_UNIX SOCK_STREAM case:
SERVER CLIENT
------- -------
socket
bind
listen
accept socket
connect
receive write
select (on read)
send
receive select completes - ok to read
(Note also that the failures for the STREAMS portion of this
assertion is independent of this problem and will be covered by
a seperate IR to be submitted in the near future.)Test Output
IC Start
TP Start
SPEC1170TESTSUITE CASE 2
A call to int select(int nfds, fd_set *readfds, fd_set
*writefds, fd_set *exceptfds, const struct timeval
*timeout) when readfds is not a null pointer shall
check each regular file, terminal, pseudo-terminal
device, STREAMS-based file, sockets, FIFOs and pipes
file descriptor less than nfds specified by a bit set
in the structure pointed to by readfds and set the
corresponding bit in the structure pointed to by
readfds when the file descriptor is ready to read.
TEST: AF_INET SOCK_STREAM
PREP: Create test sockaddr_in: address = 198.151.241.50, port = 64673
PREP: Wait for server to be ready
PREP: Create a socket
PREP: Connect socket to address 198.151.241.50, port 64673
PREP: Write data into socket
TEST: select checks readfds and sets appropriate bits
CLEANUP: Close socket, kill server
TEST: AF_UNIX SOCK_STREAM
PREP: Create test sockaddr_un: path = ../tmp/unix.ahDGxQ
PREP: Server: create socket
PREP: Server: bind address 198.151.241.50, port 64673 to socket
PREP: Server: listen on socket
PREP: Server: notify client server is ready
PREP: Server: accept connection
INFO: Server: accepted connection from address 198.151.241.50, port 1033
PREP: echo_server: read and echo data
INFO: echo_server: echoed 10 bytes of data (write data)
INFO: echo_server: recv returned -1, errno = 1121(ECONNRESET - Connection reset)
INFO: Server received signal 15
INFO: Server terminated
PREP: Wait for server to be ready
PREP: Create a socket
PREP: Connect to address ../tmp/unix.ahDGxQ
PREP: Write data into socket
TEST: select checks readfds and sets appropriate bits
CLEANUP: Close socket, kill server
TEST: AF_INET SOCK_DGRAM
PREP: Create test sockaddr_in: address = 198.151.241.50, port = 64674
PREP: Server: create socket
PREP: Server: bind address ../tmp/unix.ahDGxQ to socket
PREP: Server: listen on socket
PREP: Server: notify client ready to accept
PREP: Server: accept connection
INFO: Server: accepted connection from address 5h
PREP: echo_server: read and echo data
INFO: echo_server: echoed 10 bytes of data (write data)
INFO: Server received signal 15
INFO: Server terminated
PREP: Wait for server to be ready
PREP: Create a socket
PREP: Connect socket to address 198.151.241.50, port 64674
PREP: Write data into socket
TEST: select checks readfds and sets appropriate bits
CLEANUP: Close socket, kill server
TEST: AF_UNIX SOCK_DGRAM
PREP: Create test sockaddr_un: path = ../tmp/unix.eBhCxQ
PREP: Server: create socket
PREP: Server: bind address 198.151.241.50, port 64674 to socket
PREP: Server: notify client server is ready
PREP: Server: read and echo data
INFO: Server: echoed 10 bytes of data (write data), peer is 198.151.241.50, port 1037
INFO: Server received signal 15
INFO: Server terminated
PREP: Wait for server to be ready
PREP: Create a socket
PREP: Connect to address ../tmp/unix.eBhCxQ
PREP: Write data into socket
TEST: select checks readfds and sets appropriate bits
ERROR: Descriptors are not set correctly:
Expected descriptor 8 set
Received descriptor 8 clear
PREP: Create pipe
PREP: Write data into pipe
TEST: select checks readfds and sets appropriate bits
CLEANUP: Close pipe
PREP: Create fifo
PREP: Write data into fifo
TEST: select checks readfds and sets appropriate bits
CLEANUP: Remove fifo
PREP: Open pseudo ttys
PREP: Write data into pty
TEST: select checks readfds and sets appropriate bits
CLEANUP: Close pseudo terminal
PREP: Create file
TEST: select checks readfds and sets appropriate bits
CLEANUP: Close file
PREP: Create a pipe
PREP: Determine if pipe is a stream
INFO: Pipes are not STREAMs on this implementation
PREP: Open master pseudo tty
PREP: Determine if pseudo tty is a stream
ERROR: Neither pipes nor pseudo terminals are STREAMS
based on this implementation. The sample code
in $TET_ROOT/CAPI/SRC/LIB/capi_user/sreflect.c
must be modified to provide routines with the
equivalent functionality and interfaces for the
implementation.
PREP: Server: create socket
PREP: Server: bind address ../tmp/unix.eBhCxQ to socket
PREP: Server: notify client server is ready
PREP: Server: read and echo data
INFO: Server: echoed 10 bytes of data (write data), peer is
FAIL
IC EndReview Information
Review Type TSMA Review Start Date null Completed null Status Complete Review Recommendation No Resolution Given Review Response
We recommend this request be refused.
Patch VSU 4.1.0D provides a workaround for these failures. We
reccommend that the implementation be required to apply this
patch prior to making a single branding run.
Review Type SA Review Start Date null Completed null Status Complete Review Resolution Rejected (REJ) Review Conclusion
This request is refused.
Problem Reporting System Options:
- View Report 1195
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority