pjsip / pjproject

PJSIP project
http://www.pjsip.org
GNU General Public License v2.0
2.08k stars 788 forks source link

Add full support for SHA-256 and SHA-512-256 digest algorithms #4118

Closed gtjoseph closed 3 weeks ago

gtjoseph commented 1 month ago

There are no breaking changes for this work however several structures were extended with new fields. See below.

In order to use the new algorithms, you MUST set the new pjsip_cred_info.ext.algorithm_type field to the appropriate value when the credential data type is PJSIP_CRED_DATA_DIGEST and when acting as a server, you must also use pjsip_auth_srv_challenge2() to send challenges so you can specify algorithms other than MD5.

Summary of changes:

Resolves: #4119

gtjoseph commented 1 month ago

This PR is in draft mode because we're still testing with Asterisk and older versions of OpenSSL. I wanted to get it up to receive comments sooner rather than later though.

gtjoseph commented 1 month ago

Oh you're kidding. We still need to support building without OpenSSL?

gtjoseph commented 1 month ago

I still need to clean up the OpenSSL/nonm-OpenSSL things and remove some testing things I did to get a successful Windows build but it's looking much better.

gtjoseph commented 1 month ago

Rebased on current master. All asterisk tests pass.

gtjoseph commented 4 weeks ago

The last force push contained just documentation updates in sip_auth.h and sip_auth_aka.h