anchor.diff:  	access_request(Socket, Address, Port, NasId,
   			UserName, Secret, MAC, Auth, RadId, EapMsg).
   
  +receive_commit(Socket, Address, Port, Secret, ReqAuth, RadId) ->
  +	EapMsg = access_response(Socket, Address, Port,
  +			Secret, RadId, ReqAuth),
  +	#eap_packet{code = request, type = ?PWD, identifier = EapId,
  +			data = EapData} = ocs_eap_codec:eap_packet(EapMsg),
  +	#eap_pwd{length = false, more = false, pwd_exch = commit,
  +			data = EapPwdData} = ocs_eap_codec:eap_pwd(EapData),
  +	#eap_pwd_commit{element = ElementS,
  +			scalar = ScalarS} = ocs_eap_codec:eap_pwd_commit(EapPwdData),
  +	{EapId, ElementS, ScalarS}.
  +
   send_commit(Socket, Address, Port, Secret, Auth, UserName,
  -		NasId, PeerId, MAC, Token, PeerId, ServerID, Password, EapId, RadId) ->
  +		NasId, PeerId, MAC, Token, PeerId, ServerID, PeerAuth, EapId, RadId) ->
   	Prand = crypto:rand_uniform(1, ?R),
  -	PWE = ocs_eap_pwd:compute_pwe(Token, PeerId, ServerID, Password),
  +	PWE = ocs_eap_pwd:compute_pwe(Token, PeerId, ServerID, PeerAuth),
   	{ScalarP, ElementP} = ocs_eap_pwd:compute_scalar(<<Prand:256>>, PWE),
   	EapPwdCommit = #eap_pwd_commit{scalar = ScalarP, element = ElementP},
   	EapPwd = #eap_pwd{length = false, more = false, pwd_exch = commit,
  
positive.code: pwd_commit(Config) ->
  	PeerId = <<"34567890">>,
  	MAC = "cc:dd:ee:ff:aa:bb",
  	PeerAuth = ocs:generate_password(),
  	ok = ocs:add_subscriber(PeerId, PeerAuth, []),
  	Socket = ?config(socket, Config), 
  	{ok, Address} = application:get_env(ocs, radius_auth_addr),
  
negative.code: 	UserName = ct:get_config(radius_username),
  	Secret = ct:get_config(radius_shared_secret),
  	ReqAuth1 = radius:authenticator(),
  	RadId1 = 5, EapId1 = 1,
  	ok = send_identity(Socket, Address, Port, NasId, UserName,
  			Secret, PeerId, MAC, ReqAuth1, EapId1, RadId1),
  	EapId2 = EapId1 + 1,
  	{EapId2, ServerID} = receive_id(Socket, Address,
  			Port, Secret, ReqAuth1, RadId1),
  	RadId2 = RadId1 + 1,
  	ReqAuth2 = radius:authenticator(),
  	Token = crypto:rand_bytes(4),
  	send_id(Socket, Address, Port, Secret,
  			ReqAuth2, UserName, NasId, PeerId, MAC, Token, EapId2, RadId2),
  	EapId3 = EapId2 + 1,
  	{EapId3, _ElementS, _ScalarS} = receive_commit(Socket, Address,
  			Port, Secret, ReqAuth2, RadId2),
  	RadId3 = RadId2 + 1,
  	ReqAuth3 = radius:authenticator(),
  	ok = send_commit(Socket, Address, Port, Secret, ReqAuth3, UserName,
  			NasId, PeerId, MAC, Token, PeerId, ServerID, PeerAuth, EapId3, RadId3),
  	EapId4 = EapId3 + 1,
  	{EapId4, _ConfirmS} = receive_confirm(Socket,
  			Address, Port, Secret, ReqAuth3, RadId3).
  	
  pwd_confirm() ->
  	[{userdata, [{doc, "Send an EAP-pwd-Confirm/Response to peer"}]}].
  
  pwd_confirm(Config) ->
  	Id = 1,
  