NAME

  InvalidLengthInSack.seq - SACK chunk is received with invalid chunk length


PURPOSE

  To check that if SACK chunk is received with invalid chunk length, the
  endpoint should send ABORT message with a Protocol Violation error cause.


SYNOPSIS

  ./InvalidLengthInSack.seq [-tooloption ...] -pkt ./InvalidLengthInSack.def
    -tooloption : v6eval tool option
  See Also: ../common/STD_PKT_COMMON.def
            ../common/SCTP_COMMON.def


PRE-TEST CONDITION

  Association is established between endpoint A and B. Arrange data
  in endpoint A such that SACK message is sent to endpoint B with
  invalid length.


TEST PROCEDURE

  Endpoint A                           Endpoint B                ULP
  (ESTABLISHED)                        (ESTABLISHED)
                <-----------------      DATA
  SACK          ----------------->
  (with Invalid Chunk Length)
                <-----------------      ABORT
                                        (Protocol Violation)
  TEST DESCRIPTION:
  1. Attempt to initiate an association from endpoint A to B. Send SACK 
     message with invalid length after received DATA.
     Record the message sequence using a signal emulator.
  2. Check A: ABORT message will be sent and DATA is discarded.
  3. Check B: Was the message sequence as above.


NOTE

  None


REFERENCE

  RFC 4960
  3.3.10.13.  Protocol Violation (13)
    Cause of error
    --------------
    This error cause MAY be included in ABORT chunks that are sent
    because an SCTP endpoint detects a protocol violation of the peer
    that is not covered by the error causes described in Section 3.3.10.1
    to Section 3.3.10.12.  An implementation MAY provide additional
    information specifying what kind of protocol violation has been
    detected.
        0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |         Cause Code=13         |      Cause Length=Variable    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       /                    Additional Information                     /
       \                                                               \
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+