|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 1189 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 1189.
Report 1189 Actions
Problem Report Number 1189 Submitter's Classification Test Suite problem State Resolved Resolution Rejected (REJ) Problem Resolution ID REJ.X.0391 Raised 1970-01-01 08:00 Updated 2003-03-13 08:00 Published null Product Standard Sockets (UNIX 95) Certification Program The Open Brand certification program Test Suite VSU version 4.1.0 Test Identification sockets/connect 12 Problem Summary PG4U.00076 This IR claims that an address_len of zero qualifies as a condition to reset the peer address instead of fail a SOCK_DGRAM connect() call. Problem Text
We believe this is a test suite deficiency.
The X/Open CAE Specification (1994) for Networking Services, Issue 4,
states, under the Description for connect():
"... For SOCK_DGRAM sockets, the peer address identifies where all
datagrams are sent on subsequent send() calls, and limits the
remote sender for subsequent recv() calls. If address is a null
address for the protocol, the socket's peer address will be reset."
In this testcase an AF_INET address is being passed to an AF_UNIX
connect. We check to see that sock_len is zero, and assume that
this is a reset case. AF_INET does not have to fill this field
in since all sockaddrs are the same length and that value is the
other operand specified on the call. Since we see this as a reset
case the connect does not fail on our implementation.Test Output
TEST PURPOSE #12
If the implementation supports a communications domain
and a socket type:
EAFNOSUPPORT in errno and return -1 on a call to int
connect(int socket, const struct sockaddr *address,
size_t address_len) when address is not valid for the
address family of the socket.
TEST: AF_INET SOCK_STREAM
PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4489
PREP: Create test sockaddr_un: path = ../tmp/unix.gEGgxQ
PREP: Create socket
TEST: Connect to socket with AF_UNIX address
TEST: Return value
TEST: errno value
CLEANUP: Close socket
TEST: AF_UNIX SOCK_STREAM
PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4490
PREP: Create test sockaddr_un: path = ../tmp/unix.BfdFxQ
PREP: Create socket
TEST: connect with AF_INET address
TEST: Return value
TEST: errno value
CLEANUP: Close socket
TEST: AF_INET SOCK_DGRAM
PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4491
PREP: Create test sockaddr_un: path = ../tmp/unix.eghhxQ
PREP: Create socket
TEST: Connect to socket with AF_UNIX address
TEST: Return value
TEST: errno value
CLEANUP: Close socket
TEST: AF_UNIX SOCK_DGRAM
PREP: Create test sockaddr_in: address = 198.151.241.50, port = 4492
PREP: Create test sockaddr_un: path = ../tmp/unix.BabbxQ
PREP: Create socket
TEST: connect with AF_INET address
TEST: Return value
ERROR: connect call succeeded unexpectedly, returned 0
12 FAILReview 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.
We believe the test is correct.
The portion of the spec the submitter quotes clearly states that
the connect() calls address not the address_length must be null
for a reset to occur. Since this is not the case the test should
perform as expected on the IUT.
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 1189
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority