forked from acouzens/open5gs
[CORE] Rollback ogs_pkbuf_copy() from (#2012)
In the previous #2012 working, I've added ogs_pkbuf_free() for original buffer. But, this rasied double free. So, I've rollback it,
This commit is contained in:
parent
c6fd4ae6b8
commit
11aac6a164
|
@ -318,7 +318,6 @@ ogs_pkbuf_t *ogs_pkbuf_copy_debug(ogs_pkbuf_t *pkbuf, const char *file_line)
|
|||
newbuf = ogs_pkbuf_alloc_debug(NULL, size, file_line);
|
||||
if (!newbuf) {
|
||||
ogs_error("ogs_pkbuf_alloc() failed [size=%d]", size);
|
||||
ogs_pkbuf_free(pkbuf);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -345,7 +344,6 @@ ogs_pkbuf_t *ogs_pkbuf_copy_debug(ogs_pkbuf_t *pkbuf, const char *file_line)
|
|||
ogs_pool_alloc(&pool->pkbuf, &newbuf);
|
||||
if (!newbuf) {
|
||||
ogs_error("ogs_pkbuf_copy() failed");
|
||||
ogs_pkbuf_free(pkbuf);
|
||||
ogs_thread_mutex_unlock(&pool->mutex);
|
||||
return NULL;
|
||||
}
|
||||
|
|
|
@ -108,6 +108,7 @@ int nas_5gs_send_registration_accept(amf_ue_t *amf_ue)
|
|||
amf_ue->t3550.pkbuf = ogs_pkbuf_copy(gmmbuf);
|
||||
if (!amf_ue->t3550.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(amf_ue->t3550.pkbuf) failed");
|
||||
ogs_pkbuf_free(gmmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(amf_ue->t3550.timer,
|
||||
|
@ -373,6 +374,7 @@ int nas_5gs_send_de_registration_request(amf_ue_t *amf_ue,
|
|||
amf_ue->t3522.pkbuf = ogs_pkbuf_copy(gmmbuf);
|
||||
if (!amf_ue->t3522.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(amf_ue->t3522.pkbuf) failed");
|
||||
ogs_pkbuf_free(gmmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(amf_ue->t3522.timer,
|
||||
|
@ -406,6 +408,7 @@ int nas_5gs_send_identity_request(amf_ue_t *amf_ue)
|
|||
amf_ue->t3570.pkbuf = ogs_pkbuf_copy(gmmbuf);
|
||||
if (!amf_ue->t3570.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(amf_ue->t3570.pkbuf) failed");
|
||||
ogs_pkbuf_free(gmmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(amf_ue->t3570.timer,
|
||||
|
@ -439,6 +442,7 @@ int nas_5gs_send_authentication_request(amf_ue_t *amf_ue)
|
|||
amf_ue->t3560.pkbuf = ogs_pkbuf_copy(gmmbuf);
|
||||
if (!amf_ue->t3560.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(amf_ue->t3560.pkbuf) failed");
|
||||
ogs_pkbuf_free(gmmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(amf_ue->t3560.timer,
|
||||
|
@ -495,6 +499,7 @@ int nas_5gs_send_security_mode_command(amf_ue_t *amf_ue)
|
|||
amf_ue->t3560.pkbuf = ogs_pkbuf_copy(gmmbuf);
|
||||
if (!amf_ue->t3560.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(amf_ue->t3560.pkbuf) failed");
|
||||
ogs_pkbuf_free(gmmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(amf_ue->t3560.timer,
|
||||
|
@ -522,6 +527,7 @@ int nas_5gs_send_configuration_update_command(
|
|||
amf_ue->t3555.pkbuf = ogs_pkbuf_copy(gmmbuf);
|
||||
if (!amf_ue->t3555.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(amf_ue->t3555.pkbuf) failed");
|
||||
ogs_pkbuf_free(gmmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(amf_ue->t3555.timer,
|
||||
|
@ -542,6 +548,7 @@ int nas_5gs_send_configuration_update_command(
|
|||
amf_ue->t3555.pkbuf = ogs_pkbuf_copy(gmmbuf);
|
||||
if (!amf_ue->t3555.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(amf_ue->t3555.pkbuf) failed");
|
||||
ogs_pkbuf_free(gmmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(amf_ue->t3555.timer,
|
||||
|
|
|
@ -409,6 +409,7 @@ int ngap_send_paging(amf_ue_t *amf_ue)
|
|||
amf_ue->t3513.pkbuf = ogs_pkbuf_copy(ngapbuf);
|
||||
if (!amf_ue->t3513.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy() failed");
|
||||
ogs_pkbuf_free(ngapbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
|
||||
|
|
|
@ -1243,7 +1243,11 @@ void emm_state_initial_context_setup(ogs_fsm_t *s, mme_event_t *e)
|
|||
}
|
||||
|
||||
mme_ue->t3450.pkbuf = ogs_pkbuf_copy(emmbuf);
|
||||
ogs_assert(mme_ue->t3450.pkbuf);
|
||||
if (!mme_ue->t3450.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy() failed");
|
||||
ogs_pkbuf_free(emmbuf);
|
||||
return;
|
||||
}
|
||||
|
||||
ogs_timer_start(mme_ue->t3450.timer,
|
||||
mme_timer_cfg(MME_TIMER_T3450)->duration);
|
||||
|
|
|
@ -139,6 +139,7 @@ int nas_eps_send_attach_accept(mme_ue_t *mme_ue)
|
|||
mme_ue->t3450.pkbuf = ogs_pkbuf_copy(emmbuf);
|
||||
if (!mme_ue->t3450.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(mme_ue->t3450.pkbuf) failed");
|
||||
ogs_pkbuf_free(emmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(mme_ue->t3450.timer,
|
||||
|
@ -215,6 +216,7 @@ int nas_eps_send_identity_request(mme_ue_t *mme_ue)
|
|||
mme_ue->t3470.pkbuf = ogs_pkbuf_copy(emmbuf);
|
||||
if (!mme_ue->t3470.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(mme_ue->t3470.pkbuf) failed");
|
||||
ogs_pkbuf_free(emmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(mme_ue->t3470.timer,
|
||||
|
@ -248,6 +250,7 @@ int nas_eps_send_authentication_request(mme_ue_t *mme_ue)
|
|||
mme_ue->t3460.pkbuf = ogs_pkbuf_copy(emmbuf);
|
||||
if (!mme_ue->t3460.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(mme_ue->t3460.pkbuf) failed");
|
||||
ogs_pkbuf_free(emmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(mme_ue->t3460.timer,
|
||||
|
@ -281,6 +284,7 @@ int nas_eps_send_security_mode_command(mme_ue_t *mme_ue)
|
|||
mme_ue->t3460.pkbuf = ogs_pkbuf_copy(emmbuf);
|
||||
if (!mme_ue->t3460.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(mme_ue->t3460.pkbuf) failed");
|
||||
ogs_pkbuf_free(emmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(mme_ue->t3460.timer,
|
||||
|
@ -333,6 +337,7 @@ int nas_eps_send_detach_request(mme_ue_t *mme_ue)
|
|||
mme_ue->t3422.pkbuf = ogs_pkbuf_copy(emmbuf);
|
||||
if (!mme_ue->t3422.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(mme_ue->t3422.pkbuf) failed");
|
||||
ogs_pkbuf_free(emmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(mme_ue->t3422.timer,
|
||||
|
@ -446,6 +451,7 @@ int nas_eps_send_esm_information_request(mme_bearer_t *bearer)
|
|||
bearer->t3489.pkbuf = ogs_pkbuf_copy(esmbuf);
|
||||
if (!bearer->t3489.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(bearer->t3489) failed");
|
||||
ogs_pkbuf_free(esmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(bearer->t3489.timer,
|
||||
|
@ -669,6 +675,7 @@ int nas_eps_send_tau_accept(
|
|||
mme_ue->t3450.pkbuf = ogs_pkbuf_copy(emmbuf);
|
||||
if (!mme_ue->t3450.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy(mme_ue->t3450.pkbuf) failed");
|
||||
ogs_pkbuf_free(emmbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
ogs_timer_start(mme_ue->t3450.timer,
|
||||
|
|
|
@ -400,6 +400,7 @@ int s1ap_send_paging(mme_ue_t *mme_ue, S1AP_CNDomain_t cn_domain)
|
|||
mme_ue->t3413.pkbuf = ogs_pkbuf_copy(s1apbuf);
|
||||
if (!mme_ue->t3413.pkbuf) {
|
||||
ogs_error("ogs_pkbuf_copy() failed");
|
||||
ogs_pkbuf_free(s1apbuf);
|
||||
return OGS_ERROR;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue