pespin has uploaded this change for review.
gsup_server: Allow receiveing AuthInfo without PdpInfo
Change-Id: Ife5293fd5942875c13bf29a462496bd8ea9212b7
---
M src/gsup_server.erl
1 file changed, 21 insertions(+), 7 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/erlang/osmo-epdg refs/changes/29/35929/1
diff --git a/src/gsup_server.erl b/src/gsup_server.erl
index 065abb4..6930673 100644
--- a/src/gsup_server.erl
+++ b/src/gsup_server.erl
@@ -228,13 +228,18 @@
% send auth info / requesting authentication tuples
handle_info({ipa, Socket, ?IPAC_PROTO_EXT_GSUP, GsupMsgRx = #{message_type := send_auth_info_req, imsi := Imsi}}, State0) ->
- #{pdp_info_list := [PdpInfo]} = GsupMsgRx,
- #{pdp_context_id := _PDPCtxId,
- pdp_address := #{address := #{},
- pdp_type_nr := PdpTypeNr,
- pdp_type_org := 241},
- access_point_name := Apn
- } = PdpInfo,
+ case maps:find(pdp_info_list, GsupMsgRx) of
+ {ok, [PdpInfo]} ->
+ #{pdp_context_id := _PDPCtxId,
+ pdp_address := #{address := #{},
+ pdp_type_nr := PdpTypeNr,
+ pdp_type_org := 241},
+ access_point_name := Apn
+ } = PdpInfo;
+ error -> % Use some sane defaults:
+ PdpTypeNr = ?GTP_PDP_ADDR_TYPE_NR_IPv4,
+ Apn = "*"
+ end,
{UE, State1} = find_or_new_gsups_ue(Imsi, State0),
case epdg_ue_fsm:auth_request(UE#gsups_ue.pid, {PdpTypeNr, Apn}) of
ok -> State2 = State1;
To view, visit change 35929. To unsubscribe, or for help writing mail filters, visit settings.