Partysip 2.2.3 need a wrong authentification entry. The Auth Plugin extract from the SIP Auth Header during the Registration the opaque entry. But this Info is never used. The missing of this entry produces a 401 Authorisation failed. This is not compatible to some Soft and Hardware Clients... Reproducible: Always Steps to Reproduce: 1. ebuild partysip 2. enable authentification 3. try to register with minisip or linphone or VoIP HW Phone 4. Look in a Network Packet Trace Actual Results: The User get an 401 Auth failed on Register Expected Results: a 200 Register OK is espected. this should workaround this: --- partysip-2.2.3/plugin/auth/auth.c.orig 2005-10-02 14:35:32.000000000 +0200 +++ partysip-2.2.3/plugin/auth/auth.c 2005-10-02 14:35:59.000000000 +0200 @@ -73,7 +73,7 @@ nonce = osip_proxy_authorization_get_nonce (p_auth); opaque = osip_proxy_authorization_get_opaque (p_auth); - if (opaque == NULL || nonce == NULL) + if (nonce == NULL) return -1; realm = osip_proxy_authorization_get_realm (p_auth);
Created attachment 69717 [details, diff] fix the Auth Bug. fix the Auth Bug. After this: Authentification works with all Clients I found.
i'm ripping out a bit more: --- partysip-2.2.3/plugin/auth/auth.c.orig 2005-10-02 20:13:36.000000000 +0000 +++ partysip-2.2.3/plugin/auth/auth.c 2005-10-02 20:13:55.000000000 +0000 @@ -65,15 +65,13 @@ /* find the pending_auth element */ char *response; char *nonce; - char *opaque; char *realm; /* char *qop; */ char *uri; nonce = osip_proxy_authorization_get_nonce (p_auth); - opaque = osip_proxy_authorization_get_opaque (p_auth); - if (opaque == NULL || nonce == NULL) + if (nonce == NULL) return -1; realm = osip_proxy_authorization_get_realm (p_auth); since it's not used anyways
fixed in cvs, thanks a lot :)