diff options
Diffstat (limited to 'pjsip')
-rw-r--r-- | pjsip/src/pjsip-ua/sip_reg.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/pjsip/src/pjsip-ua/sip_reg.c b/pjsip/src/pjsip-ua/sip_reg.c index 5190bb0f..a53937fa 100644 --- a/pjsip/src/pjsip-ua/sip_reg.c +++ b/pjsip/src/pjsip-ua/sip_reg.c @@ -527,6 +527,7 @@ PJ_DEF(pj_status_t) pjsip_regc_register(pjsip_regc *regc, pj_bool_t autoreg, { pjsip_msg *msg; pjsip_contact_hdr *hdr; + const pjsip_hdr *h_allow; pj_status_t status; pjsip_tx_data *tdata; @@ -569,6 +570,14 @@ PJ_DEF(pj_status_t) pjsip_regc_register(pjsip_regc *regc, pj_bool_t autoreg, regc->timer.id = 0; } + /* Add Allow header (http://trac.pjsip.org/repos/ticket/1039) */ + h_allow = pjsip_endpt_get_capability(regc->endpt, PJSIP_H_ALLOW, NULL); + if (h_allow) { + pjsip_msg_add_hdr(msg, (pjsip_hdr*) + pjsip_hdr_shallow_clone(tdata->pool, h_allow)); + + } + regc->auto_reg = autoreg; pj_lock_release(regc->lock); |