From c236541e29b022d4fef66958ce796165ab15ea44 Mon Sep 17 00:00:00 2001 From: Michael Jerris Date: Tue, 21 Sep 2010 14:31:36 -0500 Subject: [PATCH] fix seg on subscribe with no contact host --- src/mod/endpoints/mod_sofia/sofia_presence.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/mod/endpoints/mod_sofia/sofia_presence.c b/src/mod/endpoints/mod_sofia/sofia_presence.c index 5eb71b37e9..333f31b91d 100644 --- a/src/mod/endpoints/mod_sofia/sofia_presence.c +++ b/src/mod/endpoints/mod_sofia/sofia_presence.c @@ -1983,12 +1983,20 @@ void sofia_presence_handle_sip_i_subscribe(int status, is_nat = NULL; } + if (zstr(contact_host)) { + is_nat = "No contact host"; + } + if (is_nat) { contact_host = network_ip; switch_snprintf(new_port, sizeof(new_port), ":%d", network_port); port = NULL; } + if (zstr(contact_host)) { + nua_respond(nh, 481, "INVALID SUBSCRIPTION", TAG_END()); + return; + } if (port) { switch_snprintf(new_port, sizeof(new_port), ":%s", port);