pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/36302?usp=email )
Change subject: aaa_ue_fsm: Separate states using comment blocks ......................................................................
aaa_ue_fsm: Separate states using comment blocks
As we add more and more states, it becomes difficult to visualize each state, its logic and why is it use. Add a comment block at the start of each one to clearly see the functions forming it, and allow writing some state description in it.
Change-Id: Iae7cb9f2047f8265f52337452af51f8f86fadd65 --- M src/aaa_ue_fsm.erl 1 file changed, 42 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/erlang/osmo-epdg refs/changes/02/36302/1
diff --git a/src/aaa_ue_fsm.erl b/src/aaa_ue_fsm.erl index 907d8df..e87579f 100644 --- a/src/aaa_ue_fsm.erl +++ b/src/aaa_ue_fsm.erl @@ -196,6 +196,10 @@ lager:info("terminating ~p with reason ~p state=~p, ~p~n", [?MODULE, Reason, State, Data]), ok.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% state_new: +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + state_new(enter, _OldState, Data) -> {keep_state, Data};
@@ -217,6 +221,10 @@ {error, Err} -> {keep_state, Data, [{reply,From,{error, Err}}]} end.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% state_wait_swx_maa: +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + state_wait_swx_maa(enter, _OldState, Data) -> {keep_state, Data};
@@ -225,6 +233,10 @@ aaa_diameter_swm:auth_response(Data#ue_fsm_data.imsi, Result), {next_state, state_new, Data, [{reply,From,ok}]}.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% state_wait_swx_saa: +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + state_wait_swx_saa(enter, _OldState, Data) -> {keep_state, Data};
@@ -239,6 +251,10 @@ {next_state, state_authenticated, Data, [{reply,From,ok}]} end.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% state_authenticated: +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + state_authenticated(enter, _OldState, Data) -> % Mark ePDG session as active: Data1 = Data#ue_fsm_data{epdg_sess_active = true}, @@ -313,6 +329,10 @@ lager:info("ue_fsm state_authenticated: Unexpected call event ~p, ~p~n", [Ev, Data]), {keep_state, Data, [{reply,From,ok}]}.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% state_authenticated_wait_swx_saa: +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + state_authenticated_wait_swx_saa(enter, _OldState, Data) -> {keep_state, Data};
@@ -340,8 +360,12 @@ end end.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% state_dereg_net_initiated_wait_s6b_asa: %% HSS asked us to do deregistration towards the user. %% Transmit S6b ASR towards PGW and wait for ASA back. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + state_dereg_net_initiated_wait_s6b_asa(enter, _OldState, Data) -> aaa_diameter_s6b:tx_as_request(Data#ue_fsm_data.nai), {keep_state, Data, {state_timeout,?TIMEOUT_VAL_WAIT_S6b_ANSWER,s6b_asa_timeout}}; @@ -356,8 +380,12 @@ state_dereg_net_initiated_wait_s6b_asa(state_timeout, s6b_asa_timeout, Data) -> {next_state, state_dereg_net_initiated_wait_swm_asa, Data}.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% state_dereg_net_initiated_wait_s6b_asa: %% HSS asked us to do deregistration towards the user. %% S6b (PGW) was already torn down. Now transmit SWm ASR towards ePDG and wait for ASA back. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + state_dereg_net_initiated_wait_swm_asa(enter, _OldState, Data) -> aaa_diameter_swm:tx_as_request(Data#ue_fsm_data.imsi), {keep_state, Data, {state_timeout,?TIMEOUT_VAL_WAIT_SWm_ANSWER,swm_asa_timeout}};