anchor.diff:  		_ ->
   			{stop, fragmentation_unimplemented, StateData}
   	end;
  -aaa({ssl_pid, SslPid}, StateData) ->
  -	{next_state, aaa, StateData#statedata{ssl_pid = SslPid}, ?TIMEOUT};
   aaa({eap_ttls, _SslPid, Data}, #statedata{buf = Buf} = StateData) ->
   	NewStateData = StateData#statedata{buf = [Data | Buf]},
   	{next_state, aaa, NewStateData, ?BufTIMEOUT}.
  
positive.code: %%
  ttls(timeout, #statedata{session_id = SessionID} = StateData) ->
  	{stop, {shutdown, SessionID}, StateData};
  ttls({ssl_pid, SslPid}, StateData) ->
  	NewStateData = StateData#statedata{ssl_pid = SslPid},
  	{next_state, ttls, NewStateData, ?TIMEOUT};
  ttls({ssl_setopts, Options}, StateData) ->
  	NewStateData = StateData#statedata{socket_options = Options},
  	{next_state, ttls, NewStateData, ?TIMEOUT};
  
negative.code: 					NewEapID = StartEapID + 1,
  					NewEapPacket = #eap_packet{code = request, type = ?TTLS,
  							identifier = NewEapID, data = EapData},
  					send_response(NewEapPacket, ?AccessChallenge,
  							RadiusID, [], RequestAuthenticator, Secret, RadiusFsm),
  					NextStateData = StateData#statedata{eap_id = NewEapID},
  					{next_state, ttls, NextStateData, ?TIMEOUT};
  				#eap_packet{code = request, identifier = NewEapID} ->
  					NewEapPacket = #eap_packet{code = response, type = ?LegacyNak,
  							identifier = NewEapID, data = <<0>>},
  					send_response(NewEapPacket, ?AccessReject,
  							RadiusID, [], RequestAuthenticator, Secret, RadiusFsm),
  					{stop, {shutdown, SessionID}, StateData};
  				#eap_packet{code = Code,
  							type = EapType, identifier = NewEapID, data = Data} ->
  					error_logger:warning_report(["Unknown EAP received",
  