From 07204b45c3001b8e63667df0444d2c00b8fc9854 Mon Sep 17 00:00:00 2001 From: Kinsey Moore Date: Sat, 12 Oct 2013 16:49:00 +0000 Subject: [PATCH] Fix realm comparison for outbound auth When generating the list of authentication credentials to pass to PJSIP, Asterisk was using the raw pointer of a pj_str_t which is not always NULL-terminated. This sometimes resulted in incorrect text for the realm and a failure to match the realm for authentication purposes which was causing the outbound nominal auth pjsip basic call test to bounce. This now uses the pj_str_t that contains the realm instead of generating a new one. Thanks to John Bigelow for helping to narrow this down. git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/12@400863 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- res/res_pjsip_outbound_authenticator_digest.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/res/res_pjsip_outbound_authenticator_digest.c b/res/res_pjsip_outbound_authenticator_digest.c index 58eae55505..e7e77dbd5f 100644 --- a/res/res_pjsip_outbound_authenticator_digest.c +++ b/res/res_pjsip_outbound_authenticator_digest.c @@ -72,7 +72,7 @@ static int set_outbound_authentication_credentials(pjsip_auth_clt_sess *auth_ses for (i = 0; i < array->num; ++i) { if (ast_strlen_zero(auths[i]->realm)) { - pj_cstr(&auth_creds[i].realm, auth_hdr->challenge.common.realm.ptr); + auth_creds[i].realm = auth_hdr->challenge.common.realm; } else { pj_cstr(&auth_creds[i].realm, auths[i]->realm); } -- 2.47.2