[mod_sofia] Keep the dialog handle after answering a refer NOTIFY (#3189)

`sofia_handle_sip_i_notify()` answered an in-dialog `refer` NOTIFY and then
fell through to the generic handling, which sent a second response and,
on a terminated subscription, destroyed the dialog's handle. A channel kept
up after the REFER outcome (`sip_refer_continue_after_reply=true`) could no
longer send a REFER, re-INVITE or BYE. Return right after the `200 OK`;
`refer` NOTIFYs are no longer forwarded under `proxy-notify-events`.

Co-authored-by: Chris Rienzo <chris@signalwire.com>
This commit is contained in:
Dmitry Verenitsin
2026-09-24 23:04:49 +03:00
committed by GitHub
co-authored by Chris Rienzo
parent 3097732e75
commit b78995c660
+1
View File
@@ -693,6 +693,7 @@ void sofia_handle_sip_i_notify(switch_core_session_t *session, int status,
}
}
nua_respond(nh, SIP_200_OK, NUTAG_WITH_THIS_MSG(de->data->e_msg), TAG_IF(!zstr(session_id_header), SIPTAG_HEADER_STR(session_id_header)), TAG_END());
return;
}
/* if no session, assume it could be an incoming notify from a gateway subscription */