sip: Specify invite contact tag
Version 1.12.12 of libsofia-sip-ua no longer automatically generates a contact header element from the local ip address and port. Specifying the contact tag does not break operation with the existing library (1.12.11), but allows for operation on a system with freeswitch 1.10.4 or later installed, which is built against this new version of libsofia-sip-ua. Change-Id: I5c35c5a4bad2fbe76c22ac6d7ee37c832e0ba246
This commit is contained in:
parent
39a2e19309
commit
52b2afce2c
|
@ -597,6 +597,9 @@ static int send_invite(struct sip_agent *agent, struct sip_call_leg *leg,
|
|||
called_num,
|
||||
agent->app->sip.remote_addr,
|
||||
agent->app->sip.remote_port);
|
||||
char *contact = talloc_asprintf(leg, "sip:%s:%d",
|
||||
agent->app->sip.local_addr,
|
||||
agent->app->sip.local_port);
|
||||
char *sdp = sdp_create_file(leg, other, sdp_sendrecv);
|
||||
|
||||
leg->state = SIP_CC_INITIAL;
|
||||
|
@ -604,6 +607,7 @@ static int send_invite(struct sip_agent *agent, struct sip_call_leg *leg,
|
|||
nua_invite(leg->nua_handle,
|
||||
SIPTAG_FROM_STR(from),
|
||||
SIPTAG_TO_STR(to),
|
||||
SIPTAG_CONTACT_STR(contact),
|
||||
NUTAG_MEDIA_ENABLE(0),
|
||||
SIPTAG_CONTENT_TYPE_STR("application/sdp"),
|
||||
SIPTAG_PAYLOAD_STR(sdp),
|
||||
|
@ -612,6 +616,7 @@ static int send_invite(struct sip_agent *agent, struct sip_call_leg *leg,
|
|||
leg->base.call->remote = &leg->base;
|
||||
talloc_free(from);
|
||||
talloc_free(to);
|
||||
talloc_free(contact);
|
||||
talloc_free(sdp);
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue