pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35948?usp=email )
Change subject: s2b: Increment gtp SeqNo after transmitting message ......................................................................
s2b: Increment gtp SeqNo after transmitting message
Change-Id: Ia65ef7380f01d080ca05393887661d4af698646a --- M src/epdg_gtpc_s2b.erl 1 file changed, 17 insertions(+), 4 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/erlang/osmo-epdg refs/changes/48/35948/1
diff --git a/src/epdg_gtpc_s2b.erl b/src/epdg_gtpc_s2b.erl index 313e101..95c4d10 100644 --- a/src/epdg_gtpc_s2b.erl +++ b/src/epdg_gtpc_s2b.erl @@ -146,19 +146,19 @@ #gtp_session{pid = Pid, apn = list_to_binary(Apn)}, State0), Req = gen_create_session_request(Sess0, State1), - %TODO: increment State.seq_no. tx_gtp(Req, State1), + State2 = inc_seq_no(State1), lager:debug("Waiting for CreateSessionResponse~n", []), - {reply, ok, State1}; + {reply, ok, State2};
handle_call({gtpc_delete_session_req, {Imsi}}, _From, State) -> Sess = find_gtp_session_by_imsi(Imsi, State), case Sess of #gtp_session{imsi = Imsi} -> Req = gen_delete_session_request(Sess, State), - %TODO: increment State.seq_no. tx_gtp(Req, State), - {reply, ok, State}; + State1 = inc_seq_no(State), + {reply, ok, State1}; undefined -> {reply, {error, imsi_unknown}, State} end. @@ -199,6 +199,10 @@ %% Internal Function Definitions %% ------------------------------------------------------------------
+inc_seq_no(State) -> + NewSeqNr = State#gtp_state.seq_no +1, + State#gtp_state{seq_no = NewSeqNr}. + new_gtp_session(Imsi, SessTpl, State) -> % TODO: find non-used local TEI inside State DefaultBearer = #gtp_bearer{