[OpenSIPS-Devel] [ opensips-Bugs-3530076 ] uac_registrant does not register (state 6)

SourceForge.net noreply at sourceforge.net
Wed May 30 18:29:26 CEST 2012


Bugs item #3530076, was opened at 2012-05-27 05:34
Message generated for change (Comment added) made by osas
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=1086410&aid=3530076&group_id=232389

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: modules
Group: 1.7.x
>Status: Closed
>Resolution: Fixed
Priority: 5
Private: No
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Ovidiu Sas (osas)
Summary: uac_registrant does not register (state 6)

Initial Comment:
uac_register doeas not register at Nortel softswitch(state=6).

----------------------------------------------------------------------

>Comment By: Ovidiu Sas (osas)
Date: 2012-05-30 09:29

Message:
fixed in 1.7, 1.8 and trunk

----------------------------------------------------------------------

Comment By: Ovidiu Sas (osas)
Date: 2012-05-28 14:27

Message:
The problem here is related to the fact that opensips is able to perform
only 'auth' authentication.  When authentication is performed through the
uac_auth api, the qop param is not checked and a blind 'auth'
authentication is performed assuming that qop is set to auth.
In this particular case, the received qop is set to 'auth,auth-int' and an
'auth' authentication is performed, but when the hash is calculated, the
value of qop is taken as is instead of using only 'auth', which leads to a
wrong hash.
The following patch fixes the problem, but is only a hack.  The true fix
would be to parse the qop and extract only the supported values out of it.


$ svn diff modules/uac_auth/
Index: modules/uac_auth/auth.c
===================================================================
--- modules/uac_auth/auth.c     (revision 9051)
+++ modules/uac_auth/auth.c     (working copy)
@@ -306,7 +306,7 @@
               MD5Update(&Md5Ctx, ":", 1);
               MD5Update(&Md5Ctx, cnonce->s, cnonce->len);
               MD5Update(&Md5Ctx, ":", 1);
-               MD5Update(&Md5Ctx, auth->qop.s, auth->qop.len);
+               MD5Update(&Md5Ctx, "auth", 4);
               MD5Update(&Md5Ctx, ":", 1);
       };
       MD5Update(&Md5Ctx, ha2, HASHHEXLEN);


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=1086410&aid=3530076&group_id=232389



More information about the Devel mailing list