1 /**
2  * @file dtls_srtp.h DTLS-SRTP Internal api
3  *
4  * Copyright (C) 2010 Creytiv.com
5  */
6 
7 
8 enum {
9 	LAYER_SRTP = 20,
10 	LAYER_DTLS = 20, /* must be above zero */
11 };
12 
13 struct comp {
14 	const struct dtls_srtp *ds; /* parent */
15 	struct dtls_sock *dtls_sock;
16 	struct tls_conn *tls_conn;
17 	struct srtp_stream *tx;
18 	struct srtp_stream *rx;
19 	struct udp_helper *uh_srtp;
20 	void *app_sock;
21 	bool negotiated;
22 	bool is_rtp;
23 };
24 
25 /* dtls.c */
26 int dtls_print_sha1_fingerprint(struct re_printf *pf, const struct tls *tls);
27 int dtls_print_sha256_fingerprint(struct re_printf *pf, const struct tls *tls);
28 
29 
30 /* srtp.c */
31 int  srtp_stream_add(struct srtp_stream **sp, enum srtp_suite suite,
32 		     const uint8_t *key, size_t key_size, bool tx);
33 int  srtp_install(struct comp *comp);
34