NAME

  InitAckBadHostName.seq - INIT-ACK chunk is received with Unresolvable Host Name Address


PURPOSE

  To chech that if INIT-ACK chunk is received with Unresolvable Host Name
  Address then the endpoint response with ABORT message and error cause is
  set to "Unresolvable Address".


SYNOPSIS

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


PRE-TEST CONDITION

  Association is not established between endpoint A and B. Arrange the
  data in endpoint A such that Host Name address is sent to Endpoint B
  with no other IP address in INIT-ACK message. Also Host Name address
  sent by endpoint A is not resolvable at Endpoint B.


TEST PROCEDURE

  Endpoint A                           Endpoint B                ULP
  (CLOSED)                             (CLOSED)
                                                   <-----    Associate
                <-----------------      INIT
  INIT-ACK      ----------------->
  (with Unresolvable Host Name Address)
                <-----------------      ABORT
                                        (with error Unresolvable Address)
  TEST DESCRIPTION:
  1. Attempt to make an association from endpoint B to A. Send INIT-ACK 
     message containing Host Name Address with no other IP address. 
     Record the message sequence using a signal emulator.
  2. Check A: ABORT is sent at the IP address from where INIT message is 
     received with error cause Unresolvable Address.


NOTE

  None


REFERENCE

  RFC 4960
  5.1.2.  Handle Address Parameters
    B) If there is a Host Name parameter present in the received INIT or
       INIT ACK chunk, the endpoint shall resolve that host name to a
       list of IP address(es) and derive the transport address(es) of
       this peer by combining the resolved IP address(es) with the SCTP
       source port.
       The endpoint MUST ignore any other IP Address parameters if they
       are also present in the received INIT or INIT ACK chunk.
       The time at which the receiver of an INIT resolves the host name
       has potential security implications to SCTP.  If the receiver of
       an INIT resolves the host name upon the reception of the chunk,
       and the mechanism the receiver uses to resolve the host name
       involves potential long delay (e.g., DNS query), the receiver may
       open itself up to resource attacks for the period of time while it
       is waiting for the name resolution results before it can build the
       State Cookie and release local resources.
       Therefore, in cases where the name translation involves potential
       long delay, the receiver of the INIT MUST postpone the name
       resolution till the reception of the COOKIE ECHO chunk from the
       peer.  In such a case, the receiver of the INIT SHOULD build the
       State Cookie using the received Host Name (instead of destination
       transport addresses) and send the INIT ACK to the source IP
       address from which the INIT was received.
       The receiver of an INIT ACK shall always immediately attempt to
       resolve the name upon the reception of the chunk.
       The receiver of the INIT or INIT ACK MUST NOT send user data
       (piggy-backed or stand-alone) to its peer until the host name is
       successfully resolved.
       If the name resolution is not successful, the endpoint MUST
       immediately send an ABORT with "Unresolvable Address" error cause
       to its peer.  The ABORT shall be sent to the source IP address
       from which the last peer packet was received.