3.3.5.4 Received Change-Password-Response Packet

If the currentState variable is set to EAP_CHAP_CHANGE_PASSWORD_SENT, then:

  • Obtain PeerChallenge from the embedded MSCHAPv2 Change-Password-Response packet.

  • Validate the embedded MSCHAPv2 Change-Password-Response packet, as specified in [RFC2759] section 7.

  • If the validation is successful, then:

    • Obtain the new Password from the embedded MSCHAPv2 Change-Password-Response packet.

    • Prepare a Success-Request packet which embeds the MSCHAPv2 Success-Request packet, and send it to the peer.

    • Set currentState to EAP_CHAP_SUCCESS_REQUEST_SENT.

  • If the validation fails, then:<7>

    • Prepare a Failure-Request packet which embeds the MSCHAPv2 Failure packet that corresponds to the validation error, and send it to the peer.

    • Set currentState to EAP_CHAP_FAILURE_REQUEST_SENT.

If the currentState variable is not set to EAP_CHAP_CHANGE_PASSWORD_SENT, the packet is ignored.