NAME

  ErrorInCookieWait.seq - ERROR chunk is received in COOKIE-WAIT state


PURPOSE

  To check that if ERROR chunk is received in COOKIE-WAIT state then the
  endpoint should discarded the ERROR chunk.


SYNOPSIS

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


PRE-TEST CONDITION

  Association not established between endpoint A and B. Also arrange the
  data in endpoint B such that upper layers send Associate primitive to
  startup an association with endpoint A.


TEST PROCEDURE

  Endpoint A                           Endpoint B                ULP
  (CLOSED)                             (CLOSED)
                                                   <-----    Associate
                <-----------------      INIT
  ERROR         ----------------->      Discarded
                <-----------------      INIT
                                        (retransmit)
  INIT-ACK      ----------------->
  TEST DESCRIPTION:
  1. Attempt to make an association from endpoint B to endpoint A. Send 
     ERROR message after receiving INIT message.
  2. Check A: ERROR message received in COOKIE-WAIT state is discarded.
  3. Check B: Current state is not disturbed and an association can be 
     completed between A and B.


NOTE

  None


REFERENCE

  RFC 4960
  3.3.10.  Operation Error (ERROR) (9)
    An endpoint sends this chunk to its peer endpoint to notify it of
    certain error conditions.  It contains one or more error causes.  An
    Operation Error is not considered fatal in and of itself, but may be
    used with an ABORT chunk to report a fatal condition.  It has the
    following parameters:
         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
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        |   Type = 9    | Chunk  Flags  |           Length              |
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
        \                                                               \
        /                    one or more Error Causes                   /
        \                                                               \
        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    Chunk Flags: 8 bits
      Set to 0 on transmit and ignored on receipt.
    Length: 16 bits (unsigned integer)
      Set to the size of the chunk in bytes, including the chunk header
      and all the Error Cause fields present.