@annadata/capacitor-mqtt-quic 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ios/include/nghttp3/nghttp3.h +3295 -0
- package/ios/include/nghttp3/version.h +46 -0
- package/ios/include/ngtcp2/ngtcp2.h +6254 -0
- package/ios/include/ngtcp2/ngtcp2_crypto.h +1037 -0
- package/ios/include/ngtcp2/ngtcp2_crypto_quictls.h +147 -0
- package/ios/include/ngtcp2/version.h +51 -0
- package/ios/include/openssl/aes.h +111 -0
- package/ios/include/openssl/asn1.h +1131 -0
- package/ios/include/openssl/asn1_mac.h +10 -0
- package/ios/include/openssl/asn1err.h +140 -0
- package/ios/include/openssl/asn1t.h +946 -0
- package/ios/include/openssl/async.h +96 -0
- package/ios/include/openssl/asyncerr.h +29 -0
- package/ios/include/openssl/bio.h +887 -0
- package/ios/include/openssl/bioerr.h +65 -0
- package/ios/include/openssl/blowfish.h +78 -0
- package/ios/include/openssl/bn.h +584 -0
- package/ios/include/openssl/bnerr.h +47 -0
- package/ios/include/openssl/buffer.h +62 -0
- package/ios/include/openssl/buffererr.h +25 -0
- package/ios/include/openssl/camellia.h +117 -0
- package/ios/include/openssl/cast.h +71 -0
- package/ios/include/openssl/cmac.h +52 -0
- package/ios/include/openssl/cmp.h +597 -0
- package/ios/include/openssl/cmp_util.h +56 -0
- package/ios/include/openssl/cmperr.h +116 -0
- package/ios/include/openssl/cms.h +493 -0
- package/ios/include/openssl/cmserr.h +124 -0
- package/ios/include/openssl/comp.h +59 -0
- package/ios/include/openssl/comperr.h +31 -0
- package/ios/include/openssl/conf.h +214 -0
- package/ios/include/openssl/conf_api.h +46 -0
- package/ios/include/openssl/conferr.h +52 -0
- package/ios/include/openssl/configuration.h +149 -0
- package/ios/include/openssl/conftypes.h +44 -0
- package/ios/include/openssl/core.h +233 -0
- package/ios/include/openssl/core_dispatch.h +960 -0
- package/ios/include/openssl/core_names.h +561 -0
- package/ios/include/openssl/core_object.h +41 -0
- package/ios/include/openssl/crmf.h +227 -0
- package/ios/include/openssl/crmferr.h +50 -0
- package/ios/include/openssl/crypto.h +558 -0
- package/ios/include/openssl/cryptoerr.h +55 -0
- package/ios/include/openssl/cryptoerr_legacy.h +1466 -0
- package/ios/include/openssl/ct.h +573 -0
- package/ios/include/openssl/cterr.h +45 -0
- package/ios/include/openssl/decoder.h +133 -0
- package/ios/include/openssl/decodererr.h +28 -0
- package/ios/include/openssl/des.h +211 -0
- package/ios/include/openssl/dh.h +335 -0
- package/ios/include/openssl/dherr.h +58 -0
- package/ios/include/openssl/dsa.h +280 -0
- package/ios/include/openssl/dsaerr.h +44 -0
- package/ios/include/openssl/dtls1.h +57 -0
- package/ios/include/openssl/e_os2.h +308 -0
- package/ios/include/openssl/ebcdic.h +39 -0
- package/ios/include/openssl/ec.h +1572 -0
- package/ios/include/openssl/ecdh.h +10 -0
- package/ios/include/openssl/ecdsa.h +10 -0
- package/ios/include/openssl/ecerr.h +104 -0
- package/ios/include/openssl/encoder.h +124 -0
- package/ios/include/openssl/encodererr.h +28 -0
- package/ios/include/openssl/engine.h +833 -0
- package/ios/include/openssl/engineerr.h +63 -0
- package/ios/include/openssl/err.h +504 -0
- package/ios/include/openssl/ess.h +128 -0
- package/ios/include/openssl/esserr.h +32 -0
- package/ios/include/openssl/evp.h +2175 -0
- package/ios/include/openssl/evperr.h +134 -0
- package/ios/include/openssl/fips_names.h +77 -0
- package/ios/include/openssl/fipskey.h +36 -0
- package/ios/include/openssl/hmac.h +62 -0
- package/ios/include/openssl/http.h +109 -0
- package/ios/include/openssl/httperr.h +55 -0
- package/ios/include/openssl/idea.h +82 -0
- package/ios/include/openssl/kdf.h +138 -0
- package/ios/include/openssl/kdferr.h +16 -0
- package/ios/include/openssl/lhash.h +331 -0
- package/ios/include/openssl/macros.h +325 -0
- package/ios/include/openssl/md2.h +56 -0
- package/ios/include/openssl/md4.h +63 -0
- package/ios/include/openssl/md5.h +62 -0
- package/ios/include/openssl/mdc2.h +55 -0
- package/ios/include/openssl/modes.h +219 -0
- package/ios/include/openssl/obj_mac.h +5481 -0
- package/ios/include/openssl/objects.h +183 -0
- package/ios/include/openssl/objectserr.h +28 -0
- package/ios/include/openssl/ocsp.h +483 -0
- package/ios/include/openssl/ocsperr.h +53 -0
- package/ios/include/openssl/opensslconf.h +17 -0
- package/ios/include/openssl/opensslv.h +114 -0
- package/ios/include/openssl/ossl_typ.h +16 -0
- package/ios/include/openssl/param_build.h +63 -0
- package/ios/include/openssl/params.h +160 -0
- package/ios/include/openssl/pem.h +541 -0
- package/ios/include/openssl/pem2.h +19 -0
- package/ios/include/openssl/pemerr.h +58 -0
- package/ios/include/openssl/pkcs12.h +353 -0
- package/ios/include/openssl/pkcs12err.h +45 -0
- package/ios/include/openssl/pkcs7.h +430 -0
- package/ios/include/openssl/pkcs7err.h +63 -0
- package/ios/include/openssl/prov_ssl.h +34 -0
- package/ios/include/openssl/proverr.h +149 -0
- package/ios/include/openssl/provider.h +60 -0
- package/ios/include/openssl/quic.h +19 -0
- package/ios/include/openssl/rand.h +125 -0
- package/ios/include/openssl/randerr.h +69 -0
- package/ios/include/openssl/rc2.h +68 -0
- package/ios/include/openssl/rc4.h +47 -0
- package/ios/include/openssl/rc5.h +79 -0
- package/ios/include/openssl/ripemd.h +59 -0
- package/ios/include/openssl/rsa.h +610 -0
- package/ios/include/openssl/rsaerr.h +107 -0
- package/ios/include/openssl/safestack.h +297 -0
- package/ios/include/openssl/seed.h +113 -0
- package/ios/include/openssl/self_test.h +94 -0
- package/ios/include/openssl/sha.h +138 -0
- package/ios/include/openssl/srp.h +285 -0
- package/ios/include/openssl/srtp.h +56 -0
- package/ios/include/openssl/ssl.h +2671 -0
- package/ios/include/openssl/ssl2.h +30 -0
- package/ios/include/openssl/ssl3.h +347 -0
- package/ios/include/openssl/sslerr.h +348 -0
- package/ios/include/openssl/sslerr_legacy.h +468 -0
- package/ios/include/openssl/stack.h +90 -0
- package/ios/include/openssl/store.h +369 -0
- package/ios/include/openssl/storeerr.h +49 -0
- package/ios/include/openssl/symhacks.h +39 -0
- package/ios/include/openssl/tls1.h +1186 -0
- package/ios/include/openssl/trace.h +312 -0
- package/ios/include/openssl/ts.h +505 -0
- package/ios/include/openssl/tserr.h +67 -0
- package/ios/include/openssl/txt_db.h +63 -0
- package/ios/include/openssl/types.h +239 -0
- package/ios/include/openssl/ui.h +407 -0
- package/ios/include/openssl/uierr.h +38 -0
- package/ios/include/openssl/whrlpool.h +62 -0
- package/ios/include/openssl/x509.h +1279 -0
- package/ios/include/openssl/x509_vfy.h +894 -0
- package/ios/include/openssl/x509err.h +69 -0
- package/ios/include/openssl/x509v3.h +1453 -0
- package/ios/include/openssl/x509v3err.h +93 -0
- package/ios/libs/libcrypto.a +0 -0
- package/ios/libs/libnghttp3.a +0 -0
- package/ios/libs/libngtcp2.a +0 -0
- package/ios/libs/libngtcp2_crypto_quictls.a +0 -0
- package/ios/libs/libssl.a +0 -0
- package/package.json +2 -2
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
|
5
|
+
* this file except in compliance with the License. You can obtain a copy
|
|
6
|
+
* in the file LICENSE in the source distribution or at
|
|
7
|
+
* https://www.openssl.org/source/license.html
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
#ifndef OPENSSL_SHA_H
|
|
11
|
+
# define OPENSSL_SHA_H
|
|
12
|
+
# pragma once
|
|
13
|
+
|
|
14
|
+
# include <openssl/macros.h>
|
|
15
|
+
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
|
16
|
+
# define HEADER_SHA_H
|
|
17
|
+
# endif
|
|
18
|
+
|
|
19
|
+
# include <openssl/e_os2.h>
|
|
20
|
+
# include <stddef.h>
|
|
21
|
+
|
|
22
|
+
# ifdef __cplusplus
|
|
23
|
+
extern "C" {
|
|
24
|
+
# endif
|
|
25
|
+
|
|
26
|
+
# define SHA_DIGEST_LENGTH 20
|
|
27
|
+
|
|
28
|
+
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
|
29
|
+
/*-
|
|
30
|
+
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
31
|
+
* ! SHA_LONG has to be at least 32 bits wide. !
|
|
32
|
+
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
33
|
+
*/
|
|
34
|
+
# define SHA_LONG unsigned int
|
|
35
|
+
|
|
36
|
+
# define SHA_LBLOCK 16
|
|
37
|
+
# define SHA_CBLOCK (SHA_LBLOCK*4)/* SHA treats input data as a
|
|
38
|
+
* contiguous array of 32 bit wide
|
|
39
|
+
* big-endian values. */
|
|
40
|
+
# define SHA_LAST_BLOCK (SHA_CBLOCK-8)
|
|
41
|
+
|
|
42
|
+
typedef struct SHAstate_st {
|
|
43
|
+
SHA_LONG h0, h1, h2, h3, h4;
|
|
44
|
+
SHA_LONG Nl, Nh;
|
|
45
|
+
SHA_LONG data[SHA_LBLOCK];
|
|
46
|
+
unsigned int num;
|
|
47
|
+
} SHA_CTX;
|
|
48
|
+
|
|
49
|
+
OSSL_DEPRECATEDIN_3_0 int SHA1_Init(SHA_CTX *c);
|
|
50
|
+
OSSL_DEPRECATEDIN_3_0 int SHA1_Update(SHA_CTX *c, const void *data, size_t len);
|
|
51
|
+
OSSL_DEPRECATEDIN_3_0 int SHA1_Final(unsigned char *md, SHA_CTX *c);
|
|
52
|
+
OSSL_DEPRECATEDIN_3_0 void SHA1_Transform(SHA_CTX *c, const unsigned char *data);
|
|
53
|
+
# endif
|
|
54
|
+
|
|
55
|
+
unsigned char *SHA1(const unsigned char *d, size_t n, unsigned char *md);
|
|
56
|
+
|
|
57
|
+
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
|
58
|
+
# define SHA256_CBLOCK (SHA_LBLOCK*4)/* SHA-256 treats input data as a
|
|
59
|
+
* contiguous array of 32 bit wide
|
|
60
|
+
* big-endian values. */
|
|
61
|
+
|
|
62
|
+
typedef struct SHA256state_st {
|
|
63
|
+
SHA_LONG h[8];
|
|
64
|
+
SHA_LONG Nl, Nh;
|
|
65
|
+
SHA_LONG data[SHA_LBLOCK];
|
|
66
|
+
unsigned int num, md_len;
|
|
67
|
+
} SHA256_CTX;
|
|
68
|
+
|
|
69
|
+
OSSL_DEPRECATEDIN_3_0 int SHA224_Init(SHA256_CTX *c);
|
|
70
|
+
OSSL_DEPRECATEDIN_3_0 int SHA224_Update(SHA256_CTX *c,
|
|
71
|
+
const void *data, size_t len);
|
|
72
|
+
OSSL_DEPRECATEDIN_3_0 int SHA224_Final(unsigned char *md, SHA256_CTX *c);
|
|
73
|
+
OSSL_DEPRECATEDIN_3_0 int SHA256_Init(SHA256_CTX *c);
|
|
74
|
+
OSSL_DEPRECATEDIN_3_0 int SHA256_Update(SHA256_CTX *c,
|
|
75
|
+
const void *data, size_t len);
|
|
76
|
+
OSSL_DEPRECATEDIN_3_0 int SHA256_Final(unsigned char *md, SHA256_CTX *c);
|
|
77
|
+
OSSL_DEPRECATEDIN_3_0 void SHA256_Transform(SHA256_CTX *c,
|
|
78
|
+
const unsigned char *data);
|
|
79
|
+
# endif
|
|
80
|
+
|
|
81
|
+
unsigned char *SHA224(const unsigned char *d, size_t n, unsigned char *md);
|
|
82
|
+
unsigned char *SHA256(const unsigned char *d, size_t n, unsigned char *md);
|
|
83
|
+
|
|
84
|
+
# define SHA224_DIGEST_LENGTH 28
|
|
85
|
+
# define SHA256_DIGEST_LENGTH 32
|
|
86
|
+
# define SHA384_DIGEST_LENGTH 48
|
|
87
|
+
# define SHA512_DIGEST_LENGTH 64
|
|
88
|
+
|
|
89
|
+
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
|
90
|
+
/*
|
|
91
|
+
* Unlike 32-bit digest algorithms, SHA-512 *relies* on SHA_LONG64
|
|
92
|
+
* being exactly 64-bit wide. See Implementation Notes in sha512.c
|
|
93
|
+
* for further details.
|
|
94
|
+
*/
|
|
95
|
+
/*
|
|
96
|
+
* SHA-512 treats input data as a
|
|
97
|
+
* contiguous array of 64 bit
|
|
98
|
+
* wide big-endian values.
|
|
99
|
+
*/
|
|
100
|
+
# define SHA512_CBLOCK (SHA_LBLOCK*8)
|
|
101
|
+
# if (defined(_WIN32) || defined(_WIN64)) && !defined(__MINGW32__)
|
|
102
|
+
# define SHA_LONG64 unsigned __int64
|
|
103
|
+
# elif defined(__arch64__)
|
|
104
|
+
# define SHA_LONG64 unsigned long
|
|
105
|
+
# else
|
|
106
|
+
# define SHA_LONG64 unsigned long long
|
|
107
|
+
# endif
|
|
108
|
+
|
|
109
|
+
typedef struct SHA512state_st {
|
|
110
|
+
SHA_LONG64 h[8];
|
|
111
|
+
SHA_LONG64 Nl, Nh;
|
|
112
|
+
union {
|
|
113
|
+
SHA_LONG64 d[SHA_LBLOCK];
|
|
114
|
+
unsigned char p[SHA512_CBLOCK];
|
|
115
|
+
} u;
|
|
116
|
+
unsigned int num, md_len;
|
|
117
|
+
} SHA512_CTX;
|
|
118
|
+
|
|
119
|
+
OSSL_DEPRECATEDIN_3_0 int SHA384_Init(SHA512_CTX *c);
|
|
120
|
+
OSSL_DEPRECATEDIN_3_0 int SHA384_Update(SHA512_CTX *c,
|
|
121
|
+
const void *data, size_t len);
|
|
122
|
+
OSSL_DEPRECATEDIN_3_0 int SHA384_Final(unsigned char *md, SHA512_CTX *c);
|
|
123
|
+
OSSL_DEPRECATEDIN_3_0 int SHA512_Init(SHA512_CTX *c);
|
|
124
|
+
OSSL_DEPRECATEDIN_3_0 int SHA512_Update(SHA512_CTX *c,
|
|
125
|
+
const void *data, size_t len);
|
|
126
|
+
OSSL_DEPRECATEDIN_3_0 int SHA512_Final(unsigned char *md, SHA512_CTX *c);
|
|
127
|
+
OSSL_DEPRECATEDIN_3_0 void SHA512_Transform(SHA512_CTX *c,
|
|
128
|
+
const unsigned char *data);
|
|
129
|
+
# endif
|
|
130
|
+
|
|
131
|
+
unsigned char *SHA384(const unsigned char *d, size_t n, unsigned char *md);
|
|
132
|
+
unsigned char *SHA512(const unsigned char *d, size_t n, unsigned char *md);
|
|
133
|
+
|
|
134
|
+
# ifdef __cplusplus
|
|
135
|
+
}
|
|
136
|
+
# endif
|
|
137
|
+
|
|
138
|
+
#endif
|
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* WARNING: do not edit!
|
|
3
|
+
* Generated by Makefile from include/openssl/srp.h.in
|
|
4
|
+
*
|
|
5
|
+
* Copyright 2004-2021 The OpenSSL Project Authors. All Rights Reserved.
|
|
6
|
+
* Copyright (c) 2004, EdelKey Project. All Rights Reserved.
|
|
7
|
+
*
|
|
8
|
+
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
|
9
|
+
* this file except in compliance with the License. You can obtain a copy
|
|
10
|
+
* in the file LICENSE in the source distribution or at
|
|
11
|
+
* https://www.openssl.org/source/license.html
|
|
12
|
+
*
|
|
13
|
+
* Originally written by Christophe Renou and Peter Sylvester,
|
|
14
|
+
* for the EdelKey project.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
#ifndef OPENSSL_SRP_H
|
|
20
|
+
# define OPENSSL_SRP_H
|
|
21
|
+
# pragma once
|
|
22
|
+
|
|
23
|
+
# include <openssl/macros.h>
|
|
24
|
+
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
|
25
|
+
# define HEADER_SRP_H
|
|
26
|
+
# endif
|
|
27
|
+
|
|
28
|
+
#include <openssl/opensslconf.h>
|
|
29
|
+
|
|
30
|
+
#ifndef OPENSSL_NO_SRP
|
|
31
|
+
# include <stdio.h>
|
|
32
|
+
# include <string.h>
|
|
33
|
+
# include <openssl/safestack.h>
|
|
34
|
+
# include <openssl/bn.h>
|
|
35
|
+
# include <openssl/crypto.h>
|
|
36
|
+
|
|
37
|
+
# ifdef __cplusplus
|
|
38
|
+
extern "C" {
|
|
39
|
+
# endif
|
|
40
|
+
|
|
41
|
+
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
|
42
|
+
|
|
43
|
+
typedef struct SRP_gN_cache_st {
|
|
44
|
+
char *b64_bn;
|
|
45
|
+
BIGNUM *bn;
|
|
46
|
+
} SRP_gN_cache;
|
|
47
|
+
SKM_DEFINE_STACK_OF_INTERNAL(SRP_gN_cache, SRP_gN_cache, SRP_gN_cache)
|
|
48
|
+
#define sk_SRP_gN_cache_num(sk) OPENSSL_sk_num(ossl_check_const_SRP_gN_cache_sk_type(sk))
|
|
49
|
+
#define sk_SRP_gN_cache_value(sk, idx) ((SRP_gN_cache *)OPENSSL_sk_value(ossl_check_const_SRP_gN_cache_sk_type(sk), (idx)))
|
|
50
|
+
#define sk_SRP_gN_cache_new(cmp) ((STACK_OF(SRP_gN_cache) *)OPENSSL_sk_new(ossl_check_SRP_gN_cache_compfunc_type(cmp)))
|
|
51
|
+
#define sk_SRP_gN_cache_new_null() ((STACK_OF(SRP_gN_cache) *)OPENSSL_sk_new_null())
|
|
52
|
+
#define sk_SRP_gN_cache_new_reserve(cmp, n) ((STACK_OF(SRP_gN_cache) *)OPENSSL_sk_new_reserve(ossl_check_SRP_gN_cache_compfunc_type(cmp), (n)))
|
|
53
|
+
#define sk_SRP_gN_cache_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_SRP_gN_cache_sk_type(sk), (n))
|
|
54
|
+
#define sk_SRP_gN_cache_free(sk) OPENSSL_sk_free(ossl_check_SRP_gN_cache_sk_type(sk))
|
|
55
|
+
#define sk_SRP_gN_cache_zero(sk) OPENSSL_sk_zero(ossl_check_SRP_gN_cache_sk_type(sk))
|
|
56
|
+
#define sk_SRP_gN_cache_delete(sk, i) ((SRP_gN_cache *)OPENSSL_sk_delete(ossl_check_SRP_gN_cache_sk_type(sk), (i)))
|
|
57
|
+
#define sk_SRP_gN_cache_delete_ptr(sk, ptr) ((SRP_gN_cache *)OPENSSL_sk_delete_ptr(ossl_check_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_type(ptr)))
|
|
58
|
+
#define sk_SRP_gN_cache_push(sk, ptr) OPENSSL_sk_push(ossl_check_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_type(ptr))
|
|
59
|
+
#define sk_SRP_gN_cache_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_type(ptr))
|
|
60
|
+
#define sk_SRP_gN_cache_pop(sk) ((SRP_gN_cache *)OPENSSL_sk_pop(ossl_check_SRP_gN_cache_sk_type(sk)))
|
|
61
|
+
#define sk_SRP_gN_cache_shift(sk) ((SRP_gN_cache *)OPENSSL_sk_shift(ossl_check_SRP_gN_cache_sk_type(sk)))
|
|
62
|
+
#define sk_SRP_gN_cache_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_SRP_gN_cache_sk_type(sk),ossl_check_SRP_gN_cache_freefunc_type(freefunc))
|
|
63
|
+
#define sk_SRP_gN_cache_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_type(ptr), (idx))
|
|
64
|
+
#define sk_SRP_gN_cache_set(sk, idx, ptr) ((SRP_gN_cache *)OPENSSL_sk_set(ossl_check_SRP_gN_cache_sk_type(sk), (idx), ossl_check_SRP_gN_cache_type(ptr)))
|
|
65
|
+
#define sk_SRP_gN_cache_find(sk, ptr) OPENSSL_sk_find(ossl_check_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_type(ptr))
|
|
66
|
+
#define sk_SRP_gN_cache_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_type(ptr))
|
|
67
|
+
#define sk_SRP_gN_cache_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_type(ptr), pnum)
|
|
68
|
+
#define sk_SRP_gN_cache_sort(sk) OPENSSL_sk_sort(ossl_check_SRP_gN_cache_sk_type(sk))
|
|
69
|
+
#define sk_SRP_gN_cache_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_SRP_gN_cache_sk_type(sk))
|
|
70
|
+
#define sk_SRP_gN_cache_dup(sk) ((STACK_OF(SRP_gN_cache) *)OPENSSL_sk_dup(ossl_check_const_SRP_gN_cache_sk_type(sk)))
|
|
71
|
+
#define sk_SRP_gN_cache_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(SRP_gN_cache) *)OPENSSL_sk_deep_copy(ossl_check_const_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_copyfunc_type(copyfunc), ossl_check_SRP_gN_cache_freefunc_type(freefunc)))
|
|
72
|
+
#define sk_SRP_gN_cache_set_cmp_func(sk, cmp) ((sk_SRP_gN_cache_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_SRP_gN_cache_sk_type(sk), ossl_check_SRP_gN_cache_compfunc_type(cmp)))
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
typedef struct SRP_user_pwd_st {
|
|
77
|
+
/* Owned by us. */
|
|
78
|
+
char *id;
|
|
79
|
+
BIGNUM *s;
|
|
80
|
+
BIGNUM *v;
|
|
81
|
+
/* Not owned by us. */
|
|
82
|
+
const BIGNUM *g;
|
|
83
|
+
const BIGNUM *N;
|
|
84
|
+
/* Owned by us. */
|
|
85
|
+
char *info;
|
|
86
|
+
} SRP_user_pwd;
|
|
87
|
+
SKM_DEFINE_STACK_OF_INTERNAL(SRP_user_pwd, SRP_user_pwd, SRP_user_pwd)
|
|
88
|
+
#define sk_SRP_user_pwd_num(sk) OPENSSL_sk_num(ossl_check_const_SRP_user_pwd_sk_type(sk))
|
|
89
|
+
#define sk_SRP_user_pwd_value(sk, idx) ((SRP_user_pwd *)OPENSSL_sk_value(ossl_check_const_SRP_user_pwd_sk_type(sk), (idx)))
|
|
90
|
+
#define sk_SRP_user_pwd_new(cmp) ((STACK_OF(SRP_user_pwd) *)OPENSSL_sk_new(ossl_check_SRP_user_pwd_compfunc_type(cmp)))
|
|
91
|
+
#define sk_SRP_user_pwd_new_null() ((STACK_OF(SRP_user_pwd) *)OPENSSL_sk_new_null())
|
|
92
|
+
#define sk_SRP_user_pwd_new_reserve(cmp, n) ((STACK_OF(SRP_user_pwd) *)OPENSSL_sk_new_reserve(ossl_check_SRP_user_pwd_compfunc_type(cmp), (n)))
|
|
93
|
+
#define sk_SRP_user_pwd_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_SRP_user_pwd_sk_type(sk), (n))
|
|
94
|
+
#define sk_SRP_user_pwd_free(sk) OPENSSL_sk_free(ossl_check_SRP_user_pwd_sk_type(sk))
|
|
95
|
+
#define sk_SRP_user_pwd_zero(sk) OPENSSL_sk_zero(ossl_check_SRP_user_pwd_sk_type(sk))
|
|
96
|
+
#define sk_SRP_user_pwd_delete(sk, i) ((SRP_user_pwd *)OPENSSL_sk_delete(ossl_check_SRP_user_pwd_sk_type(sk), (i)))
|
|
97
|
+
#define sk_SRP_user_pwd_delete_ptr(sk, ptr) ((SRP_user_pwd *)OPENSSL_sk_delete_ptr(ossl_check_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_type(ptr)))
|
|
98
|
+
#define sk_SRP_user_pwd_push(sk, ptr) OPENSSL_sk_push(ossl_check_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_type(ptr))
|
|
99
|
+
#define sk_SRP_user_pwd_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_type(ptr))
|
|
100
|
+
#define sk_SRP_user_pwd_pop(sk) ((SRP_user_pwd *)OPENSSL_sk_pop(ossl_check_SRP_user_pwd_sk_type(sk)))
|
|
101
|
+
#define sk_SRP_user_pwd_shift(sk) ((SRP_user_pwd *)OPENSSL_sk_shift(ossl_check_SRP_user_pwd_sk_type(sk)))
|
|
102
|
+
#define sk_SRP_user_pwd_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_SRP_user_pwd_sk_type(sk),ossl_check_SRP_user_pwd_freefunc_type(freefunc))
|
|
103
|
+
#define sk_SRP_user_pwd_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_type(ptr), (idx))
|
|
104
|
+
#define sk_SRP_user_pwd_set(sk, idx, ptr) ((SRP_user_pwd *)OPENSSL_sk_set(ossl_check_SRP_user_pwd_sk_type(sk), (idx), ossl_check_SRP_user_pwd_type(ptr)))
|
|
105
|
+
#define sk_SRP_user_pwd_find(sk, ptr) OPENSSL_sk_find(ossl_check_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_type(ptr))
|
|
106
|
+
#define sk_SRP_user_pwd_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_type(ptr))
|
|
107
|
+
#define sk_SRP_user_pwd_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_type(ptr), pnum)
|
|
108
|
+
#define sk_SRP_user_pwd_sort(sk) OPENSSL_sk_sort(ossl_check_SRP_user_pwd_sk_type(sk))
|
|
109
|
+
#define sk_SRP_user_pwd_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_SRP_user_pwd_sk_type(sk))
|
|
110
|
+
#define sk_SRP_user_pwd_dup(sk) ((STACK_OF(SRP_user_pwd) *)OPENSSL_sk_dup(ossl_check_const_SRP_user_pwd_sk_type(sk)))
|
|
111
|
+
#define sk_SRP_user_pwd_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(SRP_user_pwd) *)OPENSSL_sk_deep_copy(ossl_check_const_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_copyfunc_type(copyfunc), ossl_check_SRP_user_pwd_freefunc_type(freefunc)))
|
|
112
|
+
#define sk_SRP_user_pwd_set_cmp_func(sk, cmp) ((sk_SRP_user_pwd_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_SRP_user_pwd_sk_type(sk), ossl_check_SRP_user_pwd_compfunc_type(cmp)))
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
OSSL_DEPRECATEDIN_3_0
|
|
116
|
+
SRP_user_pwd *SRP_user_pwd_new(void);
|
|
117
|
+
OSSL_DEPRECATEDIN_3_0
|
|
118
|
+
void SRP_user_pwd_free(SRP_user_pwd *user_pwd);
|
|
119
|
+
|
|
120
|
+
OSSL_DEPRECATEDIN_3_0
|
|
121
|
+
void SRP_user_pwd_set_gN(SRP_user_pwd *user_pwd, const BIGNUM *g,
|
|
122
|
+
const BIGNUM *N);
|
|
123
|
+
OSSL_DEPRECATEDIN_3_0
|
|
124
|
+
int SRP_user_pwd_set1_ids(SRP_user_pwd *user_pwd, const char *id,
|
|
125
|
+
const char *info);
|
|
126
|
+
OSSL_DEPRECATEDIN_3_0
|
|
127
|
+
int SRP_user_pwd_set0_sv(SRP_user_pwd *user_pwd, BIGNUM *s, BIGNUM *v);
|
|
128
|
+
|
|
129
|
+
typedef struct SRP_VBASE_st {
|
|
130
|
+
STACK_OF(SRP_user_pwd) *users_pwd;
|
|
131
|
+
STACK_OF(SRP_gN_cache) *gN_cache;
|
|
132
|
+
/* to simulate a user */
|
|
133
|
+
char *seed_key;
|
|
134
|
+
const BIGNUM *default_g;
|
|
135
|
+
const BIGNUM *default_N;
|
|
136
|
+
} SRP_VBASE;
|
|
137
|
+
|
|
138
|
+
/*
|
|
139
|
+
* Internal structure storing N and g pair
|
|
140
|
+
*/
|
|
141
|
+
typedef struct SRP_gN_st {
|
|
142
|
+
char *id;
|
|
143
|
+
const BIGNUM *g;
|
|
144
|
+
const BIGNUM *N;
|
|
145
|
+
} SRP_gN;
|
|
146
|
+
SKM_DEFINE_STACK_OF_INTERNAL(SRP_gN, SRP_gN, SRP_gN)
|
|
147
|
+
#define sk_SRP_gN_num(sk) OPENSSL_sk_num(ossl_check_const_SRP_gN_sk_type(sk))
|
|
148
|
+
#define sk_SRP_gN_value(sk, idx) ((SRP_gN *)OPENSSL_sk_value(ossl_check_const_SRP_gN_sk_type(sk), (idx)))
|
|
149
|
+
#define sk_SRP_gN_new(cmp) ((STACK_OF(SRP_gN) *)OPENSSL_sk_new(ossl_check_SRP_gN_compfunc_type(cmp)))
|
|
150
|
+
#define sk_SRP_gN_new_null() ((STACK_OF(SRP_gN) *)OPENSSL_sk_new_null())
|
|
151
|
+
#define sk_SRP_gN_new_reserve(cmp, n) ((STACK_OF(SRP_gN) *)OPENSSL_sk_new_reserve(ossl_check_SRP_gN_compfunc_type(cmp), (n)))
|
|
152
|
+
#define sk_SRP_gN_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_SRP_gN_sk_type(sk), (n))
|
|
153
|
+
#define sk_SRP_gN_free(sk) OPENSSL_sk_free(ossl_check_SRP_gN_sk_type(sk))
|
|
154
|
+
#define sk_SRP_gN_zero(sk) OPENSSL_sk_zero(ossl_check_SRP_gN_sk_type(sk))
|
|
155
|
+
#define sk_SRP_gN_delete(sk, i) ((SRP_gN *)OPENSSL_sk_delete(ossl_check_SRP_gN_sk_type(sk), (i)))
|
|
156
|
+
#define sk_SRP_gN_delete_ptr(sk, ptr) ((SRP_gN *)OPENSSL_sk_delete_ptr(ossl_check_SRP_gN_sk_type(sk), ossl_check_SRP_gN_type(ptr)))
|
|
157
|
+
#define sk_SRP_gN_push(sk, ptr) OPENSSL_sk_push(ossl_check_SRP_gN_sk_type(sk), ossl_check_SRP_gN_type(ptr))
|
|
158
|
+
#define sk_SRP_gN_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_SRP_gN_sk_type(sk), ossl_check_SRP_gN_type(ptr))
|
|
159
|
+
#define sk_SRP_gN_pop(sk) ((SRP_gN *)OPENSSL_sk_pop(ossl_check_SRP_gN_sk_type(sk)))
|
|
160
|
+
#define sk_SRP_gN_shift(sk) ((SRP_gN *)OPENSSL_sk_shift(ossl_check_SRP_gN_sk_type(sk)))
|
|
161
|
+
#define sk_SRP_gN_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_SRP_gN_sk_type(sk),ossl_check_SRP_gN_freefunc_type(freefunc))
|
|
162
|
+
#define sk_SRP_gN_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_SRP_gN_sk_type(sk), ossl_check_SRP_gN_type(ptr), (idx))
|
|
163
|
+
#define sk_SRP_gN_set(sk, idx, ptr) ((SRP_gN *)OPENSSL_sk_set(ossl_check_SRP_gN_sk_type(sk), (idx), ossl_check_SRP_gN_type(ptr)))
|
|
164
|
+
#define sk_SRP_gN_find(sk, ptr) OPENSSL_sk_find(ossl_check_SRP_gN_sk_type(sk), ossl_check_SRP_gN_type(ptr))
|
|
165
|
+
#define sk_SRP_gN_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_SRP_gN_sk_type(sk), ossl_check_SRP_gN_type(ptr))
|
|
166
|
+
#define sk_SRP_gN_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_SRP_gN_sk_type(sk), ossl_check_SRP_gN_type(ptr), pnum)
|
|
167
|
+
#define sk_SRP_gN_sort(sk) OPENSSL_sk_sort(ossl_check_SRP_gN_sk_type(sk))
|
|
168
|
+
#define sk_SRP_gN_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_SRP_gN_sk_type(sk))
|
|
169
|
+
#define sk_SRP_gN_dup(sk) ((STACK_OF(SRP_gN) *)OPENSSL_sk_dup(ossl_check_const_SRP_gN_sk_type(sk)))
|
|
170
|
+
#define sk_SRP_gN_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(SRP_gN) *)OPENSSL_sk_deep_copy(ossl_check_const_SRP_gN_sk_type(sk), ossl_check_SRP_gN_copyfunc_type(copyfunc), ossl_check_SRP_gN_freefunc_type(freefunc)))
|
|
171
|
+
#define sk_SRP_gN_set_cmp_func(sk, cmp) ((sk_SRP_gN_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_SRP_gN_sk_type(sk), ossl_check_SRP_gN_compfunc_type(cmp)))
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
OSSL_DEPRECATEDIN_3_0
|
|
176
|
+
SRP_VBASE *SRP_VBASE_new(char *seed_key);
|
|
177
|
+
OSSL_DEPRECATEDIN_3_0
|
|
178
|
+
void SRP_VBASE_free(SRP_VBASE *vb);
|
|
179
|
+
OSSL_DEPRECATEDIN_3_0
|
|
180
|
+
int SRP_VBASE_init(SRP_VBASE *vb, char *verifier_file);
|
|
181
|
+
|
|
182
|
+
OSSL_DEPRECATEDIN_3_0
|
|
183
|
+
int SRP_VBASE_add0_user(SRP_VBASE *vb, SRP_user_pwd *user_pwd);
|
|
184
|
+
|
|
185
|
+
/* NOTE: unlike in SRP_VBASE_get_by_user, caller owns the returned pointer.*/
|
|
186
|
+
OSSL_DEPRECATEDIN_3_0
|
|
187
|
+
SRP_user_pwd *SRP_VBASE_get1_by_user(SRP_VBASE *vb, char *username);
|
|
188
|
+
|
|
189
|
+
OSSL_DEPRECATEDIN_3_0
|
|
190
|
+
char *SRP_create_verifier_ex(const char *user, const char *pass, char **salt,
|
|
191
|
+
char **verifier, const char *N, const char *g,
|
|
192
|
+
OSSL_LIB_CTX *libctx, const char *propq);
|
|
193
|
+
OSSL_DEPRECATEDIN_3_0
|
|
194
|
+
char *SRP_create_verifier(const char *user, const char *pass, char **salt,
|
|
195
|
+
char **verifier, const char *N, const char *g);
|
|
196
|
+
OSSL_DEPRECATEDIN_3_0
|
|
197
|
+
int SRP_create_verifier_BN_ex(const char *user, const char *pass, BIGNUM **salt,
|
|
198
|
+
BIGNUM **verifier, const BIGNUM *N,
|
|
199
|
+
const BIGNUM *g, OSSL_LIB_CTX *libctx,
|
|
200
|
+
const char *propq);
|
|
201
|
+
OSSL_DEPRECATEDIN_3_0
|
|
202
|
+
int SRP_create_verifier_BN(const char *user, const char *pass, BIGNUM **salt,
|
|
203
|
+
BIGNUM **verifier, const BIGNUM *N,
|
|
204
|
+
const BIGNUM *g);
|
|
205
|
+
|
|
206
|
+
# define SRP_NO_ERROR 0
|
|
207
|
+
# define SRP_ERR_VBASE_INCOMPLETE_FILE 1
|
|
208
|
+
# define SRP_ERR_VBASE_BN_LIB 2
|
|
209
|
+
# define SRP_ERR_OPEN_FILE 3
|
|
210
|
+
# define SRP_ERR_MEMORY 4
|
|
211
|
+
|
|
212
|
+
# define DB_srptype 0
|
|
213
|
+
# define DB_srpverifier 1
|
|
214
|
+
# define DB_srpsalt 2
|
|
215
|
+
# define DB_srpid 3
|
|
216
|
+
# define DB_srpgN 4
|
|
217
|
+
# define DB_srpinfo 5
|
|
218
|
+
# undef DB_NUMBER
|
|
219
|
+
# define DB_NUMBER 6
|
|
220
|
+
|
|
221
|
+
# define DB_SRP_INDEX 'I'
|
|
222
|
+
# define DB_SRP_VALID 'V'
|
|
223
|
+
# define DB_SRP_REVOKED 'R'
|
|
224
|
+
# define DB_SRP_MODIF 'v'
|
|
225
|
+
|
|
226
|
+
/* see srp.c */
|
|
227
|
+
OSSL_DEPRECATEDIN_3_0
|
|
228
|
+
char *SRP_check_known_gN_param(const BIGNUM *g, const BIGNUM *N);
|
|
229
|
+
OSSL_DEPRECATEDIN_3_0
|
|
230
|
+
SRP_gN *SRP_get_default_gN(const char *id);
|
|
231
|
+
|
|
232
|
+
/* server side .... */
|
|
233
|
+
OSSL_DEPRECATEDIN_3_0
|
|
234
|
+
BIGNUM *SRP_Calc_server_key(const BIGNUM *A, const BIGNUM *v, const BIGNUM *u,
|
|
235
|
+
const BIGNUM *b, const BIGNUM *N);
|
|
236
|
+
OSSL_DEPRECATEDIN_3_0
|
|
237
|
+
BIGNUM *SRP_Calc_B_ex(const BIGNUM *b, const BIGNUM *N, const BIGNUM *g,
|
|
238
|
+
const BIGNUM *v, OSSL_LIB_CTX *libctx, const char *propq);
|
|
239
|
+
OSSL_DEPRECATEDIN_3_0
|
|
240
|
+
BIGNUM *SRP_Calc_B(const BIGNUM *b, const BIGNUM *N, const BIGNUM *g,
|
|
241
|
+
const BIGNUM *v);
|
|
242
|
+
|
|
243
|
+
OSSL_DEPRECATEDIN_3_0
|
|
244
|
+
int SRP_Verify_A_mod_N(const BIGNUM *A, const BIGNUM *N);
|
|
245
|
+
OSSL_DEPRECATEDIN_3_0
|
|
246
|
+
BIGNUM *SRP_Calc_u_ex(const BIGNUM *A, const BIGNUM *B, const BIGNUM *N,
|
|
247
|
+
OSSL_LIB_CTX *libctx, const char *propq);
|
|
248
|
+
OSSL_DEPRECATEDIN_3_0
|
|
249
|
+
BIGNUM *SRP_Calc_u(const BIGNUM *A, const BIGNUM *B, const BIGNUM *N);
|
|
250
|
+
|
|
251
|
+
/* client side .... */
|
|
252
|
+
|
|
253
|
+
OSSL_DEPRECATEDIN_3_0
|
|
254
|
+
BIGNUM *SRP_Calc_x_ex(const BIGNUM *s, const char *user, const char *pass,
|
|
255
|
+
OSSL_LIB_CTX *libctx, const char *propq);
|
|
256
|
+
OSSL_DEPRECATEDIN_3_0
|
|
257
|
+
BIGNUM *SRP_Calc_x(const BIGNUM *s, const char *user, const char *pass);
|
|
258
|
+
OSSL_DEPRECATEDIN_3_0
|
|
259
|
+
BIGNUM *SRP_Calc_A(const BIGNUM *a, const BIGNUM *N, const BIGNUM *g);
|
|
260
|
+
OSSL_DEPRECATEDIN_3_0
|
|
261
|
+
BIGNUM *SRP_Calc_client_key_ex(const BIGNUM *N, const BIGNUM *B, const BIGNUM *g,
|
|
262
|
+
const BIGNUM *x, const BIGNUM *a, const BIGNUM *u,
|
|
263
|
+
OSSL_LIB_CTX *libctx, const char *propq);
|
|
264
|
+
OSSL_DEPRECATEDIN_3_0
|
|
265
|
+
BIGNUM *SRP_Calc_client_key(const BIGNUM *N, const BIGNUM *B, const BIGNUM *g,
|
|
266
|
+
const BIGNUM *x, const BIGNUM *a, const BIGNUM *u);
|
|
267
|
+
OSSL_DEPRECATEDIN_3_0
|
|
268
|
+
int SRP_Verify_B_mod_N(const BIGNUM *B, const BIGNUM *N);
|
|
269
|
+
|
|
270
|
+
# define SRP_MINIMAL_N 1024
|
|
271
|
+
|
|
272
|
+
# endif /* OPENSSL_NO_DEPRECATED_3_0 */
|
|
273
|
+
|
|
274
|
+
/* This method ignores the configured seed and fails for an unknown user. */
|
|
275
|
+
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
|
276
|
+
OSSL_DEPRECATEDIN_1_1_0
|
|
277
|
+
SRP_user_pwd *SRP_VBASE_get_by_user(SRP_VBASE *vb, char *username);
|
|
278
|
+
# endif
|
|
279
|
+
|
|
280
|
+
# ifdef __cplusplus
|
|
281
|
+
}
|
|
282
|
+
# endif
|
|
283
|
+
# endif
|
|
284
|
+
|
|
285
|
+
#endif
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
|
5
|
+
* this file except in compliance with the License. You can obtain a copy
|
|
6
|
+
* in the file LICENSE in the source distribution or at
|
|
7
|
+
* https://www.openssl.org/source/license.html
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/*
|
|
11
|
+
* DTLS code by Eric Rescorla <ekr@rtfm.com>
|
|
12
|
+
*
|
|
13
|
+
* Copyright (C) 2006, Network Resonance, Inc. Copyright (C) 2011, RTFM, Inc.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
#ifndef OPENSSL_SRTP_H
|
|
17
|
+
# define OPENSSL_SRTP_H
|
|
18
|
+
# pragma once
|
|
19
|
+
|
|
20
|
+
# include <openssl/macros.h>
|
|
21
|
+
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
|
22
|
+
# define HEADER_D1_SRTP_H
|
|
23
|
+
# endif
|
|
24
|
+
|
|
25
|
+
# include <openssl/ssl.h>
|
|
26
|
+
|
|
27
|
+
#ifdef __cplusplus
|
|
28
|
+
extern "C" {
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
# define SRTP_AES128_CM_SHA1_80 0x0001
|
|
32
|
+
# define SRTP_AES128_CM_SHA1_32 0x0002
|
|
33
|
+
# define SRTP_AES128_F8_SHA1_80 0x0003
|
|
34
|
+
# define SRTP_AES128_F8_SHA1_32 0x0004
|
|
35
|
+
# define SRTP_NULL_SHA1_80 0x0005
|
|
36
|
+
# define SRTP_NULL_SHA1_32 0x0006
|
|
37
|
+
|
|
38
|
+
/* AEAD SRTP protection profiles from RFC 7714 */
|
|
39
|
+
# define SRTP_AEAD_AES_128_GCM 0x0007
|
|
40
|
+
# define SRTP_AEAD_AES_256_GCM 0x0008
|
|
41
|
+
|
|
42
|
+
# ifndef OPENSSL_NO_SRTP
|
|
43
|
+
|
|
44
|
+
__owur int SSL_CTX_set_tlsext_use_srtp(SSL_CTX *ctx, const char *profiles);
|
|
45
|
+
__owur int SSL_set_tlsext_use_srtp(SSL *ssl, const char *profiles);
|
|
46
|
+
|
|
47
|
+
__owur STACK_OF(SRTP_PROTECTION_PROFILE) *SSL_get_srtp_profiles(SSL *ssl);
|
|
48
|
+
__owur SRTP_PROTECTION_PROFILE *SSL_get_selected_srtp_profile(SSL *s);
|
|
49
|
+
|
|
50
|
+
# endif
|
|
51
|
+
|
|
52
|
+
#ifdef __cplusplus
|
|
53
|
+
}
|
|
54
|
+
#endif
|
|
55
|
+
|
|
56
|
+
#endif
|