| OLD | NEW |
| 1 /* | 1 /* |
| 2 * rtp.h | 2 * rtp.h |
| 3 * | 3 * |
| 4 * rtp interface for srtp reference implementation | 4 * rtp interface for srtp reference implementation |
| 5 * | 5 * |
| 6 * David A. McGrew | 6 * David A. McGrew |
| 7 * Cisco Systems, Inc. | 7 * Cisco Systems, Inc. |
| 8 * | 8 * |
| 9 * data types: | 9 * data types: |
| 10 * | 10 * |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 53 | 53 |
| 54 #ifndef RTP_H | 54 #ifndef RTP_H |
| 55 #define RTP_H | 55 #define RTP_H |
| 56 | 56 |
| 57 #ifdef HAVE_NETINET_IN_H | 57 #ifdef HAVE_NETINET_IN_H |
| 58 # include <netinet/in.h> | 58 # include <netinet/in.h> |
| 59 #elif defined HAVE_WINSOCK2_H | 59 #elif defined HAVE_WINSOCK2_H |
| 60 # include <winsock2.h> | 60 # include <winsock2.h> |
| 61 #endif | 61 #endif |
| 62 | 62 |
| 63 //#include "srtp_priv.h" |
| 63 #include "srtp.h" | 64 #include "srtp.h" |
| 64 | 65 |
| 66 #ifdef __cplusplus |
| 67 extern "C" { |
| 68 #endif |
| 69 |
| 70 /* |
| 71 * RTP_HEADER_LEN indicates the size of an RTP header |
| 72 */ |
| 73 #define RTP_HEADER_LEN 12 |
| 74 |
| 75 /* |
| 76 * RTP_MAX_BUF_LEN defines the largest RTP packet in the rtp.c implementation |
| 77 */ |
| 78 #define RTP_MAX_BUF_LEN 16384 |
| 79 |
| 80 |
| 81 typedef srtp_hdr_t rtp_hdr_t; |
| 82 |
| 83 typedef struct { |
| 84 srtp_hdr_t header; |
| 85 char body[RTP_MAX_BUF_LEN]; |
| 86 } rtp_msg_t; |
| 87 |
| 88 typedef struct rtp_sender_ctx_t { |
| 89 rtp_msg_t message; |
| 90 int socket; |
| 91 srtp_ctx_t *srtp_ctx; |
| 92 struct sockaddr_in addr; /* reciever's address */ |
| 93 } rtp_sender_ctx_t; |
| 94 |
| 95 typedef struct rtp_receiver_ctx_t { |
| 96 rtp_msg_t message; |
| 97 int socket; |
| 98 srtp_ctx_t *srtp_ctx; |
| 99 struct sockaddr_in addr; /* receiver's address */ |
| 100 } rtp_receiver_ctx_t; |
| 101 |
| 102 |
| 65 typedef struct rtp_sender_ctx_t *rtp_sender_t; | 103 typedef struct rtp_sender_ctx_t *rtp_sender_t; |
| 66 | 104 |
| 67 typedef struct rtp_receiver_ctx_t *rtp_receiver_t; | 105 typedef struct rtp_receiver_ctx_t *rtp_receiver_t; |
| 68 | 106 |
| 69 int | 107 int |
| 70 rtp_sendto(rtp_sender_t sender, const void* msg, int len); | 108 rtp_sendto(rtp_sender_t sender, const void* msg, int len); |
| 71 | 109 |
| 72 int | 110 int |
| 73 rtp_recvfrom(rtp_receiver_t receiver, void *msg, int *len); | 111 rtp_recvfrom(rtp_receiver_t receiver, void *msg, int *len); |
| 74 | 112 |
| 75 int | 113 int |
| 76 rtp_receiver_init(rtp_receiver_t rcvr, int sock, | 114 rtp_receiver_init(rtp_receiver_t rcvr, int sock, |
| 77 struct sockaddr_in addr, unsigned int ssrc); | 115 struct sockaddr_in addr, unsigned int ssrc); |
| 78 | 116 |
| 79 int | 117 int |
| 80 rtp_sender_init(rtp_sender_t sender, int sock, | 118 rtp_sender_init(rtp_sender_t sender, int sock, |
| 81 struct sockaddr_in addr, unsigned int ssrc); | 119 struct sockaddr_in addr, unsigned int ssrc); |
| 82 | 120 |
| 83 /* | 121 /* |
| 84 * srtp_sender_init(...) initializes an rtp_sender_t | 122 * srtp_sender_init(...) initializes an rtp_sender_t |
| 85 */ | 123 */ |
| 86 | 124 |
| 87 int | 125 int |
| 88 srtp_sender_init(rtp_sender_t rtp_ctx, /* structure to be init'ed */ | 126 srtp_sender_init(rtp_sender_t rtp_ctx, /* structure to be init'ed */ |
| 89 struct sockaddr_in name, /* socket name */ | 127 struct sockaddr_in name, /* socket name */ |
| 90 » » sec_serv_t security_services, /* sec. servs. to be used */ | 128 » » srtp_sec_serv_t security_services, /* sec. servs. to be used
*/ |
| 91 unsigned char *input_key /* master key/salt in hex */ | 129 unsigned char *input_key /* master key/salt in hex */ |
| 92 ); | 130 ); |
| 93 | 131 |
| 94 int | 132 int |
| 95 srtp_receiver_init(rtp_receiver_t rtp_ctx, /* structure to be init'ed */ | 133 srtp_receiver_init(rtp_receiver_t rtp_ctx, /* structure to be init'ed */ |
| 96 struct sockaddr_in name, /* socket name */ | 134 struct sockaddr_in name, /* socket name */ |
| 97 » » sec_serv_t security_services, /* sec. servs. to be used */ | 135 » » srtp_sec_serv_t security_services, /* sec. servs. to be used
*/ |
| 98 unsigned char *input_key /* master key/salt in hex */ | 136 unsigned char *input_key /* master key/salt in hex */ |
| 99 ); | 137 ); |
| 100 | 138 |
| 101 | 139 |
| 102 int | 140 int |
| 103 rtp_sender_init_srtp(rtp_sender_t sender, const srtp_policy_t *policy); | 141 rtp_sender_init_srtp(rtp_sender_t sender, const srtp_policy_t *policy); |
| 104 | 142 |
| 105 int | 143 int |
| 106 rtp_sender_deinit_srtp(rtp_sender_t sender); | 144 rtp_sender_deinit_srtp(rtp_sender_t sender); |
| 107 | 145 |
| (...skipping 10 matching lines...) Expand all Loading... |
| 118 void | 156 void |
| 119 rtp_sender_dealloc(rtp_sender_t rtp_ctx); | 157 rtp_sender_dealloc(rtp_sender_t rtp_ctx); |
| 120 | 158 |
| 121 rtp_receiver_t | 159 rtp_receiver_t |
| 122 rtp_receiver_alloc(void); | 160 rtp_receiver_alloc(void); |
| 123 | 161 |
| 124 void | 162 void |
| 125 rtp_receiver_dealloc(rtp_receiver_t rtp_ctx); | 163 rtp_receiver_dealloc(rtp_receiver_t rtp_ctx); |
| 126 | 164 |
| 127 | 165 |
| 128 /* | 166 #ifdef __cplusplus |
| 129 * RTP_HEADER_LEN indicates the size of an RTP header | 167 } |
| 130 */ | 168 #endif |
| 131 #define RTP_HEADER_LEN 12 | |
| 132 | |
| 133 /* | |
| 134 * RTP_MAX_BUF_LEN defines the largest RTP packet in the rtp.c implementation | |
| 135 */ | |
| 136 #define RTP_MAX_BUF_LEN 16384 | |
| 137 | |
| 138 | 169 |
| 139 #endif /* RTP_H */ | 170 #endif /* RTP_H */ |
| OLD | NEW |