[Freeswitch-dev] mod_dingaling does not set crypto

Anthony Minessale anthony.minessale at gmail.com
Sat Jul 21 20:24:29 MSD 2012


Autocomplete FTL.
SSRC not Darcy. Did not DoD
On Jul 21, 2012 11:23 AM, "Anthony Minessale" <anthony.minessale at gmail.com>
wrote:

> Give latest git head unchanged a shot again of you have a chance.  That
> Darcy issue was fixed IIRC. Also I DoD a few rounds of changes.
> Btw next time use Jira Jira.freeswitch.org its easier to track stuff. I
> almost lost this thread 3 pages deep on my email.
> On Jul 17, 2012 7:03 AM, "Richard Screene" <richard.screene at netdev.co.uk>
> wrote:
>
>> Just to give you all the information:
>> A few days ago I hacked the RTP so that the RTP bug
>> NEVER_CHANGE_SSRC_ON_MARKER was enabled. I removed it and it seemed to work
>> yesterday.  But, would this have anything to do with the "SRTP protection
>> failed" error I was seeing today?
>>
>> Thanks,
>>   Richard
>>
>>
>> On 16 Jul 2012, at 18:44, Anthony Minessale wrote:
>>
>> ok so I pushed the flag to be set so now it should work out of the
>> box, thanks for testing.
>>
>>
>> On Mon, Jul 16, 2012 at 8:05 AM, Richard Screene
>> <richard.screene at netdev.co.uk> wrote:
>>
>> Hello Anthony,
>>
>>
>> That seems to work better than my attempt!
>>
>>
>> Thanks for your help!
>>
>>  Richard
>>
>>
>>
>> On 13 Jul 2012, at 23:19, Anthony Minessale wrote:
>>
>>
>> try patch in latest head minus your plc hack.
>>
>> I have not made any changes to mod_dingaling yet but the core should
>>
>> not try to decode stun now.
>>
>>
>>
>> On Thu, Jul 12, 2012 at 11:58 AM, Richard Screene
>>
>> <richard.screene at netdev.co.uk> wrote:
>>
>>
>> Hello Anthony,
>>
>>
>>
>> Thanks for your quick response!
>>
>>
>>
>> does it work then? I had it disabled on purpose cos I have not
>>
>>
>> confirmed it works yet.
>>
>>
>>
>> That would explain it then :-)
>>
>>
>>
>> I have managed to get SRTP working for the outbound voice path, but it
>>
>>
>> required a couple of hacks:
>>
>>
>> 1) It was attempting to decrypt the STUN/ICE Bind Requests and failing.
>>
>>
>> I've bodged it for now by passing the SFF_PLC flag to
>>
>>
>> switch_rtp.c:read_rtp_packet() but I suspect this will stop inbound voice
>>
>>
>> paths from working!
>>
>>
>> 2) In mod_dingaling.c:try_secure() the incorrect crypto_type is passed to
>>
>>
>> switch_rtp_add_crypto_key().  I suspect there is some confusion between
>> the
>>
>>
>> crypto_type and crypto_send_type/crypto_recv_type members of
>>
>>
>> tech_pvt->transports.  I've hacked it for now as shown below.
>>
>>
>>
>> I hope this is useful to you.  I'm going to try with the outbound voice
>> path
>>
>>
>> tomorrow.
>>
>>
>>
>> Regards,
>>
>>
>> Richard
>>
>>
>>
>>
>> For reference here are the diffs:
>>
>>
>>
>>
>>
>> diff --git a/src/mod/endpoints/mod_dingaling/mod_dingaling.c
>>
>>
>> b/src/mod/endpoints/mod_dingaling/
>>
>>
>> index c47f589..1dda789 100644
>>
>>
>> --- a/src/mod/endpoints/mod_dingaling/mod_dingaling.c
>>
>>
>> +++ b/src/mod/endpoints/mod_dingaling/mod_dingaling.c
>>
>>
>> @@ -956,9 +956,11 @@ switch_status_t mdl_build_crypto(struct
>> private_object
>>
>>
>> *tech_pvt, ldl_tran
>>
>>
>>       char *p;
>>
>>
>>
>>
>> +/*
>>
>>
>>       if (!switch_test_flag(tech_pvt, TFLAG_SECURE)) {
>>
>>
>>               return SWITCH_STATUS_SUCCESS;
>>
>>
>>       }
>>
>>
>> +*/
>>
>>
>>
>>
>>       if (type == AES_CM_128_HMAC_SHA1_80) {
>>
>>
>> @@ -1056,10 +1058,13 @@ static switch_status_t mdl_add_crypto(struct
>>
>>
>> private_object *tech_pvt,
>>
>>
>> static void try_secure(struct private_object *tech_pvt,
>>
>>
>> ldl_transport_type_t ttype)
>>
>>
>> {
>>
>>
>>
>> +/*
>>
>>
>>       if (!switch_test_flag(tech_pvt, TFLAG_SECURE)) {
>>
>>
>>               return;
>>
>>
>>       }
>>
>>
>>
>> +*/
>>
>>
>> +       tech_pvt->transports[ttype].crypto_type =
>>
>>
>> tech_pvt->transports[ttype].crypto_recv_type;
>>
>>
>>
>>       //if (tech_pvt->transports[ttype].crypto_type) {
>>
>>
>>
>> switch_rtp_add_crypto_key(tech_pvt->transports[ttype].rtp_session,
>>
>>
>>
>>
>>
>>
>> diff --git a/src/switch_rtp.c b/src/switch_rtp.c
>>
>>
>> index 7d6ad29..99b4f83 100644
>>
>>
>> --- a/src/switch_rtp.c
>>
>>
>> +++ b/src/switch_rtp.c
>>
>>
>> @@ -3234,6 +3234,7 @@ static int rtp_common_read(switch_rtp_t
>> *rtp_session,
>>
>>
>> switch_payload_t *p
>>
>>
>>                       if (read_pretriggered) {
>>
>>
>>                               read_pretriggered = 0;
>>
>>
>>                       } else {
>>
>>
>> +                               *flags |= SFF_PLC;
>>
>>
>>                               status = read_rtp_packet(rtp_session,
>>
>>
>> &bytes, flags, SWITCH_TRU
>>
>>
>>
>> //switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH
>>
>>
>>                       }
>>
>>
>>
>>
>>
>> On 12 Jul 2012, at 00:13, Anthony Minessale wrote:
>>
>>
>>
>> does it work then? I had it disabled on purpose cos I have not
>>
>>
>> confirmed it works yet.
>>
>>
>>
>>
>> On Wed, Jul 11, 2012 at 4:47 AM, Richard Screene
>>
>>
>> <richard.screene at netdev.co.uk> wrote:
>>
>>
>>
>> Hello,
>>
>>
>>
>>
>> Using mod_dingaling I am unable to get it to append the crypto details to
>>
>>
>>
>> the session-accept Jingle stanza.  The message is sent as:
>>
>>
>>
>> <snip>
>>
>>
>>
>>
>>
>> _________________________________________________________________________
>>
>>
>> Professional FreeSWITCH Consulting Services:
>>
>>
>> consulting at freeswitch.org
>>
>>
>> http://www.freeswitchsolutions.com
>>
>>
>>
>> 
>>
>>
>> 
>>
>>
>>
>> Official FreeSWITCH Sites
>>
>>
>> http://www.freeswitch.org
>>
>>
>> http://wiki.freeswitch.org
>>
>>
>> http://www.cluecon.com
>>
>>
>>
>> Join Us At ClueCon - Aug 7-9, 2012
>>
>>
>>
>> FreeSWITCH-dev mailing list
>>
>>
>> FreeSWITCH-dev at lists.freeswitch.org
>>
>>
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
>>
>>
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
>>
>>
>> http://www.freeswitch.org
>>
>>
>>
>>
>>
>>
>> --
>>
>> Anthony Minessale II
>>
>>
>> FreeSWITCH http://www.freeswitch.org/
>>
>> ClueCon http://www.cluecon.com/
>>
>> Twitter: http://twitter.com/FreeSWITCH_wire
>>
>>
>> AIM: anthm
>>
>> MSN:anthony_minessale at hotmail.com
>>
>> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
>>
>> IRC: irc.freenode.net #freeswitch
>>
>>
>> FreeSWITCH Developer Conference
>>
>> sip:888 at conference.freeswitch.org
>>
>> googletalk:conf+888 at conference.freeswitch.org
>>
>> pstn:+19193869900
>>
>>
>> _________________________________________________________________________
>>
>> Professional FreeSWITCH Consulting Services:
>>
>> consulting at freeswitch.org
>>
>> http://www.freeswitchsolutions.com
>>
>>
>> 
>>
>> 
>>
>>
>> Official FreeSWITCH Sites
>>
>> http://www.freeswitch.org
>>
>> http://wiki.freeswitch.org
>>
>> http://www.cluecon.com
>>
>>
>> Join Us At ClueCon - Aug 7-9, 2012
>>
>>
>> FreeSWITCH-dev mailing list
>>
>> FreeSWITCH-dev at lists.freeswitch.org
>>
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
>>
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
>>
>> http://www.freeswitch.org
>>
>>
>>
>> Richard Screene
>>
>> Senior Developer
>>
>> NetDev Ltd  & Drum Collaboration
>>
>> +44 1273 936125
>>
>> www.netdev.co.uk
>>
>> www.thisisdrum.com
>>
>> Registered in England and Wales
>>
>> Company Number 04741258
>>
>>
>>
>> _________________________________________________________________________
>>
>> Professional FreeSWITCH Consulting Services:
>>
>> consulting at freeswitch.org
>>
>> http://www.freeswitchsolutions.com
>>
>>
>> 
>>
>> 
>>
>>
>> Official FreeSWITCH Sites
>>
>> http://www.freeswitch.org
>>
>> http://wiki.freeswitch.org
>>
>> http://www.cluecon.com
>>
>>
>> Join Us At ClueCon - Aug 7-9, 2012
>>
>>
>> FreeSWITCH-dev mailing list
>>
>> FreeSWITCH-dev at lists.freeswitch.org
>>
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
>>
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
>>
>> http://www.freeswitch.org
>>
>>
>>
>>
>>
>> --
>> Anthony Minessale II
>>
>> FreeSWITCH http://www.freeswitch.org/
>> ClueCon http://www.cluecon.com/
>> Twitter: http://twitter.com/FreeSWITCH_wire
>>
>> AIM: anthm
>> MSN:anthony_minessale at hotmail.com
>> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
>> IRC: irc.freenode.net #freeswitch
>>
>> FreeSWITCH Developer Conference
>> sip:888 at conference.freeswitch.org
>> googletalk:conf+888 at conference.freeswitch.org
>> pstn:+19193869900
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> Join Us At ClueCon - Aug 7-9, 2012
>>
>> FreeSWITCH-dev mailing list
>> FreeSWITCH-dev at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
>> http://www.freeswitch.org
>>
>>
>>  *Richard Screene
>> **Senior Developer
>> **NetDev Ltd  & Drum Collaboration
>> **+44 1273 936125
>> www.netdev.co.uk*
>> *www.thisisdrum.com* <http://www.thisisdrum.com/>**
>> *Registered in England and Wales
>> *Company Number 04741258
>>
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> Join Us At ClueCon - Aug 7-9, 2012
>>
>> FreeSWITCH-dev mailing list
>> FreeSWITCH-dev at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
>> http://www.freeswitch.org
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20120721/c05a31e9/attachment-0001.html 


Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-dev mailing list