Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: crypto/include/key.h

Issue 2344973002: Update libsrtp to version 2.0 (Closed)
Patch Set: Add '.' back to include_dirs Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « crypto/include/integers.h ('k') | crypto/include/null_auth.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * key.h 2 * key.h
3 * 3 *
4 * key usage limits enforcement 4 * key usage limits enforcement
5 * 5 *
6 * David A. Mcgrew 6 * David A. Mcgrew
7 * Cisco Systems, Inc. 7 * Cisco Systems, Inc.
8 */ 8 */
9 /* 9 /*
10 *» 10 *
11 * Copyright (c) 2001-2006 Cisco Systems, Inc. 11 * Copyright (c) 2001-2006 Cisco Systems, Inc.
12 * All rights reserved. 12 * All rights reserved.
13 * 13 *
14 * Redistribution and use in source and binary forms, with or without 14 * Redistribution and use in source and binary forms, with or without
15 * modification, are permitted provided that the following conditions 15 * modification, are permitted provided that the following conditions
16 * are met: 16 * are met:
17 * 17 *
18 * Redistributions of source code must retain the above copyright 18 * Redistributions of source code must retain the above copyright
19 * notice, this list of conditions and the following disclaimer. 19 * notice, this list of conditions and the following disclaimer.
20 * 20 *
21 * Redistributions in binary form must reproduce the above 21 * Redistributions in binary form must reproduce the above
22 * copyright notice, this list of conditions and the following 22 * copyright notice, this list of conditions and the following
23 * disclaimer in the documentation and/or other materials provided 23 * disclaimer in the documentation and/or other materials provided
24 * with the distribution. 24 * with the distribution.
25 * 25 *
26 * Neither the name of the Cisco Systems, Inc. nor the names of its 26 * Neither the name of the Cisco Systems, Inc. nor the names of its
27 * contributors may be used to endorse or promote products derived 27 * contributors may be used to endorse or promote products derived
28 * from this software without specific prior written permission. 28 * from this software without specific prior written permission.
29 * 29 *
30 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 30 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 31 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
32 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 32 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
33 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 33 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
34 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 34 * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
35 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 35 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
36 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 36 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
37 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 37 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
40 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 40 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
41 * OF THE POSSIBILITY OF SUCH DAMAGE. 41 * OF THE POSSIBILITY OF SUCH DAMAGE.
42 * 42 *
43 */ 43 */
44 44
45 #ifndef KEY_H 45 #ifndef KEY_H
46 #define KEY_H 46 #define KEY_H
47 47
48 #include "rdbx.h" /* for xtd_seq_num_t */ 48 #include "rdbx.h" /* for srtp_xtd_seq_num_t */
49 #include "err.h" 49 #include "err.h"
50 50
51 typedef struct key_limit_ctx_t *key_limit_t; 51 #ifdef __cplusplus
52 extern "C" {
53 #endif
54
55 typedef struct srtp_key_limit_ctx_t *srtp_key_limit_t;
52 56
53 typedef enum { 57 typedef enum {
54 key_event_normal, 58 srtp_key_event_normal,
55 key_event_soft_limit, 59 srtp_key_event_soft_limit,
56 key_event_hard_limit 60 srtp_key_event_hard_limit
57 } key_event_t; 61 } srtp_key_event_t;
58 62
59 err_status_t 63 srtp_err_status_t srtp_key_limit_set(srtp_key_limit_t key, const srtp_xtd_seq_nu m_t s);
60 key_limit_set(key_limit_t key, const xtd_seq_num_t s);
61 64
62 err_status_t 65 srtp_err_status_t srtp_key_limit_clone(srtp_key_limit_t original, srtp_key_limit _t *new_key);
63 key_limit_clone(key_limit_t original, key_limit_t *new_key);
64 66
65 err_status_t 67 srtp_err_status_t srtp_key_limit_check(const srtp_key_limit_t key);
66 key_limit_check(const key_limit_t key);
67 68
68 key_event_t 69 srtp_key_event_t srtp_key_limit_update(srtp_key_limit_t key);
69 key_limit_update(key_limit_t key);
70 70
71 typedef enum { 71 typedef enum {
72 key_state_normal, 72 srtp_key_state_normal,
73 key_state_past_soft_limit, 73 srtp_key_state_past_soft_limit,
74 key_state_expired 74 srtp_key_state_expired
75 } key_state_t; 75 } srtp_key_state_t;
76 76
77 typedef struct key_limit_ctx_t { 77 typedef struct srtp_key_limit_ctx_t {
78 xtd_seq_num_t num_left; 78 srtp_xtd_seq_num_t num_left;
79 key_state_t state; 79 srtp_key_state_t state;
80 } key_limit_ctx_t; 80 } srtp_key_limit_ctx_t;
81
82 #ifdef __cplusplus
83 }
84 #endif
81 85
82 #endif /* KEY_H */ 86 #endif /* KEY_H */
OLDNEW
« no previous file with comments | « crypto/include/integers.h ('k') | crypto/include/null_auth.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698