InitStreamMismatch.seq - INIT chunk is received with mismatch in the Outbound Stream and Inbound Stream parameters
To check that if INIT chunk is received with mismatch in the Outbound Stream
and Inbound Stream parameters then the endpoint should settle with minimum of
the two parameters.
./InitStreamMismatch.seq [-tooloption ...] -pkt ./InitStreamMismatch.def
-tooloption : v6eval tool option
See Also: ../common/STD_PKT_COMMON.def
../common/SCTP_COMMON.def
Association is not established between endpoint A and B. Also let the OS
of B is Z. Arrange data in endpoint A such that INIT message is sent from
endpoint A with MIS Y<Z.
Endpoint A Endpoint B ULP
(ESTABLISHED) (ESTABLISHED)
INIT ----------------->
(OS = X, MIS = Y)
<----------------- INIT-ACK
(OS = Z, MIS = X, Z > Y)
COOKIE-ECHO ----------------->
<----------------- COOKIE-ACK
TEST DESCRIPTION:
1. Attempt to initiate an association from endpoint A to B. Send INIT
message with Maximal Inbound stream parameter less than the Outbound
Stream of B.
Record the message sequence using a signal emulator.
2. Check A: Either the association is aborted or INIT-ACK is received
with Outbound stream parameter equal to the MIS received in INIT.
3. Check B: Range of OS Stream id in endpoint B and MIS stream id in
endpoint A is 0 to Y-1.
4. Check C: Was the message sequence as above.
Association may be aborted in this case.
RFC 4960
5.1.1. Handle Stream Parameters
In the INIT and INIT ACK chunks, the sender of the chunk MUST
indicate the number of outbound streams (OSs) it wishes to have in
the association, as well as the maximum inbound streams (MISs) it
will accept from the other endpoint.
After receiving the stream configuration information from the other
side, each endpoint MUST perform the following check: If the peer's
MIS is less than the endpoint's OS, meaning that the peer is
incapable of supporting all the outbound streams the endpoint wants
to configure, the endpoint MUST use MIS outbound streams and MAY
report any shortage to the upper layer. The upper layer can then
choose to abort the association if the resource shortage is
unacceptable.
After the association is initialized, the valid outbound stream
identifier range for either endpoint shall be 0 to min(local OS,
remote MIS)-1.