lists.osmocom.org
Sign In Sign Up
Manage this list Sign In Sign Up

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

gerrit-log

Thread Start a new thread
Download
Threads by month
  • ----- 2026 -----
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
gerrit-log@lists.osmocom.org

January 2024

  • 1 participants
  • 1559 discussions
[S] Change in ...osmo-epdg[master]: s6b: Trigger SAR towards HSS when receiving AAR from PGW
by pespin 26 Jan '24

26 Jan '24
Attention is currently required from: laforge. Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35697?usp=email to look at the new patch set (#3). Change subject: s6b: Trigger SAR towards HSS when receiving AAR from PGW ...................................................................... s6b: Trigger SAR towards HSS when receiving AAR from PGW As described in 3GPP TS 29.273 9.1.2.2.3 mentioning procedure from clause 8.1.2.2.2 (SAR/SAA). Change-Id: I7e0bf449ac6cae550a5934d9d518bb3f2bf64d5b --- M src/aaa_diameter_s6b_cb.erl 1 file changed, 24 insertions(+), 4 deletions(-) git pull ssh://gerrit.osmocom.org:29418/erlang/osmo-epdg refs/changes/97/35697/3 -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35697?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: I7e0bf449ac6cae550a5934d9d518bb3f2bf64d5b Gerrit-Change-Number: 35697 Gerrit-PatchSet: 3 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-CC: laforge <laforge(a)osmocom.org> Gerrit-Attention: laforge <laforge(a)osmocom.org> Gerrit-MessageType: newpatchset
1 0
0 0
[S] Change in ...osmo-epdg[master]: s6b: Trigger SAR towards MAP when receiving AAR from PGW
by pespin 26 Jan '24

26 Jan '24
Attention is currently required from: laforge. pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35697?usp=email ) Change subject: s6b: Trigger SAR towards MAP when receiving AAR from PGW ...................................................................... Patch Set 2: (1 comment) Commit Message: https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35697/comment/cce99534_6858… PS2, Line 7: MAP > what ist he menaing of MAP in this context? I meant HSS here, I somehow mixed concepts when writing this ;) -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35697?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: I7e0bf449ac6cae550a5934d9d518bb3f2bf64d5b Gerrit-Change-Number: 35697 Gerrit-PatchSet: 2 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-CC: laforge <laforge(a)osmocom.org> Gerrit-Attention: laforge <laforge(a)osmocom.org> Gerrit-Comment-Date: Fri, 26 Jan 2024 15:13:55 +0000 Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: laforge <laforge(a)osmocom.org> Gerrit-MessageType: comment
1 0
0 0
[S] Change in osmo-ggsn[master]: pco: Improve IPCP spec reference documentation
by pespin 26 Jan '24

