NAME

  HeartbeatWithBadTag.seq - HEARTBEAT chunk is received with invalid Verification Tag


PURPOSE

  To check that if HEARTBEAT chunk is received with invalid Verification
  Tag, the endpoint should silently discard the packet.


SYNOPSIS

  ./HeartbeatWithBadTag.seq [-tooloption ...] -pkt ./HeartbeatWithBadTag.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 HEARTBEAT chunk with invalid Verification
  Tag is sent to endpoint B.


TEST PROCEDURE

  Endpoint A                           Endpoint B                ULP
  (ESTABLISHED)                        (ESTABLISHED)
  HEARTBEAT       ----------------->     Silently discard
  (with invalid Verification Tag)
  HEARTBEAT       ----------------->
                  <-----------------     HEARTBEAT-ACK
  TEST DESCRIPTION:
  1. Send HEARTBEAT message with invalid verification tag value
     to endpoint B.
     Record the message sequence using a signal emulator.
  2. Check A: HEARTBEAT message is silently discarded.
  3. Check B: Was the message sequence as above.


NOTE

  None


REFERENCE

  RFC 4960
  8.5.  Verification Tag
    The Verification Tag rules defined in this section apply when sending
    or receiving SCTP packets that do not contain an INIT, SHUTDOWN
    COMPLETE, COOKIE ECHO (see Section 5.1), ABORT, or SHUTDOWN ACK
    chunk.  The rules for sending and receiving SCTP packets containing
    one of these chunk types are discussed separately in Section 8.5.1.
    When sending an SCTP packet, the endpoint MUST fill in the
    Verification Tag field of the outbound packet with the tag value in
    the Initiate Tag parameter of the INIT or INIT ACK received from its
    peer.
    When receiving an SCTP packet, the endpoint MUST ensure that the
    value in the Verification Tag field of the received SCTP packet
    matches its own tag.  If the received Verification Tag value does not
    match the receiver's own tag value, the receiver shall silently
    discard the packet and shall not process it any further except for
    those cases listed in Section 8.5.1 below.