diff options
author | twilson <twilson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-06-08 05:29:08 +0000 |
---|---|---|
committer | twilson <twilson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2010-06-08 05:29:08 +0000 |
commit | 9b1a36a294342fc418d9a359a4cf06bd90c4acb9 (patch) | |
tree | ecc27fc0db142ea1cd335a74cd1265f993fecd11 /channels/sip/include/srtp.h | |
parent | 5f87b66641d86dbe7afec3b083016b2b1aceafc7 (diff) |
Add SRTP support for Asterisk
After 5 years in mantis and over a year on reviewboard, SRTP support is finally
being comitted. This includes generic CHANNEL dialplan functions that work for
getting the status of whether a call has secure media or signaling as defined
by the underlying channel technology and for setting whether or not a new
channel being bridged to a calling channel should have secure signaling or
media. See doc/tex/secure-calls.tex for examples.
Original patch by mikma, updated for trunk and revised by me.
(closes issue #5413)
Reported by: mikma
Tested by: twilson, notthematrix, hemanshurpatel
Review: https://reviewboard.asterisk.org/r/191/
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@268894 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/sip/include/srtp.h')
-rw-r--r-- | channels/sip/include/srtp.h | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/channels/sip/include/srtp.h b/channels/sip/include/srtp.h new file mode 100644 index 000000000..b7a3fc30b --- /dev/null +++ b/channels/sip/include/srtp.h @@ -0,0 +1,57 @@ +/* + * Asterisk -- An open source telephony toolkit. + * + * Copyright (C) 2006 - 2007, Mikael Magnusson + * + * Mikael Magnusson <mikma@users.sourceforge.net> + * + * See http://www.asterisk.org for more information about + * the Asterisk project. Please do not directly contact + * any of the maintainers of this project for assistance; + * the project provides a web site, mailing lists and IRC + * channels for your use. + * + * This program is free software, distributed under the terms of + * the GNU General Public License Version 2. See the LICENSE file + * at the top of the source tree. + */ + +/*! \file sip_srtp.h + * + * \brief SIP Secure RTP (SRTP) + * + * Specified in RFC 3711 + * + * \author Mikael Magnusson <mikma@users.sourceforge.net> + */ + +#ifndef _SIP_SRTP_H +#define _SIP_SRTP_H + +#include "sdp_crypto.h" + +/* SRTP flags */ +#define SRTP_ENCR_OPTIONAL (1 << 1) /* SRTP encryption optional */ +#define SRTP_CRYPTO_ENABLE (1 << 2) +#define SRTP_CRYPTO_OFFER_OK (1 << 3) + +/*! \brief structure for secure RTP audio */ +struct sip_srtp { + unsigned int flags; + struct sdp_crypto *crypto; +}; + +/*! + * \brief allocate a sip_srtp structure + * \retval a new malloc'd sip_srtp structure on success + * \retval NULL on failure +*/ +struct sip_srtp *sip_srtp_alloc(void); + +/*! + * \brief free a sip_srtp structure + * \param srtp a sip_srtp structure +*/ +void sip_srtp_destroy(struct sip_srtp *srtp); + +#endif /* _SIP_SRTP_H */ |