26 Jan '24
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ggsn/+/35700?usp=email ) Change subject: pco: Improve IPCP spec reference documentation ...................................................................... pco: Improve IPCP spec reference documentation Change-Id: I1dd4a41bae491c61197e8e307efcfc8c63945a71 --- M ggsn/pco.c M ggsn/pco.h 2 files changed, 14 insertions(+), 5 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ggsn refs/changes/00/35700/1 diff --git a/ggsn/pco.c b/ggsn/pco.c index e2181e1..c71f07d 100644 --- a/ggsn/pco.c +++ b/ggsn/pco.c @@ -110,6 +110,7 @@ osmo_hexdump_nospc((const uint8_t *)pco_in, pco_in->length)); } +/* Handle IP Control Protocol, RFC 1332, extensions in RFC 1877 */ static void process_pco_element_ipcp(const struct pco_element *pco_elem, struct msgb *resp, const struct apn_ctx *apn, struct pdp_t *pdp) { diff --git a/ggsn/pco.h b/ggsn/pco.h index 4d999ef..2f95d09 100644 --- a/ggsn/pco.h +++ b/ggsn/pco.h @@ -42,12 +42,11 @@ uint8_t data[0]; } __attribute__((packed)); - -/* RFC 1332 */ +/* RFC 1332 IP Control Protocol options, extensions in RFC 1877 */ enum ipcp_options { - IPCP_OPT_IPADDR = 3, - IPCP_OPT_PRIMARY_DNS = 129, - IPCP_OPT_SECONDARY_DNS = 131, + IPCP_OPT_IPADDR = 3, /* RFC 1332 3.3 */ + IPCP_OPT_PRIMARY_DNS = 129, /* RFC 1877 1.1 */ + IPCP_OPT_SECONDARY_DNS = 131, /* RFC 1877 1.2 */ }; struct ipcp_option_hdr { -- To view, visit https://gerrit.osmocom.org/c/osmo-ggsn/+/35700?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ggsn Gerrit-Branch: master Gerrit-Change-Id: I1dd4a41bae491c61197e8e307efcfc8c63945a71 Gerrit-Change-Number: 35700 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newchange
1 0
0 0
[S] Change in ...osmo-epdg[master]: s6b: Trigger SAR towards MAP when receiving AAR from PGW
by laforge 26 Jan '24

26 Jan '24
Attention is currently required from: pespin. laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35697?usp=email ) Change subject: s6b: Trigger SAR towards MAP when receiving AAR from PGW ...................................................................... Patch Set 2: (1 comment) Commit Message: https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35697/comment/c073b2ae_54ec… PS2, Line 7: MAP what ist he menaing of MAP in this context? -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35697?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: I7e0bf449ac6cae550a5934d9d518bb3f2bf64d5b Gerrit-Change-Number: 35697 Gerrit-PatchSet: 2 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-CC: laforge <laforge(a)osmocom.org> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Fri, 26 Jan 2024 15:06:03 +0000 Gerrit-HasComments: Yes Gerrit-Has-Labels: No Gerrit-MessageType: comment
1 0
0 0
[M] Change in ...osmo-epdg[master]: Make SWm MAR+MAA asynchronous
by laforge 26 Jan '24

26 Jan '24
Attention is currently required from: pespin. laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35691?usp=email ) Change subject: Make SWm MAR+MAA asynchronous ...................................................................... Patch Set 2: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35691?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: Ie7762843e463f404cd4f0c5fcf03a9566dcf173b Gerrit-Change-Number: 35691 Gerrit-PatchSet: 2 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-Comment-Date: Fri, 26 Jan 2024 15:04:48 +0000 Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
1 0
0 0
[M] Change in ...osmo-epdg[master]: Make SWm MAR+MAA asynchronous
by pespin 26 Jan '24

