AuthWithBadHMACIdentifier.seq - Authentication Chunk is received with an unsupported HMAC Identifier
To verify that if the AUTH chunk is received with unsupported HMAC identifier, the ERROR chunk SHOULD be sent with the error cause 'Unsupported HMAC Identifier'.
./AuthWithBadHMACIdentifier.seq [-tooloption ...] -pkt ./AuthWithBadHMACIdentifier.def -tooloption : v6eval tool option See Also: ../common/STD_PKT_COMMON.def ../common/SCTP_COMMON.def
Association is established between endpoint A and B. Arrange data in endpoint A such that AUTH chunk with unsupported HMAC identifier is sent to endpoint B.
Endpoint A Endpoint B ULP (ESTABLISHED) (ESTABLISHED)
AUTH ------------------> (with Unsupported HMAC Identifier) <------------------ ERROR (Unsupported HMAC Identifier Error Cause)
TEST DESCRIPTION:
1. Send AUTH chunk from endpoint A to B with Unsupported HMAC Identifier. 2. Check A: ERROR should be received at endpoint A. And Error cause in ERROR is set to "Unsupported HMAC Identifier".
None
RFC 4895
4.1. Unsupported HMAC Identifier Error Cause
This error cause is used to indicate that an AUTH chunk has been received with an unsupported HMAC Identifier.
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 = 0x0105 | Cause Length = 6 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | HMAC Identifier | Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4
Cause Code: 2 bytes (unsigned integer) This value MUST be set to 0x0105.
Cause Length: 2 bytes (unsigned integer) This value MUST be set to 6.
HMAC Identifier: 2 bytes (unsigned integer) This value is the HMAC Identifier which is not supported.
Padding: 2 bytes (unsigned integer) The sender MUST pad the error cause with all zero bytes to make the cause 32-bit aligned. The Padding MUST be 2 bytes long and it MUST be ignored by the receiver.
6.3. Receiving Authenticated Chunks
The receiver has a list of chunk types that it expects to be received only after an AUTH-chunk. This list has been sent to the peer during the association setup. It MUST silently discard these chunks if they are not placed after an AUTH chunk in the packet.
The receiver MUST use the HMAC algorithm indicated in the HMAC Identifier field. If this algorithm was not specified by the receiver in the HMAC-ALGO parameter in the INIT or INIT-ACK chunk during association setup, the AUTH chunk and all the chunks after it MUST be discarded and an ERROR chunk SHOULD be sent with the error cause defined in Section 4.1.