pespin has uploaded this change for review.

View Change

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}};

To view, visit change 36302. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: erlang/osmo-epdg
Gerrit-Branch: master
Gerrit-Change-Id: Iae7cb9f2047f8265f52337452af51f8f86fadd65
Gerrit-Change-Number: 36302
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin@sysmocom.de>
Gerrit-MessageType: newchange