26 Jan '24
Attention is currently required from: laforge, pespin. Hello Jenkins Builder, laforge, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35691?usp=email to look at the new patch set (#2). The following approvals got outdated and were removed: Code-Review+1 by laforge Change subject: Make SWm MAR+MAA asynchronous ...................................................................... Make SWm MAR+MAA asynchronous Change-Id: Ie7762843e463f404cd4f0c5fcf03a9566dcf173b --- M src/aaa_diameter_swm.erl M src/epdg_diameter_swm.erl M src/epdg_ue_fsm.erl 3 files changed, 108 insertions(+), 22 deletions(-) git pull ssh://gerrit.osmocom.org:29418/erlang/osmo-epdg refs/changes/91/35691/2 -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35691?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: Ie7762843e463f404cd4f0c5fcf03a9566dcf173b Gerrit-Change-Number: 35691 Gerrit-PatchSet: 2 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Attention: laforge <laforge(a)osmocom.org> Gerrit-Attention: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: newpatchset
1 0
0 0
[S] Change in ...osmo-epdg[master]: s6b: Answer Diameter STR with STA
by pespin 26 Jan '24

26 Jan '24
pespin has submitted this change. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35687?usp=email ) Change subject: s6b: Answer Diameter STR with STA ...................................................................... s6b: Answer Diameter STR with STA Change-Id: I34f803c1f772bab9b267e4eaad7146e7b1ac2894 --- M src/aaa_diameter_s6b_cb.erl 1 file changed, 26 insertions(+), 3 deletions(-) Approvals: laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified pespin: Looks good to me, approved diff --git a/src/aaa_diameter_s6b_cb.erl b/src/aaa_diameter_s6b_cb.erl index 55bc66f..81757a9 100644 --- a/src/aaa_diameter_s6b_cb.erl +++ b/src/aaa_diameter_s6b_cb.erl @@ -65,9 +65,23 @@ 'Origin-Realm'=OR}, lager:info("S6b Tx to ~p: ~p~n", [Caps, Resp]), {reply, Resp}; - % TODO: extract relevant fields from DIAMETER AAA -%% handle_request/3 + +% 3GPP TS 29.273 9.2.2.3.1 Session-Termination-Request (STR) Command: +handle_request(#diameter_packet{msg = Req, errors = []}, _SvcName, {_, Caps}) when is_record(Req, 'STR') -> + lager:info("S6b Rx from ~p: ~p~n", [Caps, Req]), + % extract relevant fields from DIAMETER STR: + #diameter_caps{origin_host = {OH,_}, origin_realm = {OR,_}} = Caps, + #'STR'{'Session-Id' = SessionId, + 'Auth-Application-Id' = _AuthAppId, + 'User-Name' = _UserNameOpt} = Req, + % 3GPP TS 29.273 9.2.2.3.2 Session-Termination-Answer (STA) Command: + Resp = #'STA'{'Session-Id' = SessionId, + 'Result-Code' = 2001, + 'Origin-Host' = OH, + 'Origin-Realm' = OR}, + lager:info("S6b Tx to ~p: ~p~n", [Caps, Resp]), + {reply, Resp}; + handle_request(Packet, _SvcName, Peer) -> lager:error("S6b Rx unexpected msg from ~p: ~p~n", [Peer, Packet]), - %PESPIN: TODO: handle S6b AAR here, see osmo_dia2gsup "handle_request" as example. erlang:error({unexpected, ?MODULE, ?LINE}). -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35687?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: I34f803c1f772bab9b267e4eaad7146e7b1ac2894 Gerrit-Change-Number: 35687 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: merged
1 0
0 0
[S] Change in ...osmo-epdg[master]: Rename s/epdg_diameter_swx/aaa_diameter_swx
by pespin 26 Jan '24

26 Jan '24
pespin has submitted this change. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35688?usp=email ) Change subject: Rename s/epdg_diameter_swx/aaa_diameter_swx ...................................................................... Rename s/epdg_diameter_swx/aaa_diameter_swx The Swx interface is part of the internal AAA server node implemented in osmo-epdg. Hence, change the prefix of the module/file name so that it becomes clear it's part of the AAA and keep it separated from ePDG node code. Change-Id: Ie6a056bb8616fcda262f285241d38ba26e47f184 --- M TODO.md R src/aaa_diameter_swx.erl R src/aaa_diameter_swx_cb.erl M src/auth_handler.erl M src/epdg_ue_fsm.erl M src/osmo_epdg_sup.erl 6 files changed, 31 insertions(+), 17 deletions(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve pespin: Looks good to me, approved diff --git a/TODO.md b/TODO.md index b4a1e7c..1b9801a 100644 --- a/TODO.md +++ b/TODO.md @@ -4,7 +4,7 @@ - async calls (e.g. terminate subscription) - improve and understand the supervisor - when the gsup_server dies, it should only restart the gsup_server - - same for epdg_diameter_swx + - same for aaa_diameter_swx - linting for erlang? diff --git a/src/epdg_diameter_swx.erl b/src/aaa_diameter_swx.erl similarity index 99% rename from src/epdg_diameter_swx.erl rename to src/aaa_diameter_swx.erl index 5c2ebca..411c000 100644 --- a/src/epdg_diameter_swx.erl +++ b/src/aaa_diameter_swx.erl @@ -35,7 +35,7 @@ % that of the covered work. --module(epdg_diameter_swx). +-module(aaa_diameter_swx). -author('Alexander Couzens <lynxis(a)fe80.eu>'). -behaviour(gen_server). @@ -57,7 +57,7 @@ -define(SERVER, ?MODULE). -define(SVC_NAME, ?MODULE). -define(APP_ALIAS, ?MODULE). --define(CALLBACK_MOD, epdg_diameter_swx_cb). +-define(CALLBACK_MOD, aaa_diameter_swx_cb). -define(DIAMETER_DICT_SWX, diameter_3gpp_ts29_273_swx). -define(ENV_APP_NAME, osmo_epdg). -define(ENV_DEFAULT_SESSION_ID, "epdg@localdomain"). diff --git a/src/epdg_diameter_swx_cb.erl b/src/aaa_diameter_swx_cb.erl similarity index 98% rename from src/epdg_diameter_swx_cb.erl rename to src/aaa_diameter_swx_cb.erl index 3e620bc..215e051 100644 --- a/src/epdg_diameter_swx_cb.erl +++ b/src/aaa_diameter_swx_cb.erl @@ -1,7 +1,7 @@ %% %% The diameter application callback module configured by client.erl. %% --module(epdg_diameter_swx_cb). +-module(aaa_diameter_swx_cb). -include_lib("diameter/include/diameter.hrl"). -include_lib("diameter_3gpp_ts29_273_swx.hrl"). diff --git a/src/auth_handler.erl b/src/auth_handler.erl index 83e8aaf..9d142fa 100644 --- a/src/auth_handler.erl +++ b/src/auth_handler.erl @@ -33,7 +33,7 @@ % request the diameter code for a tuple CKey = [], IntegrityKey = [], - Result = epdg_diameter_swx:multimedia_auth_request(Imsi, 1, "EAP-AKA", 1, CKey, IntegrityKey), + Result = aaa_diameter_swx:multimedia_auth_request(Imsi, 1, "EAP-AKA", 1, CKey, IntegrityKey), case Result of {ok, Mar} -> {reply, {ok, Mar}, State}; {error, Err} -> {reply, {error, Err}, State}; diff --git a/src/epdg_ue_fsm.erl b/src/epdg_ue_fsm.erl index f8fca64..8ddb369 100644 --- a/src/epdg_ue_fsm.erl +++ b/src/epdg_ue_fsm.erl @@ -143,7 +143,7 @@ state_authenticated({call, From}, lu_request, Data) -> lager:info("ue_fsm state_authenticated event=lu_request, ~p~n", [Data]), - Result = epdg_diameter_swx:server_assignment_request(Data#ue_fsm_data.imsi, 1, "internet"), + Result = aaa_diameter_swx:server_assignment_request(Data#ue_fsm_data.imsi, 1, "internet"), gsup_server:lu_response(Data#ue_fsm_data.imsi, Result), case Result of {ok, _} -> diff --git a/src/osmo_epdg_sup.erl b/src/osmo_epdg_sup.erl index e226567..9b44731 100644 --- a/src/osmo_epdg_sup.erl +++ b/src/osmo_epdg_sup.erl @@ -23,16 +23,16 @@ GtpcLocalPort = application:get_env(?ENV_APP_NAME, gtpc_local_port, ?ENV_DEFAULT_GTPC_LOCAL_PORT), GtpcRemoteIp = application:get_env(?ENV_APP_NAME, gtpc_remote_ip, ?ENV_DEFAULT_GTPC_REMOTE_IP), GtpcRemotePort = application:get_env(?ENV_APP_NAME, gtpc_remote_port, ?ENV_DEFAULT_GTPC_REMOTE_PORT), - DiaServer = {epdg_diameter_swx, {epdg_diameter_swx,start_link,[]}, - permanent, - 5000, - worker, - [epdg_diameter_swx_cb]}, - DiaS6bServer = {aaa_diameter_s6b, {aaa_diameter_s6b,start_link,[]}, - permanent, - 5000, - worker, - [aaa_diameter_s6b_cb]}, + AAADiaSWxServer = {aaa_diameter_swx, {aaa_diameter_swx,start_link,[]}, + permanent, + 5000, + worker, + [aaa_diameter_swx_cb]}, + AAADiaS6bServer = {aaa_diameter_s6b, {aaa_diameter_s6b,start_link,[]}, + permanent, + 5000, + worker, + [aaa_diameter_s6b_cb]}, GtpcServer = {epdg_gtpc_s2b, {epdg_gtpc_s2b,start_link, [GtpcLocalIp, GtpcLocalPort, GtpcRemoteIp, GtpcRemotePort, []]}, permanent, 5000, @@ -48,4 +48,4 @@ 5000, worker, [auth_handler]}, - {ok, { {one_for_all, 5, 10}, [DiaServer, DiaS6bServer, GtpcServer, GsupServer, AuthHandler]} }. + {ok, { {one_for_all, 5, 10}, [AAADiaSWxServer, AAADiaS6bServer, GtpcServer, GsupServer, AuthHandler]} }. -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35688?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: Ie6a056bb8616fcda262f285241d38ba26e47f184 Gerrit-Change-Number: 35688 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: merged
1 0
0 0
[S] Change in ...osmo-epdg[master]: Rename s/ue_fsm/epdg_ue_fsm/g
by pespin 26 Jan '24

