[asterisk-dev] [Code Review] SRTP support for Asterisk
Mark Michelson
mmichelson at digium.com
Wed May 26 11:38:33 CDT 2010
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/191/#review2085
-----------------------------------------------------------
Another go-around. I did a thorough search through sdp_crypto.c for memory leaks and could not find any. What I'm finding is much less severe now, but there are still some items that need to be cleared up.
/trunk/channels/chan_iax2.c
<https://reviewboard.asterisk.org/r/191/#comment4388>
It looks like you missed this item that Russell commented on. You have to use buflen instead of sizeof(buf).
Edit: On further inspection, this diff does not appear to have any of the corrections Russell suggested in his last review.
/trunk/channels/chan_sip.c
<https://reviewboard.asterisk.org/r/191/#comment4389>
Minor spacing problem. Need a space before the assignment operator.
/trunk/channels/chan_sip.c
<https://reviewboard.asterisk.org/r/191/#comment4390>
The redness!!
/trunk/channels/sip/include/sdp_crypto.h
<https://reviewboard.asterisk.org/r/191/#comment4394>
Please add some doxygen so it is more clear what these functions are intended to do.
/trunk/channels/sip/include/srtp.h
<https://reviewboard.asterisk.org/r/191/#comment4395>
Spaces around shift operators.
/trunk/channels/sip/sdp_crypto.c
<https://reviewboard.asterisk.org/r/191/#comment4392>
I'm not an authority on things, but are these conditions severe enough that they should warrant freeing p and returning NULL?
/trunk/channels/sip/srtp.c
<https://reviewboard.asterisk.org/r/191/#comment4393>
As with Russell's earlier comment, there is no need to print an error message since ast_calloc will do this too.
/trunk/funcs/func_channel.c
<https://reviewboard.asterisk.org/r/191/#comment4396>
I think you should add an else block here with at least a warning message stating that the data could not be retrieved.
- Mark
On 2010-05-04 20:07:15, Terry Wilson wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/191/
> -----------------------------------------------------------
>
> (Updated 2010-05-04 20:07:15)
>
>
> Review request for Asterisk Developers.
>
>
> Summary
> -------
>
> SRTP support for Asterisk using Sdescriptions. This has been sitting around for a while, so I figured that it should at least get some review. Full description of setup at http://lists.digium.com/pipermail/asterisk-dev/2009-January/036029.html
>
>
> This addresses bug 5413.
> https://issues.asterisk.org/view.php?id=5413
>
>
> Diffs
> -----
>
> /trunk/CHANGES 259665
> /trunk/build_tools/menuselect-deps.in 259665
> /trunk/channels/chan_iax2.c 259665
> /trunk/channels/chan_sip.c 259665
> /trunk/channels/sip/dialplan_functions.c 259665
> /trunk/channels/sip/include/sdp_crypto.h PRE-CREATION
> /trunk/channels/sip/include/sip.h 259665
> /trunk/channels/sip/include/srtp.h PRE-CREATION
> /trunk/channels/sip/sdp_crypto.c PRE-CREATION
> /trunk/channels/sip/srtp.c PRE-CREATION
> /trunk/configure UNKNOWN
> /trunk/configure.ac 259665
> /trunk/funcs/func_channel.c 259665
> /trunk/include/asterisk/autoconfig.h.in 259665
> /trunk/include/asterisk/frame.h 259665
> /trunk/include/asterisk/global_datastores.h 259665
> /trunk/include/asterisk/res_srtp.h PRE-CREATION
> /trunk/include/asterisk/rtp_engine.h 259665
> /trunk/main/asterisk.exports.in 259665
> /trunk/main/channel.c 259665
> /trunk/main/global_datastores.c 259665
> /trunk/main/rtp_engine.c 259665
> /trunk/makeopts.in 259665
> /trunk/res/res_rtp_asterisk.c 259665
> /trunk/res/res_srtp.c PRE-CREATION
> /trunk/res/res_srtp.exports.in PRE-CREATION
>
> Diff: https://reviewboard.asterisk.org/r/191/diff
>
>
> Testing
> -------
>
> 4 external tests written covering:
> Running with res_srtp noloaded to emulate a user not having libsrtp installed (to make sure we don't accidentally rely on SRTP support)
> Making a call with a user with encrypted=yes when libsrtp support is not enabled fails
> Making a call with encrypted=yes when libsrtp present results in an encrypted call (which also tests the CHANNEL(secure_media) function
> Using CHANNEL(secure_bridge_media) results in the outgoing call attempting to use encryption
>
> In addition, I have tested a Polycom VVX-1500 to ensure that video + audio SRTP works.
>
>
> Thanks,
>
> Terry
>
>
More information about the asterisk-dev
mailing list