res_pjsip_registrar: Don't specify an expiration for static contacts.
Statically configured contacts on an AOR don't have an expiration time so when adding them to the resulting 200 OK if an endpoint registers ensure they are marked as such. ASTERISK-28995 Change-Id: I9f0e45eb2ccdedc9a0df5358634a19ccab0ad596
This commit is contained in:
parent
d9ae902f52
commit
99eafe5771
|
@ -233,7 +233,11 @@ static int registrar_add_contact(void *obj, void *arg, int flags)
|
|||
if (parsed && (PJSIP_URI_SCHEME_IS_SIP(parsed) || PJSIP_URI_SCHEME_IS_SIPS(parsed))) {
|
||||
pjsip_contact_hdr *hdr = pjsip_contact_hdr_create(tdata->pool);
|
||||
hdr->uri = parsed;
|
||||
hdr->expires = ast_tvdiff_ms(contact->expiration_time, ast_tvnow()) / 1000;
|
||||
if (!ast_tvzero(contact->expiration_time)) {
|
||||
hdr->expires = ast_tvdiff_ms(contact->expiration_time, ast_tvnow()) / 1000;
|
||||
} else {
|
||||
hdr->expires = PJSIP_EXPIRES_NOT_SPECIFIED;
|
||||
}
|
||||
pjsip_msg_add_hdr(tdata->msg, (pjsip_hdr *) hdr);
|
||||
} else {
|
||||
ast_log(LOG_WARNING, "Skipping invalid Contact URI \"%.*s\" for AOR %s\n",
|
||||
|
|
Loading…
Reference in New Issue