Skip to content

Commit

Permalink
[smf] idempotently handle second csr message (#56)
Browse files Browse the repository at this point in the history
  • Loading branch information
spencersevilla committed Jan 19, 2024
1 parent a6b8b0c commit 3bbc32d
Showing 1 changed file with 23 additions and 1 deletion.
24 changes: 23 additions & 1 deletion src/smf/gsm-sm.c
Original file line number Diff line number Diff line change
Expand Up @@ -767,7 +767,29 @@ void smf_gsm_state_operational(ogs_fsm_t *s, smf_event_t *e)
OGS_FSM_TRAN(s, smf_gsm_state_wait_pfcp_deletion);
}
break;

case OGS_GTP2_CREATE_SESSION_REQUEST_TYPE:
ogs_warn("received Create Session Request for preexisting session");
gtp2_cause = smf_s5c_handle_create_session_request(sess,
e->gtp_xact,
&e->gtp2_message->create_session_request);
if (gtp2_cause != OGS_GTP2_CAUSE_REQUEST_ACCEPTED) {
send_gtp_create_err_msg(sess, e->gtp_xact, gtp2_cause);
return;
}
switch (sess->gtp_rat_type) {
case OGS_GTP2_RAT_TYPE_EUTRAN:
if (send_ccr_init_req_gx_gy(sess, e) == true)
OGS_FSM_TRAN(s, smf_gsm_state_wait_epc_auth_initial);
break;
case OGS_GTP2_RAT_TYPE_WLAN:
smf_s6b_send_aar(sess, e->gtp_xact);
OGS_FSM_TRAN(s, smf_gsm_state_wait_epc_auth_initial);
break;
default:
ogs_error("Unknown RAT Type [%d]", sess->gtp_rat_type);
ogs_assert_if_reached();
}
break;
default:
ogs_error("Not implemented(type:%d)", gtp2_message->h.type);
}
Expand Down

0 comments on commit 3bbc32d

Please sign in to comment.