26 Jan '24
pespin has submitted this change. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35686?usp=email ) Change subject: Rename s/ue_fsm/epdg_ue_fsm/g ...................................................................... Rename s/ue_fsm/epdg_ue_fsm/g osmo-epdg actually contains 2 nodes inside: ePDG and AAA server. The fsm is for the ePDG node, and ideally we want to keep both nodes as separate as possible so that we can later on split them or use an external AAA server. Change-Id: If0852f4aedd0fb0cb9bf6cfcf77f00acd4a3fcbf --- M src/epdg_gtpc_s2b.erl R src/epdg_ue_fsm.erl M src/gsup_server.erl 3 files changed, 23 insertions(+), 9 deletions(-) Approvals: pespin: Looks good to me, approved Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve diff --git a/src/epdg_gtpc_s2b.erl b/src/epdg_gtpc_s2b.erl index 7e3dd6e..ca05d9b 100644 --- a/src/epdg_gtpc_s2b.erl +++ b/src/epdg_gtpc_s2b.erl @@ -287,7 +287,7 @@ Sess1 = update_gtp_session_from_create_session_response(Resp, Sess0), lager:info("s2b: Updated Session after create_session_response: ~p~n", [Sess1]), State1 = update_gtp_session(Sess0, Sess1, State0), - ue_fsm:received_gtpc_create_session_response(Sess0#gtp_session.pid, {ok, Resp}), + epdg_ue_fsm:received_gtpc_create_session_response(Sess0#gtp_session.pid, {ok, Resp}), {noreply, State1} end; @@ -299,7 +299,7 @@ {noreply, State0}; Sess -> State1 = delete_gtp_session(Sess, State0), - ue_fsm:received_gtpc_delete_session_response(Sess#gtp_session.pid, Resp), + epdg_ue_fsm:received_gtpc_delete_session_response(Sess#gtp_session.pid, Resp), {noreply, State1} end; diff --git a/src/ue_fsm.erl b/src/epdg_ue_fsm.erl similarity index 99% rename from src/ue_fsm.erl rename to src/epdg_ue_fsm.erl index f17dfdc..f8fca64 100644 --- a/src/ue_fsm.erl +++ b/src/epdg_ue_fsm.erl @@ -30,9 +30,9 @@ % for the parts of the runtime libraries of Erlang/OTP used as well as % that of the covered work. --module(ue_fsm). +-module(epdg_ue_fsm). -behaviour(gen_statem). --define(NAME, ue_fsm). +-define(NAME, epdg_ue_fsm). -include_lib("osmo_gsup/include/gsup_protocol.hrl"). -include_lib("gtplib/include/gtp_packet.hrl"). diff --git a/src/gsup_server.erl b/src/gsup_server.erl index cebcc0f..ae677c9 100644 --- a/src/gsup_server.erl +++ b/src/gsup_server.erl @@ -223,7 +223,7 @@ % send auth info / requesting authentication tuples handle_info({ipa, Socket, ?IPAC_PROTO_EXT_GSUP, _GsupMsgRx = #{message_type := send_auth_info_req, imsi := Imsi}}, State0) -> {UE, State1} = find_or_new_gsups_ue(Imsi, State0), - case ue_fsm:auth_request(UE#gsups_ue.pid) of + case epdg_ue_fsm:auth_request(UE#gsups_ue.pid) of ok -> ok; {error, _} -> Resp = #{message_type => send_auth_info_err, @@ -241,7 +241,7 @@ UE = find_gsups_ue_by_imsi(Imsi, State), case UE of #gsups_ue{imsi = Imsi} -> - case ue_fsm:lu_request(UE#gsups_ue.pid) of + case epdg_ue_fsm:lu_request(UE#gsups_ue.pid) of ok -> ok; {error, _} -> Resp = #{message_type => location_upd_err, @@ -268,7 +268,7 @@ UE = find_gsups_ue_by_imsi(Imsi, State), case UE of #gsups_ue{imsi = Imsi} -> - case ue_fsm:tunnel_request(UE#gsups_ue.pid) of + case epdg_ue_fsm:tunnel_request(UE#gsups_ue.pid) of ok -> ok; {error, _} -> Resp = #{message_type => epdg_tunnel_error, @@ -294,7 +294,7 @@ UE = find_gsups_ue_by_imsi(Imsi, State), case UE of #gsups_ue{imsi = Imsi} -> - case ue_fsm:purge_ms_request(UE#gsups_ue.pid) of + case epdg_ue_fsm:purge_ms_request(UE#gsups_ue.pid) of ok -> ok; _ -> Resp = #{message_type => purge_ms_err, imsi => Imsi, @@ -349,7 +349,7 @@ new_gsups_ue(Imsi, State) -> - {ok, Pid} = ue_fsm:start_link(Imsi), + {ok, Pid} = epdg_ue_fsm:start_link(Imsi), UE = #gsups_ue{imsi = Imsi, pid = Pid}, NewSt = State#gsups_state{ues = sets:add_element(UE, State#gsups_state.ues)}, {UE, NewSt}. -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35686?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: If0852f4aedd0fb0cb9bf6cfcf77f00acd4a3fcbf Gerrit-Change-Number: 35686 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: lynxis lazus <lynxis(a)fe80.eu> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: merged
1 0
0 0
[M] Change in ...osmo-epdg[master]: Split auth_handler module into SWm files for ePDG and AAA Server
by pespin 26 Jan '24

26 Jan '24
pespin has submitted this change. ( https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35689?usp=email ) Change subject: Split auth_handler module into SWm files for ePDG and AAA Server ...................................................................... Split auth_handler module into SWm files for ePDG and AAA Server This allows more easily matching and following the code against the procedures the specs define. Also, ensure proper separation of data and proper order of procedures when later on we may split the AAA Server to be an external process. Change-Id: Ieb925445fb0cf45a58439fd0c4cd9e4d779a0a79 --- R src/aaa_diameter_swm.erl C src/epdg_diameter_swm.erl M src/epdg_ue_fsm.erl M src/osmo_epdg_sup.erl 4 files changed, 43 insertions(+), 22 deletions(-) Approvals: pespin: Looks good to me, approved laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified diff --git a/src/auth_handler.erl b/src/aaa_diameter_swm.erl similarity index 83% rename from src/auth_handler.erl rename to src/aaa_diameter_swm.erl index 9d142fa..6aef1b2 100644 --- a/src/auth_handler.erl +++ b/src/aaa_diameter_swm.erl @@ -1,10 +1,12 @@ --module(auth_handler). +% AAA Server implementation of SWm Diameter interface, TS 29.273 section 7 +% This interface is so far implemented through internal erlang messages against +% the internal ePDG. +-module(aaa_diameter_swm). -behaviour(gen_server). --include_lib("osmo_gsup/include/gsup_protocol.hrl"). -include_lib("diameter_3gpp_ts29_273_swx.hrl"). --record(auth_state, { +-record(swm_state, { table_id % ets table id }). @@ -23,7 +25,7 @@ init([]) -> TableId = ets:new(auth_req, [bag, named_table]), - {ok, #auth_state{table_id = TableId}}. + {ok, #swm_state{table_id = TableId}}. auth_request(Imsi) -> diff --git a/src/auth_handler.erl b/src/epdg_diameter_swm.erl similarity index 70% copy from src/auth_handler.erl copy to src/epdg_diameter_swm.erl index 9d142fa..9c3145b 100644 --- a/src/auth_handler.erl +++ b/src/epdg_diameter_swm.erl @@ -1,11 +1,12 @@ --module(auth_handler). +% ePDG implementation of SWm Diameter interface, TS 29.273 section 7 +% This interface is so far implemented through internal erlang messages against +% the internal AAA Server. +-module(epdg_diameter_swm). -behaviour(gen_server). --include_lib("osmo_gsup/include/gsup_protocol.hrl"). -include_lib("diameter_3gpp_ts29_273_swx.hrl"). --record(auth_state, { - table_id % ets table id +-record(swm_state, { }). -export([start_link/0]). @@ -22,18 +23,15 @@ gen_server:start_link({local, ?MODULE}, ?MODULE, [], []). init([]) -> - TableId = ets:new(auth_req, [bag, named_table]), - {ok, #auth_state{table_id = TableId}}. + {ok, #swm_state{}}. auth_request(Imsi) -> gen_server:call(?SERVER, {epdg_auth_req, Imsi}). -handle_call({epdg_auth_req, Imsi}, From, State) -> - % request the diameter code for a tuple - CKey = [], - IntegrityKey = [], - Result = aaa_diameter_swx:multimedia_auth_request(Imsi, 1, "EAP-AKA", 1, CKey, IntegrityKey), +handle_call({epdg_auth_req, Imsi}, _From, State) -> + % we yet don't implement the Diameter SWm interface on the wire, we process the call internally: + Result = aaa_diameter_swm:auth_request(Imsi), case Result of {ok, Mar} -> {reply, {ok, Mar}, State}; {error, Err} -> {reply, {error, Err}, State}; diff --git a/src/epdg_ue_fsm.erl b/src/epdg_ue_fsm.erl index 8ddb369..787689d 100644 --- a/src/epdg_ue_fsm.erl +++ b/src/epdg_ue_fsm.erl @@ -128,7 +128,7 @@ state_new({call, From}, auth_request, Data) -> lager:info("ue_fsm state_new event=auth_request, ~p~n", [Data]), - Auth = auth_handler:auth_request(Data#ue_fsm_data.imsi), + Auth = epdg_diameter_swm:auth_request(Data#ue_fsm_data.imsi), gsup_server:auth_response(Data#ue_fsm_data.imsi, Auth), case Auth of {ok, _} -> diff --git a/src/osmo_epdg_sup.erl b/src/osmo_epdg_sup.erl index 9b44731..4d004e2 100644 --- a/src/osmo_epdg_sup.erl +++ b/src/osmo_epdg_sup.erl @@ -23,6 +23,7 @@ GtpcLocalPort = application:get_env(?ENV_APP_NAME, gtpc_local_port, ?ENV_DEFAULT_GTPC_LOCAL_PORT), GtpcRemoteIp = application:get_env(?ENV_APP_NAME, gtpc_remote_ip, ?ENV_DEFAULT_GTPC_REMOTE_IP), GtpcRemotePort = application:get_env(?ENV_APP_NAME, gtpc_remote_port, ?ENV_DEFAULT_GTPC_REMOTE_PORT), + %% AAA Server processes: AAADiaSWxServer = {aaa_diameter_swx, {aaa_diameter_swx,start_link,[]}, permanent, 5000, @@ -33,6 +34,12 @@ 5000, worker, [aaa_diameter_s6b_cb]}, + AAADiaSWmServer = {aaa_diameter_swm, {aaa_diameter_swm, start_link, []}, + permanent, + 5000, + worker, + [aaa_diameter_swm]}, + %% ePDG processes: GtpcServer = {epdg_gtpc_s2b, {epdg_gtpc_s2b,start_link, [GtpcLocalIp, GtpcLocalPort, GtpcRemoteIp, GtpcRemotePort, []]}, permanent, 5000, @@ -43,9 +50,9 @@ 5000, worker, [gsup_server]}, - AuthHandler = {auth_handler, {auth_handler, start_link, []}, - permanent, - 5000, - worker, - [auth_handler]}, - {ok, { {one_for_all, 5, 10}, [AAADiaSWxServer, AAADiaS6bServer, GtpcServer, GsupServer, AuthHandler]} }. + DiaSWmServer = {epdg_diameter_swm, {epdg_diameter_swm, start_link, []}, + permanent, + 5000, + worker, + [epdg_diameter_swm]}, + {ok, { {one_for_all, 5, 10}, [AAADiaSWxServer, AAADiaS6bServer, AAADiaSWmServer, GtpcServer, GsupServer, DiaSWmServer]} }. -- To view, visit https://gerrit.osmocom.org/c/erlang/osmo-epdg/+/35689?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: erlang/osmo-epdg Gerrit-Branch: master Gerrit-Change-Id: Ieb925445fb0cf45a58439fd0c4cd9e4d779a0a79 Gerrit-Change-Number: 35689 Gerrit-PatchSet: 1 Gerrit-Owner: pespin <pespin(a)sysmocom.de> Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge <laforge(a)osmocom.org> Gerrit-Reviewer: pespin <pespin(a)sysmocom.de> Gerrit-MessageType: merged
1 0
0 0
  • ← Newer
  • 1
  • ...
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • ...
  • 156
  • Older →

HyperKitty Powered by HyperKitty version 1.3.12.