summaryrefslogtreecommitdiff
path: root/pjsip/src/pjsip/sip_ua_layer.c
diff options
context:
space:
mode:
Diffstat (limited to 'pjsip/src/pjsip/sip_ua_layer.c')
-rw-r--r--pjsip/src/pjsip/sip_ua_layer.c20
1 files changed, 13 insertions, 7 deletions
diff --git a/pjsip/src/pjsip/sip_ua_layer.c b/pjsip/src/pjsip/sip_ua_layer.c
index a38825eb..2010dace 100644
--- a/pjsip/src/pjsip/sip_ua_layer.c
+++ b/pjsip/src/pjsip/sip_ua_layer.c
@@ -539,13 +539,19 @@ static pj_bool_t mod_ua_on_rx_request(pjsip_rx_data *rdata)
/* Not found. Mulfunction UAC? */
pj_mutex_unlock(mod_ua.mutex);
- PJ_LOG(5,(THIS_FILE,
- "Unable to find dialog for %s, answering with 481",
- pjsip_rx_data_get_info(rdata)));
-
- pjsip_endpt_respond_stateless(mod_ua.endpt, rdata,
- PJSIP_SC_CALL_TSX_DOES_NOT_EXIST,
- NULL, NULL, NULL);
+ if (rdata->msg_info.msg->line.req.method.id != PJSIP_ACK_METHOD) {
+ PJ_LOG(5,(THIS_FILE,
+ "Unable to find dialog for %s, answering with 481",
+ pjsip_rx_data_get_info(rdata)));
+
+ pjsip_endpt_respond_stateless(mod_ua.endpt, rdata,
+ PJSIP_SC_CALL_TSX_DOES_NOT_EXIST,
+ NULL, NULL, NULL);
+ } else {
+ PJ_LOG(5,(THIS_FILE,
+ "Unable to find dialog for %s",
+ pjsip_rx_data_get_info(rdata)));
+ }
return PJ_TRUE;
}