forked from cory/tildefriends
Android OpenSSL => 3.2.0.
git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4643 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/asn1.h.in
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -158,7 +158,7 @@ SKM_DEFINE_STACK_OF_INTERNAL(X509_ALGOR, X509_ALGOR, X509_ALGOR)
|
||||
|
||||
|
||||
|
||||
# define ASN1_STRING_FLAG_BITS_LEFT 0x08/* Set if 0x07 has bits left value */
|
||||
# define ASN1_STRING_FLAG_BITS_LEFT 0x08 /* Set if 0x07 has bits left value */
|
||||
/*
|
||||
* This indicates that the ASN1_STRING is not a real value but just a place
|
||||
* holder for the location where indefinite length constructed data should be
|
||||
@ -999,6 +999,8 @@ int ASN1_TYPE_get_int_octetstring(const ASN1_TYPE *a, long *num,
|
||||
unsigned char *data, int max_len);
|
||||
|
||||
void *ASN1_item_unpack(const ASN1_STRING *oct, const ASN1_ITEM *it);
|
||||
void *ASN1_item_unpack_ex(const ASN1_STRING *oct, const ASN1_ITEM *it,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
ASN1_STRING *ASN1_item_pack(void *obj, const ASN1_ITEM *it,
|
||||
ASN1_OCTET_STRING **oct);
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -135,7 +135,7 @@ extern "C" {
|
||||
-}
|
||||
|
||||
|
||||
# define ASN1_STRING_FLAG_BITS_LEFT 0x08/* Set if 0x07 has bits left value */
|
||||
# define ASN1_STRING_FLAG_BITS_LEFT 0x08 /* Set if 0x07 has bits left value */
|
||||
/*
|
||||
* This indicates that the ASN1_STRING is not a real value but just a place
|
||||
* holder for the location where indefinite length constructed data should be
|
||||
@ -832,6 +832,8 @@ int ASN1_TYPE_get_int_octetstring(const ASN1_TYPE *a, long *num,
|
||||
unsigned char *data, int max_len);
|
||||
|
||||
void *ASN1_item_unpack(const ASN1_STRING *oct, const ASN1_ITEM *it);
|
||||
void *ASN1_item_unpack_ex(const ASN1_STRING *oct, const ASN1_ITEM *it,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
ASN1_STRING *ASN1_item_pack(void *obj, const ASN1_ITEM *it,
|
||||
ASN1_OCTET_STRING **oct);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2015-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -80,6 +80,14 @@ int ASYNC_WAIT_CTX_clear_fd(ASYNC_WAIT_CTX *ctx, const void *key);
|
||||
|
||||
int ASYNC_is_capable(void);
|
||||
|
||||
typedef void *(*ASYNC_stack_alloc_fn)(size_t *num);
|
||||
typedef void (*ASYNC_stack_free_fn)(void *addr);
|
||||
|
||||
int ASYNC_set_mem_functions(ASYNC_stack_alloc_fn alloc_fn,
|
||||
ASYNC_stack_free_fn free_fn);
|
||||
void ASYNC_get_mem_functions(ASYNC_stack_alloc_fn *alloc_fn,
|
||||
ASYNC_stack_free_fn *free_fn);
|
||||
|
||||
int ASYNC_start_job(ASYNC_JOB **job, ASYNC_WAIT_CTX *ctx, int *ret,
|
||||
int (*func)(void *), void *args, size_t size);
|
||||
int ASYNC_pause_job(void);
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/bio.h.in
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -67,6 +67,8 @@ extern "C" {
|
||||
# define BIO_TYPE_DGRAM_SCTP (24|BIO_TYPE_SOURCE_SINK|BIO_TYPE_DESCRIPTOR)
|
||||
# endif
|
||||
# define BIO_TYPE_CORE_TO_PROV (25|BIO_TYPE_SOURCE_SINK)
|
||||
# define BIO_TYPE_DGRAM_PAIR (26|BIO_TYPE_SOURCE_SINK)
|
||||
# define BIO_TYPE_DGRAM_MEM (27|BIO_TYPE_SOURCE_SINK)
|
||||
|
||||
#define BIO_TYPE_START 128
|
||||
|
||||
@ -171,6 +173,30 @@ extern "C" {
|
||||
# define BIO_CTRL_SET_INDENT 80
|
||||
# define BIO_CTRL_GET_INDENT 81
|
||||
|
||||
# define BIO_CTRL_DGRAM_GET_LOCAL_ADDR_CAP 82
|
||||
# define BIO_CTRL_DGRAM_GET_LOCAL_ADDR_ENABLE 83
|
||||
# define BIO_CTRL_DGRAM_SET_LOCAL_ADDR_ENABLE 84
|
||||
# define BIO_CTRL_DGRAM_GET_EFFECTIVE_CAPS 85
|
||||
# define BIO_CTRL_DGRAM_GET_CAPS 86
|
||||
# define BIO_CTRL_DGRAM_SET_CAPS 87
|
||||
# define BIO_CTRL_DGRAM_GET_NO_TRUNC 88
|
||||
# define BIO_CTRL_DGRAM_SET_NO_TRUNC 89
|
||||
|
||||
/*
|
||||
* internal BIO:
|
||||
* # define BIO_CTRL_SET_KTLS_TX_ZEROCOPY_SENDFILE 90
|
||||
*/
|
||||
|
||||
# define BIO_CTRL_GET_RPOLL_DESCRIPTOR 91
|
||||
# define BIO_CTRL_GET_WPOLL_DESCRIPTOR 92
|
||||
# define BIO_CTRL_DGRAM_DETECT_PEER_ADDR 93
|
||||
|
||||
# define BIO_DGRAM_CAP_NONE 0U
|
||||
# define BIO_DGRAM_CAP_HANDLES_SRC_ADDR (1U << 0)
|
||||
# define BIO_DGRAM_CAP_HANDLES_DST_ADDR (1U << 1)
|
||||
# define BIO_DGRAM_CAP_PROVIDES_SRC_ADDR (1U << 2)
|
||||
# define BIO_DGRAM_CAP_PROVIDES_DST_ADDR (1U << 3)
|
||||
|
||||
# ifndef OPENSSL_NO_KTLS
|
||||
# define BIO_get_ktls_send(b) \
|
||||
(BIO_ctrl(b, BIO_CTRL_GET_KTLS_SEND, 0, NULL) > 0)
|
||||
@ -208,7 +234,7 @@ extern "C" {
|
||||
# define BIO_FLAGS_NONCLEAR_RST 0x400
|
||||
# define BIO_FLAGS_IN_EOF 0x800
|
||||
|
||||
/* the BIO FLAGS values 0x1000 to 0x4000 are reserved for internal KTLS flags */
|
||||
/* the BIO FLAGS values 0x1000 to 0x8000 are reserved for internal KTLS flags */
|
||||
|
||||
typedef union bio_addr_st BIO_ADDR;
|
||||
typedef struct bio_addrinfo_st BIO_ADDRINFO;
|
||||
@ -256,12 +282,14 @@ void BIO_clear_flags(BIO *b, int flags);
|
||||
# define BIO_RR_ACCEPT 0x03
|
||||
|
||||
/* These are passed by the BIO callback */
|
||||
# define BIO_CB_FREE 0x01
|
||||
# define BIO_CB_READ 0x02
|
||||
# define BIO_CB_WRITE 0x03
|
||||
# define BIO_CB_PUTS 0x04
|
||||
# define BIO_CB_GETS 0x05
|
||||
# define BIO_CB_CTRL 0x06
|
||||
# define BIO_CB_FREE 0x01
|
||||
# define BIO_CB_READ 0x02
|
||||
# define BIO_CB_WRITE 0x03
|
||||
# define BIO_CB_PUTS 0x04
|
||||
# define BIO_CB_GETS 0x05
|
||||
# define BIO_CB_CTRL 0x06
|
||||
# define BIO_CB_RECVMMSG 0x07
|
||||
# define BIO_CB_SENDMMSG 0x08
|
||||
|
||||
/*
|
||||
* The callback is called before and after the underling operation, The
|
||||
@ -362,6 +390,34 @@ struct bio_dgram_sctp_prinfo {
|
||||
};
|
||||
# endif
|
||||
|
||||
/* BIO_sendmmsg/BIO_recvmmsg-related definitions */
|
||||
typedef struct bio_msg_st {
|
||||
void *data;
|
||||
size_t data_len;
|
||||
BIO_ADDR *peer, *local;
|
||||
uint64_t flags;
|
||||
} BIO_MSG;
|
||||
|
||||
typedef struct bio_mmsg_cb_args_st {
|
||||
BIO_MSG *msg;
|
||||
size_t stride, num_msg;
|
||||
uint64_t flags;
|
||||
size_t *msgs_processed;
|
||||
} BIO_MMSG_CB_ARGS;
|
||||
|
||||
#define BIO_POLL_DESCRIPTOR_TYPE_NONE 0
|
||||
#define BIO_POLL_DESCRIPTOR_TYPE_SOCK_FD 1
|
||||
#define BIO_POLL_DESCRIPTOR_CUSTOM_START 8192
|
||||
|
||||
typedef struct bio_poll_descriptor_st {
|
||||
uint32_t type;
|
||||
union {
|
||||
int fd;
|
||||
void *custom;
|
||||
uintptr_t custom_ui;
|
||||
} value;
|
||||
} BIO_POLL_DESCRIPTOR;
|
||||
|
||||
/*
|
||||
* #define BIO_CONN_get_param_hostname BIO_ctrl
|
||||
*/
|
||||
@ -428,10 +484,17 @@ struct bio_dgram_sctp_prinfo {
|
||||
|
||||
# define BIO_C_SET_CONNECT_MODE 155
|
||||
|
||||
# define BIO_C_SET_TFO 156 /* like BIO_C_SET_NBIO */
|
||||
|
||||
# define BIO_C_SET_SOCK_TYPE 157
|
||||
# define BIO_C_GET_SOCK_TYPE 158
|
||||
# define BIO_C_GET_DGRAM_BIO 159
|
||||
|
||||
# define BIO_set_app_data(s,arg) BIO_set_ex_data(s,0,arg)
|
||||
# define BIO_get_app_data(s) BIO_get_ex_data(s,0)
|
||||
|
||||
# define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL)
|
||||
# define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL)
|
||||
# define BIO_set_tfo(b,n) BIO_ctrl(b,BIO_C_SET_TFO,(n),NULL)
|
||||
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
/* IP families we support, for BIO_s_connect() and BIO_s_accept() */
|
||||
@ -452,7 +515,11 @@ struct bio_dgram_sctp_prinfo {
|
||||
# define BIO_get_conn_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,1))
|
||||
# define BIO_get_conn_address(b) ((const BIO_ADDR *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,2))
|
||||
# define BIO_get_conn_ip_family(b) BIO_ctrl(b,BIO_C_GET_CONNECT,3,NULL)
|
||||
# define BIO_get_conn_mode(b) BIO_ctrl(b,BIO_C_GET_CONNECT,4,NULL)
|
||||
# define BIO_set_conn_mode(b,n) BIO_ctrl(b,BIO_C_SET_CONNECT_MODE,(n),NULL)
|
||||
# define BIO_set_sock_type(b,t) BIO_ctrl(b,BIO_C_SET_SOCK_TYPE,(t),NULL)
|
||||
# define BIO_get_sock_type(b) BIO_ctrl(b,BIO_C_GET_SOCK_TYPE,0,NULL)
|
||||
# define BIO_get0_dgram_bio(b, p) BIO_ctrl(b,BIO_C_GET_DGRAM_BIO,0,(void *)(BIO **)(p))
|
||||
|
||||
/* BIO_s_accept() */
|
||||
# define BIO_set_accept_name(b,name) BIO_ctrl(b,BIO_C_SET_ACCEPT,0, \
|
||||
@ -469,6 +536,7 @@ struct bio_dgram_sctp_prinfo {
|
||||
(char *)(bio))
|
||||
# define BIO_set_accept_ip_family(b,f) BIO_int_ctrl(b,BIO_C_SET_ACCEPT,4,f)
|
||||
# define BIO_get_accept_ip_family(b) BIO_ctrl(b,BIO_C_GET_ACCEPT,4,NULL)
|
||||
# define BIO_set_tfo_accept(b,n) BIO_ctrl(b,BIO_C_SET_ACCEPT,5,(n)?(void *)"a":NULL)
|
||||
|
||||
/* Aliases kept for backward compatibility */
|
||||
# define BIO_BIND_NORMAL 0
|
||||
@ -596,8 +664,30 @@ int BIO_ctrl_reset_read_request(BIO *b);
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_PEER, 0, (char *)(peer))
|
||||
# define BIO_dgram_set_peer(b,peer) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, (char *)(peer))
|
||||
# define BIO_dgram_detect_peer_addr(b,peer) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_DETECT_PEER_ADDR, 0, (char *)(peer))
|
||||
# define BIO_dgram_get_mtu_overhead(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU_OVERHEAD, 0, NULL)
|
||||
# define BIO_dgram_get_local_addr_cap(b) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_LOCAL_ADDR_CAP, 0, NULL)
|
||||
# define BIO_dgram_get_local_addr_enable(b, penable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_LOCAL_ADDR_ENABLE, 0, (char *)(penable))
|
||||
# define BIO_dgram_set_local_addr_enable(b, enable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_LOCAL_ADDR_ENABLE, (enable), NULL)
|
||||
# define BIO_dgram_get_effective_caps(b) \
|
||||
(uint32_t)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_EFFECTIVE_CAPS, 0, NULL)
|
||||
# define BIO_dgram_get_caps(b) \
|
||||
(uint32_t)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_CAPS, 0, NULL)
|
||||
# define BIO_dgram_set_caps(b, caps) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_CAPS, (long)(caps), NULL)
|
||||
# define BIO_dgram_get_no_trunc(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_NO_TRUNC, 0, NULL)
|
||||
# define BIO_dgram_set_no_trunc(b, enable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_NO_TRUNC, (enable), NULL)
|
||||
# define BIO_dgram_get_mtu(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU, 0, NULL)
|
||||
# define BIO_dgram_set_mtu(b, mtu) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_MTU, (mtu), NULL)
|
||||
|
||||
/* ctrl macros for BIO_f_prefix */
|
||||
# define BIO_set_prefix(b,p) BIO_ctrl((b), BIO_CTRL_SET_PREFIX, 0, (void *)(p))
|
||||
@ -640,10 +730,18 @@ void BIO_vfree(BIO *a);
|
||||
int BIO_up_ref(BIO *a);
|
||||
int BIO_read(BIO *b, void *data, int dlen);
|
||||
int BIO_read_ex(BIO *b, void *data, size_t dlen, size_t *readbytes);
|
||||
__owur int BIO_recvmmsg(BIO *b, BIO_MSG *msg,
|
||||
size_t stride, size_t num_msg, uint64_t flags,
|
||||
size_t *msgs_processed);
|
||||
int BIO_gets(BIO *bp, char *buf, int size);
|
||||
int BIO_get_line(BIO *bio, char *buf, int size);
|
||||
int BIO_write(BIO *b, const void *data, int dlen);
|
||||
int BIO_write_ex(BIO *b, const void *data, size_t dlen, size_t *written);
|
||||
__owur int BIO_sendmmsg(BIO *b, BIO_MSG *msg,
|
||||
size_t stride, size_t num_msg, uint64_t flags,
|
||||
size_t *msgs_processed);
|
||||
__owur int BIO_get_rpoll_descriptor(BIO *b, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int BIO_get_wpoll_descriptor(BIO *b, BIO_POLL_DESCRIPTOR *desc);
|
||||
int BIO_puts(BIO *bp, const char *buf);
|
||||
int BIO_indent(BIO *b, int indent, int max);
|
||||
long BIO_ctrl(BIO *bp, int cmd, long larg, void *parg);
|
||||
@ -667,6 +765,9 @@ int BIO_nwrite0(BIO *bio, char **buf);
|
||||
int BIO_nwrite(BIO *bio, char **buf, int num);
|
||||
|
||||
const BIO_METHOD *BIO_s_mem(void);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
const BIO_METHOD *BIO_s_dgram_mem(void);
|
||||
# endif
|
||||
const BIO_METHOD *BIO_s_secmem(void);
|
||||
BIO *BIO_new_mem_buf(const void *buf, int len);
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
@ -686,6 +787,7 @@ const BIO_METHOD *BIO_f_nbio_test(void);
|
||||
const BIO_METHOD *BIO_f_prefix(void);
|
||||
const BIO_METHOD *BIO_s_core(void);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
const BIO_METHOD *BIO_s_dgram_pair(void);
|
||||
const BIO_METHOD *BIO_s_datagram(void);
|
||||
int BIO_dgram_non_fatal_error(int error);
|
||||
BIO *BIO_new_dgram(int fd, int close_flag);
|
||||
@ -704,6 +806,7 @@ int BIO_dgram_sctp_msg_waiting(BIO *b);
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
int BIO_sock_should_retry(int i);
|
||||
int BIO_sock_non_fatal_error(int error);
|
||||
int BIO_err_is_non_fatal(unsigned int errcode);
|
||||
int BIO_socket_wait(int fd, int for_read, time_t max_time);
|
||||
# endif
|
||||
int BIO_wait(BIO *bio, time_t max_time, unsigned int nap_milliseconds);
|
||||
@ -726,6 +829,8 @@ int BIO_hex_string(BIO *out, int indent, int width, const void *data,
|
||||
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
BIO_ADDR *BIO_ADDR_new(void);
|
||||
int BIO_ADDR_copy(BIO_ADDR *dst, const BIO_ADDR *src);
|
||||
BIO_ADDR *BIO_ADDR_dup(const BIO_ADDR *ap);
|
||||
int BIO_ADDR_rawmake(BIO_ADDR *ap, int family,
|
||||
const void *where, size_t wherelen, unsigned short port);
|
||||
void BIO_ADDR_free(BIO_ADDR *);
|
||||
@ -788,6 +893,7 @@ int BIO_sock_info(int sock,
|
||||
# define BIO_SOCK_KEEPALIVE 0x04
|
||||
# define BIO_SOCK_NONBLOCK 0x08
|
||||
# define BIO_SOCK_NODELAY 0x10
|
||||
# define BIO_SOCK_TFO 0x20
|
||||
|
||||
int BIO_socket(int domain, int socktype, int protocol, int options);
|
||||
int BIO_connect(int sock, const BIO_ADDR *addr, int options);
|
||||
@ -805,6 +911,11 @@ BIO *BIO_new_fd(int fd, int close_flag);
|
||||
|
||||
int BIO_new_bio_pair(BIO **bio1, size_t writebuf1,
|
||||
BIO **bio2, size_t writebuf2);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
int BIO_new_bio_dgram_pair(BIO **bio1, size_t writebuf1,
|
||||
BIO **bio2, size_t writebuf2);
|
||||
# endif
|
||||
|
||||
/*
|
||||
* If successful, returns 1 and in *bio1, *bio2 two BIO pair endpoints.
|
||||
* Otherwise returns 0 and sets *bio1 and *bio2 to NULL. Size 0 uses default
|
||||
@ -856,18 +967,30 @@ int BIO_meth_set_write(BIO_METHOD *biom,
|
||||
int (*write) (BIO *, const char *, int));
|
||||
int BIO_meth_set_write_ex(BIO_METHOD *biom,
|
||||
int (*bwrite) (BIO *, const char *, size_t, size_t *));
|
||||
int BIO_meth_set_sendmmsg(BIO_METHOD *biom,
|
||||
int (*f) (BIO *, BIO_MSG *, size_t, size_t,
|
||||
uint64_t, size_t *));
|
||||
int (*BIO_meth_get_sendmmsg(const BIO_METHOD *biom))(BIO *, BIO_MSG *,
|
||||
size_t, size_t,
|
||||
uint64_t, size_t *);
|
||||
int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int);
|
||||
int (*BIO_meth_get_read_ex(const BIO_METHOD *biom)) (BIO *, char *, size_t, size_t *);
|
||||
int BIO_meth_set_read(BIO_METHOD *biom,
|
||||
int (*read) (BIO *, char *, int));
|
||||
int BIO_meth_set_read_ex(BIO_METHOD *biom,
|
||||
int (*bread) (BIO *, char *, size_t, size_t *));
|
||||
int BIO_meth_set_recvmmsg(BIO_METHOD *biom,
|
||||
int (*f) (BIO *, BIO_MSG *, size_t, size_t,
|
||||
uint64_t, size_t *));
|
||||
int (*BIO_meth_get_recvmmsg(const BIO_METHOD *biom))(BIO *, BIO_MSG *,
|
||||
size_t, size_t,
|
||||
uint64_t, size_t *);
|
||||
int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *);
|
||||
int BIO_meth_set_puts(BIO_METHOD *biom,
|
||||
int (*puts) (BIO *, const char *));
|
||||
int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int);
|
||||
int BIO_meth_set_gets(BIO_METHOD *biom,
|
||||
int (*gets) (BIO *, char *, int));
|
||||
int (*ossl_gets) (BIO *, char *, int));
|
||||
long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *);
|
||||
int BIO_meth_set_ctrl(BIO_METHOD *biom,
|
||||
long (*ctrl) (BIO *, int, long, void *));
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -68,6 +68,8 @@ extern "C" {
|
||||
# define BIO_TYPE_DGRAM_SCTP (24|BIO_TYPE_SOURCE_SINK|BIO_TYPE_DESCRIPTOR)
|
||||
# endif
|
||||
# define BIO_TYPE_CORE_TO_PROV (25|BIO_TYPE_SOURCE_SINK)
|
||||
# define BIO_TYPE_DGRAM_PAIR (26|BIO_TYPE_SOURCE_SINK)
|
||||
# define BIO_TYPE_DGRAM_MEM (27|BIO_TYPE_SOURCE_SINK)
|
||||
|
||||
#define BIO_TYPE_START 128
|
||||
|
||||
@ -172,6 +174,30 @@ extern "C" {
|
||||
# define BIO_CTRL_SET_INDENT 80
|
||||
# define BIO_CTRL_GET_INDENT 81
|
||||
|
||||
# define BIO_CTRL_DGRAM_GET_LOCAL_ADDR_CAP 82
|
||||
# define BIO_CTRL_DGRAM_GET_LOCAL_ADDR_ENABLE 83
|
||||
# define BIO_CTRL_DGRAM_SET_LOCAL_ADDR_ENABLE 84
|
||||
# define BIO_CTRL_DGRAM_GET_EFFECTIVE_CAPS 85
|
||||
# define BIO_CTRL_DGRAM_GET_CAPS 86
|
||||
# define BIO_CTRL_DGRAM_SET_CAPS 87
|
||||
# define BIO_CTRL_DGRAM_GET_NO_TRUNC 88
|
||||
# define BIO_CTRL_DGRAM_SET_NO_TRUNC 89
|
||||
|
||||
/*
|
||||
* internal BIO:
|
||||
* # define BIO_CTRL_SET_KTLS_TX_ZEROCOPY_SENDFILE 90
|
||||
*/
|
||||
|
||||
# define BIO_CTRL_GET_RPOLL_DESCRIPTOR 91
|
||||
# define BIO_CTRL_GET_WPOLL_DESCRIPTOR 92
|
||||
# define BIO_CTRL_DGRAM_DETECT_PEER_ADDR 93
|
||||
|
||||
# define BIO_DGRAM_CAP_NONE 0U
|
||||
# define BIO_DGRAM_CAP_HANDLES_SRC_ADDR (1U << 0)
|
||||
# define BIO_DGRAM_CAP_HANDLES_DST_ADDR (1U << 1)
|
||||
# define BIO_DGRAM_CAP_PROVIDES_SRC_ADDR (1U << 2)
|
||||
# define BIO_DGRAM_CAP_PROVIDES_DST_ADDR (1U << 3)
|
||||
|
||||
# ifndef OPENSSL_NO_KTLS
|
||||
# define BIO_get_ktls_send(b) \
|
||||
(BIO_ctrl(b, BIO_CTRL_GET_KTLS_SEND, 0, NULL) > 0)
|
||||
@ -209,7 +235,7 @@ extern "C" {
|
||||
# define BIO_FLAGS_NONCLEAR_RST 0x400
|
||||
# define BIO_FLAGS_IN_EOF 0x800
|
||||
|
||||
/* the BIO FLAGS values 0x1000 to 0x4000 are reserved for internal KTLS flags */
|
||||
/* the BIO FLAGS values 0x1000 to 0x8000 are reserved for internal KTLS flags */
|
||||
|
||||
typedef union bio_addr_st BIO_ADDR;
|
||||
typedef struct bio_addrinfo_st BIO_ADDRINFO;
|
||||
@ -257,12 +283,14 @@ void BIO_clear_flags(BIO *b, int flags);
|
||||
# define BIO_RR_ACCEPT 0x03
|
||||
|
||||
/* These are passed by the BIO callback */
|
||||
# define BIO_CB_FREE 0x01
|
||||
# define BIO_CB_READ 0x02
|
||||
# define BIO_CB_WRITE 0x03
|
||||
# define BIO_CB_PUTS 0x04
|
||||
# define BIO_CB_GETS 0x05
|
||||
# define BIO_CB_CTRL 0x06
|
||||
# define BIO_CB_FREE 0x01
|
||||
# define BIO_CB_READ 0x02
|
||||
# define BIO_CB_WRITE 0x03
|
||||
# define BIO_CB_PUTS 0x04
|
||||
# define BIO_CB_GETS 0x05
|
||||
# define BIO_CB_CTRL 0x06
|
||||
# define BIO_CB_RECVMMSG 0x07
|
||||
# define BIO_CB_SENDMMSG 0x08
|
||||
|
||||
/*
|
||||
* The callback is called before and after the underling operation, The
|
||||
@ -339,6 +367,34 @@ struct bio_dgram_sctp_prinfo {
|
||||
};
|
||||
# endif
|
||||
|
||||
/* BIO_sendmmsg/BIO_recvmmsg-related definitions */
|
||||
typedef struct bio_msg_st {
|
||||
void *data;
|
||||
size_t data_len;
|
||||
BIO_ADDR *peer, *local;
|
||||
uint64_t flags;
|
||||
} BIO_MSG;
|
||||
|
||||
typedef struct bio_mmsg_cb_args_st {
|
||||
BIO_MSG *msg;
|
||||
size_t stride, num_msg;
|
||||
uint64_t flags;
|
||||
size_t *msgs_processed;
|
||||
} BIO_MMSG_CB_ARGS;
|
||||
|
||||
#define BIO_POLL_DESCRIPTOR_TYPE_NONE 0
|
||||
#define BIO_POLL_DESCRIPTOR_TYPE_SOCK_FD 1
|
||||
#define BIO_POLL_DESCRIPTOR_CUSTOM_START 8192
|
||||
|
||||
typedef struct bio_poll_descriptor_st {
|
||||
uint32_t type;
|
||||
union {
|
||||
int fd;
|
||||
void *custom;
|
||||
uintptr_t custom_ui;
|
||||
} value;
|
||||
} BIO_POLL_DESCRIPTOR;
|
||||
|
||||
/*
|
||||
* #define BIO_CONN_get_param_hostname BIO_ctrl
|
||||
*/
|
||||
@ -405,10 +461,17 @@ struct bio_dgram_sctp_prinfo {
|
||||
|
||||
# define BIO_C_SET_CONNECT_MODE 155
|
||||
|
||||
# define BIO_C_SET_TFO 156 /* like BIO_C_SET_NBIO */
|
||||
|
||||
# define BIO_C_SET_SOCK_TYPE 157
|
||||
# define BIO_C_GET_SOCK_TYPE 158
|
||||
# define BIO_C_GET_DGRAM_BIO 159
|
||||
|
||||
# define BIO_set_app_data(s,arg) BIO_set_ex_data(s,0,arg)
|
||||
# define BIO_get_app_data(s) BIO_get_ex_data(s,0)
|
||||
|
||||
# define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL)
|
||||
# define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL)
|
||||
# define BIO_set_tfo(b,n) BIO_ctrl(b,BIO_C_SET_TFO,(n),NULL)
|
||||
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
/* IP families we support, for BIO_s_connect() and BIO_s_accept() */
|
||||
@ -429,7 +492,11 @@ struct bio_dgram_sctp_prinfo {
|
||||
# define BIO_get_conn_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,1))
|
||||
# define BIO_get_conn_address(b) ((const BIO_ADDR *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,2))
|
||||
# define BIO_get_conn_ip_family(b) BIO_ctrl(b,BIO_C_GET_CONNECT,3,NULL)
|
||||
# define BIO_get_conn_mode(b) BIO_ctrl(b,BIO_C_GET_CONNECT,4,NULL)
|
||||
# define BIO_set_conn_mode(b,n) BIO_ctrl(b,BIO_C_SET_CONNECT_MODE,(n),NULL)
|
||||
# define BIO_set_sock_type(b,t) BIO_ctrl(b,BIO_C_SET_SOCK_TYPE,(t),NULL)
|
||||
# define BIO_get_sock_type(b) BIO_ctrl(b,BIO_C_GET_SOCK_TYPE,0,NULL)
|
||||
# define BIO_get0_dgram_bio(b, p) BIO_ctrl(b,BIO_C_GET_DGRAM_BIO,0,(void *)(BIO **)(p))
|
||||
|
||||
/* BIO_s_accept() */
|
||||
# define BIO_set_accept_name(b,name) BIO_ctrl(b,BIO_C_SET_ACCEPT,0, \
|
||||
@ -446,6 +513,7 @@ struct bio_dgram_sctp_prinfo {
|
||||
(char *)(bio))
|
||||
# define BIO_set_accept_ip_family(b,f) BIO_int_ctrl(b,BIO_C_SET_ACCEPT,4,f)
|
||||
# define BIO_get_accept_ip_family(b) BIO_ctrl(b,BIO_C_GET_ACCEPT,4,NULL)
|
||||
# define BIO_set_tfo_accept(b,n) BIO_ctrl(b,BIO_C_SET_ACCEPT,5,(n)?(void *)"a":NULL)
|
||||
|
||||
/* Aliases kept for backward compatibility */
|
||||
# define BIO_BIND_NORMAL 0
|
||||
@ -573,8 +641,30 @@ int BIO_ctrl_reset_read_request(BIO *b);
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_PEER, 0, (char *)(peer))
|
||||
# define BIO_dgram_set_peer(b,peer) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, (char *)(peer))
|
||||
# define BIO_dgram_detect_peer_addr(b,peer) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_DETECT_PEER_ADDR, 0, (char *)(peer))
|
||||
# define BIO_dgram_get_mtu_overhead(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU_OVERHEAD, 0, NULL)
|
||||
# define BIO_dgram_get_local_addr_cap(b) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_LOCAL_ADDR_CAP, 0, NULL)
|
||||
# define BIO_dgram_get_local_addr_enable(b, penable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_LOCAL_ADDR_ENABLE, 0, (char *)(penable))
|
||||
# define BIO_dgram_set_local_addr_enable(b, enable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_LOCAL_ADDR_ENABLE, (enable), NULL)
|
||||
# define BIO_dgram_get_effective_caps(b) \
|
||||
(uint32_t)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_EFFECTIVE_CAPS, 0, NULL)
|
||||
# define BIO_dgram_get_caps(b) \
|
||||
(uint32_t)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_CAPS, 0, NULL)
|
||||
# define BIO_dgram_set_caps(b, caps) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_CAPS, (long)(caps), NULL)
|
||||
# define BIO_dgram_get_no_trunc(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_NO_TRUNC, 0, NULL)
|
||||
# define BIO_dgram_set_no_trunc(b, enable) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_NO_TRUNC, (enable), NULL)
|
||||
# define BIO_dgram_get_mtu(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU, 0, NULL)
|
||||
# define BIO_dgram_set_mtu(b, mtu) \
|
||||
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_MTU, (mtu), NULL)
|
||||
|
||||
/* ctrl macros for BIO_f_prefix */
|
||||
# define BIO_set_prefix(b,p) BIO_ctrl((b), BIO_CTRL_SET_PREFIX, 0, (void *)(p))
|
||||
@ -617,10 +707,18 @@ void BIO_vfree(BIO *a);
|
||||
int BIO_up_ref(BIO *a);
|
||||
int BIO_read(BIO *b, void *data, int dlen);
|
||||
int BIO_read_ex(BIO *b, void *data, size_t dlen, size_t *readbytes);
|
||||
__owur int BIO_recvmmsg(BIO *b, BIO_MSG *msg,
|
||||
size_t stride, size_t num_msg, uint64_t flags,
|
||||
size_t *msgs_processed);
|
||||
int BIO_gets(BIO *bp, char *buf, int size);
|
||||
int BIO_get_line(BIO *bio, char *buf, int size);
|
||||
int BIO_write(BIO *b, const void *data, int dlen);
|
||||
int BIO_write_ex(BIO *b, const void *data, size_t dlen, size_t *written);
|
||||
__owur int BIO_sendmmsg(BIO *b, BIO_MSG *msg,
|
||||
size_t stride, size_t num_msg, uint64_t flags,
|
||||
size_t *msgs_processed);
|
||||
__owur int BIO_get_rpoll_descriptor(BIO *b, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int BIO_get_wpoll_descriptor(BIO *b, BIO_POLL_DESCRIPTOR *desc);
|
||||
int BIO_puts(BIO *bp, const char *buf);
|
||||
int BIO_indent(BIO *b, int indent, int max);
|
||||
long BIO_ctrl(BIO *bp, int cmd, long larg, void *parg);
|
||||
@ -644,6 +742,9 @@ int BIO_nwrite0(BIO *bio, char **buf);
|
||||
int BIO_nwrite(BIO *bio, char **buf, int num);
|
||||
|
||||
const BIO_METHOD *BIO_s_mem(void);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
const BIO_METHOD *BIO_s_dgram_mem(void);
|
||||
# endif
|
||||
const BIO_METHOD *BIO_s_secmem(void);
|
||||
BIO *BIO_new_mem_buf(const void *buf, int len);
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
@ -663,6 +764,7 @@ const BIO_METHOD *BIO_f_nbio_test(void);
|
||||
const BIO_METHOD *BIO_f_prefix(void);
|
||||
const BIO_METHOD *BIO_s_core(void);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
const BIO_METHOD *BIO_s_dgram_pair(void);
|
||||
const BIO_METHOD *BIO_s_datagram(void);
|
||||
int BIO_dgram_non_fatal_error(int error);
|
||||
BIO *BIO_new_dgram(int fd, int close_flag);
|
||||
@ -681,6 +783,7 @@ int BIO_dgram_sctp_msg_waiting(BIO *b);
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
int BIO_sock_should_retry(int i);
|
||||
int BIO_sock_non_fatal_error(int error);
|
||||
int BIO_err_is_non_fatal(unsigned int errcode);
|
||||
int BIO_socket_wait(int fd, int for_read, time_t max_time);
|
||||
# endif
|
||||
int BIO_wait(BIO *bio, time_t max_time, unsigned int nap_milliseconds);
|
||||
@ -703,6 +806,8 @@ int BIO_hex_string(BIO *out, int indent, int width, const void *data,
|
||||
|
||||
# ifndef OPENSSL_NO_SOCK
|
||||
BIO_ADDR *BIO_ADDR_new(void);
|
||||
int BIO_ADDR_copy(BIO_ADDR *dst, const BIO_ADDR *src);
|
||||
BIO_ADDR *BIO_ADDR_dup(const BIO_ADDR *ap);
|
||||
int BIO_ADDR_rawmake(BIO_ADDR *ap, int family,
|
||||
const void *where, size_t wherelen, unsigned short port);
|
||||
void BIO_ADDR_free(BIO_ADDR *);
|
||||
@ -765,6 +870,7 @@ int BIO_sock_info(int sock,
|
||||
# define BIO_SOCK_KEEPALIVE 0x04
|
||||
# define BIO_SOCK_NONBLOCK 0x08
|
||||
# define BIO_SOCK_NODELAY 0x10
|
||||
# define BIO_SOCK_TFO 0x20
|
||||
|
||||
int BIO_socket(int domain, int socktype, int protocol, int options);
|
||||
int BIO_connect(int sock, const BIO_ADDR *addr, int options);
|
||||
@ -782,6 +888,11 @@ BIO *BIO_new_fd(int fd, int close_flag);
|
||||
|
||||
int BIO_new_bio_pair(BIO **bio1, size_t writebuf1,
|
||||
BIO **bio2, size_t writebuf2);
|
||||
# ifndef OPENSSL_NO_DGRAM
|
||||
int BIO_new_bio_dgram_pair(BIO **bio1, size_t writebuf1,
|
||||
BIO **bio2, size_t writebuf2);
|
||||
# endif
|
||||
|
||||
/*
|
||||
* If successful, returns 1 and in *bio1, *bio2 two BIO pair endpoints.
|
||||
* Otherwise returns 0 and sets *bio1 and *bio2 to NULL. Size 0 uses default
|
||||
@ -833,18 +944,30 @@ int BIO_meth_set_write(BIO_METHOD *biom,
|
||||
int (*write) (BIO *, const char *, int));
|
||||
int BIO_meth_set_write_ex(BIO_METHOD *biom,
|
||||
int (*bwrite) (BIO *, const char *, size_t, size_t *));
|
||||
int BIO_meth_set_sendmmsg(BIO_METHOD *biom,
|
||||
int (*f) (BIO *, BIO_MSG *, size_t, size_t,
|
||||
uint64_t, size_t *));
|
||||
int (*BIO_meth_get_sendmmsg(const BIO_METHOD *biom))(BIO *, BIO_MSG *,
|
||||
size_t, size_t,
|
||||
uint64_t, size_t *);
|
||||
int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int);
|
||||
int (*BIO_meth_get_read_ex(const BIO_METHOD *biom)) (BIO *, char *, size_t, size_t *);
|
||||
int BIO_meth_set_read(BIO_METHOD *biom,
|
||||
int (*read) (BIO *, char *, int));
|
||||
int BIO_meth_set_read_ex(BIO_METHOD *biom,
|
||||
int (*bread) (BIO *, char *, size_t, size_t *));
|
||||
int BIO_meth_set_recvmmsg(BIO_METHOD *biom,
|
||||
int (*f) (BIO *, BIO_MSG *, size_t, size_t,
|
||||
uint64_t, size_t *));
|
||||
int (*BIO_meth_get_recvmmsg(const BIO_METHOD *biom))(BIO *, BIO_MSG *,
|
||||
size_t, size_t,
|
||||
uint64_t, size_t *);
|
||||
int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *);
|
||||
int BIO_meth_set_puts(BIO_METHOD *biom,
|
||||
int (*puts) (BIO *, const char *));
|
||||
int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int);
|
||||
int BIO_meth_set_gets(BIO_METHOD *biom,
|
||||
int (*gets) (BIO *, char *, int));
|
||||
int (*ossl_gets) (BIO *, char *, int));
|
||||
long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *);
|
||||
int BIO_meth_set_ctrl(BIO_METHOD *biom,
|
||||
long (*ctrl) (BIO *, int, long, void *));
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -37,14 +37,18 @@
|
||||
# define BIO_R_IN_USE 123
|
||||
# define BIO_R_LENGTH_TOO_LONG 102
|
||||
# define BIO_R_LISTEN_V6_ONLY 136
|
||||
# define BIO_R_LOCAL_ADDR_NOT_AVAILABLE 111
|
||||
# define BIO_R_LOOKUP_RETURNED_NOTHING 142
|
||||
# define BIO_R_MALFORMED_HOST_OR_SERVICE 130
|
||||
# define BIO_R_NBIO_CONNECT_ERROR 110
|
||||
# define BIO_R_NON_FATAL 112
|
||||
# define BIO_R_NO_ACCEPT_ADDR_OR_SERVICE_SPECIFIED 143
|
||||
# define BIO_R_NO_HOSTNAME_OR_SERVICE_SPECIFIED 144
|
||||
# define BIO_R_NO_PORT_DEFINED 113
|
||||
# define BIO_R_NO_SUCH_FILE 128
|
||||
# define BIO_R_NULL_PARAMETER 115 /* unused */
|
||||
# define BIO_R_TFO_DISABLED 106
|
||||
# define BIO_R_TFO_NO_KERNEL_SUPPORT 108
|
||||
# define BIO_R_TRANSFER_ERROR 104
|
||||
# define BIO_R_TRANSFER_TIMEOUT 105
|
||||
# define BIO_R_UNABLE_TO_BIND_SOCKET 117
|
||||
@ -53,6 +57,7 @@
|
||||
# define BIO_R_UNABLE_TO_LISTEN_SOCKET 119
|
||||
# define BIO_R_UNABLE_TO_NODELAY 138
|
||||
# define BIO_R_UNABLE_TO_REUSEADDR 139
|
||||
# define BIO_R_UNABLE_TO_TFO 109
|
||||
# define BIO_R_UNAVAILABLE_IP_FAMILY 145
|
||||
# define BIO_R_UNINITIALIZED 120
|
||||
# define BIO_R_UNKNOWN_INFO_TYPE 140
|
||||
@ -61,5 +66,7 @@
|
||||
# define BIO_R_UNSUPPORTED_PROTOCOL_FAMILY 131
|
||||
# define BIO_R_WRITE_TO_READ_ONLY_BIO 126
|
||||
# define BIO_R_WSASTARTUP 122
|
||||
# define BIO_R_PORT_MISMATCH 150
|
||||
# define BIO_R_PEER_ADDR_NOT_AVAILABLE 151
|
||||
|
||||
#endif
|
||||
|
@ -241,12 +241,18 @@ void BN_clear_free(BIGNUM *a);
|
||||
BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b);
|
||||
void BN_swap(BIGNUM *a, BIGNUM *b);
|
||||
BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
BIGNUM *BN_signed_bin2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
int BN_bn2bin(const BIGNUM *a, unsigned char *to);
|
||||
int BN_bn2binpad(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
int BN_signed_bn2bin(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
BIGNUM *BN_lebin2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
BIGNUM *BN_signed_lebin2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
int BN_bn2lebinpad(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
int BN_signed_bn2lebin(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
BIGNUM *BN_native2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
BIGNUM *BN_signed_native2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
int BN_bn2nativepad(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
int BN_signed_bn2native(const BIGNUM *a, unsigned char *to, int tolen);
|
||||
BIGNUM *BN_mpi2bn(const unsigned char *s, int len, BIGNUM *ret);
|
||||
int BN_bn2mpi(const BIGNUM *a, unsigned char *to);
|
||||
int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b);
|
||||
|
@ -35,7 +35,9 @@
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
# define OSSL_CMP_PVNO 2
|
||||
# define OSSL_CMP_PVNO_2 2
|
||||
# define OSSL_CMP_PVNO_3 3
|
||||
# define OSSL_CMP_PVNO OSSL_CMP_PVNO_2 /* v2 is the default */
|
||||
|
||||
/*-
|
||||
* PKIFailureInfo ::= BIT STRING {
|
||||
@ -137,7 +139,6 @@ extern "C" {
|
||||
# if OSSL_CMP_PKIFAILUREINFO_MAX_BIT_PATTERN > INT_MAX
|
||||
# error CMP_PKIFAILUREINFO_MAX bit pattern does not fit in type int
|
||||
# endif
|
||||
|
||||
typedef ASN1_BIT_STRING OSSL_CMP_PKIFAILUREINFO;
|
||||
|
||||
# define OSSL_CMP_CTX_FAILINFO_badAlg (1 << 0)
|
||||
@ -203,8 +204,8 @@ typedef ASN1_BIT_STRING OSSL_CMP_PKIFAILUREINFO;
|
||||
# define OSSL_CMP_PKISTATUS_revocationWarning 4
|
||||
# define OSSL_CMP_PKISTATUS_revocationNotification 5
|
||||
# define OSSL_CMP_PKISTATUS_keyUpdateWarning 6
|
||||
|
||||
typedef ASN1_INTEGER OSSL_CMP_PKISTATUS;
|
||||
|
||||
DECLARE_ASN1_ITEM(OSSL_CMP_PKISTATUS)
|
||||
|
||||
# define OSSL_CMP_CERTORENCCERT_CERTIFICATE 0
|
||||
@ -378,18 +379,35 @@ ASN1_TYPE *OSSL_CMP_ITAV_get0_value(const OSSL_CMP_ITAV *itav);
|
||||
int OSSL_CMP_ITAV_push0_stack_item(STACK_OF(OSSL_CMP_ITAV) **itav_sk_p,
|
||||
OSSL_CMP_ITAV *itav);
|
||||
void OSSL_CMP_ITAV_free(OSSL_CMP_ITAV *itav);
|
||||
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_caCerts(const STACK_OF(X509) *caCerts);
|
||||
int OSSL_CMP_ITAV_get0_caCerts(const OSSL_CMP_ITAV *itav, STACK_OF(X509) **out);
|
||||
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_rootCaCert(const X509 *rootCaCert);
|
||||
int OSSL_CMP_ITAV_get0_rootCaCert(const OSSL_CMP_ITAV *itav, X509 **out);
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_rootCaKeyUpdate(const X509 *newWithNew,
|
||||
const X509 *newWithOld,
|
||||
const X509 *oldWithNew);
|
||||
int OSSL_CMP_ITAV_get0_rootCaKeyUpdate(const OSSL_CMP_ITAV *itav,
|
||||
X509 **newWithNew,
|
||||
X509 **newWithOld,
|
||||
X509 **oldWithNew);
|
||||
|
||||
void OSSL_CMP_MSG_free(OSSL_CMP_MSG *msg);
|
||||
|
||||
/* from cmp_ctx.c */
|
||||
OSSL_CMP_CTX *OSSL_CMP_CTX_new(OSSL_LIB_CTX *libctx, const char *propq);
|
||||
void OSSL_CMP_CTX_free(OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_reinit(OSSL_CMP_CTX *ctx);
|
||||
OSSL_LIB_CTX *OSSL_CMP_CTX_get0_libctx(const OSSL_CMP_CTX *ctx);
|
||||
const char *OSSL_CMP_CTX_get0_propq(const OSSL_CMP_CTX *ctx);
|
||||
/* CMP general options: */
|
||||
# define OSSL_CMP_OPT_LOG_VERBOSITY 0
|
||||
/* CMP transfer options: */
|
||||
# define OSSL_CMP_OPT_KEEP_ALIVE 10
|
||||
# define OSSL_CMP_OPT_MSG_TIMEOUT 11
|
||||
# define OSSL_CMP_OPT_KEEP_ALIVE 10
|
||||
# define OSSL_CMP_OPT_MSG_TIMEOUT 11
|
||||
# define OSSL_CMP_OPT_TOTAL_TIMEOUT 12
|
||||
# define OSSL_CMP_OPT_USE_TLS 13
|
||||
/* CMP request options: */
|
||||
# define OSSL_CMP_OPT_VALIDITY_DAYS 20
|
||||
# define OSSL_CMP_OPT_SUBJECTALTNAME_NODEFAULT 21
|
||||
@ -420,9 +438,11 @@ int OSSL_CMP_CTX_set1_server(OSSL_CMP_CTX *ctx, const char *address);
|
||||
int OSSL_CMP_CTX_set_serverPort(OSSL_CMP_CTX *ctx, int port);
|
||||
int OSSL_CMP_CTX_set1_proxy(OSSL_CMP_CTX *ctx, const char *name);
|
||||
int OSSL_CMP_CTX_set1_no_proxy(OSSL_CMP_CTX *ctx, const char *names);
|
||||
# ifndef OPENSSL_NO_HTTP
|
||||
int OSSL_CMP_CTX_set_http_cb(OSSL_CMP_CTX *ctx, OSSL_HTTP_bio_cb_t cb);
|
||||
int OSSL_CMP_CTX_set_http_cb_arg(OSSL_CMP_CTX *ctx, void *arg);
|
||||
void *OSSL_CMP_CTX_get_http_cb_arg(const OSSL_CMP_CTX *ctx);
|
||||
# endif
|
||||
typedef OSSL_CMP_MSG *(*OSSL_CMP_transfer_cb_t) (OSSL_CMP_CTX *ctx,
|
||||
const OSSL_CMP_MSG *req);
|
||||
int OSSL_CMP_CTX_set_transfer_cb(OSSL_CMP_CTX *ctx, OSSL_CMP_transfer_cb_t cb);
|
||||
@ -432,7 +452,9 @@ void *OSSL_CMP_CTX_get_transfer_cb_arg(const OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_set1_srvCert(OSSL_CMP_CTX *ctx, X509 *cert);
|
||||
int OSSL_CMP_CTX_set1_expected_sender(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_set0_trustedStore(OSSL_CMP_CTX *ctx, X509_STORE *store);
|
||||
# define OSSL_CMP_CTX_set0_trusted OSSL_CMP_CTX_set0_trustedStore
|
||||
X509_STORE *OSSL_CMP_CTX_get0_trustedStore(const OSSL_CMP_CTX *ctx);
|
||||
# define OSSL_CMP_CTX_get0_trusted OSSL_CMP_CTX_get0_trustedStore
|
||||
int OSSL_CMP_CTX_set1_untrusted(OSSL_CMP_CTX *ctx, STACK_OF(X509) *certs);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get0_untrusted(const OSSL_CMP_CTX *ctx);
|
||||
/* client authentication: */
|
||||
@ -454,6 +476,7 @@ int OSSL_CMP_CTX_set1_extraCertsOut(OSSL_CMP_CTX *ctx,
|
||||
int OSSL_CMP_CTX_set0_newPkey(OSSL_CMP_CTX *ctx, int priv, EVP_PKEY *pkey);
|
||||
EVP_PKEY *OSSL_CMP_CTX_get0_newPkey(const OSSL_CMP_CTX *ctx, int priv);
|
||||
int OSSL_CMP_CTX_set1_issuer(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_set1_serialNumber(OSSL_CMP_CTX *ctx, const ASN1_INTEGER *sn);
|
||||
int OSSL_CMP_CTX_set1_subjectName(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_push1_subjectAltName(OSSL_CMP_CTX *ctx,
|
||||
const GENERAL_NAME *name);
|
||||
@ -477,6 +500,7 @@ int OSSL_CMP_CTX_get_status(const OSSL_CMP_CTX *ctx);
|
||||
OSSL_CMP_PKIFREETEXT *OSSL_CMP_CTX_get0_statusString(const OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_get_failInfoCode(const OSSL_CMP_CTX *ctx);
|
||||
# define OSSL_CMP_PKISI_BUFLEN 1024
|
||||
X509 *OSSL_CMP_CTX_get0_validatedSrvCert(const OSSL_CMP_CTX *ctx);
|
||||
X509 *OSSL_CMP_CTX_get0_newCert(const OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get1_newChain(const OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get1_caPubs(const OSSL_CMP_CTX *ctx);
|
||||
@ -517,8 +541,10 @@ int OSSL_CMP_validate_cert_path(const OSSL_CMP_CTX *ctx,
|
||||
X509_STORE *trusted_store, X509 *cert);
|
||||
|
||||
/* from cmp_http.c */
|
||||
# ifndef OPENSSL_NO_HTTP
|
||||
OSSL_CMP_MSG *OSSL_CMP_MSG_http_perform(OSSL_CMP_CTX *ctx,
|
||||
const OSSL_CMP_MSG *req);
|
||||
# endif
|
||||
|
||||
/* from cmp_server.c */
|
||||
typedef struct ossl_cmp_srv_ctx_st OSSL_CMP_SRV_CTX;
|
||||
@ -590,6 +616,12 @@ int OSSL_CMP_try_certreq(OSSL_CMP_CTX *ctx, int req_type,
|
||||
int OSSL_CMP_exec_RR_ses(OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(OSSL_CMP_ITAV) *OSSL_CMP_exec_GENM_ses(OSSL_CMP_CTX *ctx);
|
||||
|
||||
/* from cmp_genm.c */
|
||||
int OSSL_CMP_get1_caCerts(OSSL_CMP_CTX *ctx, STACK_OF(X509) **out);
|
||||
int OSSL_CMP_get1_rootCaKeyUpdate(OSSL_CMP_CTX *ctx,
|
||||
const X509 *oldWithOld, X509 **newWithNew,
|
||||
X509 **newWithOld, X509 **oldWithNew);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -36,7 +36,9 @@ use OpenSSL::stackhash qw(generate_stack_macros);
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
# define OSSL_CMP_PVNO 2
|
||||
# define OSSL_CMP_PVNO_2 2
|
||||
# define OSSL_CMP_PVNO_3 3
|
||||
# define OSSL_CMP_PVNO OSSL_CMP_PVNO_2 /* v2 is the default */
|
||||
|
||||
/*-
|
||||
* PKIFailureInfo ::= BIT STRING {
|
||||
@ -138,7 +140,6 @@ extern "C" {
|
||||
# if OSSL_CMP_PKIFAILUREINFO_MAX_BIT_PATTERN > INT_MAX
|
||||
# error CMP_PKIFAILUREINFO_MAX bit pattern does not fit in type int
|
||||
# endif
|
||||
|
||||
typedef ASN1_BIT_STRING OSSL_CMP_PKIFAILUREINFO;
|
||||
|
||||
# define OSSL_CMP_CTX_FAILINFO_badAlg (1 << 0)
|
||||
@ -204,8 +205,8 @@ typedef ASN1_BIT_STRING OSSL_CMP_PKIFAILUREINFO;
|
||||
# define OSSL_CMP_PKISTATUS_revocationWarning 4
|
||||
# define OSSL_CMP_PKISTATUS_revocationNotification 5
|
||||
# define OSSL_CMP_PKISTATUS_keyUpdateWarning 6
|
||||
|
||||
typedef ASN1_INTEGER OSSL_CMP_PKISTATUS;
|
||||
|
||||
DECLARE_ASN1_ITEM(OSSL_CMP_PKISTATUS)
|
||||
|
||||
# define OSSL_CMP_CERTORENCCERT_CERTIFICATE 0
|
||||
@ -259,18 +260,35 @@ ASN1_TYPE *OSSL_CMP_ITAV_get0_value(const OSSL_CMP_ITAV *itav);
|
||||
int OSSL_CMP_ITAV_push0_stack_item(STACK_OF(OSSL_CMP_ITAV) **itav_sk_p,
|
||||
OSSL_CMP_ITAV *itav);
|
||||
void OSSL_CMP_ITAV_free(OSSL_CMP_ITAV *itav);
|
||||
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_caCerts(const STACK_OF(X509) *caCerts);
|
||||
int OSSL_CMP_ITAV_get0_caCerts(const OSSL_CMP_ITAV *itav, STACK_OF(X509) **out);
|
||||
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_rootCaCert(const X509 *rootCaCert);
|
||||
int OSSL_CMP_ITAV_get0_rootCaCert(const OSSL_CMP_ITAV *itav, X509 **out);
|
||||
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_rootCaKeyUpdate(const X509 *newWithNew,
|
||||
const X509 *newWithOld,
|
||||
const X509 *oldWithNew);
|
||||
int OSSL_CMP_ITAV_get0_rootCaKeyUpdate(const OSSL_CMP_ITAV *itav,
|
||||
X509 **newWithNew,
|
||||
X509 **newWithOld,
|
||||
X509 **oldWithNew);
|
||||
|
||||
void OSSL_CMP_MSG_free(OSSL_CMP_MSG *msg);
|
||||
|
||||
/* from cmp_ctx.c */
|
||||
OSSL_CMP_CTX *OSSL_CMP_CTX_new(OSSL_LIB_CTX *libctx, const char *propq);
|
||||
void OSSL_CMP_CTX_free(OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_reinit(OSSL_CMP_CTX *ctx);
|
||||
OSSL_LIB_CTX *OSSL_CMP_CTX_get0_libctx(const OSSL_CMP_CTX *ctx);
|
||||
const char *OSSL_CMP_CTX_get0_propq(const OSSL_CMP_CTX *ctx);
|
||||
/* CMP general options: */
|
||||
# define OSSL_CMP_OPT_LOG_VERBOSITY 0
|
||||
/* CMP transfer options: */
|
||||
# define OSSL_CMP_OPT_KEEP_ALIVE 10
|
||||
# define OSSL_CMP_OPT_MSG_TIMEOUT 11
|
||||
# define OSSL_CMP_OPT_KEEP_ALIVE 10
|
||||
# define OSSL_CMP_OPT_MSG_TIMEOUT 11
|
||||
# define OSSL_CMP_OPT_TOTAL_TIMEOUT 12
|
||||
# define OSSL_CMP_OPT_USE_TLS 13
|
||||
/* CMP request options: */
|
||||
# define OSSL_CMP_OPT_VALIDITY_DAYS 20
|
||||
# define OSSL_CMP_OPT_SUBJECTALTNAME_NODEFAULT 21
|
||||
@ -301,9 +319,11 @@ int OSSL_CMP_CTX_set1_server(OSSL_CMP_CTX *ctx, const char *address);
|
||||
int OSSL_CMP_CTX_set_serverPort(OSSL_CMP_CTX *ctx, int port);
|
||||
int OSSL_CMP_CTX_set1_proxy(OSSL_CMP_CTX *ctx, const char *name);
|
||||
int OSSL_CMP_CTX_set1_no_proxy(OSSL_CMP_CTX *ctx, const char *names);
|
||||
# ifndef OPENSSL_NO_HTTP
|
||||
int OSSL_CMP_CTX_set_http_cb(OSSL_CMP_CTX *ctx, OSSL_HTTP_bio_cb_t cb);
|
||||
int OSSL_CMP_CTX_set_http_cb_arg(OSSL_CMP_CTX *ctx, void *arg);
|
||||
void *OSSL_CMP_CTX_get_http_cb_arg(const OSSL_CMP_CTX *ctx);
|
||||
# endif
|
||||
typedef OSSL_CMP_MSG *(*OSSL_CMP_transfer_cb_t) (OSSL_CMP_CTX *ctx,
|
||||
const OSSL_CMP_MSG *req);
|
||||
int OSSL_CMP_CTX_set_transfer_cb(OSSL_CMP_CTX *ctx, OSSL_CMP_transfer_cb_t cb);
|
||||
@ -313,7 +333,9 @@ void *OSSL_CMP_CTX_get_transfer_cb_arg(const OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_set1_srvCert(OSSL_CMP_CTX *ctx, X509 *cert);
|
||||
int OSSL_CMP_CTX_set1_expected_sender(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_set0_trustedStore(OSSL_CMP_CTX *ctx, X509_STORE *store);
|
||||
# define OSSL_CMP_CTX_set0_trusted OSSL_CMP_CTX_set0_trustedStore
|
||||
X509_STORE *OSSL_CMP_CTX_get0_trustedStore(const OSSL_CMP_CTX *ctx);
|
||||
# define OSSL_CMP_CTX_get0_trusted OSSL_CMP_CTX_get0_trustedStore
|
||||
int OSSL_CMP_CTX_set1_untrusted(OSSL_CMP_CTX *ctx, STACK_OF(X509) *certs);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get0_untrusted(const OSSL_CMP_CTX *ctx);
|
||||
/* client authentication: */
|
||||
@ -335,6 +357,7 @@ int OSSL_CMP_CTX_set1_extraCertsOut(OSSL_CMP_CTX *ctx,
|
||||
int OSSL_CMP_CTX_set0_newPkey(OSSL_CMP_CTX *ctx, int priv, EVP_PKEY *pkey);
|
||||
EVP_PKEY *OSSL_CMP_CTX_get0_newPkey(const OSSL_CMP_CTX *ctx, int priv);
|
||||
int OSSL_CMP_CTX_set1_issuer(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_set1_serialNumber(OSSL_CMP_CTX *ctx, const ASN1_INTEGER *sn);
|
||||
int OSSL_CMP_CTX_set1_subjectName(OSSL_CMP_CTX *ctx, const X509_NAME *name);
|
||||
int OSSL_CMP_CTX_push1_subjectAltName(OSSL_CMP_CTX *ctx,
|
||||
const GENERAL_NAME *name);
|
||||
@ -358,6 +381,7 @@ int OSSL_CMP_CTX_get_status(const OSSL_CMP_CTX *ctx);
|
||||
OSSL_CMP_PKIFREETEXT *OSSL_CMP_CTX_get0_statusString(const OSSL_CMP_CTX *ctx);
|
||||
int OSSL_CMP_CTX_get_failInfoCode(const OSSL_CMP_CTX *ctx);
|
||||
# define OSSL_CMP_PKISI_BUFLEN 1024
|
||||
X509 *OSSL_CMP_CTX_get0_validatedSrvCert(const OSSL_CMP_CTX *ctx);
|
||||
X509 *OSSL_CMP_CTX_get0_newCert(const OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get1_newChain(const OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(X509) *OSSL_CMP_CTX_get1_caPubs(const OSSL_CMP_CTX *ctx);
|
||||
@ -398,8 +422,10 @@ int OSSL_CMP_validate_cert_path(const OSSL_CMP_CTX *ctx,
|
||||
X509_STORE *trusted_store, X509 *cert);
|
||||
|
||||
/* from cmp_http.c */
|
||||
# ifndef OPENSSL_NO_HTTP
|
||||
OSSL_CMP_MSG *OSSL_CMP_MSG_http_perform(OSSL_CMP_CTX *ctx,
|
||||
const OSSL_CMP_MSG *req);
|
||||
# endif
|
||||
|
||||
/* from cmp_server.c */
|
||||
typedef struct ossl_cmp_srv_ctx_st OSSL_CMP_SRV_CTX;
|
||||
@ -471,6 +497,12 @@ int OSSL_CMP_try_certreq(OSSL_CMP_CTX *ctx, int req_type,
|
||||
int OSSL_CMP_exec_RR_ses(OSSL_CMP_CTX *ctx);
|
||||
STACK_OF(OSSL_CMP_ITAV) *OSSL_CMP_exec_GENM_ses(OSSL_CMP_CTX *ctx);
|
||||
|
||||
/* from cmp_genm.c */
|
||||
int OSSL_CMP_get1_caCerts(OSSL_CMP_CTX *ctx, STACK_OF(X509) **out);
|
||||
int OSSL_CMP_get1_rootCaKeyUpdate(OSSL_CMP_CTX *ctx,
|
||||
const X509 *oldWithOld, X509 **newWithNew,
|
||||
X509 **newWithOld, X509 **oldWithNew);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -59,8 +59,11 @@
|
||||
# define CMP_R_FAILED_EXTRACTING_PUBKEY 141
|
||||
# define CMP_R_FAILURE_OBTAINING_RANDOM 110
|
||||
# define CMP_R_FAIL_INFO_OUT_OF_RANGE 129
|
||||
# define CMP_R_GETTING_GENP 192
|
||||
# define CMP_R_INVALID_ARGS 100
|
||||
# define CMP_R_INVALID_GENP 193
|
||||
# define CMP_R_INVALID_OPTION 174
|
||||
# define CMP_R_INVALID_ROOTCAKEYUPDATE 195
|
||||
# define CMP_R_MISSING_CERTID 165
|
||||
# define CMP_R_MISSING_KEY_INPUT_FOR_CREATING_PROTECTION 130
|
||||
# define CMP_R_MISSING_KEY_USAGE_DIGITALSIGNATURE 142
|
||||
@ -94,6 +97,7 @@
|
||||
# define CMP_R_TOTAL_TIMEOUT 184
|
||||
# define CMP_R_TRANSACTIONID_UNMATCHED 152
|
||||
# define CMP_R_TRANSFER_ERROR 159
|
||||
# define CMP_R_UNCLEAN_CTX 191
|
||||
# define CMP_R_UNEXPECTED_PKIBODY 133
|
||||
# define CMP_R_UNEXPECTED_PKISTATUS 185
|
||||
# define CMP_R_UNEXPECTED_PVNO 153
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/cms.h.in
|
||||
*
|
||||
* Copyright 2008-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2008-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -31,8 +31,10 @@
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
typedef struct CMS_EnvelopedData_st CMS_EnvelopedData;
|
||||
typedef struct CMS_ContentInfo_st CMS_ContentInfo;
|
||||
typedef struct CMS_SignerInfo_st CMS_SignerInfo;
|
||||
typedef struct CMS_SignedData_st CMS_SignedData;
|
||||
typedef struct CMS_CertificateChoices CMS_CertificateChoices;
|
||||
typedef struct CMS_RevocationInfoChoice_st CMS_RevocationInfoChoice;
|
||||
typedef struct CMS_RecipientInfo_st CMS_RecipientInfo;
|
||||
@ -147,6 +149,8 @@ SKM_DEFINE_STACK_OF_INTERNAL(CMS_RevocationInfoChoice, CMS_RevocationInfoChoice,
|
||||
#define sk_CMS_RevocationInfoChoice_set_cmp_func(sk, cmp) ((sk_CMS_RevocationInfoChoice_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_CMS_RevocationInfoChoice_sk_type(sk), ossl_check_CMS_RevocationInfoChoice_compfunc_type(cmp)))
|
||||
|
||||
|
||||
DECLARE_ASN1_ITEM(CMS_EnvelopedData)
|
||||
DECLARE_ASN1_ALLOC_FUNCTIONS(CMS_SignedData)
|
||||
DECLARE_ASN1_FUNCTIONS(CMS_ContentInfo)
|
||||
DECLARE_ASN1_FUNCTIONS(CMS_ReceiptRequest)
|
||||
DECLARE_ASN1_PRINT_FUNCTION(CMS_ContentInfo)
|
||||
@ -217,13 +221,16 @@ int SMIME_write_CMS(BIO *bio, CMS_ContentInfo *cms, BIO *data, int flags);
|
||||
|
||||
int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont,
|
||||
unsigned int flags);
|
||||
int CMS_final_digest(CMS_ContentInfo *cms,
|
||||
const unsigned char *md, unsigned int mdlen, BIO *dcont,
|
||||
unsigned int flags);
|
||||
|
||||
CMS_ContentInfo *CMS_sign(X509 *signcert, EVP_PKEY *pkey,
|
||||
STACK_OF(X509) *certs, BIO *data,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_sign_ex(X509 *signcert, EVP_PKEY *pkey,
|
||||
STACK_OF(X509) *certs, BIO *data,
|
||||
unsigned int flags, OSSL_LIB_CTX *ctx,
|
||||
unsigned int flags, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si,
|
||||
@ -233,27 +240,26 @@ CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si,
|
||||
int CMS_data(CMS_ContentInfo *cms, BIO *out, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_data_create(BIO *in, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_data_create_ex(BIO *in, unsigned int flags,
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
int CMS_digest_verify(CMS_ContentInfo *cms, BIO *dcont, BIO *out,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_digest_create(BIO *in, const EVP_MD *md,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_digest_create_ex(BIO *in, const EVP_MD *md,
|
||||
unsigned int flags, OSSL_LIB_CTX *ctx,
|
||||
unsigned int flags, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
int CMS_EncryptedData_decrypt(CMS_ContentInfo *cms,
|
||||
const unsigned char *key, size_t keylen,
|
||||
BIO *dcont, BIO *out, unsigned int flags);
|
||||
|
||||
CMS_ContentInfo *CMS_EncryptedData_encrypt(BIO *in, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
size_t keylen, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_EncryptedData_encrypt_ex(BIO *in, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
size_t keylen, unsigned int flags,
|
||||
OSSL_LIB_CTX *ctx,
|
||||
OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
int CMS_EncryptedData_set1_key(CMS_ContentInfo *cms, const EVP_CIPHER *ciph,
|
||||
@ -272,7 +278,7 @@ CMS_ContentInfo *CMS_encrypt(STACK_OF(X509) *certs, BIO *in,
|
||||
const EVP_CIPHER *cipher, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_encrypt_ex(STACK_OF(X509) *certs, BIO *in,
|
||||
const EVP_CIPHER *cipher, unsigned int flags,
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
int CMS_decrypt(CMS_ContentInfo *cms, EVP_PKEY *pkey, X509 *cert,
|
||||
BIO *dcont, BIO *out, unsigned int flags);
|
||||
@ -291,12 +297,16 @@ int CMS_RecipientInfo_type(CMS_RecipientInfo *ri);
|
||||
EVP_PKEY_CTX *CMS_RecipientInfo_get0_pkey_ctx(CMS_RecipientInfo *ri);
|
||||
CMS_ContentInfo *CMS_AuthEnvelopedData_create(const EVP_CIPHER *cipher);
|
||||
CMS_ContentInfo *
|
||||
CMS_AuthEnvelopedData_create_ex(const EVP_CIPHER *cipher, OSSL_LIB_CTX *ctx,
|
||||
CMS_AuthEnvelopedData_create_ex(const EVP_CIPHER *cipher, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
CMS_ContentInfo *CMS_EnvelopedData_create(const EVP_CIPHER *cipher);
|
||||
CMS_ContentInfo *CMS_EnvelopedData_create_ex(const EVP_CIPHER *cipher,
|
||||
OSSL_LIB_CTX *ctx,
|
||||
OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
BIO *CMS_EnvelopedData_decrypt(CMS_EnvelopedData *env, BIO *detached_data,
|
||||
EVP_PKEY *pkey, X509 *cert,
|
||||
ASN1_OCTET_STRING *secret, unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
CMS_RecipientInfo *CMS_add1_recipient_cert(CMS_ContentInfo *cms,
|
||||
X509 *recip, unsigned int flags);
|
||||
@ -385,6 +395,11 @@ ASN1_OCTET_STRING *CMS_SignerInfo_get0_signature(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_sign(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_verify(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_verify_content(CMS_SignerInfo *si, BIO *chain);
|
||||
BIO *CMS_SignedData_verify(CMS_SignedData *sd, BIO *detached_data,
|
||||
STACK_OF(X509) *scerts, X509_STORE *store,
|
||||
STACK_OF(X509) *extra, STACK_OF(X509_CRL) *crls,
|
||||
unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
int CMS_add_smimecap(CMS_SignerInfo *si, STACK_OF(X509_ALGOR) *algs);
|
||||
int CMS_add_simple_smimecap(STACK_OF(X509_ALGOR) **algs,
|
||||
@ -441,7 +456,7 @@ CMS_ReceiptRequest *CMS_ReceiptRequest_create0_ex(
|
||||
unsigned char *id, int idlen, int allorfirst,
|
||||
STACK_OF(GENERAL_NAMES) *receiptList,
|
||||
STACK_OF(GENERAL_NAMES) *receiptsTo,
|
||||
OSSL_LIB_CTX *ctx);
|
||||
OSSL_LIB_CTX *libctx);
|
||||
|
||||
int CMS_add1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest *rr);
|
||||
void CMS_ReceiptRequest_get0_values(CMS_ReceiptRequest *rr,
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 2008-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2008-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -32,8 +32,10 @@ use OpenSSL::stackhash qw(generate_stack_macros);
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
typedef struct CMS_EnvelopedData_st CMS_EnvelopedData;
|
||||
typedef struct CMS_ContentInfo_st CMS_ContentInfo;
|
||||
typedef struct CMS_SignerInfo_st CMS_SignerInfo;
|
||||
typedef struct CMS_SignedData_st CMS_SignedData;
|
||||
typedef struct CMS_CertificateChoices CMS_CertificateChoices;
|
||||
typedef struct CMS_RevocationInfoChoice_st CMS_RevocationInfoChoice;
|
||||
typedef struct CMS_RecipientInfo_st CMS_RecipientInfo;
|
||||
@ -49,6 +51,8 @@ typedef struct CMS_OtherKeyAttribute_st CMS_OtherKeyAttribute;
|
||||
.generate_stack_macros("CMS_RevocationInfoChoice");
|
||||
-}
|
||||
|
||||
DECLARE_ASN1_ITEM(CMS_EnvelopedData)
|
||||
DECLARE_ASN1_ALLOC_FUNCTIONS(CMS_SignedData)
|
||||
DECLARE_ASN1_FUNCTIONS(CMS_ContentInfo)
|
||||
DECLARE_ASN1_FUNCTIONS(CMS_ReceiptRequest)
|
||||
DECLARE_ASN1_PRINT_FUNCTION(CMS_ContentInfo)
|
||||
@ -119,13 +123,16 @@ int SMIME_write_CMS(BIO *bio, CMS_ContentInfo *cms, BIO *data, int flags);
|
||||
|
||||
int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont,
|
||||
unsigned int flags);
|
||||
int CMS_final_digest(CMS_ContentInfo *cms,
|
||||
const unsigned char *md, unsigned int mdlen, BIO *dcont,
|
||||
unsigned int flags);
|
||||
|
||||
CMS_ContentInfo *CMS_sign(X509 *signcert, EVP_PKEY *pkey,
|
||||
STACK_OF(X509) *certs, BIO *data,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_sign_ex(X509 *signcert, EVP_PKEY *pkey,
|
||||
STACK_OF(X509) *certs, BIO *data,
|
||||
unsigned int flags, OSSL_LIB_CTX *ctx,
|
||||
unsigned int flags, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si,
|
||||
@ -135,27 +142,26 @@ CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si,
|
||||
int CMS_data(CMS_ContentInfo *cms, BIO *out, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_data_create(BIO *in, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_data_create_ex(BIO *in, unsigned int flags,
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
int CMS_digest_verify(CMS_ContentInfo *cms, BIO *dcont, BIO *out,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_digest_create(BIO *in, const EVP_MD *md,
|
||||
unsigned int flags);
|
||||
CMS_ContentInfo *CMS_digest_create_ex(BIO *in, const EVP_MD *md,
|
||||
unsigned int flags, OSSL_LIB_CTX *ctx,
|
||||
unsigned int flags, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
int CMS_EncryptedData_decrypt(CMS_ContentInfo *cms,
|
||||
const unsigned char *key, size_t keylen,
|
||||
BIO *dcont, BIO *out, unsigned int flags);
|
||||
|
||||
CMS_ContentInfo *CMS_EncryptedData_encrypt(BIO *in, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
size_t keylen, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_EncryptedData_encrypt_ex(BIO *in, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
size_t keylen, unsigned int flags,
|
||||
OSSL_LIB_CTX *ctx,
|
||||
OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
int CMS_EncryptedData_set1_key(CMS_ContentInfo *cms, const EVP_CIPHER *ciph,
|
||||
@ -174,7 +180,7 @@ CMS_ContentInfo *CMS_encrypt(STACK_OF(X509) *certs, BIO *in,
|
||||
const EVP_CIPHER *cipher, unsigned int flags);
|
||||
CMS_ContentInfo *CMS_encrypt_ex(STACK_OF(X509) *certs, BIO *in,
|
||||
const EVP_CIPHER *cipher, unsigned int flags,
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
int CMS_decrypt(CMS_ContentInfo *cms, EVP_PKEY *pkey, X509 *cert,
|
||||
BIO *dcont, BIO *out, unsigned int flags);
|
||||
@ -193,12 +199,16 @@ int CMS_RecipientInfo_type(CMS_RecipientInfo *ri);
|
||||
EVP_PKEY_CTX *CMS_RecipientInfo_get0_pkey_ctx(CMS_RecipientInfo *ri);
|
||||
CMS_ContentInfo *CMS_AuthEnvelopedData_create(const EVP_CIPHER *cipher);
|
||||
CMS_ContentInfo *
|
||||
CMS_AuthEnvelopedData_create_ex(const EVP_CIPHER *cipher, OSSL_LIB_CTX *ctx,
|
||||
CMS_AuthEnvelopedData_create_ex(const EVP_CIPHER *cipher, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
CMS_ContentInfo *CMS_EnvelopedData_create(const EVP_CIPHER *cipher);
|
||||
CMS_ContentInfo *CMS_EnvelopedData_create_ex(const EVP_CIPHER *cipher,
|
||||
OSSL_LIB_CTX *ctx,
|
||||
OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
BIO *CMS_EnvelopedData_decrypt(CMS_EnvelopedData *env, BIO *detached_data,
|
||||
EVP_PKEY *pkey, X509 *cert,
|
||||
ASN1_OCTET_STRING *secret, unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
CMS_RecipientInfo *CMS_add1_recipient_cert(CMS_ContentInfo *cms,
|
||||
X509 *recip, unsigned int flags);
|
||||
@ -287,6 +297,11 @@ ASN1_OCTET_STRING *CMS_SignerInfo_get0_signature(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_sign(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_verify(CMS_SignerInfo *si);
|
||||
int CMS_SignerInfo_verify_content(CMS_SignerInfo *si, BIO *chain);
|
||||
BIO *CMS_SignedData_verify(CMS_SignedData *sd, BIO *detached_data,
|
||||
STACK_OF(X509) *scerts, X509_STORE *store,
|
||||
STACK_OF(X509) *extra, STACK_OF(X509_CRL) *crls,
|
||||
unsigned int flags,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
int CMS_add_smimecap(CMS_SignerInfo *si, STACK_OF(X509_ALGOR) *algs);
|
||||
int CMS_add_simple_smimecap(STACK_OF(X509_ALGOR) **algs,
|
||||
@ -343,7 +358,7 @@ CMS_ReceiptRequest *CMS_ReceiptRequest_create0_ex(
|
||||
unsigned char *id, int idlen, int allorfirst,
|
||||
STACK_OF(GENERAL_NAMES) *receiptList,
|
||||
STACK_OF(GENERAL_NAMES) *receiptsTo,
|
||||
OSSL_LIB_CTX *ctx);
|
||||
OSSL_LIB_CTX *libctx);
|
||||
|
||||
int CMS_add1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest *rr);
|
||||
void CMS_ReceiptRequest_get0_values(CMS_ReceiptRequest *rr,
|
||||
|
@ -86,6 +86,7 @@
|
||||
# define CMS_R_NO_PUBLIC_KEY 134
|
||||
# define CMS_R_NO_RECEIPT_REQUEST 168
|
||||
# define CMS_R_NO_SIGNERS 135
|
||||
# define CMS_R_OPERATION_UNSUPPORTED 182
|
||||
# define CMS_R_PEER_KEY_ERROR 188
|
||||
# define CMS_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 136
|
||||
# define CMS_R_RECEIPT_DECODE_ERROR 169
|
||||
|
@ -40,15 +40,20 @@ int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen,
|
||||
unsigned char *in, int ilen);
|
||||
|
||||
COMP_METHOD *COMP_zlib(void);
|
||||
COMP_METHOD *COMP_zlib_oneshot(void);
|
||||
COMP_METHOD *COMP_brotli(void);
|
||||
COMP_METHOD *COMP_brotli_oneshot(void);
|
||||
COMP_METHOD *COMP_zstd(void);
|
||||
COMP_METHOD *COMP_zstd_oneshot(void);
|
||||
|
||||
#ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
# define COMP_zlib_cleanup() while(0) continue
|
||||
#endif
|
||||
|
||||
# ifdef OPENSSL_BIO_H
|
||||
# ifdef ZLIB
|
||||
const BIO_METHOD *BIO_f_zlib(void);
|
||||
# endif
|
||||
const BIO_METHOD *BIO_f_brotli(void);
|
||||
const BIO_METHOD *BIO_f_zstd(void);
|
||||
# endif
|
||||
|
||||
|
||||
|
@ -23,9 +23,16 @@
|
||||
/*
|
||||
* COMP reason codes.
|
||||
*/
|
||||
# define COMP_R_BROTLI_DECODE_ERROR 102
|
||||
# define COMP_R_BROTLI_ENCODE_ERROR 103
|
||||
# define COMP_R_BROTLI_NOT_SUPPORTED 104
|
||||
# define COMP_R_ZLIB_DEFLATE_ERROR 99
|
||||
# define COMP_R_ZLIB_INFLATE_ERROR 100
|
||||
# define COMP_R_ZLIB_NOT_SUPPORTED 101
|
||||
# define COMP_R_ZSTD_COMPRESS_ERROR 105
|
||||
# define COMP_R_ZSTD_DECODE_ERROR 106
|
||||
# define COMP_R_ZSTD_DECOMPRESS_ERROR 107
|
||||
# define COMP_R_ZSTD_NOT_SUPPORTED 108
|
||||
|
||||
# endif
|
||||
#endif
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/conf.h.in
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -27,7 +27,7 @@ extern "C" {
|
||||
* OpenSSL was configured with the following options:
|
||||
*/
|
||||
|
||||
# define OPENSSL_CONFIGURED_API 30100
|
||||
# define OPENSSL_CONFIGURED_API 30200
|
||||
# ifndef OPENSSL_RAND_SEED_OS
|
||||
# define OPENSSL_RAND_SEED_OS
|
||||
# endif
|
||||
@ -46,6 +46,12 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_ASYNC
|
||||
# define OPENSSL_NO_ASYNC
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_BROTLI
|
||||
# define OPENSSL_NO_BROTLI
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_BROTLI_DYNAMIC
|
||||
# define OPENSSL_NO_BROTLI_DYNAMIC
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_CAPIENG
|
||||
# define OPENSSL_NO_CAPIENG
|
||||
# endif
|
||||
@ -58,6 +64,9 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
|
||||
# define OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_DEFAULT_THREAD_POOL
|
||||
# define OPENSSL_NO_DEFAULT_THREAD_POOL
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_DEVCRYPTOENG
|
||||
# define OPENSSL_NO_DEVCRYPTOENG
|
||||
# endif
|
||||
@ -127,6 +136,9 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_PSK
|
||||
# define OPENSSL_NO_PSK
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_QUIC
|
||||
# define OPENSSL_NO_QUIC
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_RC5
|
||||
# define OPENSSL_NO_RC5
|
||||
# endif
|
||||
@ -145,6 +157,12 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_TESTS
|
||||
# define OPENSSL_NO_TESTS
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_TFO
|
||||
# define OPENSSL_NO_TFO
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_THREAD_POOL
|
||||
# define OPENSSL_NO_THREAD_POOL
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_TRACE
|
||||
# define OPENSSL_NO_TRACE
|
||||
# endif
|
||||
@ -160,6 +178,21 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
|
||||
# define OPENSSL_NO_WEAK_SSL_CIPHERS
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_WINSTORE
|
||||
# define OPENSSL_NO_WINSTORE
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_ZLIB
|
||||
# define OPENSSL_NO_ZLIB
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_ZLIB_DYNAMIC
|
||||
# define OPENSSL_NO_ZLIB_DYNAMIC
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_ZSTD
|
||||
# define OPENSSL_NO_ZSTD
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_ZSTD_DYNAMIC
|
||||
# define OPENSSL_NO_ZSTD_DYNAMIC
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_DYNAMIC_ENGINE
|
||||
# define OPENSSL_NO_DYNAMIC_ENGINE
|
||||
# endif
|
||||
@ -181,6 +214,12 @@ extern "C" {
|
||||
|
||||
# define RC4_INT unsigned int
|
||||
|
||||
# if defined(OPENSSL_NO_COMP) || (defined(OPENSSL_NO_BROTLI) && defined(OPENSSL_NO_ZSTD) && defined(OPENSSL_NO_ZLIB))
|
||||
# define OPENSSL_NO_COMP_ALG
|
||||
# else
|
||||
# undef OPENSSL_NO_COMP_ALG
|
||||
# endif
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -62,6 +62,12 @@ extern "C" {
|
||||
|
||||
# define RC4_INT {- $config{rc4_int} -}
|
||||
|
||||
# if defined(OPENSSL_NO_COMP) || (defined(OPENSSL_NO_BROTLI) && defined(OPENSSL_NO_ZSTD) && defined(OPENSSL_NO_ZLIB))
|
||||
# define OPENSSL_NO_COMP_ALG
|
||||
# else
|
||||
# undef OPENSSL_NO_COMP_ALG
|
||||
# endif
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -42,6 +42,9 @@ struct ossl_dispatch_st {
|
||||
void (*function)(void);
|
||||
};
|
||||
|
||||
# define OSSL_DISPATCH_END \
|
||||
{ 0, NULL }
|
||||
|
||||
/*
|
||||
* Other items, essentially an int<->pointer map element.
|
||||
*
|
||||
|
@ -661,6 +661,14 @@ OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, keymgmt_export_types,
|
||||
OSSL_CORE_MAKE_FUNC(void *, keymgmt_dup,
|
||||
(const void *keydata_from, int selection))
|
||||
|
||||
/* Extended import and export functions */
|
||||
# define OSSL_FUNC_KEYMGMT_IMPORT_TYPES_EX 45
|
||||
# define OSSL_FUNC_KEYMGMT_EXPORT_TYPES_EX 46
|
||||
OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, keymgmt_import_types_ex,
|
||||
(void *provctx, int selection))
|
||||
OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, keymgmt_export_types_ex,
|
||||
(void *provctx, int selection))
|
||||
|
||||
/* Key Exchange */
|
||||
|
||||
# define OSSL_FUNC_KEYEXCH_NEWCTX 1
|
||||
@ -832,16 +840,24 @@ OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, asym_cipher_settable_ctx_params,
|
||||
# define OSSL_FUNC_KEM_GETTABLE_CTX_PARAMS 9
|
||||
# define OSSL_FUNC_KEM_SET_CTX_PARAMS 10
|
||||
# define OSSL_FUNC_KEM_SETTABLE_CTX_PARAMS 11
|
||||
# define OSSL_FUNC_KEM_AUTH_ENCAPSULATE_INIT 12
|
||||
# define OSSL_FUNC_KEM_AUTH_DECAPSULATE_INIT 13
|
||||
|
||||
OSSL_CORE_MAKE_FUNC(void *, kem_newctx, (void *provctx))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_encapsulate_init, (void *ctx, void *provkey,
|
||||
const OSSL_PARAM params[]))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_auth_encapsulate_init, (void *ctx, void *provkey,
|
||||
void *authprivkey,
|
||||
const OSSL_PARAM params[]))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_encapsulate, (void *ctx,
|
||||
unsigned char *out, size_t *outlen,
|
||||
unsigned char *secret,
|
||||
size_t *secretlen))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_decapsulate_init, (void *ctx, void *provkey,
|
||||
const OSSL_PARAM params[]))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_auth_decapsulate_init, (void *ctx, void *provkey,
|
||||
void *authpubkey,
|
||||
const OSSL_PARAM params[]))
|
||||
OSSL_CORE_MAKE_FUNC(int, kem_decapsulate, (void *ctx,
|
||||
unsigned char *out, size_t *outlen,
|
||||
const unsigned char *in, size_t inlen))
|
||||
@ -937,6 +953,8 @@ OSSL_CORE_MAKE_FUNC(int, decoder_export_object,
|
||||
#define OSSL_FUNC_STORE_EOF 6
|
||||
#define OSSL_FUNC_STORE_CLOSE 7
|
||||
#define OSSL_FUNC_STORE_EXPORT_OBJECT 8
|
||||
#define OSSL_FUNC_STORE_DELETE 9
|
||||
#define OSSL_FUNC_STORE_OPEN_EX 10
|
||||
OSSL_CORE_MAKE_FUNC(void *, store_open, (void *provctx, const char *uri))
|
||||
OSSL_CORE_MAKE_FUNC(void *, store_attach, (void *provctx, OSSL_CORE_BIO *in))
|
||||
OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, store_settable_ctx_params,
|
||||
@ -952,6 +970,12 @@ OSSL_CORE_MAKE_FUNC(int, store_close, (void *loaderctx))
|
||||
OSSL_CORE_MAKE_FUNC(int, store_export_object,
|
||||
(void *loaderctx, const void *objref, size_t objref_sz,
|
||||
OSSL_CALLBACK *export_cb, void *export_cbarg))
|
||||
OSSL_CORE_MAKE_FUNC(int, store_delete,
|
||||
(void *provctx, const char *uri, const OSSL_PARAM params[],
|
||||
OSSL_PASSPHRASE_CALLBACK *pw_cb, void *pw_cbarg))
|
||||
OSSL_CORE_MAKE_FUNC(void *, store_open_ex,
|
||||
(void *provctx, const char *uri, const OSSL_PARAM params[],
|
||||
OSSL_PASSPHRASE_CALLBACK *pw_cb, void *pw_cbarg))
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
@ -1,4 +1,7 @@
|
||||
/*
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/core_names.h.in
|
||||
*
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@ -7,6 +10,7 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
|
||||
#ifndef OPENSSL_CORE_NAMES_H
|
||||
# define OPENSSL_CORE_NAMES_H
|
||||
# pragma once
|
||||
@ -15,544 +19,454 @@
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
/* Well known parameter names that core passes to providers */
|
||||
#define OSSL_PROV_PARAM_CORE_VERSION "openssl-version" /* utf8_ptr */
|
||||
#define OSSL_PROV_PARAM_CORE_PROV_NAME "provider-name" /* utf8_ptr */
|
||||
#define OSSL_PROV_PARAM_CORE_MODULE_FILENAME "module-filename" /* utf8_ptr */
|
||||
|
||||
/* Well known parameter names that Providers can define */
|
||||
#define OSSL_PROV_PARAM_NAME "name" /* utf8_ptr */
|
||||
#define OSSL_PROV_PARAM_VERSION "version" /* utf8_ptr */
|
||||
#define OSSL_PROV_PARAM_BUILDINFO "buildinfo" /* utf8_ptr */
|
||||
#define OSSL_PROV_PARAM_STATUS "status" /* uint */
|
||||
#define OSSL_PROV_PARAM_SECURITY_CHECKS "security-checks" /* uint */
|
||||
#define OSSL_PROV_PARAM_TLS1_PRF_EMS_CHECK "tls1-prf-ems-check" /* uint */
|
||||
#define OSSL_PROV_PARAM_DRBG_TRUNC_DIGEST "drbg-no-trunc-md" /* uint */
|
||||
|
||||
/* Self test callback parameters */
|
||||
#define OSSL_PROV_PARAM_SELF_TEST_PHASE "st-phase" /* utf8_string */
|
||||
#define OSSL_PROV_PARAM_SELF_TEST_TYPE "st-type" /* utf8_string */
|
||||
#define OSSL_PROV_PARAM_SELF_TEST_DESC "st-desc" /* utf8_string */
|
||||
|
||||
/*-
|
||||
* Provider-native object abstractions
|
||||
*
|
||||
* These are used when a provider wants to pass object data or an object
|
||||
* reference back to libcrypto. This is only useful for provider functions
|
||||
* that take a callback to which an OSSL_PARAM array with these parameters
|
||||
* can be passed.
|
||||
*
|
||||
* This set of parameter names is explained in detail in provider-object(7)
|
||||
* (doc/man7/provider-object.pod)
|
||||
*/
|
||||
#define OSSL_OBJECT_PARAM_TYPE "type" /* INTEGER */
|
||||
#define OSSL_OBJECT_PARAM_DATA_TYPE "data-type" /* UTF8_STRING */
|
||||
#define OSSL_OBJECT_PARAM_DATA_STRUCTURE "data-structure" /* UTF8_STRING */
|
||||
#define OSSL_OBJECT_PARAM_REFERENCE "reference" /* OCTET_STRING */
|
||||
#define OSSL_OBJECT_PARAM_DATA "data" /* OCTET_STRING or UTF8_STRING */
|
||||
#define OSSL_OBJECT_PARAM_DESC "desc" /* UTF8_STRING */
|
||||
|
||||
/*
|
||||
* Algorithm parameters
|
||||
* If "engine" or "properties" are specified, they should always be paired
|
||||
* with the algorithm type.
|
||||
* Note these are common names that are shared by many types (such as kdf, mac,
|
||||
* and pkey) e.g: see OSSL_MAC_PARAM_DIGEST below.
|
||||
*/
|
||||
#define OSSL_ALG_PARAM_DIGEST "digest" /* utf8_string */
|
||||
#define OSSL_ALG_PARAM_CIPHER "cipher" /* utf8_string */
|
||||
#define OSSL_ALG_PARAM_ENGINE "engine" /* utf8_string */
|
||||
#define OSSL_ALG_PARAM_MAC "mac" /* utf8_string */
|
||||
#define OSSL_ALG_PARAM_PROPERTIES "properties"/* utf8_string */
|
||||
|
||||
/* cipher parameters */
|
||||
#define OSSL_CIPHER_PARAM_PADDING "padding" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_USE_BITS "use-bits" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_TLS_VERSION "tls-version" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_TLS_MAC "tls-mac" /* octet_ptr */
|
||||
#define OSSL_CIPHER_PARAM_TLS_MAC_SIZE "tls-mac-size" /* size_t */
|
||||
#define OSSL_CIPHER_PARAM_MODE "mode" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_BLOCK_SIZE "blocksize" /* size_t */
|
||||
#define OSSL_CIPHER_PARAM_AEAD "aead" /* int, 0 or 1 */
|
||||
#define OSSL_CIPHER_PARAM_CUSTOM_IV "custom-iv" /* int, 0 or 1 */
|
||||
#define OSSL_CIPHER_PARAM_CTS "cts" /* int, 0 or 1 */
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK "tls-multi" /* int, 0 or 1 */
|
||||
#define OSSL_CIPHER_PARAM_HAS_RAND_KEY "has-randkey" /* int, 0 or 1 */
|
||||
#define OSSL_CIPHER_PARAM_KEYLEN "keylen" /* size_t */
|
||||
#define OSSL_CIPHER_PARAM_IVLEN "ivlen" /* size_t */
|
||||
#define OSSL_CIPHER_PARAM_IV "iv" /* octet_string OR octet_ptr */
|
||||
#define OSSL_CIPHER_PARAM_UPDATED_IV "updated-iv" /* octet_string OR octet_ptr */
|
||||
#define OSSL_CIPHER_PARAM_NUM "num" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_ROUNDS "rounds" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_AEAD_TAG "tag" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_AEAD_TLS1_AAD "tlsaad" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_AEAD_TLS1_AAD_PAD "tlsaadpad" /* size_t */
|
||||
#define OSSL_CIPHER_PARAM_AEAD_TLS1_IV_FIXED "tlsivfixed" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_AEAD_TLS1_GET_IV_GEN "tlsivgen" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_AEAD_TLS1_SET_IV_INV "tlsivinv" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_AEAD_IVLEN OSSL_CIPHER_PARAM_IVLEN
|
||||
#define OSSL_CIPHER_PARAM_AEAD_TAGLEN "taglen" /* size_t */
|
||||
#define OSSL_CIPHER_PARAM_AEAD_MAC_KEY "mackey" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_RANDOM_KEY "randkey" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_RC2_KEYBITS "keybits" /* size_t */
|
||||
#define OSSL_CIPHER_PARAM_SPEED "speed" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_CTS_MODE "cts_mode" /* utf8_string */
|
||||
/* For passing the AlgorithmIdentifier parameter in DER form */
|
||||
#define OSSL_CIPHER_PARAM_ALGORITHM_ID_PARAMS "alg_id_param" /* octet_string */
|
||||
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_SEND_FRAGMENT \
|
||||
"tls1multi_maxsndfrag" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_BUFSIZE \
|
||||
"tls1multi_maxbufsz" /* size_t */
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_INTERLEAVE \
|
||||
"tls1multi_interleave" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD \
|
||||
"tls1multi_aad" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD_PACKLEN \
|
||||
"tls1multi_aadpacklen" /* uint */
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC \
|
||||
"tls1multi_enc" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_IN \
|
||||
"tls1multi_encin" /* octet_string */
|
||||
#define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_LEN \
|
||||
"tls1multi_enclen" /* size_t */
|
||||
|
||||
/* OSSL_CIPHER_PARAM_CTS_MODE Values */
|
||||
#define OSSL_CIPHER_CTS_MODE_CS1 "CS1"
|
||||
#define OSSL_CIPHER_CTS_MODE_CS2 "CS2"
|
||||
#define OSSL_CIPHER_CTS_MODE_CS3 "CS3"
|
||||
# define OSSL_CIPHER_CTS_MODE_CS1 "CS1"
|
||||
# define OSSL_CIPHER_CTS_MODE_CS2 "CS2"
|
||||
# define OSSL_CIPHER_CTS_MODE_CS3 "CS3"
|
||||
|
||||
/* digest parameters */
|
||||
#define OSSL_DIGEST_PARAM_XOFLEN "xoflen" /* size_t */
|
||||
#define OSSL_DIGEST_PARAM_SSL3_MS "ssl3-ms" /* octet string */
|
||||
#define OSSL_DIGEST_PARAM_PAD_TYPE "pad-type" /* uint */
|
||||
#define OSSL_DIGEST_PARAM_MICALG "micalg" /* utf8 string */
|
||||
#define OSSL_DIGEST_PARAM_BLOCK_SIZE "blocksize" /* size_t */
|
||||
#define OSSL_DIGEST_PARAM_SIZE "size" /* size_t */
|
||||
#define OSSL_DIGEST_PARAM_XOF "xof" /* int, 0 or 1 */
|
||||
#define OSSL_DIGEST_PARAM_ALGID_ABSENT "algid-absent" /* int, 0 or 1 */
|
||||
/* Known CIPHER names (not a complete list) */
|
||||
# define OSSL_CIPHER_NAME_AES_128_GCM_SIV "AES-128-GCM-SIV"
|
||||
# define OSSL_CIPHER_NAME_AES_192_GCM_SIV "AES-192-GCM-SIV"
|
||||
# define OSSL_CIPHER_NAME_AES_256_GCM_SIV "AES-256-GCM-SIV"
|
||||
|
||||
/* Known DIGEST names (not a complete list) */
|
||||
#define OSSL_DIGEST_NAME_MD5 "MD5"
|
||||
#define OSSL_DIGEST_NAME_MD5_SHA1 "MD5-SHA1"
|
||||
#define OSSL_DIGEST_NAME_SHA1 "SHA1"
|
||||
#define OSSL_DIGEST_NAME_SHA2_224 "SHA2-224"
|
||||
#define OSSL_DIGEST_NAME_SHA2_256 "SHA2-256"
|
||||
#define OSSL_DIGEST_NAME_SHA2_384 "SHA2-384"
|
||||
#define OSSL_DIGEST_NAME_SHA2_512 "SHA2-512"
|
||||
#define OSSL_DIGEST_NAME_SHA2_512_224 "SHA2-512/224"
|
||||
#define OSSL_DIGEST_NAME_SHA2_512_256 "SHA2-512/256"
|
||||
#define OSSL_DIGEST_NAME_MD2 "MD2"
|
||||
#define OSSL_DIGEST_NAME_MD4 "MD4"
|
||||
#define OSSL_DIGEST_NAME_MDC2 "MDC2"
|
||||
#define OSSL_DIGEST_NAME_RIPEMD160 "RIPEMD160"
|
||||
#define OSSL_DIGEST_NAME_SHA3_224 "SHA3-224"
|
||||
#define OSSL_DIGEST_NAME_SHA3_256 "SHA3-256"
|
||||
#define OSSL_DIGEST_NAME_SHA3_384 "SHA3-384"
|
||||
#define OSSL_DIGEST_NAME_SHA3_512 "SHA3-512"
|
||||
#define OSSL_DIGEST_NAME_KECCAK_KMAC128 "KECCAK-KMAC-128"
|
||||
#define OSSL_DIGEST_NAME_KECCAK_KMAC256 "KECCAK-KMAC-256"
|
||||
#define OSSL_DIGEST_NAME_SM3 "SM3"
|
||||
|
||||
/* MAC parameters */
|
||||
#define OSSL_MAC_PARAM_KEY "key" /* octet string */
|
||||
#define OSSL_MAC_PARAM_IV "iv" /* octet string */
|
||||
#define OSSL_MAC_PARAM_CUSTOM "custom" /* utf8 string */
|
||||
#define OSSL_MAC_PARAM_SALT "salt" /* octet string */
|
||||
#define OSSL_MAC_PARAM_XOF "xof" /* int, 0 or 1 */
|
||||
#define OSSL_MAC_PARAM_DIGEST_NOINIT "digest-noinit" /* int, 0 or 1 */
|
||||
#define OSSL_MAC_PARAM_DIGEST_ONESHOT "digest-oneshot" /* int, 0 or 1 */
|
||||
#define OSSL_MAC_PARAM_C_ROUNDS "c-rounds" /* unsigned int */
|
||||
#define OSSL_MAC_PARAM_D_ROUNDS "d-rounds" /* unsigned int */
|
||||
|
||||
/*
|
||||
* If "engine" or "properties" are specified, they should always be paired
|
||||
* with "cipher" or "digest".
|
||||
*/
|
||||
#define OSSL_MAC_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER /* utf8 string */
|
||||
#define OSSL_MAC_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST /* utf8 string */
|
||||
#define OSSL_MAC_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES /* utf8 string */
|
||||
#define OSSL_MAC_PARAM_SIZE "size" /* size_t */
|
||||
#define OSSL_MAC_PARAM_BLOCK_SIZE "block-size" /* size_t */
|
||||
#define OSSL_MAC_PARAM_TLS_DATA_SIZE "tls-data-size" /* size_t */
|
||||
# define OSSL_DIGEST_NAME_MD5 "MD5"
|
||||
# define OSSL_DIGEST_NAME_MD5_SHA1 "MD5-SHA1"
|
||||
# define OSSL_DIGEST_NAME_SHA1 "SHA1"
|
||||
# define OSSL_DIGEST_NAME_SHA2_224 "SHA2-224"
|
||||
# define OSSL_DIGEST_NAME_SHA2_256 "SHA2-256"
|
||||
# define OSSL_DIGEST_NAME_SHA2_256_192 "SHA2-256/192"
|
||||
# define OSSL_DIGEST_NAME_SHA2_384 "SHA2-384"
|
||||
# define OSSL_DIGEST_NAME_SHA2_512 "SHA2-512"
|
||||
# define OSSL_DIGEST_NAME_SHA2_512_224 "SHA2-512/224"
|
||||
# define OSSL_DIGEST_NAME_SHA2_512_256 "SHA2-512/256"
|
||||
# define OSSL_DIGEST_NAME_MD2 "MD2"
|
||||
# define OSSL_DIGEST_NAME_MD4 "MD4"
|
||||
# define OSSL_DIGEST_NAME_MDC2 "MDC2"
|
||||
# define OSSL_DIGEST_NAME_RIPEMD160 "RIPEMD160"
|
||||
# define OSSL_DIGEST_NAME_SHA3_224 "SHA3-224"
|
||||
# define OSSL_DIGEST_NAME_SHA3_256 "SHA3-256"
|
||||
# define OSSL_DIGEST_NAME_SHA3_384 "SHA3-384"
|
||||
# define OSSL_DIGEST_NAME_SHA3_512 "SHA3-512"
|
||||
# define OSSL_DIGEST_NAME_KECCAK_KMAC128 "KECCAK-KMAC-128"
|
||||
# define OSSL_DIGEST_NAME_KECCAK_KMAC256 "KECCAK-KMAC-256"
|
||||
# define OSSL_DIGEST_NAME_SM3 "SM3"
|
||||
|
||||
/* Known MAC names */
|
||||
#define OSSL_MAC_NAME_BLAKE2BMAC "BLAKE2BMAC"
|
||||
#define OSSL_MAC_NAME_BLAKE2SMAC "BLAKE2SMAC"
|
||||
#define OSSL_MAC_NAME_CMAC "CMAC"
|
||||
#define OSSL_MAC_NAME_GMAC "GMAC"
|
||||
#define OSSL_MAC_NAME_HMAC "HMAC"
|
||||
#define OSSL_MAC_NAME_KMAC128 "KMAC128"
|
||||
#define OSSL_MAC_NAME_KMAC256 "KMAC256"
|
||||
#define OSSL_MAC_NAME_POLY1305 "POLY1305"
|
||||
#define OSSL_MAC_NAME_SIPHASH "SIPHASH"
|
||||
|
||||
/* KDF / PRF parameters */
|
||||
#define OSSL_KDF_PARAM_SECRET "secret" /* octet string */
|
||||
#define OSSL_KDF_PARAM_KEY "key" /* octet string */
|
||||
#define OSSL_KDF_PARAM_SALT "salt" /* octet string */
|
||||
#define OSSL_KDF_PARAM_PASSWORD "pass" /* octet string */
|
||||
#define OSSL_KDF_PARAM_PREFIX "prefix" /* octet string */
|
||||
#define OSSL_KDF_PARAM_LABEL "label" /* octet string */
|
||||
#define OSSL_KDF_PARAM_DATA "data" /* octet string */
|
||||
#define OSSL_KDF_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST /* utf8 string */
|
||||
#define OSSL_KDF_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER /* utf8 string */
|
||||
#define OSSL_KDF_PARAM_MAC OSSL_ALG_PARAM_MAC /* utf8 string */
|
||||
#define OSSL_KDF_PARAM_MAC_SIZE "maclen" /* size_t */
|
||||
#define OSSL_KDF_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES /* utf8 string */
|
||||
#define OSSL_KDF_PARAM_ITER "iter" /* unsigned int */
|
||||
#define OSSL_KDF_PARAM_MODE "mode" /* utf8 string or int */
|
||||
#define OSSL_KDF_PARAM_PKCS5 "pkcs5" /* int */
|
||||
#define OSSL_KDF_PARAM_UKM "ukm" /* octet string */
|
||||
#define OSSL_KDF_PARAM_CEK_ALG "cekalg" /* utf8 string */
|
||||
#define OSSL_KDF_PARAM_SCRYPT_N "n" /* uint64_t */
|
||||
#define OSSL_KDF_PARAM_SCRYPT_R "r" /* uint32_t */
|
||||
#define OSSL_KDF_PARAM_SCRYPT_P "p" /* uint32_t */
|
||||
#define OSSL_KDF_PARAM_SCRYPT_MAXMEM "maxmem_bytes" /* uint64_t */
|
||||
#define OSSL_KDF_PARAM_INFO "info" /* octet string */
|
||||
#define OSSL_KDF_PARAM_SEED "seed" /* octet string */
|
||||
#define OSSL_KDF_PARAM_SSHKDF_XCGHASH "xcghash" /* octet string */
|
||||
#define OSSL_KDF_PARAM_SSHKDF_SESSION_ID "session_id" /* octet string */
|
||||
#define OSSL_KDF_PARAM_SSHKDF_TYPE "type" /* int */
|
||||
#define OSSL_KDF_PARAM_SIZE "size" /* size_t */
|
||||
#define OSSL_KDF_PARAM_CONSTANT "constant" /* octet string */
|
||||
#define OSSL_KDF_PARAM_PKCS12_ID "id" /* int */
|
||||
#define OSSL_KDF_PARAM_KBKDF_USE_L "use-l" /* int */
|
||||
#define OSSL_KDF_PARAM_KBKDF_USE_SEPARATOR "use-separator" /* int */
|
||||
#define OSSL_KDF_PARAM_KBKDF_R "r" /* int */
|
||||
#define OSSL_KDF_PARAM_X942_ACVPINFO "acvp-info"
|
||||
#define OSSL_KDF_PARAM_X942_PARTYUINFO "partyu-info"
|
||||
#define OSSL_KDF_PARAM_X942_PARTYVINFO "partyv-info"
|
||||
#define OSSL_KDF_PARAM_X942_SUPP_PUBINFO "supp-pubinfo"
|
||||
#define OSSL_KDF_PARAM_X942_SUPP_PRIVINFO "supp-privinfo"
|
||||
#define OSSL_KDF_PARAM_X942_USE_KEYBITS "use-keybits"
|
||||
# define OSSL_MAC_NAME_BLAKE2BMAC "BLAKE2BMAC"
|
||||
# define OSSL_MAC_NAME_BLAKE2SMAC "BLAKE2SMAC"
|
||||
# define OSSL_MAC_NAME_CMAC "CMAC"
|
||||
# define OSSL_MAC_NAME_GMAC "GMAC"
|
||||
# define OSSL_MAC_NAME_HMAC "HMAC"
|
||||
# define OSSL_MAC_NAME_KMAC128 "KMAC128"
|
||||
# define OSSL_MAC_NAME_KMAC256 "KMAC256"
|
||||
# define OSSL_MAC_NAME_POLY1305 "POLY1305"
|
||||
# define OSSL_MAC_NAME_SIPHASH "SIPHASH"
|
||||
|
||||
/* Known KDF names */
|
||||
#define OSSL_KDF_NAME_HKDF "HKDF"
|
||||
#define OSSL_KDF_NAME_TLS1_3_KDF "TLS13-KDF"
|
||||
#define OSSL_KDF_NAME_PBKDF1 "PBKDF1"
|
||||
#define OSSL_KDF_NAME_PBKDF2 "PBKDF2"
|
||||
#define OSSL_KDF_NAME_SCRYPT "SCRYPT"
|
||||
#define OSSL_KDF_NAME_SSHKDF "SSHKDF"
|
||||
#define OSSL_KDF_NAME_SSKDF "SSKDF"
|
||||
#define OSSL_KDF_NAME_TLS1_PRF "TLS1-PRF"
|
||||
#define OSSL_KDF_NAME_X942KDF_ASN1 "X942KDF-ASN1"
|
||||
#define OSSL_KDF_NAME_X942KDF_CONCAT "X942KDF-CONCAT"
|
||||
#define OSSL_KDF_NAME_X963KDF "X963KDF"
|
||||
#define OSSL_KDF_NAME_KBKDF "KBKDF"
|
||||
#define OSSL_KDF_NAME_KRB5KDF "KRB5KDF"
|
||||
|
||||
/* Known RAND names */
|
||||
#define OSSL_RAND_PARAM_STATE "state"
|
||||
#define OSSL_RAND_PARAM_STRENGTH "strength"
|
||||
#define OSSL_RAND_PARAM_MAX_REQUEST "max_request"
|
||||
#define OSSL_RAND_PARAM_TEST_ENTROPY "test_entropy"
|
||||
#define OSSL_RAND_PARAM_TEST_NONCE "test_nonce"
|
||||
#define OSSL_RAND_PARAM_GENERATE "generate"
|
||||
|
||||
/* RAND/DRBG names */
|
||||
#define OSSL_DRBG_PARAM_RESEED_REQUESTS "reseed_requests"
|
||||
#define OSSL_DRBG_PARAM_RESEED_TIME_INTERVAL "reseed_time_interval"
|
||||
#define OSSL_DRBG_PARAM_MIN_ENTROPYLEN "min_entropylen"
|
||||
#define OSSL_DRBG_PARAM_MAX_ENTROPYLEN "max_entropylen"
|
||||
#define OSSL_DRBG_PARAM_MIN_NONCELEN "min_noncelen"
|
||||
#define OSSL_DRBG_PARAM_MAX_NONCELEN "max_noncelen"
|
||||
#define OSSL_DRBG_PARAM_MAX_PERSLEN "max_perslen"
|
||||
#define OSSL_DRBG_PARAM_MAX_ADINLEN "max_adinlen"
|
||||
#define OSSL_DRBG_PARAM_RESEED_COUNTER "reseed_counter"
|
||||
#define OSSL_DRBG_PARAM_RESEED_TIME "reseed_time"
|
||||
#define OSSL_DRBG_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
#define OSSL_DRBG_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
|
||||
#define OSSL_DRBG_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
|
||||
#define OSSL_DRBG_PARAM_MAC OSSL_ALG_PARAM_MAC
|
||||
#define OSSL_DRBG_PARAM_USE_DF "use_derivation_function"
|
||||
|
||||
/* DRBG call back parameters */
|
||||
#define OSSL_DRBG_PARAM_ENTROPY_REQUIRED "entropy_required"
|
||||
#define OSSL_DRBG_PARAM_PREDICTION_RESISTANCE "prediction_resistance"
|
||||
#define OSSL_DRBG_PARAM_MIN_LENGTH "minium_length"
|
||||
#define OSSL_DRBG_PARAM_MAX_LENGTH "maxium_length"
|
||||
#define OSSL_DRBG_PARAM_RANDOM_DATA "random_data"
|
||||
#define OSSL_DRBG_PARAM_SIZE "size"
|
||||
|
||||
/* PKEY parameters */
|
||||
/* Common PKEY parameters */
|
||||
#define OSSL_PKEY_PARAM_BITS "bits" /* integer */
|
||||
#define OSSL_PKEY_PARAM_MAX_SIZE "max-size" /* integer */
|
||||
#define OSSL_PKEY_PARAM_SECURITY_BITS "security-bits" /* integer */
|
||||
#define OSSL_PKEY_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
|
||||
#define OSSL_PKEY_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER /* utf8 string */
|
||||
#define OSSL_PKEY_PARAM_ENGINE OSSL_ALG_PARAM_ENGINE /* utf8 string */
|
||||
#define OSSL_PKEY_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
#define OSSL_PKEY_PARAM_DEFAULT_DIGEST "default-digest" /* utf8 string */
|
||||
#define OSSL_PKEY_PARAM_MANDATORY_DIGEST "mandatory-digest" /* utf8 string */
|
||||
#define OSSL_PKEY_PARAM_PAD_MODE "pad-mode"
|
||||
#define OSSL_PKEY_PARAM_DIGEST_SIZE "digest-size"
|
||||
#define OSSL_PKEY_PARAM_MASKGENFUNC "mgf"
|
||||
#define OSSL_PKEY_PARAM_MGF1_DIGEST "mgf1-digest"
|
||||
#define OSSL_PKEY_PARAM_MGF1_PROPERTIES "mgf1-properties"
|
||||
#define OSSL_PKEY_PARAM_ENCODED_PUBLIC_KEY "encoded-pub-key"
|
||||
#define OSSL_PKEY_PARAM_GROUP_NAME "group"
|
||||
#define OSSL_PKEY_PARAM_DIST_ID "distid"
|
||||
#define OSSL_PKEY_PARAM_PUB_KEY "pub"
|
||||
#define OSSL_PKEY_PARAM_PRIV_KEY "priv"
|
||||
|
||||
/* Diffie-Hellman/DSA Parameters */
|
||||
#define OSSL_PKEY_PARAM_FFC_P "p"
|
||||
#define OSSL_PKEY_PARAM_FFC_G "g"
|
||||
#define OSSL_PKEY_PARAM_FFC_Q "q"
|
||||
#define OSSL_PKEY_PARAM_FFC_GINDEX "gindex"
|
||||
#define OSSL_PKEY_PARAM_FFC_PCOUNTER "pcounter"
|
||||
#define OSSL_PKEY_PARAM_FFC_SEED "seed"
|
||||
#define OSSL_PKEY_PARAM_FFC_COFACTOR "j"
|
||||
#define OSSL_PKEY_PARAM_FFC_H "hindex"
|
||||
#define OSSL_PKEY_PARAM_FFC_VALIDATE_PQ "validate-pq"
|
||||
#define OSSL_PKEY_PARAM_FFC_VALIDATE_G "validate-g"
|
||||
#define OSSL_PKEY_PARAM_FFC_VALIDATE_LEGACY "validate-legacy"
|
||||
|
||||
/* Diffie-Hellman params */
|
||||
#define OSSL_PKEY_PARAM_DH_GENERATOR "safeprime-generator"
|
||||
#define OSSL_PKEY_PARAM_DH_PRIV_LEN "priv_len"
|
||||
|
||||
/* Elliptic Curve Domain Parameters */
|
||||
#define OSSL_PKEY_PARAM_EC_PUB_X "qx"
|
||||
#define OSSL_PKEY_PARAM_EC_PUB_Y "qy"
|
||||
|
||||
/* Elliptic Curve Explicit Domain Parameters */
|
||||
#define OSSL_PKEY_PARAM_EC_FIELD_TYPE "field-type"
|
||||
#define OSSL_PKEY_PARAM_EC_P "p"
|
||||
#define OSSL_PKEY_PARAM_EC_A "a"
|
||||
#define OSSL_PKEY_PARAM_EC_B "b"
|
||||
#define OSSL_PKEY_PARAM_EC_GENERATOR "generator"
|
||||
#define OSSL_PKEY_PARAM_EC_ORDER "order"
|
||||
#define OSSL_PKEY_PARAM_EC_COFACTOR "cofactor"
|
||||
#define OSSL_PKEY_PARAM_EC_SEED "seed"
|
||||
#define OSSL_PKEY_PARAM_EC_CHAR2_M "m"
|
||||
#define OSSL_PKEY_PARAM_EC_CHAR2_TYPE "basis-type"
|
||||
#define OSSL_PKEY_PARAM_EC_CHAR2_TP_BASIS "tp"
|
||||
#define OSSL_PKEY_PARAM_EC_CHAR2_PP_K1 "k1"
|
||||
#define OSSL_PKEY_PARAM_EC_CHAR2_PP_K2 "k2"
|
||||
#define OSSL_PKEY_PARAM_EC_CHAR2_PP_K3 "k3"
|
||||
#define OSSL_PKEY_PARAM_EC_DECODED_FROM_EXPLICIT_PARAMS "decoded-from-explicit"
|
||||
|
||||
/* Elliptic Curve Key Parameters */
|
||||
#define OSSL_PKEY_PARAM_USE_COFACTOR_FLAG "use-cofactor-flag"
|
||||
#define OSSL_PKEY_PARAM_USE_COFACTOR_ECDH \
|
||||
OSSL_PKEY_PARAM_USE_COFACTOR_FLAG
|
||||
|
||||
/* RSA Keys */
|
||||
/*
|
||||
* n, e, d are the usual public and private key components
|
||||
*
|
||||
* rsa-num is the number of factors, including p and q
|
||||
* rsa-factor is used for each factor: p, q, r_i (i = 3, ...)
|
||||
* rsa-exponent is used for each exponent: dP, dQ, d_i (i = 3, ...)
|
||||
* rsa-coefficient is used for each coefficient: qInv, t_i (i = 3, ...)
|
||||
*
|
||||
* The number of rsa-factor items must be equal to the number of rsa-exponent
|
||||
* items, and the number of rsa-coefficients must be one less.
|
||||
* (the base i for the coefficients is 2, not 1, at least as implied by
|
||||
* RFC 8017)
|
||||
*/
|
||||
#define OSSL_PKEY_PARAM_RSA_N "n"
|
||||
#define OSSL_PKEY_PARAM_RSA_E "e"
|
||||
#define OSSL_PKEY_PARAM_RSA_D "d"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR "rsa-factor"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT "rsa-exponent"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT "rsa-coefficient"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR1 OSSL_PKEY_PARAM_RSA_FACTOR"1"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR2 OSSL_PKEY_PARAM_RSA_FACTOR"2"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR3 OSSL_PKEY_PARAM_RSA_FACTOR"3"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR4 OSSL_PKEY_PARAM_RSA_FACTOR"4"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR5 OSSL_PKEY_PARAM_RSA_FACTOR"5"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR6 OSSL_PKEY_PARAM_RSA_FACTOR"6"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR7 OSSL_PKEY_PARAM_RSA_FACTOR"7"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR8 OSSL_PKEY_PARAM_RSA_FACTOR"8"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR9 OSSL_PKEY_PARAM_RSA_FACTOR"9"
|
||||
#define OSSL_PKEY_PARAM_RSA_FACTOR10 OSSL_PKEY_PARAM_RSA_FACTOR"10"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT1 OSSL_PKEY_PARAM_RSA_EXPONENT"1"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT2 OSSL_PKEY_PARAM_RSA_EXPONENT"2"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT3 OSSL_PKEY_PARAM_RSA_EXPONENT"3"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT4 OSSL_PKEY_PARAM_RSA_EXPONENT"4"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT5 OSSL_PKEY_PARAM_RSA_EXPONENT"5"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT6 OSSL_PKEY_PARAM_RSA_EXPONENT"6"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT7 OSSL_PKEY_PARAM_RSA_EXPONENT"7"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT8 OSSL_PKEY_PARAM_RSA_EXPONENT"8"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT9 OSSL_PKEY_PARAM_RSA_EXPONENT"9"
|
||||
#define OSSL_PKEY_PARAM_RSA_EXPONENT10 OSSL_PKEY_PARAM_RSA_EXPONENT"10"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT1 OSSL_PKEY_PARAM_RSA_COEFFICIENT"1"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT2 OSSL_PKEY_PARAM_RSA_COEFFICIENT"2"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT3 OSSL_PKEY_PARAM_RSA_COEFFICIENT"3"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT4 OSSL_PKEY_PARAM_RSA_COEFFICIENT"4"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT5 OSSL_PKEY_PARAM_RSA_COEFFICIENT"5"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT6 OSSL_PKEY_PARAM_RSA_COEFFICIENT"6"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT7 OSSL_PKEY_PARAM_RSA_COEFFICIENT"7"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT8 OSSL_PKEY_PARAM_RSA_COEFFICIENT"8"
|
||||
#define OSSL_PKEY_PARAM_RSA_COEFFICIENT9 OSSL_PKEY_PARAM_RSA_COEFFICIENT"9"
|
||||
# define OSSL_KDF_NAME_HKDF "HKDF"
|
||||
# define OSSL_KDF_NAME_TLS1_3_KDF "TLS13-KDF"
|
||||
# define OSSL_KDF_NAME_PBKDF1 "PBKDF1"
|
||||
# define OSSL_KDF_NAME_PBKDF2 "PBKDF2"
|
||||
# define OSSL_KDF_NAME_SCRYPT "SCRYPT"
|
||||
# define OSSL_KDF_NAME_SSHKDF "SSHKDF"
|
||||
# define OSSL_KDF_NAME_SSKDF "SSKDF"
|
||||
# define OSSL_KDF_NAME_TLS1_PRF "TLS1-PRF"
|
||||
# define OSSL_KDF_NAME_X942KDF_ASN1 "X942KDF-ASN1"
|
||||
# define OSSL_KDF_NAME_X942KDF_CONCAT "X942KDF-CONCAT"
|
||||
# define OSSL_KDF_NAME_X963KDF "X963KDF"
|
||||
# define OSSL_KDF_NAME_KBKDF "KBKDF"
|
||||
# define OSSL_KDF_NAME_KRB5KDF "KRB5KDF"
|
||||
# define OSSL_KDF_NAME_HMACDRBGKDF "HMAC-DRBG-KDF"
|
||||
|
||||
/* RSA padding modes */
|
||||
#define OSSL_PKEY_RSA_PAD_MODE_NONE "none"
|
||||
#define OSSL_PKEY_RSA_PAD_MODE_PKCSV15 "pkcs1"
|
||||
#define OSSL_PKEY_RSA_PAD_MODE_OAEP "oaep"
|
||||
#define OSSL_PKEY_RSA_PAD_MODE_X931 "x931"
|
||||
#define OSSL_PKEY_RSA_PAD_MODE_PSS "pss"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_NONE "none"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_PKCSV15 "pkcs1"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_OAEP "oaep"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_X931 "x931"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_PSS "pss"
|
||||
|
||||
/* RSA pss padding salt length */
|
||||
#define OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST "digest"
|
||||
#define OSSL_PKEY_RSA_PSS_SALT_LEN_MAX "max"
|
||||
#define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO "auto"
|
||||
#define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO_DIGEST_MAX "auto-digestmax"
|
||||
|
||||
/* Key generation parameters */
|
||||
#define OSSL_PKEY_PARAM_RSA_BITS OSSL_PKEY_PARAM_BITS
|
||||
#define OSSL_PKEY_PARAM_RSA_PRIMES "primes"
|
||||
#define OSSL_PKEY_PARAM_RSA_DIGEST OSSL_PKEY_PARAM_DIGEST
|
||||
#define OSSL_PKEY_PARAM_RSA_DIGEST_PROPS OSSL_PKEY_PARAM_PROPERTIES
|
||||
#define OSSL_PKEY_PARAM_RSA_MASKGENFUNC OSSL_PKEY_PARAM_MASKGENFUNC
|
||||
#define OSSL_PKEY_PARAM_RSA_MGF1_DIGEST OSSL_PKEY_PARAM_MGF1_DIGEST
|
||||
#define OSSL_PKEY_PARAM_RSA_PSS_SALTLEN "saltlen"
|
||||
|
||||
/* Key generation parameters */
|
||||
#define OSSL_PKEY_PARAM_FFC_TYPE "type"
|
||||
#define OSSL_PKEY_PARAM_FFC_PBITS "pbits"
|
||||
#define OSSL_PKEY_PARAM_FFC_QBITS "qbits"
|
||||
#define OSSL_PKEY_PARAM_FFC_DIGEST OSSL_PKEY_PARAM_DIGEST
|
||||
#define OSSL_PKEY_PARAM_FFC_DIGEST_PROPS OSSL_PKEY_PARAM_PROPERTIES
|
||||
|
||||
#define OSSL_PKEY_PARAM_EC_ENCODING "encoding" /* utf8_string */
|
||||
#define OSSL_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT "point-format"
|
||||
#define OSSL_PKEY_PARAM_EC_GROUP_CHECK_TYPE "group-check"
|
||||
#define OSSL_PKEY_PARAM_EC_INCLUDE_PUBLIC "include-public"
|
||||
# define OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST "digest"
|
||||
# define OSSL_PKEY_RSA_PSS_SALT_LEN_MAX "max"
|
||||
# define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO "auto"
|
||||
# define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO_DIGEST_MAX "auto-digestmax"
|
||||
|
||||
/* OSSL_PKEY_PARAM_EC_ENCODING values */
|
||||
#define OSSL_PKEY_EC_ENCODING_EXPLICIT "explicit"
|
||||
#define OSSL_PKEY_EC_ENCODING_GROUP "named_curve"
|
||||
# define OSSL_PKEY_EC_ENCODING_EXPLICIT "explicit"
|
||||
# define OSSL_PKEY_EC_ENCODING_GROUP "named_curve"
|
||||
|
||||
#define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_UNCOMPRESSED "uncompressed"
|
||||
#define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_COMPRESSED "compressed"
|
||||
#define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_HYBRID "hybrid"
|
||||
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_UNCOMPRESSED "uncompressed"
|
||||
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_COMPRESSED "compressed"
|
||||
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_HYBRID "hybrid"
|
||||
|
||||
#define OSSL_PKEY_EC_GROUP_CHECK_DEFAULT "default"
|
||||
#define OSSL_PKEY_EC_GROUP_CHECK_NAMED "named"
|
||||
#define OSSL_PKEY_EC_GROUP_CHECK_NAMED_NIST "named-nist"
|
||||
|
||||
/* Key Exchange parameters */
|
||||
#define OSSL_EXCHANGE_PARAM_PAD "pad" /* uint */
|
||||
#define OSSL_EXCHANGE_PARAM_EC_ECDH_COFACTOR_MODE "ecdh-cofactor-mode" /* int */
|
||||
#define OSSL_EXCHANGE_PARAM_KDF_TYPE "kdf-type" /* utf8_string */
|
||||
#define OSSL_EXCHANGE_PARAM_KDF_DIGEST "kdf-digest" /* utf8_string */
|
||||
#define OSSL_EXCHANGE_PARAM_KDF_DIGEST_PROPS "kdf-digest-props" /* utf8_string */
|
||||
#define OSSL_EXCHANGE_PARAM_KDF_OUTLEN "kdf-outlen" /* size_t */
|
||||
/* The following parameter is an octet_string on set and an octet_ptr on get */
|
||||
#define OSSL_EXCHANGE_PARAM_KDF_UKM "kdf-ukm"
|
||||
|
||||
/* Signature parameters */
|
||||
#define OSSL_SIGNATURE_PARAM_ALGORITHM_ID "algorithm-id"
|
||||
#define OSSL_SIGNATURE_PARAM_PAD_MODE OSSL_PKEY_PARAM_PAD_MODE
|
||||
#define OSSL_SIGNATURE_PARAM_DIGEST OSSL_PKEY_PARAM_DIGEST
|
||||
#define OSSL_SIGNATURE_PARAM_PROPERTIES OSSL_PKEY_PARAM_PROPERTIES
|
||||
#define OSSL_SIGNATURE_PARAM_PSS_SALTLEN "saltlen"
|
||||
#define OSSL_SIGNATURE_PARAM_MGF1_DIGEST OSSL_PKEY_PARAM_MGF1_DIGEST
|
||||
#define OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES \
|
||||
OSSL_PKEY_PARAM_MGF1_PROPERTIES
|
||||
#define OSSL_SIGNATURE_PARAM_DIGEST_SIZE OSSL_PKEY_PARAM_DIGEST_SIZE
|
||||
|
||||
/* Asym cipher parameters */
|
||||
#define OSSL_ASYM_CIPHER_PARAM_DIGEST OSSL_PKEY_PARAM_DIGEST
|
||||
#define OSSL_ASYM_CIPHER_PARAM_PROPERTIES OSSL_PKEY_PARAM_PROPERTIES
|
||||
#define OSSL_ASYM_CIPHER_PARAM_ENGINE OSSL_PKEY_PARAM_ENGINE
|
||||
#define OSSL_ASYM_CIPHER_PARAM_PAD_MODE OSSL_PKEY_PARAM_PAD_MODE
|
||||
#define OSSL_ASYM_CIPHER_PARAM_MGF1_DIGEST \
|
||||
OSSL_PKEY_PARAM_MGF1_DIGEST
|
||||
#define OSSL_ASYM_CIPHER_PARAM_MGF1_DIGEST_PROPS \
|
||||
OSSL_PKEY_PARAM_MGF1_PROPERTIES
|
||||
#define OSSL_ASYM_CIPHER_PARAM_OAEP_DIGEST OSSL_ALG_PARAM_DIGEST
|
||||
#define OSSL_ASYM_CIPHER_PARAM_OAEP_DIGEST_PROPS "digest-props"
|
||||
/* The following parameter is an octet_string on set and an octet_ptr on get */
|
||||
#define OSSL_ASYM_CIPHER_PARAM_OAEP_LABEL "oaep-label"
|
||||
#define OSSL_ASYM_CIPHER_PARAM_TLS_CLIENT_VERSION "tls-client-version"
|
||||
#define OSSL_ASYM_CIPHER_PARAM_TLS_NEGOTIATED_VERSION "tls-negotiated-version"
|
||||
|
||||
/*
|
||||
* Encoder / decoder parameters
|
||||
*/
|
||||
#define OSSL_ENCODER_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
|
||||
#define OSSL_ENCODER_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
/* Currently PVK only, but reusable for others as needed */
|
||||
#define OSSL_ENCODER_PARAM_ENCRYPT_LEVEL "encrypt-level"
|
||||
#define OSSL_ENCODER_PARAM_SAVE_PARAMETERS "save-parameters" /* integer */
|
||||
|
||||
#define OSSL_DECODER_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
|
||||
/* Passphrase callback parameters */
|
||||
#define OSSL_PASSPHRASE_PARAM_INFO "info"
|
||||
|
||||
/* Keygen callback parameters, from provider to libcrypto */
|
||||
#define OSSL_GEN_PARAM_POTENTIAL "potential" /* integer */
|
||||
#define OSSL_GEN_PARAM_ITERATION "iteration" /* integer */
|
||||
|
||||
/* ACVP Test parameters : These should not be used normally */
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_XP1 "xp1"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_XP2 "xp2"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_XP "xp"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_XQ1 "xq1"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_XQ2 "xq2"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_XQ "xq"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_P1 "p1"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_P2 "p2"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_Q1 "q1"
|
||||
#define OSSL_PKEY_PARAM_RSA_TEST_Q2 "q2"
|
||||
#define OSSL_SIGNATURE_PARAM_KAT "kat"
|
||||
|
||||
/* KEM parameters */
|
||||
#define OSSL_KEM_PARAM_OPERATION "operation"
|
||||
# define OSSL_PKEY_EC_GROUP_CHECK_DEFAULT "default"
|
||||
# define OSSL_PKEY_EC_GROUP_CHECK_NAMED "named"
|
||||
# define OSSL_PKEY_EC_GROUP_CHECK_NAMED_NIST "named-nist"
|
||||
|
||||
/* OSSL_KEM_PARAM_OPERATION values */
|
||||
#define OSSL_KEM_PARAM_OPERATION_RSASVE "RSASVE"
|
||||
#define OSSL_KEM_PARAM_OPERATION_DHKEM "DHKEM"
|
||||
|
||||
/* Capabilities */
|
||||
|
||||
/* TLS-GROUP Capability */
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_NAME "tls-group-name"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_NAME_INTERNAL "tls-group-name-internal"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_ID "tls-group-id"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_ALG "tls-group-alg"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_SECURITY_BITS "tls-group-sec-bits"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_IS_KEM "tls-group-is-kem"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_MIN_TLS "tls-min-tls"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_MAX_TLS "tls-max-tls"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_MIN_DTLS "tls-min-dtls"
|
||||
#define OSSL_CAPABILITY_TLS_GROUP_MAX_DTLS "tls-max-dtls"
|
||||
|
||||
/*-
|
||||
* storemgmt parameters
|
||||
*/
|
||||
|
||||
/*
|
||||
* Used by storemgmt_ctx_set_params():
|
||||
*
|
||||
* - OSSL_STORE_PARAM_EXPECT is an INTEGER, and the value is any of the
|
||||
* OSSL_STORE_INFO numbers. This is used to set the expected type of
|
||||
* object loaded.
|
||||
*
|
||||
* - OSSL_STORE_PARAM_SUBJECT, OSSL_STORE_PARAM_ISSUER,
|
||||
* OSSL_STORE_PARAM_SERIAL, OSSL_STORE_PARAM_FINGERPRINT,
|
||||
* OSSL_STORE_PARAM_DIGEST, OSSL_STORE_PARAM_ALIAS
|
||||
* are used as search criteria.
|
||||
* (OSSL_STORE_PARAM_DIGEST is used with OSSL_STORE_PARAM_FINGERPRINT)
|
||||
*/
|
||||
#define OSSL_STORE_PARAM_EXPECT "expect" /* INTEGER */
|
||||
#define OSSL_STORE_PARAM_SUBJECT "subject" /* DER blob => OCTET_STRING */
|
||||
#define OSSL_STORE_PARAM_ISSUER "name" /* DER blob => OCTET_STRING */
|
||||
#define OSSL_STORE_PARAM_SERIAL "serial" /* INTEGER */
|
||||
#define OSSL_STORE_PARAM_DIGEST "digest" /* UTF8_STRING */
|
||||
#define OSSL_STORE_PARAM_FINGERPRINT "fingerprint" /* OCTET_STRING */
|
||||
#define OSSL_STORE_PARAM_ALIAS "alias" /* UTF8_STRING */
|
||||
|
||||
/* You may want to pass properties for the provider implementation to use */
|
||||
#define OSSL_STORE_PARAM_PROPERTIES "properties" /* utf8_string */
|
||||
/* OSSL_DECODER input type if a decoder is used by the store */
|
||||
#define OSSL_STORE_PARAM_INPUT_TYPE "input-type" /* UTF8_STRING */
|
||||
/* Parameter name definitions - generated by util/perl/OpenSSL/paramnames.pm */
|
||||
# define OSSL_ALG_PARAM_CIPHER "cipher"
|
||||
# define OSSL_ALG_PARAM_DIGEST "digest"
|
||||
# define OSSL_ALG_PARAM_ENGINE "engine"
|
||||
# define OSSL_ALG_PARAM_MAC "mac"
|
||||
# define OSSL_ALG_PARAM_PROPERTIES "properties"
|
||||
# define OSSL_ASYM_CIPHER_PARAM_DIGEST OSSL_PKEY_PARAM_DIGEST
|
||||
# define OSSL_ASYM_CIPHER_PARAM_ENGINE OSSL_PKEY_PARAM_ENGINE
|
||||
# define OSSL_ASYM_CIPHER_PARAM_IMPLICIT_REJECTION "implicit-rejection"
|
||||
# define OSSL_ASYM_CIPHER_PARAM_MGF1_DIGEST OSSL_PKEY_PARAM_MGF1_DIGEST
|
||||
# define OSSL_ASYM_CIPHER_PARAM_MGF1_DIGEST_PROPS OSSL_PKEY_PARAM_MGF1_PROPERTIES
|
||||
# define OSSL_ASYM_CIPHER_PARAM_OAEP_DIGEST OSSL_ALG_PARAM_DIGEST
|
||||
# define OSSL_ASYM_CIPHER_PARAM_OAEP_DIGEST_PROPS "digest-props"
|
||||
# define OSSL_ASYM_CIPHER_PARAM_OAEP_LABEL "oaep-label"
|
||||
# define OSSL_ASYM_CIPHER_PARAM_PAD_MODE OSSL_PKEY_PARAM_PAD_MODE
|
||||
# define OSSL_ASYM_CIPHER_PARAM_PROPERTIES OSSL_PKEY_PARAM_PROPERTIES
|
||||
# define OSSL_ASYM_CIPHER_PARAM_TLS_CLIENT_VERSION "tls-client-version"
|
||||
# define OSSL_ASYM_CIPHER_PARAM_TLS_NEGOTIATED_VERSION "tls-negotiated-version"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_ALG "tls-group-alg"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_ID "tls-group-id"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_IS_KEM "tls-group-is-kem"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_MAX_DTLS "tls-max-dtls"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_MAX_TLS "tls-max-tls"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_MIN_DTLS "tls-min-dtls"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_MIN_TLS "tls-min-tls"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_NAME "tls-group-name"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_NAME_INTERNAL "tls-group-name-internal"
|
||||
# define OSSL_CAPABILITY_TLS_GROUP_SECURITY_BITS "tls-group-sec-bits"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_CODE_POINT "tls-sigalg-code-point"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_HASH_NAME "tls-sigalg-hash-name"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_HASH_OID "tls-sigalg-hash-oid"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_IANA_NAME "tls-sigalg-iana-name"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_KEYTYPE "tls-sigalg-keytype"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_KEYTYPE_OID "tls-sigalg-keytype-oid"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_MAX_TLS "tls-max-tls"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_MIN_TLS "tls-min-tls"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_NAME "tls-sigalg-name"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_OID "tls-sigalg-oid"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_SECURITY_BITS "tls-sigalg-sec-bits"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_SIG_NAME "tls-sigalg-sig-name"
|
||||
# define OSSL_CAPABILITY_TLS_SIGALG_SIG_OID "tls-sigalg-sig-oid"
|
||||
# define OSSL_CIPHER_PARAM_AEAD "aead"
|
||||
# define OSSL_CIPHER_PARAM_AEAD_IVLEN OSSL_CIPHER_PARAM_IVLEN
|
||||
# define OSSL_CIPHER_PARAM_AEAD_MAC_KEY "mackey"
|
||||
# define OSSL_CIPHER_PARAM_AEAD_TAG "tag"
|
||||
# define OSSL_CIPHER_PARAM_AEAD_TAGLEN "taglen"
|
||||
# define OSSL_CIPHER_PARAM_AEAD_TLS1_AAD "tlsaad"
|
||||
# define OSSL_CIPHER_PARAM_AEAD_TLS1_AAD_PAD "tlsaadpad"
|
||||
# define OSSL_CIPHER_PARAM_AEAD_TLS1_GET_IV_GEN "tlsivgen"
|
||||
# define OSSL_CIPHER_PARAM_AEAD_TLS1_IV_FIXED "tlsivfixed"
|
||||
# define OSSL_CIPHER_PARAM_AEAD_TLS1_SET_IV_INV "tlsivinv"
|
||||
# define OSSL_CIPHER_PARAM_ALGORITHM_ID_PARAMS "alg_id_param"
|
||||
# define OSSL_CIPHER_PARAM_BLOCK_SIZE "blocksize"
|
||||
# define OSSL_CIPHER_PARAM_CTS "cts"
|
||||
# define OSSL_CIPHER_PARAM_CTS_MODE "cts_mode"
|
||||
# define OSSL_CIPHER_PARAM_CUSTOM_IV "custom-iv"
|
||||
# define OSSL_CIPHER_PARAM_HAS_RAND_KEY "has-randkey"
|
||||
# define OSSL_CIPHER_PARAM_IV "iv"
|
||||
# define OSSL_CIPHER_PARAM_IVLEN "ivlen"
|
||||
# define OSSL_CIPHER_PARAM_KEYLEN "keylen"
|
||||
# define OSSL_CIPHER_PARAM_MODE "mode"
|
||||
# define OSSL_CIPHER_PARAM_NUM "num"
|
||||
# define OSSL_CIPHER_PARAM_PADDING "padding"
|
||||
# define OSSL_CIPHER_PARAM_RANDOM_KEY "randkey"
|
||||
# define OSSL_CIPHER_PARAM_RC2_KEYBITS "keybits"
|
||||
# define OSSL_CIPHER_PARAM_ROUNDS "rounds"
|
||||
# define OSSL_CIPHER_PARAM_SPEED "speed"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK "tls-multi"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD "tls1multi_aad"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD_PACKLEN "tls1multi_aadpacklen"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC "tls1multi_enc"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_IN "tls1multi_encin"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_LEN "tls1multi_enclen"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_INTERLEAVE "tls1multi_interleave"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_BUFSIZE "tls1multi_maxbufsz"
|
||||
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_SEND_FRAGMENT "tls1multi_maxsndfrag"
|
||||
# define OSSL_CIPHER_PARAM_TLS_MAC "tls-mac"
|
||||
# define OSSL_CIPHER_PARAM_TLS_MAC_SIZE "tls-mac-size"
|
||||
# define OSSL_CIPHER_PARAM_TLS_VERSION "tls-version"
|
||||
# define OSSL_CIPHER_PARAM_UPDATED_IV "updated-iv"
|
||||
# define OSSL_CIPHER_PARAM_USE_BITS "use-bits"
|
||||
# define OSSL_CIPHER_PARAM_XTS_STANDARD "xts_standard"
|
||||
# define OSSL_DECODER_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
# define OSSL_DIGEST_PARAM_ALGID_ABSENT "algid-absent"
|
||||
# define OSSL_DIGEST_PARAM_BLOCK_SIZE "blocksize"
|
||||
# define OSSL_DIGEST_PARAM_MICALG "micalg"
|
||||
# define OSSL_DIGEST_PARAM_PAD_TYPE "pad-type"
|
||||
# define OSSL_DIGEST_PARAM_SIZE "size"
|
||||
# define OSSL_DIGEST_PARAM_SSL3_MS "ssl3-ms"
|
||||
# define OSSL_DIGEST_PARAM_XOF "xof"
|
||||
# define OSSL_DIGEST_PARAM_XOFLEN "xoflen"
|
||||
# define OSSL_DRBG_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
|
||||
# define OSSL_DRBG_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
|
||||
# define OSSL_DRBG_PARAM_ENTROPY_REQUIRED "entropy_required"
|
||||
# define OSSL_DRBG_PARAM_MAC OSSL_ALG_PARAM_MAC
|
||||
# define OSSL_DRBG_PARAM_MAX_ADINLEN "max_adinlen"
|
||||
# define OSSL_DRBG_PARAM_MAX_ENTROPYLEN "max_entropylen"
|
||||
# define OSSL_DRBG_PARAM_MAX_LENGTH "maxium_length"
|
||||
# define OSSL_DRBG_PARAM_MAX_NONCELEN "max_noncelen"
|
||||
# define OSSL_DRBG_PARAM_MAX_PERSLEN "max_perslen"
|
||||
# define OSSL_DRBG_PARAM_MIN_ENTROPYLEN "min_entropylen"
|
||||
# define OSSL_DRBG_PARAM_MIN_LENGTH "minium_length"
|
||||
# define OSSL_DRBG_PARAM_MIN_NONCELEN "min_noncelen"
|
||||
# define OSSL_DRBG_PARAM_PREDICTION_RESISTANCE "prediction_resistance"
|
||||
# define OSSL_DRBG_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
# define OSSL_DRBG_PARAM_RANDOM_DATA "random_data"
|
||||
# define OSSL_DRBG_PARAM_RESEED_COUNTER "reseed_counter"
|
||||
# define OSSL_DRBG_PARAM_RESEED_REQUESTS "reseed_requests"
|
||||
# define OSSL_DRBG_PARAM_RESEED_TIME "reseed_time"
|
||||
# define OSSL_DRBG_PARAM_RESEED_TIME_INTERVAL "reseed_time_interval"
|
||||
# define OSSL_DRBG_PARAM_SIZE "size"
|
||||
# define OSSL_DRBG_PARAM_USE_DF "use_derivation_function"
|
||||
# define OSSL_ENCODER_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
|
||||
# define OSSL_ENCODER_PARAM_ENCRYPT_LEVEL "encrypt-level"
|
||||
# define OSSL_ENCODER_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
# define OSSL_ENCODER_PARAM_SAVE_PARAMETERS "save-parameters"
|
||||
# define OSSL_EXCHANGE_PARAM_EC_ECDH_COFACTOR_MODE "ecdh-cofactor-mode"
|
||||
# define OSSL_EXCHANGE_PARAM_KDF_DIGEST "kdf-digest"
|
||||
# define OSSL_EXCHANGE_PARAM_KDF_DIGEST_PROPS "kdf-digest-props"
|
||||
# define OSSL_EXCHANGE_PARAM_KDF_OUTLEN "kdf-outlen"
|
||||
# define OSSL_EXCHANGE_PARAM_KDF_TYPE "kdf-type"
|
||||
# define OSSL_EXCHANGE_PARAM_KDF_UKM "kdf-ukm"
|
||||
# define OSSL_EXCHANGE_PARAM_PAD "pad"
|
||||
# define OSSL_GEN_PARAM_ITERATION "iteration"
|
||||
# define OSSL_GEN_PARAM_POTENTIAL "potential"
|
||||
# define OSSL_KDF_PARAM_ARGON2_AD "ad"
|
||||
# define OSSL_KDF_PARAM_ARGON2_LANES "lanes"
|
||||
# define OSSL_KDF_PARAM_ARGON2_MEMCOST "memcost"
|
||||
# define OSSL_KDF_PARAM_ARGON2_VERSION "version"
|
||||
# define OSSL_KDF_PARAM_CEK_ALG "cekalg"
|
||||
# define OSSL_KDF_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
|
||||
# define OSSL_KDF_PARAM_CONSTANT "constant"
|
||||
# define OSSL_KDF_PARAM_DATA "data"
|
||||
# define OSSL_KDF_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
|
||||
# define OSSL_KDF_PARAM_EARLY_CLEAN "early_clean"
|
||||
# define OSSL_KDF_PARAM_HMACDRBG_ENTROPY "entropy"
|
||||
# define OSSL_KDF_PARAM_HMACDRBG_NONCE "nonce"
|
||||
# define OSSL_KDF_PARAM_INFO "info"
|
||||
# define OSSL_KDF_PARAM_ITER "iter"
|
||||
# define OSSL_KDF_PARAM_KBKDF_R "r"
|
||||
# define OSSL_KDF_PARAM_KBKDF_USE_L "use-l"
|
||||
# define OSSL_KDF_PARAM_KBKDF_USE_SEPARATOR "use-separator"
|
||||
# define OSSL_KDF_PARAM_KEY "key"
|
||||
# define OSSL_KDF_PARAM_LABEL "label"
|
||||
# define OSSL_KDF_PARAM_MAC OSSL_ALG_PARAM_MAC
|
||||
# define OSSL_KDF_PARAM_MAC_SIZE "maclen"
|
||||
# define OSSL_KDF_PARAM_MODE "mode"
|
||||
# define OSSL_KDF_PARAM_PASSWORD "pass"
|
||||
# define OSSL_KDF_PARAM_PKCS12_ID "id"
|
||||
# define OSSL_KDF_PARAM_PKCS5 "pkcs5"
|
||||
# define OSSL_KDF_PARAM_PREFIX "prefix"
|
||||
# define OSSL_KDF_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
# define OSSL_KDF_PARAM_SALT "salt"
|
||||
# define OSSL_KDF_PARAM_SCRYPT_MAXMEM "maxmem_bytes"
|
||||
# define OSSL_KDF_PARAM_SCRYPT_N "n"
|
||||
# define OSSL_KDF_PARAM_SCRYPT_P "p"
|
||||
# define OSSL_KDF_PARAM_SCRYPT_R "r"
|
||||
# define OSSL_KDF_PARAM_SECRET "secret"
|
||||
# define OSSL_KDF_PARAM_SEED "seed"
|
||||
# define OSSL_KDF_PARAM_SIZE "size"
|
||||
# define OSSL_KDF_PARAM_SSHKDF_SESSION_ID "session_id"
|
||||
# define OSSL_KDF_PARAM_SSHKDF_TYPE "type"
|
||||
# define OSSL_KDF_PARAM_SSHKDF_XCGHASH "xcghash"
|
||||
# define OSSL_KDF_PARAM_THREADS "threads"
|
||||
# define OSSL_KDF_PARAM_UKM "ukm"
|
||||
# define OSSL_KDF_PARAM_X942_ACVPINFO "acvp-info"
|
||||
# define OSSL_KDF_PARAM_X942_PARTYUINFO "partyu-info"
|
||||
# define OSSL_KDF_PARAM_X942_PARTYVINFO "partyv-info"
|
||||
# define OSSL_KDF_PARAM_X942_SUPP_PRIVINFO "supp-privinfo"
|
||||
# define OSSL_KDF_PARAM_X942_SUPP_PUBINFO "supp-pubinfo"
|
||||
# define OSSL_KDF_PARAM_X942_USE_KEYBITS "use-keybits"
|
||||
# define OSSL_KEM_PARAM_IKME "ikme"
|
||||
# define OSSL_KEM_PARAM_OPERATION "operation"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_BLOCK_PADDING "block_padding"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_MAX_EARLY_DATA "max_early_data"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_MAX_FRAG_LEN "max_frag_len"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_MODE "mode"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_OPTIONS "options"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_READ_AHEAD "read_ahead"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_STREAM_MAC "stream_mac"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_TLSTREE "tlstree"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_USE_ETM "use_etm"
|
||||
# define OSSL_LIBSSL_RECORD_LAYER_READ_BUFFER_LEN "read_buffer_len"
|
||||
# define OSSL_MAC_PARAM_BLOCK_SIZE "block-size"
|
||||
# define OSSL_MAC_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
|
||||
# define OSSL_MAC_PARAM_CUSTOM "custom"
|
||||
# define OSSL_MAC_PARAM_C_ROUNDS "c-rounds"
|
||||
# define OSSL_MAC_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
|
||||
# define OSSL_MAC_PARAM_DIGEST_NOINIT "digest-noinit"
|
||||
# define OSSL_MAC_PARAM_DIGEST_ONESHOT "digest-oneshot"
|
||||
# define OSSL_MAC_PARAM_D_ROUNDS "d-rounds"
|
||||
# define OSSL_MAC_PARAM_IV "iv"
|
||||
# define OSSL_MAC_PARAM_KEY "key"
|
||||
# define OSSL_MAC_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
# define OSSL_MAC_PARAM_SALT "salt"
|
||||
# define OSSL_MAC_PARAM_SIZE "size"
|
||||
# define OSSL_MAC_PARAM_TLS_DATA_SIZE "tls-data-size"
|
||||
# define OSSL_MAC_PARAM_XOF "xof"
|
||||
# define OSSL_OBJECT_PARAM_DATA "data"
|
||||
# define OSSL_OBJECT_PARAM_DATA_STRUCTURE "data-structure"
|
||||
# define OSSL_OBJECT_PARAM_DATA_TYPE "data-type"
|
||||
# define OSSL_OBJECT_PARAM_DESC "desc"
|
||||
# define OSSL_OBJECT_PARAM_REFERENCE "reference"
|
||||
# define OSSL_OBJECT_PARAM_TYPE "type"
|
||||
# define OSSL_PASSPHRASE_PARAM_INFO "info"
|
||||
# define OSSL_PKEY_PARAM_BITS "bits"
|
||||
# define OSSL_PKEY_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
|
||||
# define OSSL_PKEY_PARAM_DEFAULT_DIGEST "default-digest"
|
||||
# define OSSL_PKEY_PARAM_DHKEM_IKM "dhkem-ikm"
|
||||
# define OSSL_PKEY_PARAM_DH_GENERATOR "safeprime-generator"
|
||||
# define OSSL_PKEY_PARAM_DH_PRIV_LEN "priv_len"
|
||||
# define OSSL_PKEY_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
|
||||
# define OSSL_PKEY_PARAM_DIGEST_SIZE "digest-size"
|
||||
# define OSSL_PKEY_PARAM_DIST_ID "distid"
|
||||
# define OSSL_PKEY_PARAM_EC_A "a"
|
||||
# define OSSL_PKEY_PARAM_EC_B "b"
|
||||
# define OSSL_PKEY_PARAM_EC_CHAR2_M "m"
|
||||
# define OSSL_PKEY_PARAM_EC_CHAR2_PP_K1 "k1"
|
||||
# define OSSL_PKEY_PARAM_EC_CHAR2_PP_K2 "k2"
|
||||
# define OSSL_PKEY_PARAM_EC_CHAR2_PP_K3 "k3"
|
||||
# define OSSL_PKEY_PARAM_EC_CHAR2_TP_BASIS "tp"
|
||||
# define OSSL_PKEY_PARAM_EC_CHAR2_TYPE "basis-type"
|
||||
# define OSSL_PKEY_PARAM_EC_COFACTOR "cofactor"
|
||||
# define OSSL_PKEY_PARAM_EC_DECODED_FROM_EXPLICIT_PARAMS "decoded-from-explicit"
|
||||
# define OSSL_PKEY_PARAM_EC_ENCODING "encoding"
|
||||
# define OSSL_PKEY_PARAM_EC_FIELD_TYPE "field-type"
|
||||
# define OSSL_PKEY_PARAM_EC_GENERATOR "generator"
|
||||
# define OSSL_PKEY_PARAM_EC_GROUP_CHECK_TYPE "group-check"
|
||||
# define OSSL_PKEY_PARAM_EC_INCLUDE_PUBLIC "include-public"
|
||||
# define OSSL_PKEY_PARAM_EC_ORDER "order"
|
||||
# define OSSL_PKEY_PARAM_EC_P "p"
|
||||
# define OSSL_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT "point-format"
|
||||
# define OSSL_PKEY_PARAM_EC_PUB_X "qx"
|
||||
# define OSSL_PKEY_PARAM_EC_PUB_Y "qy"
|
||||
# define OSSL_PKEY_PARAM_EC_SEED "seed"
|
||||
# define OSSL_PKEY_PARAM_ENCODED_PUBLIC_KEY "encoded-pub-key"
|
||||
# define OSSL_PKEY_PARAM_ENGINE OSSL_ALG_PARAM_ENGINE
|
||||
# define OSSL_PKEY_PARAM_FFC_COFACTOR "j"
|
||||
# define OSSL_PKEY_PARAM_FFC_DIGEST OSSL_PKEY_PARAM_DIGEST
|
||||
# define OSSL_PKEY_PARAM_FFC_DIGEST_PROPS OSSL_PKEY_PARAM_PROPERTIES
|
||||
# define OSSL_PKEY_PARAM_FFC_G "g"
|
||||
# define OSSL_PKEY_PARAM_FFC_GINDEX "gindex"
|
||||
# define OSSL_PKEY_PARAM_FFC_H "hindex"
|
||||
# define OSSL_PKEY_PARAM_FFC_P "p"
|
||||
# define OSSL_PKEY_PARAM_FFC_PBITS "pbits"
|
||||
# define OSSL_PKEY_PARAM_FFC_PCOUNTER "pcounter"
|
||||
# define OSSL_PKEY_PARAM_FFC_Q "q"
|
||||
# define OSSL_PKEY_PARAM_FFC_QBITS "qbits"
|
||||
# define OSSL_PKEY_PARAM_FFC_SEED "seed"
|
||||
# define OSSL_PKEY_PARAM_FFC_TYPE "type"
|
||||
# define OSSL_PKEY_PARAM_FFC_VALIDATE_G "validate-g"
|
||||
# define OSSL_PKEY_PARAM_FFC_VALIDATE_LEGACY "validate-legacy"
|
||||
# define OSSL_PKEY_PARAM_FFC_VALIDATE_PQ "validate-pq"
|
||||
# define OSSL_PKEY_PARAM_GROUP_NAME "group"
|
||||
# define OSSL_PKEY_PARAM_IMPLICIT_REJECTION "implicit-rejection"
|
||||
# define OSSL_PKEY_PARAM_MANDATORY_DIGEST "mandatory-digest"
|
||||
# define OSSL_PKEY_PARAM_MASKGENFUNC "mgf"
|
||||
# define OSSL_PKEY_PARAM_MAX_SIZE "max-size"
|
||||
# define OSSL_PKEY_PARAM_MGF1_DIGEST "mgf1-digest"
|
||||
# define OSSL_PKEY_PARAM_MGF1_PROPERTIES "mgf1-properties"
|
||||
# define OSSL_PKEY_PARAM_PAD_MODE "pad-mode"
|
||||
# define OSSL_PKEY_PARAM_PRIV_KEY "priv"
|
||||
# define OSSL_PKEY_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
|
||||
# define OSSL_PKEY_PARAM_PUB_KEY "pub"
|
||||
# define OSSL_PKEY_PARAM_RSA_BITS OSSL_PKEY_PARAM_BITS
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT "rsa-coefficient"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT1 "rsa-coefficient1"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT2 "rsa-coefficient2"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT3 "rsa-coefficient3"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT4 "rsa-coefficient4"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT5 "rsa-coefficient5"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT6 "rsa-coefficient6"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT7 "rsa-coefficient7"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT8 "rsa-coefficient8"
|
||||
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT9 "rsa-coefficient9"
|
||||
# define OSSL_PKEY_PARAM_RSA_D "d"
|
||||
# define OSSL_PKEY_PARAM_RSA_DIGEST OSSL_PKEY_PARAM_DIGEST
|
||||
# define OSSL_PKEY_PARAM_RSA_DIGEST_PROPS OSSL_PKEY_PARAM_PROPERTIES
|
||||
# define OSSL_PKEY_PARAM_RSA_E "e"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT "rsa-exponent"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT1 "rsa-exponent1"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT10 "rsa-exponent10"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT2 "rsa-exponent2"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT3 "rsa-exponent3"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT4 "rsa-exponent4"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT5 "rsa-exponent5"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT6 "rsa-exponent6"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT7 "rsa-exponent7"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT8 "rsa-exponent8"
|
||||
# define OSSL_PKEY_PARAM_RSA_EXPONENT9 "rsa-exponent9"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR "rsa-factor"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR1 "rsa-factor1"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR10 "rsa-factor10"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR2 "rsa-factor2"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR3 "rsa-factor3"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR4 "rsa-factor4"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR5 "rsa-factor5"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR6 "rsa-factor6"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR7 "rsa-factor7"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR8 "rsa-factor8"
|
||||
# define OSSL_PKEY_PARAM_RSA_FACTOR9 "rsa-factor9"
|
||||
# define OSSL_PKEY_PARAM_RSA_MASKGENFUNC OSSL_PKEY_PARAM_MASKGENFUNC
|
||||
# define OSSL_PKEY_PARAM_RSA_MGF1_DIGEST OSSL_PKEY_PARAM_MGF1_DIGEST
|
||||
# define OSSL_PKEY_PARAM_RSA_N "n"
|
||||
# define OSSL_PKEY_PARAM_RSA_PRIMES "primes"
|
||||
# define OSSL_PKEY_PARAM_RSA_PSS_SALTLEN "saltlen"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_P1 "p1"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_P2 "p2"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_Q1 "q1"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_Q2 "q2"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_XP "xp"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_XP1 "xp1"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_XP2 "xp2"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_XQ "xq"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_XQ1 "xq1"
|
||||
# define OSSL_PKEY_PARAM_RSA_TEST_XQ2 "xq2"
|
||||
# define OSSL_PKEY_PARAM_SECURITY_BITS "security-bits"
|
||||
# define OSSL_PKEY_PARAM_USE_COFACTOR_ECDH OSSL_PKEY_PARAM_USE_COFACTOR_FLAG
|
||||
# define OSSL_PKEY_PARAM_USE_COFACTOR_FLAG "use-cofactor-flag"
|
||||
# define OSSL_PROV_PARAM_BUILDINFO "buildinfo"
|
||||
# define OSSL_PROV_PARAM_CORE_MODULE_FILENAME "module-filename"
|
||||
# define OSSL_PROV_PARAM_CORE_PROV_NAME "provider-name"
|
||||
# define OSSL_PROV_PARAM_CORE_VERSION "openssl-version"
|
||||
# define OSSL_PROV_PARAM_DRBG_TRUNC_DIGEST "drbg-no-trunc-md"
|
||||
# define OSSL_PROV_PARAM_NAME "name"
|
||||
# define OSSL_PROV_PARAM_SECURITY_CHECKS "security-checks"
|
||||
# define OSSL_PROV_PARAM_SELF_TEST_DESC "st-desc"
|
||||
# define OSSL_PROV_PARAM_SELF_TEST_PHASE "st-phase"
|
||||
# define OSSL_PROV_PARAM_SELF_TEST_TYPE "st-type"
|
||||
# define OSSL_PROV_PARAM_STATUS "status"
|
||||
# define OSSL_PROV_PARAM_TLS1_PRF_EMS_CHECK "tls1-prf-ems-check"
|
||||
# define OSSL_PROV_PARAM_VERSION "version"
|
||||
# define OSSL_RAND_PARAM_GENERATE "generate"
|
||||
# define OSSL_RAND_PARAM_MAX_REQUEST "max_request"
|
||||
# define OSSL_RAND_PARAM_STATE "state"
|
||||
# define OSSL_RAND_PARAM_STRENGTH "strength"
|
||||
# define OSSL_RAND_PARAM_TEST_ENTROPY "test_entropy"
|
||||
# define OSSL_RAND_PARAM_TEST_NONCE "test_nonce"
|
||||
# define OSSL_SIGNATURE_PARAM_ALGORITHM_ID "algorithm-id"
|
||||
# define OSSL_SIGNATURE_PARAM_CONTEXT_STRING "context-string"
|
||||
# define OSSL_SIGNATURE_PARAM_DIGEST OSSL_PKEY_PARAM_DIGEST
|
||||
# define OSSL_SIGNATURE_PARAM_DIGEST_SIZE OSSL_PKEY_PARAM_DIGEST_SIZE
|
||||
# define OSSL_SIGNATURE_PARAM_INSTANCE "instance"
|
||||
# define OSSL_SIGNATURE_PARAM_KAT "kat"
|
||||
# define OSSL_SIGNATURE_PARAM_MGF1_DIGEST OSSL_PKEY_PARAM_MGF1_DIGEST
|
||||
# define OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES OSSL_PKEY_PARAM_MGF1_PROPERTIES
|
||||
# define OSSL_SIGNATURE_PARAM_NONCE_TYPE "nonce-type"
|
||||
# define OSSL_SIGNATURE_PARAM_PAD_MODE OSSL_PKEY_PARAM_PAD_MODE
|
||||
# define OSSL_SIGNATURE_PARAM_PROPERTIES OSSL_PKEY_PARAM_PROPERTIES
|
||||
# define OSSL_SIGNATURE_PARAM_PSS_SALTLEN "saltlen"
|
||||
# define OSSL_STORE_PARAM_ALIAS "alias"
|
||||
# define OSSL_STORE_PARAM_DIGEST "digest"
|
||||
# define OSSL_STORE_PARAM_EXPECT "expect"
|
||||
# define OSSL_STORE_PARAM_FINGERPRINT "fingerprint"
|
||||
# define OSSL_STORE_PARAM_INPUT_TYPE "input-type"
|
||||
# define OSSL_STORE_PARAM_ISSUER "name"
|
||||
# define OSSL_STORE_PARAM_PROPERTIES "properties"
|
||||
# define OSSL_STORE_PARAM_SERIAL "serial"
|
||||
# define OSSL_STORE_PARAM_SUBJECT "subject"
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
119
deps/openssl/android/x86_64/usr/local/include/openssl/core_names.h.in
vendored
Normal file
119
deps/openssl/android/x86_64/usr/local/include/openssl/core_names.h.in
vendored
Normal file
@ -0,0 +1,119 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
{-
|
||||
use OpenSSL::paramnames qw(generate_public_macros);
|
||||
-}
|
||||
|
||||
#ifndef OPENSSL_CORE_NAMES_H
|
||||
# define OPENSSL_CORE_NAMES_H
|
||||
# pragma once
|
||||
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
/* OSSL_CIPHER_PARAM_CTS_MODE Values */
|
||||
# define OSSL_CIPHER_CTS_MODE_CS1 "CS1"
|
||||
# define OSSL_CIPHER_CTS_MODE_CS2 "CS2"
|
||||
# define OSSL_CIPHER_CTS_MODE_CS3 "CS3"
|
||||
|
||||
/* Known CIPHER names (not a complete list) */
|
||||
# define OSSL_CIPHER_NAME_AES_128_GCM_SIV "AES-128-GCM-SIV"
|
||||
# define OSSL_CIPHER_NAME_AES_192_GCM_SIV "AES-192-GCM-SIV"
|
||||
# define OSSL_CIPHER_NAME_AES_256_GCM_SIV "AES-256-GCM-SIV"
|
||||
|
||||
/* Known DIGEST names (not a complete list) */
|
||||
# define OSSL_DIGEST_NAME_MD5 "MD5"
|
||||
# define OSSL_DIGEST_NAME_MD5_SHA1 "MD5-SHA1"
|
||||
# define OSSL_DIGEST_NAME_SHA1 "SHA1"
|
||||
# define OSSL_DIGEST_NAME_SHA2_224 "SHA2-224"
|
||||
# define OSSL_DIGEST_NAME_SHA2_256 "SHA2-256"
|
||||
# define OSSL_DIGEST_NAME_SHA2_256_192 "SHA2-256/192"
|
||||
# define OSSL_DIGEST_NAME_SHA2_384 "SHA2-384"
|
||||
# define OSSL_DIGEST_NAME_SHA2_512 "SHA2-512"
|
||||
# define OSSL_DIGEST_NAME_SHA2_512_224 "SHA2-512/224"
|
||||
# define OSSL_DIGEST_NAME_SHA2_512_256 "SHA2-512/256"
|
||||
# define OSSL_DIGEST_NAME_MD2 "MD2"
|
||||
# define OSSL_DIGEST_NAME_MD4 "MD4"
|
||||
# define OSSL_DIGEST_NAME_MDC2 "MDC2"
|
||||
# define OSSL_DIGEST_NAME_RIPEMD160 "RIPEMD160"
|
||||
# define OSSL_DIGEST_NAME_SHA3_224 "SHA3-224"
|
||||
# define OSSL_DIGEST_NAME_SHA3_256 "SHA3-256"
|
||||
# define OSSL_DIGEST_NAME_SHA3_384 "SHA3-384"
|
||||
# define OSSL_DIGEST_NAME_SHA3_512 "SHA3-512"
|
||||
# define OSSL_DIGEST_NAME_KECCAK_KMAC128 "KECCAK-KMAC-128"
|
||||
# define OSSL_DIGEST_NAME_KECCAK_KMAC256 "KECCAK-KMAC-256"
|
||||
# define OSSL_DIGEST_NAME_SM3 "SM3"
|
||||
|
||||
/* Known MAC names */
|
||||
# define OSSL_MAC_NAME_BLAKE2BMAC "BLAKE2BMAC"
|
||||
# define OSSL_MAC_NAME_BLAKE2SMAC "BLAKE2SMAC"
|
||||
# define OSSL_MAC_NAME_CMAC "CMAC"
|
||||
# define OSSL_MAC_NAME_GMAC "GMAC"
|
||||
# define OSSL_MAC_NAME_HMAC "HMAC"
|
||||
# define OSSL_MAC_NAME_KMAC128 "KMAC128"
|
||||
# define OSSL_MAC_NAME_KMAC256 "KMAC256"
|
||||
# define OSSL_MAC_NAME_POLY1305 "POLY1305"
|
||||
# define OSSL_MAC_NAME_SIPHASH "SIPHASH"
|
||||
|
||||
/* Known KDF names */
|
||||
# define OSSL_KDF_NAME_HKDF "HKDF"
|
||||
# define OSSL_KDF_NAME_TLS1_3_KDF "TLS13-KDF"
|
||||
# define OSSL_KDF_NAME_PBKDF1 "PBKDF1"
|
||||
# define OSSL_KDF_NAME_PBKDF2 "PBKDF2"
|
||||
# define OSSL_KDF_NAME_SCRYPT "SCRYPT"
|
||||
# define OSSL_KDF_NAME_SSHKDF "SSHKDF"
|
||||
# define OSSL_KDF_NAME_SSKDF "SSKDF"
|
||||
# define OSSL_KDF_NAME_TLS1_PRF "TLS1-PRF"
|
||||
# define OSSL_KDF_NAME_X942KDF_ASN1 "X942KDF-ASN1"
|
||||
# define OSSL_KDF_NAME_X942KDF_CONCAT "X942KDF-CONCAT"
|
||||
# define OSSL_KDF_NAME_X963KDF "X963KDF"
|
||||
# define OSSL_KDF_NAME_KBKDF "KBKDF"
|
||||
# define OSSL_KDF_NAME_KRB5KDF "KRB5KDF"
|
||||
# define OSSL_KDF_NAME_HMACDRBGKDF "HMAC-DRBG-KDF"
|
||||
|
||||
/* RSA padding modes */
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_NONE "none"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_PKCSV15 "pkcs1"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_OAEP "oaep"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_X931 "x931"
|
||||
# define OSSL_PKEY_RSA_PAD_MODE_PSS "pss"
|
||||
|
||||
/* RSA pss padding salt length */
|
||||
# define OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST "digest"
|
||||
# define OSSL_PKEY_RSA_PSS_SALT_LEN_MAX "max"
|
||||
# define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO "auto"
|
||||
# define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO_DIGEST_MAX "auto-digestmax"
|
||||
|
||||
/* OSSL_PKEY_PARAM_EC_ENCODING values */
|
||||
# define OSSL_PKEY_EC_ENCODING_EXPLICIT "explicit"
|
||||
# define OSSL_PKEY_EC_ENCODING_GROUP "named_curve"
|
||||
|
||||
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_UNCOMPRESSED "uncompressed"
|
||||
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_COMPRESSED "compressed"
|
||||
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_HYBRID "hybrid"
|
||||
|
||||
# define OSSL_PKEY_EC_GROUP_CHECK_DEFAULT "default"
|
||||
# define OSSL_PKEY_EC_GROUP_CHECK_NAMED "named"
|
||||
# define OSSL_PKEY_EC_GROUP_CHECK_NAMED_NIST "named-nist"
|
||||
|
||||
/* OSSL_KEM_PARAM_OPERATION values */
|
||||
#define OSSL_KEM_PARAM_OPERATION_RSASVE "RSASVE"
|
||||
#define OSSL_KEM_PARAM_OPERATION_DHKEM "DHKEM"
|
||||
|
||||
/* Parameter name definitions - generated by util/perl/OpenSSL/paramnames.pm */
|
||||
{- generate_public_macros(); -}
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
#endif
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/crmf.h.in
|
||||
*
|
||||
* Copyright 2007-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2007-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright Nokia 2007-2019
|
||||
* Copyright Siemens AG 2015-2019
|
||||
*
|
||||
@ -43,8 +43,8 @@ extern "C" {
|
||||
|
||||
# define OSSL_CRMF_SUBSEQUENTMESSAGE_ENCRCERT 0
|
||||
# define OSSL_CRMF_SUBSEQUENTMESSAGE_CHALLENGERESP 1
|
||||
|
||||
typedef struct ossl_crmf_encryptedvalue_st OSSL_CRMF_ENCRYPTEDVALUE;
|
||||
|
||||
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_ENCRYPTEDVALUE)
|
||||
typedef struct ossl_crmf_msg_st OSSL_CRMF_MSG;
|
||||
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_MSG)
|
||||
@ -198,12 +198,14 @@ int OSSL_CRMF_MSGS_verify_popo(const OSSL_CRMF_MSGS *reqs,
|
||||
int rid, int acceptRAVerified,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
OSSL_CRMF_CERTTEMPLATE *OSSL_CRMF_MSG_get0_tmpl(const OSSL_CRMF_MSG *crm);
|
||||
const ASN1_INTEGER
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
X509_PUBKEY
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_publicKey(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_subject(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_issuer(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const ASN1_INTEGER
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
X509_EXTENSIONS
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_extensions(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*-
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 2007-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2007-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright Nokia 2007-2019
|
||||
* Copyright Siemens AG 2015-2019
|
||||
*
|
||||
@ -44,8 +44,8 @@ extern "C" {
|
||||
|
||||
# define OSSL_CRMF_SUBSEQUENTMESSAGE_ENCRCERT 0
|
||||
# define OSSL_CRMF_SUBSEQUENTMESSAGE_CHALLENGERESP 1
|
||||
|
||||
typedef struct ossl_crmf_encryptedvalue_st OSSL_CRMF_ENCRYPTEDVALUE;
|
||||
|
||||
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_ENCRYPTEDVALUE)
|
||||
typedef struct ossl_crmf_msg_st OSSL_CRMF_MSG;
|
||||
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_MSG)
|
||||
@ -151,12 +151,14 @@ int OSSL_CRMF_MSGS_verify_popo(const OSSL_CRMF_MSGS *reqs,
|
||||
int rid, int acceptRAVerified,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
OSSL_CRMF_CERTTEMPLATE *OSSL_CRMF_MSG_get0_tmpl(const OSSL_CRMF_MSG *crm);
|
||||
const ASN1_INTEGER
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
X509_PUBKEY
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_publicKey(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_subject(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_issuer(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const ASN1_INTEGER
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
X509_EXTENSIONS
|
||||
*OSSL_CRMF_CERTTEMPLATE_get0_extensions(const OSSL_CRMF_CERTTEMPLATE *tmpl);
|
||||
const X509_NAME
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/crypto.h.in
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@ -88,6 +88,7 @@ int CRYPTO_atomic_add(int *val, int amount, int *ret, CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_or(uint64_t *val, uint64_t op, uint64_t *ret,
|
||||
CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_load(uint64_t *val, uint64_t *ret, CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_load_int(int *val, int *ret, CRYPTO_RWLOCK *lock);
|
||||
|
||||
/* No longer needed, so this is a no-op */
|
||||
#define OPENSSL_malloc_init() while(0) continue
|
||||
@ -552,6 +553,8 @@ void OSSL_LIB_CTX_free(OSSL_LIB_CTX *);
|
||||
OSSL_LIB_CTX *OSSL_LIB_CTX_get0_global_default(void);
|
||||
OSSL_LIB_CTX *OSSL_LIB_CTX_set0_default(OSSL_LIB_CTX *libctx);
|
||||
|
||||
void OSSL_sleep(uint64_t millis);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@ -89,6 +89,7 @@ int CRYPTO_atomic_add(int *val, int amount, int *ret, CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_or(uint64_t *val, uint64_t op, uint64_t *ret,
|
||||
CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_load(uint64_t *val, uint64_t *ret, CRYPTO_RWLOCK *lock);
|
||||
int CRYPTO_atomic_load_int(int *val, int *ret, CRYPTO_RWLOCK *lock);
|
||||
|
||||
/* No longer needed, so this is a no-op */
|
||||
#define OPENSSL_malloc_init() while(0) continue
|
||||
@ -529,6 +530,8 @@ void OSSL_LIB_CTX_free(OSSL_LIB_CTX *);
|
||||
OSSL_LIB_CTX *OSSL_LIB_CTX_get0_global_default(void);
|
||||
OSSL_LIB_CTX *OSSL_LIB_CTX_set0_default(OSSL_LIB_CTX *libctx);
|
||||
|
||||
void OSSL_sleep(uint64_t millis);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -133,7 +133,7 @@ typedef enum {
|
||||
*/
|
||||
CT_POLICY_EVAL_CTX *CT_POLICY_EVAL_CTX_new_ex(OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
|
||||
/*
|
||||
* The same as CT_POLICY_EVAL_CTX_new_ex() but the default library
|
||||
* context and property query string is used.
|
||||
|
@ -85,7 +85,7 @@ typedef enum {
|
||||
*/
|
||||
CT_POLICY_EVAL_CTX *CT_POLICY_EVAL_CTX_new_ex(OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
|
||||
/*
|
||||
* The same as CT_POLICY_EVAL_CTX_new_ex() but the default library
|
||||
* context and property query string is used.
|
||||
|
@ -144,7 +144,7 @@ DECLARE_ASN1_ITEM(DHparams)
|
||||
# define DH_GENERATOR_3 3
|
||||
# define DH_GENERATOR_5 5
|
||||
|
||||
/* DH_check error codes */
|
||||
/* DH_check error codes, some of them shared with DH_check_pub_key */
|
||||
/*
|
||||
* NB: These values must align with the equivalently named macros in
|
||||
* internal/ffc.h.
|
||||
@ -154,10 +154,10 @@ DECLARE_ASN1_ITEM(DHparams)
|
||||
# define DH_UNABLE_TO_CHECK_GENERATOR 0x04
|
||||
# define DH_NOT_SUITABLE_GENERATOR 0x08
|
||||
# define DH_CHECK_Q_NOT_PRIME 0x10
|
||||
# define DH_CHECK_INVALID_Q_VALUE 0x20
|
||||
# define DH_CHECK_INVALID_Q_VALUE 0x20 /* +DH_check_pub_key */
|
||||
# define DH_CHECK_INVALID_J_VALUE 0x40
|
||||
# define DH_MODULUS_TOO_SMALL 0x80
|
||||
# define DH_MODULUS_TOO_LARGE 0x100
|
||||
# define DH_MODULUS_TOO_LARGE 0x100 /* +DH_check_pub_key */
|
||||
|
||||
/* DH_check_pub_key error codes */
|
||||
# define DH_CHECK_PUBKEY_TOO_SMALL 0x01
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -40,6 +40,7 @@
|
||||
# define DH_R_INVALID_PARAMETER_NID 114
|
||||
# define DH_R_INVALID_PUBKEY 102
|
||||
# define DH_R_INVALID_SECRET 128
|
||||
# define DH_R_INVALID_SIZE 129
|
||||
# define DH_R_KDF_PARAMETER_ERROR 112
|
||||
# define DH_R_KEYS_NOT_SET 108
|
||||
# define DH_R_MISSING_PUBKEY 125
|
||||
@ -50,6 +51,7 @@
|
||||
# define DH_R_NO_PRIVATE_VALUE 100
|
||||
# define DH_R_PARAMETER_ENCODING_ERROR 105
|
||||
# define DH_R_PEER_KEY_ERROR 111
|
||||
# define DH_R_Q_TOO_LARGE 130
|
||||
# define DH_R_SHARED_INFO_ERROR 113
|
||||
# define DH_R_UNABLE_TO_CHECK_GENERATOR 121
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -89,7 +89,7 @@ extern "C" {
|
||||
|
||||
/*
|
||||
* DLL settings. This part is a bit tough, because it's up to the
|
||||
* application implementor how he or she will link the application, so it
|
||||
* application implementer how he or she will link the application, so it
|
||||
* requires some macro to be used.
|
||||
*/
|
||||
# ifdef OPENSSL_SYS_WINDOWS
|
||||
|
30
deps/openssl/android/x86_64/usr/local/include/openssl/e_ostime.h
vendored
Normal file
30
deps/openssl/android/x86_64/usr/local/include/openssl/e_ostime.h
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* Copyright 2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#ifndef OPENSSL_E_OSTIME_H
|
||||
# define OPENSSL_E_OSTIME_H
|
||||
# pragma once
|
||||
|
||||
# include <openssl/macros.h>
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/e_os2.h>
|
||||
|
||||
/*
|
||||
* This header guarantees that 'struct timeval' will be available. It includes
|
||||
* the minimum headers needed to facilitate this. This may still be a
|
||||
* substantial set of headers on some platforms (e.g. <winsock2.h> on Win32).
|
||||
*/
|
||||
|
||||
# if defined(OPENSSL_SYS_WINDOWS)
|
||||
# include <winsock2.h>
|
||||
# else
|
||||
# include <sys/time.h>
|
||||
# endif
|
||||
|
||||
#endif
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2002-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@ -460,6 +460,22 @@ EC_GROUP *EC_GROUP_new_curve_GF2m(const BIGNUM *p, const BIGNUM *a,
|
||||
EC_GROUP *EC_GROUP_new_from_params(const OSSL_PARAM params[],
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
/**
|
||||
* Creates an OSSL_PARAM array with the parameters describing the given
|
||||
* EC_GROUP.
|
||||
* The resulting parameters may contain an explicit or a named curve depending
|
||||
* on the EC_GROUP.
|
||||
* \param group pointer to the EC_GROUP object
|
||||
* \param libctx The associated library context or NULL for the default
|
||||
* context
|
||||
* \param propq A property query string
|
||||
* \param bnctx BN_CTX object (optional)
|
||||
* \return newly created OSSL_PARAM array with the parameters
|
||||
* describing the given EC_GROUP or NULL if an error occurred
|
||||
*/
|
||||
OSSL_PARAM *EC_GROUP_to_params(const EC_GROUP *group, OSSL_LIB_CTX *libctx,
|
||||
const char *propq, BN_CTX *bnctx);
|
||||
|
||||
/**
|
||||
* Creates a EC_GROUP object with a curve specified by a NID
|
||||
* \param libctx The associated library context or NULL for the default
|
||||
@ -1111,7 +1127,7 @@ OSSL_DEPRECATEDIN_3_0 int EC_KEY_check_key(const EC_KEY *key);
|
||||
|
||||
/** Indicates if an EC_KEY can be used for signing.
|
||||
* \param eckey the EC_KEY object
|
||||
* \return 1 if can can sign and 0 otherwise.
|
||||
* \return 1 if can sign and 0 otherwise.
|
||||
*/
|
||||
OSSL_DEPRECATEDIN_3_0 int EC_KEY_can_sign(const EC_KEY *eckey);
|
||||
|
||||
@ -1287,7 +1303,7 @@ OSSL_DEPRECATEDIN_3_0 int EC_KEY_set_method(EC_KEY *key, const EC_KEY_METHOD *me
|
||||
OSSL_DEPRECATEDIN_3_0 EC_KEY *EC_KEY_new_method(ENGINE *engine);
|
||||
|
||||
/** The old name for ecdh_KDF_X9_63
|
||||
* The ECDH KDF specification has been mistakingly attributed to ANSI X9.62,
|
||||
* The ECDH KDF specification has been mistakenly attributed to ANSI X9.62,
|
||||
* it is actually specified in ANSI X9.63.
|
||||
* This identifier is retained for backwards compatibility
|
||||
*/
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -496,6 +496,13 @@ int ERR_get_next_error_library(void);
|
||||
int ERR_set_mark(void);
|
||||
int ERR_pop_to_mark(void);
|
||||
int ERR_clear_last_mark(void);
|
||||
int ERR_count_to_mark(void);
|
||||
|
||||
ERR_STATE *OSSL_ERR_STATE_new(void);
|
||||
void OSSL_ERR_STATE_save(ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_save_to_mark(ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_restore(const ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_free(ERR_STATE *es);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -485,6 +485,13 @@ int ERR_get_next_error_library(void);
|
||||
int ERR_set_mark(void);
|
||||
int ERR_pop_to_mark(void);
|
||||
int ERR_clear_last_mark(void);
|
||||
int ERR_count_to_mark(void);
|
||||
|
||||
ERR_STATE *OSSL_ERR_STATE_new(void);
|
||||
void OSSL_ERR_STATE_save(ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_save_to_mark(ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_restore(const ERR_STATE *es);
|
||||
void OSSL_ERR_STATE_free(ERR_STATE *es);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -35,6 +35,7 @@
|
||||
# define EVP_MAX_KEY_LENGTH 64
|
||||
# define EVP_MAX_IV_LENGTH 16
|
||||
# define EVP_MAX_BLOCK_LENGTH 32
|
||||
# define EVP_MAX_AEAD_TAG_LENGTH 16
|
||||
|
||||
# define PKCS5_SALT_LEN 8
|
||||
/* Default PKCS#5 iteration count */
|
||||
@ -228,7 +229,8 @@ int (*EVP_MD_meth_get_ctrl(const EVP_MD *md))(EVP_MD_CTX *ctx, int cmd,
|
||||
* if the following flag is set.
|
||||
*/
|
||||
# define EVP_MD_CTX_FLAG_FINALISE 0x0200
|
||||
/* NOTE: 0x0400 is reserved for internal usage */
|
||||
/* NOTE: 0x0400 and 0x0800 are reserved for internal usage */
|
||||
|
||||
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
EVP_CIPHER *EVP_CIPHER_meth_new(int cipher_type, int block_size, int key_len);
|
||||
@ -308,6 +310,7 @@ OSSL_DEPRECATEDIN_3_0 int
|
||||
# define EVP_CIPH_WRAP_MODE 0x10002
|
||||
# define EVP_CIPH_OCB_MODE 0x10003
|
||||
# define EVP_CIPH_SIV_MODE 0x10004
|
||||
# define EVP_CIPH_GCM_SIV_MODE 0x10005
|
||||
# define EVP_CIPH_MODE 0xF0007
|
||||
/* Set if variable length cipher */
|
||||
# define EVP_CIPH_VARIABLE_LENGTH 0x8
|
||||
@ -674,7 +677,7 @@ void BIO_set_md(BIO *, const EVP_MD *md);
|
||||
# define BIO_get_cipher_status(b) BIO_ctrl(b,BIO_C_GET_CIPHER_STATUS,0,NULL)
|
||||
# define BIO_get_cipher_ctx(b,c_pp) BIO_ctrl(b,BIO_C_GET_CIPHER_CTX,0,(c_pp))
|
||||
|
||||
/*__owur*/ int EVP_Cipher(EVP_CIPHER_CTX *c,
|
||||
__owur int EVP_Cipher(EVP_CIPHER_CTX *c,
|
||||
unsigned char *out,
|
||||
const unsigned char *in, unsigned int inl);
|
||||
|
||||
@ -752,7 +755,7 @@ int EVP_CIPHER_CTX_test_flags(const EVP_CIPHER_CTX *ctx, int flags);
|
||||
|
||||
__owur int EVP_EncryptInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key, const unsigned char *iv);
|
||||
/*__owur*/ int EVP_EncryptInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
__owur int EVP_EncryptInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
const EVP_CIPHER *cipher, ENGINE *impl,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv);
|
||||
@ -760,16 +763,16 @@ __owur int EVP_EncryptInit_ex2(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv,
|
||||
const OSSL_PARAM params[]);
|
||||
/*__owur*/ int EVP_EncryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
__owur int EVP_EncryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
int *outl, const unsigned char *in, int inl);
|
||||
/*__owur*/ int EVP_EncryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
__owur int EVP_EncryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
int *outl);
|
||||
/*__owur*/ int EVP_EncryptFinal(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
__owur int EVP_EncryptFinal(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
int *outl);
|
||||
|
||||
__owur int EVP_DecryptInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key, const unsigned char *iv);
|
||||
/*__owur*/ int EVP_DecryptInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
__owur int EVP_DecryptInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
const EVP_CIPHER *cipher, ENGINE *impl,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv);
|
||||
@ -777,17 +780,17 @@ __owur int EVP_DecryptInit_ex2(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv,
|
||||
const OSSL_PARAM params[]);
|
||||
/*__owur*/ int EVP_DecryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
__owur int EVP_DecryptUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
|
||||
int *outl, const unsigned char *in, int inl);
|
||||
__owur int EVP_DecryptFinal(EVP_CIPHER_CTX *ctx, unsigned char *outm,
|
||||
int *outl);
|
||||
/*__owur*/ int EVP_DecryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *outm,
|
||||
__owur int EVP_DecryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *outm,
|
||||
int *outl);
|
||||
|
||||
__owur int EVP_CipherInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *cipher,
|
||||
const unsigned char *key, const unsigned char *iv,
|
||||
int enc);
|
||||
/*__owur*/ int EVP_CipherInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
__owur int EVP_CipherInit_ex(EVP_CIPHER_CTX *ctx,
|
||||
const EVP_CIPHER *cipher, ENGINE *impl,
|
||||
const unsigned char *key,
|
||||
const unsigned char *iv, int enc);
|
||||
@ -821,18 +824,18 @@ __owur int EVP_DigestVerify(EVP_MD_CTX *ctx, const unsigned char *sigret,
|
||||
size_t siglen, const unsigned char *tbs,
|
||||
size_t tbslen);
|
||||
|
||||
int EVP_DigestSignInit_ex(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
__owur int EVP_DigestSignInit_ex(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
const char *mdname, OSSL_LIB_CTX *libctx,
|
||||
const char *props, EVP_PKEY *pkey,
|
||||
const OSSL_PARAM params[]);
|
||||
/*__owur*/ int EVP_DigestSignInit(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
__owur int EVP_DigestSignInit(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
const EVP_MD *type, ENGINE *e,
|
||||
EVP_PKEY *pkey);
|
||||
int EVP_DigestSignUpdate(EVP_MD_CTX *ctx, const void *data, size_t dsize);
|
||||
__owur int EVP_DigestSignUpdate(EVP_MD_CTX *ctx, const void *data, size_t dsize);
|
||||
__owur int EVP_DigestSignFinal(EVP_MD_CTX *ctx, unsigned char *sigret,
|
||||
size_t *siglen);
|
||||
|
||||
int EVP_DigestVerifyInit_ex(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
__owur int EVP_DigestVerifyInit_ex(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
const char *mdname, OSSL_LIB_CTX *libctx,
|
||||
const char *props, EVP_PKEY *pkey,
|
||||
const OSSL_PARAM params[]);
|
||||
@ -1927,14 +1930,17 @@ int EVP_PKEY_derive_set_peer(EVP_PKEY_CTX *ctx, EVP_PKEY *peer);
|
||||
int EVP_PKEY_derive(EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen);
|
||||
|
||||
int EVP_PKEY_encapsulate_init(EVP_PKEY_CTX *ctx, const OSSL_PARAM params[]);
|
||||
int EVP_PKEY_auth_encapsulate_init(EVP_PKEY_CTX *ctx, EVP_PKEY *authpriv,
|
||||
const OSSL_PARAM params[]);
|
||||
int EVP_PKEY_encapsulate(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *wrappedkey, size_t *wrappedkeylen,
|
||||
unsigned char *genkey, size_t *genkeylen);
|
||||
int EVP_PKEY_decapsulate_init(EVP_PKEY_CTX *ctx, const OSSL_PARAM params[]);
|
||||
int EVP_PKEY_auth_decapsulate_init(EVP_PKEY_CTX *ctx, EVP_PKEY *authpub,
|
||||
const OSSL_PARAM params[]);
|
||||
int EVP_PKEY_decapsulate(EVP_PKEY_CTX *ctx,
|
||||
unsigned char *unwrapped, size_t *unwrappedlen,
|
||||
const unsigned char *wrapped, size_t wrappedlen);
|
||||
|
||||
typedef int EVP_PKEY_gen_cb(EVP_PKEY_CTX *ctx);
|
||||
|
||||
int EVP_PKEY_fromdata_init(EVP_PKEY_CTX *ctx);
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -110,11 +110,14 @@
|
||||
# define EVP_R_UNABLE_TO_GET_RANDOM_STRENGTH 216
|
||||
# define EVP_R_UNABLE_TO_LOCK_CONTEXT 211
|
||||
# define EVP_R_UNABLE_TO_SET_CALLBACKS 217
|
||||
# define EVP_R_UNKNOWN_BITS 166
|
||||
# define EVP_R_UNKNOWN_CIPHER 160
|
||||
# define EVP_R_UNKNOWN_DIGEST 161
|
||||
# define EVP_R_UNKNOWN_KEY_TYPE 207
|
||||
# define EVP_R_UNKNOWN_MAX_SIZE 167
|
||||
# define EVP_R_UNKNOWN_OPTION 169
|
||||
# define EVP_R_UNKNOWN_PBE_ALGORITHM 121
|
||||
# define EVP_R_UNKNOWN_SECURITY_BITS 168
|
||||
# define EVP_R_UNSUPPORTED_ALGORITHM 156
|
||||
# define EVP_R_UNSUPPORTED_CIPHER 107
|
||||
# define EVP_R_UNSUPPORTED_KEYLENGTH 123
|
||||
|
169
deps/openssl/android/x86_64/usr/local/include/openssl/hpke.h
vendored
Normal file
169
deps/openssl/android/x86_64/usr/local/include/openssl/hpke.h
vendored
Normal file
@ -0,0 +1,169 @@
|
||||
/*
|
||||
* Copyright 2022-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the OpenSSL license (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/* APIs and data structures for HPKE (RFC9180) */
|
||||
#ifndef OSSL_HPKE_H
|
||||
# define OSSL_HPKE_H
|
||||
# pragma once
|
||||
|
||||
# include <openssl/types.h>
|
||||
|
||||
/* HPKE modes */
|
||||
# define OSSL_HPKE_MODE_BASE 0 /* Base mode */
|
||||
# define OSSL_HPKE_MODE_PSK 1 /* Pre-shared key mode */
|
||||
# define OSSL_HPKE_MODE_AUTH 2 /* Authenticated mode */
|
||||
# define OSSL_HPKE_MODE_PSKAUTH 3 /* PSK+authenticated mode */
|
||||
|
||||
/*
|
||||
* Max for ikm, psk, pskid, info and exporter contexts.
|
||||
* RFC9180, section 7.2.1 RECOMMENDS 64 octets but we have test vectors from
|
||||
* Appendix A.6.1 with a 66 octet IKM so we'll allow that.
|
||||
*/
|
||||
# define OSSL_HPKE_MAX_PARMLEN 66
|
||||
# define OSSL_HPKE_MIN_PSKLEN 32
|
||||
# define OSSL_HPKE_MAX_INFOLEN 1024
|
||||
|
||||
/*
|
||||
* The (16bit) HPKE algorithm ID IANA codepoints
|
||||
* If/when new IANA codepoints are added there are tables in
|
||||
* crypto/hpke/hpke_util.c that must also be updated.
|
||||
*/
|
||||
# define OSSL_HPKE_KEM_ID_RESERVED 0x0000 /* not used */
|
||||
# define OSSL_HPKE_KEM_ID_P256 0x0010 /* NIST P-256 */
|
||||
# define OSSL_HPKE_KEM_ID_P384 0x0011 /* NIST P-384 */
|
||||
# define OSSL_HPKE_KEM_ID_P521 0x0012 /* NIST P-521 */
|
||||
# define OSSL_HPKE_KEM_ID_X25519 0x0020 /* Curve25519 */
|
||||
# define OSSL_HPKE_KEM_ID_X448 0x0021 /* Curve448 */
|
||||
|
||||
# define OSSL_HPKE_KDF_ID_RESERVED 0x0000 /* not used */
|
||||
# define OSSL_HPKE_KDF_ID_HKDF_SHA256 0x0001 /* HKDF-SHA256 */
|
||||
# define OSSL_HPKE_KDF_ID_HKDF_SHA384 0x0002 /* HKDF-SHA384 */
|
||||
# define OSSL_HPKE_KDF_ID_HKDF_SHA512 0x0003 /* HKDF-SHA512 */
|
||||
|
||||
# define OSSL_HPKE_AEAD_ID_RESERVED 0x0000 /* not used */
|
||||
# define OSSL_HPKE_AEAD_ID_AES_GCM_128 0x0001 /* AES-GCM-128 */
|
||||
# define OSSL_HPKE_AEAD_ID_AES_GCM_256 0x0002 /* AES-GCM-256 */
|
||||
# define OSSL_HPKE_AEAD_ID_CHACHA_POLY1305 0x0003 /* Chacha20-Poly1305 */
|
||||
# define OSSL_HPKE_AEAD_ID_EXPORTONLY 0xFFFF /* export-only fake ID */
|
||||
|
||||
/* strings for suite components */
|
||||
# define OSSL_HPKE_KEMSTR_P256 "P-256" /* KEM id 0x10 */
|
||||
# define OSSL_HPKE_KEMSTR_P384 "P-384" /* KEM id 0x11 */
|
||||
# define OSSL_HPKE_KEMSTR_P521 "P-521" /* KEM id 0x12 */
|
||||
# define OSSL_HPKE_KEMSTR_X25519 "X25519" /* KEM id 0x20 */
|
||||
# define OSSL_HPKE_KEMSTR_X448 "X448" /* KEM id 0x21 */
|
||||
# define OSSL_HPKE_KDFSTR_256 "hkdf-sha256" /* KDF id 1 */
|
||||
# define OSSL_HPKE_KDFSTR_384 "hkdf-sha384" /* KDF id 2 */
|
||||
# define OSSL_HPKE_KDFSTR_512 "hkdf-sha512" /* KDF id 3 */
|
||||
# define OSSL_HPKE_AEADSTR_AES128GCM "aes-128-gcm" /* AEAD id 1 */
|
||||
# define OSSL_HPKE_AEADSTR_AES256GCM "aes-256-gcm" /* AEAD id 2 */
|
||||
# define OSSL_HPKE_AEADSTR_CP "chacha20-poly1305" /* AEAD id 3 */
|
||||
# define OSSL_HPKE_AEADSTR_EXP "exporter" /* AEAD id 0xff */
|
||||
|
||||
/*
|
||||
* Roles for use in creating an OSSL_HPKE_CTX, most
|
||||
* important use of this is to control nonce re-use.
|
||||
*/
|
||||
# define OSSL_HPKE_ROLE_SENDER 0
|
||||
# define OSSL_HPKE_ROLE_RECEIVER 1
|
||||
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
typedef struct {
|
||||
uint16_t kem_id; /* Key Encapsulation Method id */
|
||||
uint16_t kdf_id; /* Key Derivation Function id */
|
||||
uint16_t aead_id; /* AEAD alg id */
|
||||
} OSSL_HPKE_SUITE;
|
||||
|
||||
/**
|
||||
* Suite constants, use this like:
|
||||
* OSSL_HPKE_SUITE myvar = OSSL_HPKE_SUITE_DEFAULT;
|
||||
*/
|
||||
# ifndef OPENSSL_NO_ECX
|
||||
# define OSSL_HPKE_SUITE_DEFAULT \
|
||||
{\
|
||||
OSSL_HPKE_KEM_ID_X25519, \
|
||||
OSSL_HPKE_KDF_ID_HKDF_SHA256, \
|
||||
OSSL_HPKE_AEAD_ID_AES_GCM_128 \
|
||||
}
|
||||
# else
|
||||
# define OSSL_HPKE_SUITE_DEFAULT \
|
||||
{\
|
||||
OSSL_HPKE_KEM_ID_P256, \
|
||||
OSSL_HPKE_KDF_ID_HKDF_SHA256, \
|
||||
OSSL_HPKE_AEAD_ID_AES_GCM_128 \
|
||||
}
|
||||
#endif
|
||||
|
||||
typedef struct ossl_hpke_ctx_st OSSL_HPKE_CTX;
|
||||
|
||||
OSSL_HPKE_CTX *OSSL_HPKE_CTX_new(int mode, OSSL_HPKE_SUITE suite, int role,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
void OSSL_HPKE_CTX_free(OSSL_HPKE_CTX *ctx);
|
||||
|
||||
int OSSL_HPKE_encap(OSSL_HPKE_CTX *ctx,
|
||||
unsigned char *enc, size_t *enclen,
|
||||
const unsigned char *pub, size_t publen,
|
||||
const unsigned char *info, size_t infolen);
|
||||
int OSSL_HPKE_seal(OSSL_HPKE_CTX *ctx,
|
||||
unsigned char *ct, size_t *ctlen,
|
||||
const unsigned char *aad, size_t aadlen,
|
||||
const unsigned char *pt, size_t ptlen);
|
||||
|
||||
int OSSL_HPKE_keygen(OSSL_HPKE_SUITE suite,
|
||||
unsigned char *pub, size_t *publen, EVP_PKEY **priv,
|
||||
const unsigned char *ikm, size_t ikmlen,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int OSSL_HPKE_decap(OSSL_HPKE_CTX *ctx,
|
||||
const unsigned char *enc, size_t enclen,
|
||||
EVP_PKEY *recippriv,
|
||||
const unsigned char *info, size_t infolen);
|
||||
int OSSL_HPKE_open(OSSL_HPKE_CTX *ctx,
|
||||
unsigned char *pt, size_t *ptlen,
|
||||
const unsigned char *aad, size_t aadlen,
|
||||
const unsigned char *ct, size_t ctlen);
|
||||
|
||||
int OSSL_HPKE_export(OSSL_HPKE_CTX *ctx,
|
||||
unsigned char *secret,
|
||||
size_t secretlen,
|
||||
const unsigned char *label,
|
||||
size_t labellen);
|
||||
|
||||
int OSSL_HPKE_CTX_set1_authpriv(OSSL_HPKE_CTX *ctx, EVP_PKEY *priv);
|
||||
int OSSL_HPKE_CTX_set1_authpub(OSSL_HPKE_CTX *ctx,
|
||||
const unsigned char *pub,
|
||||
size_t publen);
|
||||
int OSSL_HPKE_CTX_set1_psk(OSSL_HPKE_CTX *ctx,
|
||||
const char *pskid,
|
||||
const unsigned char *psk, size_t psklen);
|
||||
|
||||
int OSSL_HPKE_CTX_set1_ikme(OSSL_HPKE_CTX *ctx,
|
||||
const unsigned char *ikme, size_t ikmelen);
|
||||
|
||||
int OSSL_HPKE_CTX_set_seq(OSSL_HPKE_CTX *ctx, uint64_t seq);
|
||||
int OSSL_HPKE_CTX_get_seq(OSSL_HPKE_CTX *ctx, uint64_t *seq);
|
||||
|
||||
int OSSL_HPKE_suite_check(OSSL_HPKE_SUITE suite);
|
||||
int OSSL_HPKE_get_grease_value(const OSSL_HPKE_SUITE *suite_in,
|
||||
OSSL_HPKE_SUITE *suite,
|
||||
unsigned char *enc, size_t *enclen,
|
||||
unsigned char *ct, size_t ctlen,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int OSSL_HPKE_str2suite(const char *str, OSSL_HPKE_SUITE *suite);
|
||||
size_t OSSL_HPKE_get_ciphertext_size(OSSL_HPKE_SUITE suite, size_t clearlen);
|
||||
size_t OSSL_HPKE_get_public_encap_size(OSSL_HPKE_SUITE suite);
|
||||
size_t OSSL_HPKE_get_recommended_ikmelen(OSSL_HPKE_SUITE suite);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
#endif
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2000-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright Siemens AG 2018-2020
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@ -33,6 +33,8 @@ extern "C" {
|
||||
# define OPENSSL_HTTP_PROXY "HTTP_PROXY"
|
||||
# define OPENSSL_HTTPS_PROXY "HTTPS_PROXY"
|
||||
|
||||
# ifndef OPENSSL_NO_HTTP
|
||||
|
||||
#define OSSL_HTTP_DEFAULT_MAX_LINE_LEN (4 * 1024)
|
||||
#define OSSL_HTTP_DEFAULT_MAX_RESP_LEN (100 * 1024)
|
||||
|
||||
@ -103,6 +105,8 @@ int OSSL_HTTP_parse_url(const char *url, int *pssl, char **puser, char **phost,
|
||||
const char *OSSL_HTTP_adapt_proxy(const char *proxy, const char *no_proxy,
|
||||
const char *server, int use_ssl);
|
||||
|
||||
|
||||
# endif /* !defined(OPENSSL_NO_HTTP) */
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -158,7 +158,7 @@
|
||||
/*
|
||||
* Define macros for deprecation and simulated removal purposes.
|
||||
*
|
||||
* The macros OSSL_DEPRECATED_{major}_{minor} are always defined for
|
||||
* The macros OSSL_DEPRECATEDIN_{major}_{minor} are always defined for
|
||||
* all OpenSSL versions we care for. They can be used as attributes
|
||||
* in function declarations where appropriate.
|
||||
*
|
||||
@ -169,6 +169,7 @@
|
||||
* 'no-deprecated'.
|
||||
*/
|
||||
|
||||
# undef OPENSSL_NO_DEPRECATED_3_1
|
||||
# undef OPENSSL_NO_DEPRECATED_3_0
|
||||
# undef OPENSSL_NO_DEPRECATED_1_1_1
|
||||
# undef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by crypto/objects/objects.pl
|
||||
*
|
||||
* Copyright 2000-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2000-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
@ -886,6 +886,14 @@
|
||||
#define NID_id_ct_signedChecklist 1247
|
||||
#define OBJ_id_ct_signedChecklist OBJ_id_smime_ct,48L
|
||||
|
||||
#define SN_id_ct_ASPA "id-ct-ASPA"
|
||||
#define NID_id_ct_ASPA 1250
|
||||
#define OBJ_id_ct_ASPA OBJ_id_smime_ct,49L
|
||||
|
||||
#define SN_id_ct_signedTAL "id-ct-signedTAL"
|
||||
#define NID_id_ct_signedTAL 1284
|
||||
#define OBJ_id_ct_signedTAL OBJ_id_smime_ct,50L
|
||||
|
||||
#define SN_id_smime_aa_receiptRequest "id-smime-aa-receiptRequest"
|
||||
#define NID_id_smime_aa_receiptRequest 212
|
||||
#define OBJ_id_smime_aa_receiptRequest OBJ_id_smime_aa,1L
|
||||
@ -1002,10 +1010,22 @@
|
||||
#define NID_id_smime_aa_dvcs_dvc 240
|
||||
#define OBJ_id_smime_aa_dvcs_dvc OBJ_id_smime_aa,29L
|
||||
|
||||
#define SN_id_aa_ets_attrCertificateRefs "id-aa-ets-attrCertificateRefs"
|
||||
#define NID_id_aa_ets_attrCertificateRefs 1261
|
||||
#define OBJ_id_aa_ets_attrCertificateRefs OBJ_id_smime_aa,44L
|
||||
|
||||
#define SN_id_aa_ets_attrRevocationRefs "id-aa-ets-attrRevocationRefs"
|
||||
#define NID_id_aa_ets_attrRevocationRefs 1262
|
||||
#define OBJ_id_aa_ets_attrRevocationRefs OBJ_id_smime_aa,45L
|
||||
|
||||
#define SN_id_smime_aa_signingCertificateV2 "id-smime-aa-signingCertificateV2"
|
||||
#define NID_id_smime_aa_signingCertificateV2 1086
|
||||
#define OBJ_id_smime_aa_signingCertificateV2 OBJ_id_smime_aa,47L
|
||||
|
||||
#define SN_id_aa_ets_archiveTimestampV2 "id-aa-ets-archiveTimestampV2"
|
||||
#define NID_id_aa_ets_archiveTimestampV2 1280
|
||||
#define OBJ_id_aa_ets_archiveTimestampV2 OBJ_id_smime_aa,48L
|
||||
|
||||
#define SN_id_smime_alg_ESDHwith3DES "id-smime-alg-ESDHwith3DES"
|
||||
#define NID_id_smime_alg_ESDHwith3DES 241
|
||||
#define OBJ_id_smime_alg_ESDHwith3DES OBJ_id_smime_alg,1L
|
||||
@ -1082,15 +1102,17 @@
|
||||
#define NID_localKeyID 157
|
||||
#define OBJ_localKeyID OBJ_pkcs9,21L
|
||||
|
||||
#define OBJ_ms_corp 1L,3L,6L,1L,4L,1L,311L
|
||||
|
||||
#define SN_ms_csp_name "CSPName"
|
||||
#define LN_ms_csp_name "Microsoft CSP Name"
|
||||
#define NID_ms_csp_name 417
|
||||
#define OBJ_ms_csp_name 1L,3L,6L,1L,4L,1L,311L,17L,1L
|
||||
#define OBJ_ms_csp_name OBJ_ms_corp,17L,1L
|
||||
|
||||
#define SN_LocalKeySet "LocalKeySet"
|
||||
#define LN_LocalKeySet "Microsoft Local Key set"
|
||||
#define NID_LocalKeySet 856
|
||||
#define OBJ_LocalKeySet 1L,3L,6L,1L,4L,1L,311L,17L,2L
|
||||
#define OBJ_LocalKeySet OBJ_ms_corp,17L,2L
|
||||
|
||||
#define OBJ_certTypes OBJ_pkcs9,22L
|
||||
|
||||
@ -1108,6 +1130,10 @@
|
||||
#define NID_x509Crl 160
|
||||
#define OBJ_x509Crl OBJ_crlTypes,1L
|
||||
|
||||
#define SN_id_aa_CMSAlgorithmProtection "id-aa-CMSAlgorithmProtection"
|
||||
#define NID_id_aa_CMSAlgorithmProtection 1263
|
||||
#define OBJ_id_aa_CMSAlgorithmProtection OBJ_pkcs9,52L
|
||||
|
||||
#define OBJ_pkcs12 OBJ_pkcs,12L
|
||||
|
||||
#define OBJ_pkcs12_pbeids OBJ_pkcs12,1L
|
||||
@ -1217,6 +1243,10 @@
|
||||
#define NID_SM2_with_SM3 1204
|
||||
#define OBJ_SM2_with_SM3 OBJ_sm_scheme,501L
|
||||
|
||||
#define LN_hmacWithSM3 "hmacWithSM3"
|
||||
#define NID_hmacWithSM3 1281
|
||||
#define OBJ_hmacWithSM3 OBJ_sm3,3L,1L
|
||||
|
||||
#define LN_hmacWithSHA224 "hmacWithSHA224"
|
||||
#define NID_hmacWithSHA224 798
|
||||
#define OBJ_hmacWithSHA224 OBJ_rsadsi,2L,8L
|
||||
@ -1300,42 +1330,62 @@
|
||||
#define SN_ms_ext_req "msExtReq"
|
||||
#define LN_ms_ext_req "Microsoft Extension Request"
|
||||
#define NID_ms_ext_req 171
|
||||
#define OBJ_ms_ext_req 1L,3L,6L,1L,4L,1L,311L,2L,1L,14L
|
||||
#define OBJ_ms_ext_req OBJ_ms_corp,2L,1L,14L
|
||||
|
||||
#define SN_ms_code_ind "msCodeInd"
|
||||
#define LN_ms_code_ind "Microsoft Individual Code Signing"
|
||||
#define NID_ms_code_ind 134
|
||||
#define OBJ_ms_code_ind 1L,3L,6L,1L,4L,1L,311L,2L,1L,21L
|
||||
#define OBJ_ms_code_ind OBJ_ms_corp,2L,1L,21L
|
||||
|
||||
#define SN_ms_code_com "msCodeCom"
|
||||
#define LN_ms_code_com "Microsoft Commercial Code Signing"
|
||||
#define NID_ms_code_com 135
|
||||
#define OBJ_ms_code_com 1L,3L,6L,1L,4L,1L,311L,2L,1L,22L
|
||||
#define OBJ_ms_code_com OBJ_ms_corp,2L,1L,22L
|
||||
|
||||
#define SN_ms_ctl_sign "msCTLSign"
|
||||
#define LN_ms_ctl_sign "Microsoft Trust List Signing"
|
||||
#define NID_ms_ctl_sign 136
|
||||
#define OBJ_ms_ctl_sign 1L,3L,6L,1L,4L,1L,311L,10L,3L,1L
|
||||
#define OBJ_ms_ctl_sign OBJ_ms_corp,10L,3L,1L
|
||||
|
||||
#define SN_ms_sgc "msSGC"
|
||||
#define LN_ms_sgc "Microsoft Server Gated Crypto"
|
||||
#define NID_ms_sgc 137
|
||||
#define OBJ_ms_sgc 1L,3L,6L,1L,4L,1L,311L,10L,3L,3L
|
||||
#define OBJ_ms_sgc OBJ_ms_corp,10L,3L,3L
|
||||
|
||||
#define SN_ms_efs "msEFS"
|
||||
#define LN_ms_efs "Microsoft Encrypted File System"
|
||||
#define NID_ms_efs 138
|
||||
#define OBJ_ms_efs 1L,3L,6L,1L,4L,1L,311L,10L,3L,4L
|
||||
#define OBJ_ms_efs OBJ_ms_corp,10L,3L,4L
|
||||
|
||||
#define SN_ms_smartcard_login "msSmartcardLogin"
|
||||
#define LN_ms_smartcard_login "Microsoft Smartcard Login"
|
||||
#define NID_ms_smartcard_login 648
|
||||
#define OBJ_ms_smartcard_login 1L,3L,6L,1L,4L,1L,311L,20L,2L,2L
|
||||
#define OBJ_ms_smartcard_login OBJ_ms_corp,20L,2L,2L
|
||||
|
||||
#define SN_ms_upn "msUPN"
|
||||
#define LN_ms_upn "Microsoft User Principal Name"
|
||||
#define NID_ms_upn 649
|
||||
#define OBJ_ms_upn 1L,3L,6L,1L,4L,1L,311L,20L,2L,3L
|
||||
#define OBJ_ms_upn OBJ_ms_corp,20L,2L,3L
|
||||
|
||||
#define SN_ms_ntds_sec_ext "ms-ntds-sec-ext"
|
||||
#define LN_ms_ntds_sec_ext "Microsoft NTDS CA Extension"
|
||||
#define NID_ms_ntds_sec_ext 1292
|
||||
#define OBJ_ms_ntds_sec_ext OBJ_ms_corp,25L,2L
|
||||
|
||||
#define SN_ms_ntds_obj_sid "ms-ntds-obj-sid"
|
||||
#define LN_ms_ntds_obj_sid "Microsoft NTDS AD objectSid"
|
||||
#define NID_ms_ntds_obj_sid 1291
|
||||
#define OBJ_ms_ntds_obj_sid OBJ_ms_corp,25L,2L,1L
|
||||
|
||||
#define SN_ms_cert_templ "ms-cert-templ"
|
||||
#define LN_ms_cert_templ "Microsoft certificate template"
|
||||
#define NID_ms_cert_templ 1293
|
||||
#define OBJ_ms_cert_templ OBJ_ms_corp,21L,7L
|
||||
|
||||
#define SN_ms_app_policies "ms-app-policies"
|
||||
#define LN_ms_app_policies "Microsoft Application Policies Extension"
|
||||
#define NID_ms_app_policies 1294
|
||||
#define OBJ_ms_app_policies OBJ_ms_corp,21L,10L
|
||||
|
||||
#define SN_idea_cbc "IDEA-CBC"
|
||||
#define LN_idea_cbc "idea-cbc"
|
||||
@ -1503,6 +1553,18 @@
|
||||
#define NID_id_mod_cmp2000 284
|
||||
#define OBJ_id_mod_cmp2000 OBJ_id_pkix_mod,16L
|
||||
|
||||
#define SN_id_mod_cmp2000_02 "id-mod-cmp2000-02"
|
||||
#define NID_id_mod_cmp2000_02 1251
|
||||
#define OBJ_id_mod_cmp2000_02 OBJ_id_pkix_mod,50L
|
||||
|
||||
#define SN_id_mod_cmp2021_88 "id-mod-cmp2021-88"
|
||||
#define NID_id_mod_cmp2021_88 1252
|
||||
#define OBJ_id_mod_cmp2021_88 OBJ_id_pkix_mod,99L
|
||||
|
||||
#define SN_id_mod_cmp2021_02 "id-mod-cmp2021-02"
|
||||
#define NID_id_mod_cmp2021_02 1253
|
||||
#define OBJ_id_mod_cmp2021_02 OBJ_id_pkix_mod,100L
|
||||
|
||||
#define SN_info_access "authorityInfoAccess"
|
||||
#define LN_info_access "Authority Information Access"
|
||||
#define NID_info_access 177
|
||||
@ -1783,6 +1845,22 @@
|
||||
#define NID_id_it_certReqTemplate 1225
|
||||
#define OBJ_id_it_certReqTemplate OBJ_id_it,19L
|
||||
|
||||
#define SN_id_it_rootCaCert "id-it-rootCaCert"
|
||||
#define NID_id_it_rootCaCert 1254
|
||||
#define OBJ_id_it_rootCaCert OBJ_id_it,20L
|
||||
|
||||
#define SN_id_it_certProfile "id-it-certProfile"
|
||||
#define NID_id_it_certProfile 1255
|
||||
#define OBJ_id_it_certProfile OBJ_id_it,21L
|
||||
|
||||
#define SN_id_it_crlStatusList "id-it-crlStatusList"
|
||||
#define NID_id_it_crlStatusList 1256
|
||||
#define OBJ_id_it_crlStatusList OBJ_id_it,22L
|
||||
|
||||
#define SN_id_it_crls "id-it-crls"
|
||||
#define NID_id_it_crls 1257
|
||||
#define OBJ_id_it_crls OBJ_id_it,23L
|
||||
|
||||
#define SN_id_regCtrl "id-regCtrl"
|
||||
#define NID_id_regCtrl 313
|
||||
#define OBJ_id_regCtrl OBJ_id_pkip,1L
|
||||
@ -1815,6 +1893,18 @@
|
||||
#define NID_id_regCtrl_protocolEncrKey 320
|
||||
#define OBJ_id_regCtrl_protocolEncrKey OBJ_id_regCtrl,6L
|
||||
|
||||
#define SN_id_regCtrl_altCertTemplate "id-regCtrl-altCertTemplate"
|
||||
#define NID_id_regCtrl_altCertTemplate 1258
|
||||
#define OBJ_id_regCtrl_altCertTemplate OBJ_id_regCtrl,7L
|
||||
|
||||
#define SN_id_regCtrl_algId "id-regCtrl-algId"
|
||||
#define NID_id_regCtrl_algId 1259
|
||||
#define OBJ_id_regCtrl_algId OBJ_id_regCtrl,11L
|
||||
|
||||
#define SN_id_regCtrl_rsaKeyLen "id-regCtrl-rsaKeyLen"
|
||||
#define NID_id_regCtrl_rsaKeyLen 1260
|
||||
#define OBJ_id_regCtrl_rsaKeyLen OBJ_id_regCtrl,12L
|
||||
|
||||
#define SN_id_regInfo_utf8Pairs "id-regInfo-utf8Pairs"
|
||||
#define NID_id_regInfo_utf8Pairs 321
|
||||
#define OBJ_id_regInfo_utf8Pairs OBJ_id_regInfo,1L
|
||||
@ -2649,11 +2739,56 @@
|
||||
#define NID_ext_key_usage 126
|
||||
#define OBJ_ext_key_usage OBJ_id_ce,37L
|
||||
|
||||
#define SN_authority_attribute_identifier "authorityAttributeIdentifier"
|
||||
#define LN_authority_attribute_identifier "X509v3 Authority Attribute Identifier"
|
||||
#define NID_authority_attribute_identifier 1295
|
||||
#define OBJ_authority_attribute_identifier OBJ_id_ce,38L
|
||||
|
||||
#define SN_role_spec_cert_identifier "roleSpecCertIdentifier"
|
||||
#define LN_role_spec_cert_identifier "X509v3 Role Specification Certificate Identifier"
|
||||
#define NID_role_spec_cert_identifier 1296
|
||||
#define OBJ_role_spec_cert_identifier OBJ_id_ce,39L
|
||||
|
||||
#define SN_basic_att_constraints "basicAttConstraints"
|
||||
#define LN_basic_att_constraints "X509v3 Basic Attribute Certificate Constraints"
|
||||
#define NID_basic_att_constraints 1297
|
||||
#define OBJ_basic_att_constraints OBJ_id_ce,41L
|
||||
|
||||
#define SN_delegated_name_constraints "delegatedNameConstraints"
|
||||
#define LN_delegated_name_constraints "X509v3 Delegated Name Constraints"
|
||||
#define NID_delegated_name_constraints 1298
|
||||
#define OBJ_delegated_name_constraints OBJ_id_ce,42L
|
||||
|
||||
#define SN_time_specification "timeSpecification"
|
||||
#define LN_time_specification "X509v3 Time Specification"
|
||||
#define NID_time_specification 1299
|
||||
#define OBJ_time_specification OBJ_id_ce,43L
|
||||
|
||||
#define SN_freshest_crl "freshestCRL"
|
||||
#define LN_freshest_crl "X509v3 Freshest CRL"
|
||||
#define NID_freshest_crl 857
|
||||
#define OBJ_freshest_crl OBJ_id_ce,46L
|
||||
|
||||
#define SN_attribute_descriptor "attributeDescriptor"
|
||||
#define LN_attribute_descriptor "X509v3 Attribute Descriptor"
|
||||
#define NID_attribute_descriptor 1300
|
||||
#define OBJ_attribute_descriptor OBJ_id_ce,48L
|
||||
|
||||
#define SN_user_notice "userNotice"
|
||||
#define LN_user_notice "X509v3 User Notice"
|
||||
#define NID_user_notice 1301
|
||||
#define OBJ_user_notice OBJ_id_ce,49L
|
||||
|
||||
#define SN_soa_identifier "sOAIdentifier"
|
||||
#define LN_soa_identifier "X509v3 Source of Authority Identifier"
|
||||
#define NID_soa_identifier 1302
|
||||
#define OBJ_soa_identifier OBJ_id_ce,50L
|
||||
|
||||
#define SN_acceptable_cert_policies "acceptableCertPolicies"
|
||||
#define LN_acceptable_cert_policies "X509v3 Acceptable Certification Policies"
|
||||
#define NID_acceptable_cert_policies 1303
|
||||
#define OBJ_acceptable_cert_policies OBJ_id_ce,52L
|
||||
|
||||
#define SN_inhibit_any_policy "inhibitAnyPolicy"
|
||||
#define LN_inhibit_any_policy "X509v3 Inhibit Any Policy"
|
||||
#define NID_inhibit_any_policy 748
|
||||
@ -2669,6 +2804,86 @@
|
||||
#define NID_no_rev_avail 403
|
||||
#define OBJ_no_rev_avail OBJ_id_ce,56L
|
||||
|
||||
#define SN_acceptable_privilege_policies "acceptablePrivPolicies"
|
||||
#define LN_acceptable_privilege_policies "X509v3 Acceptable Privilege Policies"
|
||||
#define NID_acceptable_privilege_policies 1304
|
||||
#define OBJ_acceptable_privilege_policies OBJ_id_ce,57L
|
||||
|
||||
#define SN_indirect_issuer "indirectIssuer"
|
||||
#define LN_indirect_issuer "X509v3 Indirect Issuer"
|
||||
#define NID_indirect_issuer 1305
|
||||
#define OBJ_indirect_issuer OBJ_id_ce,61L
|
||||
|
||||
#define SN_no_assertion "noAssertion"
|
||||
#define LN_no_assertion "X509v3 No Assertion"
|
||||
#define NID_no_assertion 1306
|
||||
#define OBJ_no_assertion OBJ_id_ce,62L
|
||||
|
||||
#define SN_id_aa_issuing_distribution_point "aAissuingDistributionPoint"
|
||||
#define LN_id_aa_issuing_distribution_point "X509v3 Attribute Authority Issuing Distribution Point"
|
||||
#define NID_id_aa_issuing_distribution_point 1307
|
||||
#define OBJ_id_aa_issuing_distribution_point OBJ_id_ce,63L
|
||||
|
||||
#define SN_issued_on_behalf_of "issuedOnBehalfOf"
|
||||
#define LN_issued_on_behalf_of "X509v3 Issued On Behalf Of"
|
||||
#define NID_issued_on_behalf_of 1308
|
||||
#define OBJ_issued_on_behalf_of OBJ_id_ce,64L
|
||||
|
||||
#define SN_single_use "singleUse"
|
||||
#define LN_single_use "X509v3 Single Use"
|
||||
#define NID_single_use 1309
|
||||
#define OBJ_single_use OBJ_id_ce,65L
|
||||
|
||||
#define SN_group_ac "groupAC"
|
||||
#define LN_group_ac "X509v3 Group Attribute Certificate"
|
||||
#define NID_group_ac 1310
|
||||
#define OBJ_group_ac OBJ_id_ce,66L
|
||||
|
||||
#define SN_allowed_attribute_assignments "allowedAttributeAssignments"
|
||||
#define LN_allowed_attribute_assignments "X509v3 Allowed Attribute Assignments"
|
||||
#define NID_allowed_attribute_assignments 1311
|
||||
#define OBJ_allowed_attribute_assignments OBJ_id_ce,67L
|
||||
|
||||
#define SN_attribute_mappings "attributeMappings"
|
||||
#define LN_attribute_mappings "X509v3 Attribute Mappings"
|
||||
#define NID_attribute_mappings 1312
|
||||
#define OBJ_attribute_mappings OBJ_id_ce,68L
|
||||
|
||||
#define SN_holder_name_constraints "holderNameConstraints"
|
||||
#define LN_holder_name_constraints "X509v3 Holder Name Constraints"
|
||||
#define NID_holder_name_constraints 1313
|
||||
#define OBJ_holder_name_constraints OBJ_id_ce,69L
|
||||
|
||||
#define SN_authorization_validation "authorizationValidation"
|
||||
#define LN_authorization_validation "X509v3 Authorization Validation"
|
||||
#define NID_authorization_validation 1314
|
||||
#define OBJ_authorization_validation OBJ_id_ce,70L
|
||||
|
||||
#define SN_prot_restrict "protRestrict"
|
||||
#define LN_prot_restrict "X509v3 Protocol Restriction"
|
||||
#define NID_prot_restrict 1315
|
||||
#define OBJ_prot_restrict OBJ_id_ce,71L
|
||||
|
||||
#define SN_subject_alt_public_key_info "subjectAltPublicKeyInfo"
|
||||
#define LN_subject_alt_public_key_info "X509v3 Subject Alternative Public Key Info"
|
||||
#define NID_subject_alt_public_key_info 1316
|
||||
#define OBJ_subject_alt_public_key_info OBJ_id_ce,72L
|
||||
|
||||
#define SN_alt_signature_algorithm "altSignatureAlgorithm"
|
||||
#define LN_alt_signature_algorithm "X509v3 Alternative Signature Algorithm"
|
||||
#define NID_alt_signature_algorithm 1317
|
||||
#define OBJ_alt_signature_algorithm OBJ_id_ce,73L
|
||||
|
||||
#define SN_alt_signature_value "altSignatureValue"
|
||||
#define LN_alt_signature_value "X509v3 Alternative Signature Value"
|
||||
#define NID_alt_signature_value 1318
|
||||
#define OBJ_alt_signature_value OBJ_id_ce,74L
|
||||
|
||||
#define SN_associated_information "associatedInformation"
|
||||
#define LN_associated_information "X509v3 Associated Information"
|
||||
#define NID_associated_information 1319
|
||||
#define OBJ_associated_information OBJ_id_ce,75L
|
||||
|
||||
#define SN_anyExtendedKeyUsage "anyExtendedKeyUsage"
|
||||
#define LN_anyExtendedKeyUsage "Any Extended Key Usage"
|
||||
#define NID_anyExtendedKeyUsage 910
|
||||
@ -3220,6 +3435,70 @@
|
||||
#define NID_hold_instruction_reject 433
|
||||
#define OBJ_hold_instruction_reject OBJ_holdInstruction,3L
|
||||
|
||||
#define SN_itu_t_identified_organization "itu-t-identified-organization"
|
||||
#define NID_itu_t_identified_organization 1264
|
||||
#define OBJ_itu_t_identified_organization OBJ_itu_t,4L
|
||||
|
||||
#define SN_etsi "etsi"
|
||||
#define NID_etsi 1265
|
||||
#define OBJ_etsi OBJ_itu_t_identified_organization,0L
|
||||
|
||||
#define SN_electronic_signature_standard "electronic-signature-standard"
|
||||
#define NID_electronic_signature_standard 1266
|
||||
#define OBJ_electronic_signature_standard OBJ_etsi,1733L
|
||||
|
||||
#define SN_ess_attributes "ess-attributes"
|
||||
#define NID_ess_attributes 1267
|
||||
#define OBJ_ess_attributes OBJ_electronic_signature_standard,2L
|
||||
|
||||
#define SN_id_aa_ets_mimeType "id-aa-ets-mimeType"
|
||||
#define NID_id_aa_ets_mimeType 1268
|
||||
#define OBJ_id_aa_ets_mimeType OBJ_ess_attributes,1L
|
||||
|
||||
#define SN_id_aa_ets_longTermValidation "id-aa-ets-longTermValidation"
|
||||
#define NID_id_aa_ets_longTermValidation 1269
|
||||
#define OBJ_id_aa_ets_longTermValidation OBJ_ess_attributes,2L
|
||||
|
||||
#define SN_id_aa_ets_SignaturePolicyDocument "id-aa-ets-SignaturePolicyDocument"
|
||||
#define NID_id_aa_ets_SignaturePolicyDocument 1270
|
||||
#define OBJ_id_aa_ets_SignaturePolicyDocument OBJ_ess_attributes,3L
|
||||
|
||||
#define SN_id_aa_ets_archiveTimestampV3 "id-aa-ets-archiveTimestampV3"
|
||||
#define NID_id_aa_ets_archiveTimestampV3 1271
|
||||
#define OBJ_id_aa_ets_archiveTimestampV3 OBJ_ess_attributes,4L
|
||||
|
||||
#define SN_id_aa_ATSHashIndex "id-aa-ATSHashIndex"
|
||||
#define NID_id_aa_ATSHashIndex 1272
|
||||
#define OBJ_id_aa_ATSHashIndex OBJ_ess_attributes,5L
|
||||
|
||||
#define SN_cades "cades"
|
||||
#define NID_cades 1273
|
||||
#define OBJ_cades OBJ_etsi,19122L
|
||||
|
||||
#define SN_cades_attributes "cades-attributes"
|
||||
#define NID_cades_attributes 1274
|
||||
#define OBJ_cades_attributes OBJ_cades,1L
|
||||
|
||||
#define SN_id_aa_ets_signerAttrV2 "id-aa-ets-signerAttrV2"
|
||||
#define NID_id_aa_ets_signerAttrV2 1275
|
||||
#define OBJ_id_aa_ets_signerAttrV2 OBJ_cades_attributes,1L
|
||||
|
||||
#define SN_id_aa_ets_sigPolicyStore "id-aa-ets-sigPolicyStore"
|
||||
#define NID_id_aa_ets_sigPolicyStore 1276
|
||||
#define OBJ_id_aa_ets_sigPolicyStore OBJ_cades_attributes,3L
|
||||
|
||||
#define SN_id_aa_ATSHashIndex_v2 "id-aa-ATSHashIndex-v2"
|
||||
#define NID_id_aa_ATSHashIndex_v2 1277
|
||||
#define OBJ_id_aa_ATSHashIndex_v2 OBJ_cades_attributes,4L
|
||||
|
||||
#define SN_id_aa_ATSHashIndex_v3 "id-aa-ATSHashIndex-v3"
|
||||
#define NID_id_aa_ATSHashIndex_v3 1278
|
||||
#define OBJ_id_aa_ATSHashIndex_v3 OBJ_cades_attributes,5L
|
||||
|
||||
#define SN_signedAssertion "signedAssertion"
|
||||
#define NID_signedAssertion 1279
|
||||
#define OBJ_signedAssertion OBJ_cades_attributes,6L
|
||||
|
||||
#define SN_data "data"
|
||||
#define NID_data 434
|
||||
#define OBJ_data OBJ_itu_t,9L
|
||||
@ -4952,6 +5231,21 @@
|
||||
#define NID_sm4_ctr 1139
|
||||
#define OBJ_sm4_ctr OBJ_sm_scheme,104L,7L
|
||||
|
||||
#define SN_sm4_gcm "SM4-GCM"
|
||||
#define LN_sm4_gcm "sm4-gcm"
|
||||
#define NID_sm4_gcm 1248
|
||||
#define OBJ_sm4_gcm OBJ_sm_scheme,104L,8L
|
||||
|
||||
#define SN_sm4_ccm "SM4-CCM"
|
||||
#define LN_sm4_ccm "sm4-ccm"
|
||||
#define NID_sm4_ccm 1249
|
||||
#define OBJ_sm4_ccm OBJ_sm_scheme,104L,9L
|
||||
|
||||
#define SN_sm4_xts "SM4-XTS"
|
||||
#define LN_sm4_xts "sm4-xts"
|
||||
#define NID_sm4_xts 1290
|
||||
#define OBJ_sm4_xts OBJ_sm_scheme,104L,10L
|
||||
|
||||
#define SN_hmac "HMAC"
|
||||
#define LN_hmac "hmac"
|
||||
#define NID_hmac 855
|
||||
@ -5029,6 +5323,9 @@
|
||||
#define NID_brainpoolP256r1 927
|
||||
#define OBJ_brainpoolP256r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,7L
|
||||
|
||||
#define SN_brainpoolP256r1tls13 "brainpoolP256r1tls13"
|
||||
#define NID_brainpoolP256r1tls13 1285
|
||||
|
||||
#define SN_brainpoolP256t1 "brainpoolP256t1"
|
||||
#define NID_brainpoolP256t1 928
|
||||
#define OBJ_brainpoolP256t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,8L
|
||||
@ -5045,6 +5342,9 @@
|
||||
#define NID_brainpoolP384r1 931
|
||||
#define OBJ_brainpoolP384r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,11L
|
||||
|
||||
#define SN_brainpoolP384r1tls13 "brainpoolP384r1tls13"
|
||||
#define NID_brainpoolP384r1tls13 1286
|
||||
|
||||
#define SN_brainpoolP384t1 "brainpoolP384t1"
|
||||
#define NID_brainpoolP384t1 932
|
||||
#define OBJ_brainpoolP384t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,12L
|
||||
@ -5053,6 +5353,9 @@
|
||||
#define NID_brainpoolP512r1 933
|
||||
#define OBJ_brainpoolP512r1 1L,3L,36L,3L,3L,2L,8L,1L,1L,13L
|
||||
|
||||
#define SN_brainpoolP512r1tls13 "brainpoolP512r1tls13"
|
||||
#define NID_brainpoolP512r1tls13 1287
|
||||
|
||||
#define SN_brainpoolP512t1 "brainpoolP512t1"
|
||||
#define NID_brainpoolP512t1 934
|
||||
#define OBJ_brainpoolP512t1 1L,3L,36L,3L,3L,2L,8L,1L,1L,14L
|
||||
@ -5130,17 +5433,17 @@
|
||||
#define SN_jurisdictionLocalityName "jurisdictionL"
|
||||
#define LN_jurisdictionLocalityName "jurisdictionLocalityName"
|
||||
#define NID_jurisdictionLocalityName 955
|
||||
#define OBJ_jurisdictionLocalityName 1L,3L,6L,1L,4L,1L,311L,60L,2L,1L,1L
|
||||
#define OBJ_jurisdictionLocalityName OBJ_ms_corp,60L,2L,1L,1L
|
||||
|
||||
#define SN_jurisdictionStateOrProvinceName "jurisdictionST"
|
||||
#define LN_jurisdictionStateOrProvinceName "jurisdictionStateOrProvinceName"
|
||||
#define NID_jurisdictionStateOrProvinceName 956
|
||||
#define OBJ_jurisdictionStateOrProvinceName 1L,3L,6L,1L,4L,1L,311L,60L,2L,1L,2L
|
||||
#define OBJ_jurisdictionStateOrProvinceName OBJ_ms_corp,60L,2L,1L,2L
|
||||
|
||||
#define SN_jurisdictionCountryName "jurisdictionC"
|
||||
#define LN_jurisdictionCountryName "jurisdictionCountryName"
|
||||
#define NID_jurisdictionCountryName 957
|
||||
#define OBJ_jurisdictionCountryName 1L,3L,6L,1L,4L,1L,311L,60L,2L,1L,3L
|
||||
#define OBJ_jurisdictionCountryName OBJ_ms_corp,60L,2L,1L,3L
|
||||
|
||||
#define SN_id_scrypt "id-scrypt"
|
||||
#define LN_id_scrypt "scrypt"
|
||||
@ -5432,6 +5735,24 @@
|
||||
#define LN_aes_256_siv "aes-256-siv"
|
||||
#define NID_aes_256_siv 1200
|
||||
|
||||
#define SN_oracle "oracle-organization"
|
||||
#define LN_oracle "Oracle organization"
|
||||
#define NID_oracle 1282
|
||||
#define OBJ_oracle OBJ_joint_iso_itu_t,16L,840L,1L,113894L
|
||||
|
||||
#define SN_oracle_jdk_trustedkeyusage "oracle-jdk-trustedkeyusage"
|
||||
#define LN_oracle_jdk_trustedkeyusage "Trusted key usage (Oracle)"
|
||||
#define NID_oracle_jdk_trustedkeyusage 1283
|
||||
#define OBJ_oracle_jdk_trustedkeyusage OBJ_oracle,746875L,1L,1L
|
||||
|
||||
#define SN_brotli "brotli"
|
||||
#define LN_brotli "Brotli compression"
|
||||
#define NID_brotli 1288
|
||||
|
||||
#define SN_zstd "zstd"
|
||||
#define LN_zstd "Zstandard compression"
|
||||
#define NID_zstd 1289
|
||||
|
||||
#endif /* OPENSSL_OBJ_MAC_H */
|
||||
|
||||
#ifndef OPENSSL_NO_DEPRECATED_3_0
|
||||
|
@ -28,8 +28,8 @@ extern "C" {
|
||||
* These macros express version number MAJOR.MINOR.PATCH exactly
|
||||
*/
|
||||
# define OPENSSL_VERSION_MAJOR 3
|
||||
# define OPENSSL_VERSION_MINOR 1
|
||||
# define OPENSSL_VERSION_PATCH 4
|
||||
# define OPENSSL_VERSION_MINOR 2
|
||||
# define OPENSSL_VERSION_PATCH 0
|
||||
|
||||
/*
|
||||
* Additional version information
|
||||
@ -74,21 +74,21 @@ extern "C" {
|
||||
* longer variant with OPENSSL_VERSION_PRE_RELEASE_STR and
|
||||
* OPENSSL_VERSION_BUILD_METADATA_STR appended.
|
||||
*/
|
||||
# define OPENSSL_VERSION_STR "3.1.4"
|
||||
# define OPENSSL_FULL_VERSION_STR "3.1.4"
|
||||
# define OPENSSL_VERSION_STR "3.2.0"
|
||||
# define OPENSSL_FULL_VERSION_STR "3.2.0"
|
||||
|
||||
/*
|
||||
* SECTION 3: ADDITIONAL METADATA
|
||||
*
|
||||
* These strings are defined separately to allow them to be parsable.
|
||||
*/
|
||||
# define OPENSSL_RELEASE_DATE "24 Oct 2023"
|
||||
# define OPENSSL_RELEASE_DATE "23 Nov 2023"
|
||||
|
||||
/*
|
||||
* SECTION 4: BACKWARD COMPATIBILITY
|
||||
*/
|
||||
|
||||
# define OPENSSL_VERSION_TEXT "OpenSSL 3.1.4 24 Oct 2023"
|
||||
# define OPENSSL_VERSION_TEXT "OpenSSL 3.2.0 23 Nov 2023"
|
||||
|
||||
/* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
|
||||
# ifdef OPENSSL_VERSION_PRE_RELEASE
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -57,6 +57,7 @@ extern "C" {
|
||||
# define PEM_STRING_ECPRIVATEKEY "EC PRIVATE KEY"
|
||||
# define PEM_STRING_PARAMETERS "PARAMETERS"
|
||||
# define PEM_STRING_CMS "CMS"
|
||||
# define PEM_STRING_SM2PARAMETERS "SM2 PARAMETERS"
|
||||
|
||||
# define PEM_TYPE_ENCRYPTED 10
|
||||
# define PEM_TYPE_MIC_ONLY 20
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/pkcs12.h.in
|
||||
*
|
||||
* Copyright 1999-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1999-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -44,6 +44,7 @@ extern "C" {
|
||||
|
||||
# define PKCS12_MAC_KEY_LENGTH 20
|
||||
|
||||
/* The macro is expected to be used only internally. Kept for backwards compatibility. */
|
||||
# define PKCS12_SALT_LEN 8
|
||||
|
||||
/* It's not clear if these are actually needed... */
|
||||
@ -133,7 +134,9 @@ int PKCS12_SAFEBAG_get_bag_nid(const PKCS12_SAFEBAG *bag);
|
||||
const ASN1_TYPE *PKCS12_SAFEBAG_get0_bag_obj(const PKCS12_SAFEBAG *bag);
|
||||
const ASN1_OBJECT *PKCS12_SAFEBAG_get0_bag_type(const PKCS12_SAFEBAG *bag);
|
||||
|
||||
X509 *PKCS12_SAFEBAG_get1_cert_ex(const PKCS12_SAFEBAG *bag, OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509 *PKCS12_SAFEBAG_get1_cert(const PKCS12_SAFEBAG *bag);
|
||||
X509_CRL *PKCS12_SAFEBAG_get1_crl_ex(const PKCS12_SAFEBAG *bag, OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509_CRL *PKCS12_SAFEBAG_get1_crl(const PKCS12_SAFEBAG *bag);
|
||||
const STACK_OF(PKCS12_SAFEBAG) *
|
||||
PKCS12_SAFEBAG_get0_safes(const PKCS12_SAFEBAG *bag);
|
||||
@ -221,6 +224,7 @@ ASN1_TYPE *PKCS12_get_attr_gen(const STACK_OF(X509_ATTRIBUTE) *attrs,
|
||||
char *PKCS12_get_friendlyname(PKCS12_SAFEBAG *bag);
|
||||
const STACK_OF(X509_ATTRIBUTE) *
|
||||
PKCS12_SAFEBAG_get0_attrs(const PKCS12_SAFEBAG *bag);
|
||||
void PKCS12_SAFEBAG_set0_attrs(PKCS12_SAFEBAG *bag, STACK_OF(X509_ATTRIBUTE) *attrs);
|
||||
unsigned char *PKCS12_pbe_crypt(const X509_ALGOR *algor,
|
||||
const char *pass, int passlen,
|
||||
const unsigned char *in, int inlen,
|
||||
@ -308,6 +312,7 @@ DECLARE_ASN1_ITEM(PKCS12_AUTHSAFES)
|
||||
void PKCS12_PBE_add(void);
|
||||
int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert,
|
||||
STACK_OF(X509) **ca);
|
||||
typedef int PKCS12_create_cb(PKCS12_SAFEBAG *bag, void *cbarg);
|
||||
PKCS12 *PKCS12_create(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype);
|
||||
@ -315,6 +320,11 @@ PKCS12 *PKCS12_create_ex(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype,
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
PKCS12 *PKCS12_create_ex2(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype,
|
||||
OSSL_LIB_CTX *ctx, const char *propq,
|
||||
PKCS12_create_cb *cb, void *cbarg);
|
||||
|
||||
PKCS12_SAFEBAG *PKCS12_add_cert(STACK_OF(PKCS12_SAFEBAG) **pbags, X509 *cert);
|
||||
PKCS12_SAFEBAG *PKCS12_add_key(STACK_OF(PKCS12_SAFEBAG) **pbags,
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 1999-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1999-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -45,6 +45,7 @@ extern "C" {
|
||||
|
||||
# define PKCS12_MAC_KEY_LENGTH 20
|
||||
|
||||
/* The macro is expected to be used only internally. Kept for backwards compatibility. */
|
||||
# define PKCS12_SALT_LEN 8
|
||||
|
||||
/* It's not clear if these are actually needed... */
|
||||
@ -110,7 +111,9 @@ int PKCS12_SAFEBAG_get_bag_nid(const PKCS12_SAFEBAG *bag);
|
||||
const ASN1_TYPE *PKCS12_SAFEBAG_get0_bag_obj(const PKCS12_SAFEBAG *bag);
|
||||
const ASN1_OBJECT *PKCS12_SAFEBAG_get0_bag_type(const PKCS12_SAFEBAG *bag);
|
||||
|
||||
X509 *PKCS12_SAFEBAG_get1_cert_ex(const PKCS12_SAFEBAG *bag, OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509 *PKCS12_SAFEBAG_get1_cert(const PKCS12_SAFEBAG *bag);
|
||||
X509_CRL *PKCS12_SAFEBAG_get1_crl_ex(const PKCS12_SAFEBAG *bag, OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509_CRL *PKCS12_SAFEBAG_get1_crl(const PKCS12_SAFEBAG *bag);
|
||||
const STACK_OF(PKCS12_SAFEBAG) *
|
||||
PKCS12_SAFEBAG_get0_safes(const PKCS12_SAFEBAG *bag);
|
||||
@ -198,6 +201,7 @@ ASN1_TYPE *PKCS12_get_attr_gen(const STACK_OF(X509_ATTRIBUTE) *attrs,
|
||||
char *PKCS12_get_friendlyname(PKCS12_SAFEBAG *bag);
|
||||
const STACK_OF(X509_ATTRIBUTE) *
|
||||
PKCS12_SAFEBAG_get0_attrs(const PKCS12_SAFEBAG *bag);
|
||||
void PKCS12_SAFEBAG_set0_attrs(PKCS12_SAFEBAG *bag, STACK_OF(X509_ATTRIBUTE) *attrs);
|
||||
unsigned char *PKCS12_pbe_crypt(const X509_ALGOR *algor,
|
||||
const char *pass, int passlen,
|
||||
const unsigned char *in, int inlen,
|
||||
@ -285,6 +289,7 @@ DECLARE_ASN1_ITEM(PKCS12_AUTHSAFES)
|
||||
void PKCS12_PBE_add(void);
|
||||
int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert,
|
||||
STACK_OF(X509) **ca);
|
||||
typedef int PKCS12_create_cb(PKCS12_SAFEBAG *bag, void *cbarg);
|
||||
PKCS12 *PKCS12_create(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype);
|
||||
@ -292,6 +297,11 @@ PKCS12 *PKCS12_create_ex(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype,
|
||||
OSSL_LIB_CTX *ctx, const char *propq);
|
||||
PKCS12 *PKCS12_create_ex2(const char *pass, const char *name, EVP_PKEY *pkey,
|
||||
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
|
||||
int iter, int mac_iter, int keytype,
|
||||
OSSL_LIB_CTX *ctx, const char *propq,
|
||||
PKCS12_create_cb *cb, void *cbarg);
|
||||
|
||||
PKCS12_SAFEBAG *PKCS12_add_cert(STACK_OF(PKCS12_SAFEBAG) **pbags, X509 *cert);
|
||||
PKCS12_SAFEBAG *PKCS12_add_key(STACK_OF(PKCS12_SAFEBAG) **pbags,
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -21,6 +21,7 @@
|
||||
/*
|
||||
* PKCS12 reason codes.
|
||||
*/
|
||||
# define PKCS12_R_CALLBACK_FAILED 115
|
||||
# define PKCS12_R_CANT_PACK_STRUCTURE 100
|
||||
# define PKCS12_R_CONTENT_TYPE_NOT_DATA 121
|
||||
# define PKCS12_R_DECODE_ERROR 101
|
||||
|
@ -134,8 +134,8 @@ SKM_DEFINE_STACK_OF_INTERNAL(PKCS7_RECIP_INFO, PKCS7_RECIP_INFO, PKCS7_RECIP_INF
|
||||
typedef struct pkcs7_signed_st {
|
||||
ASN1_INTEGER *version; /* version 1 */
|
||||
STACK_OF(X509_ALGOR) *md_algs; /* md used */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */ /* name should be 'certificates' */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */ /* name should be 'crls' */
|
||||
STACK_OF(PKCS7_SIGNER_INFO) *signer_info;
|
||||
struct pkcs7_st *contents;
|
||||
} PKCS7_SIGNED;
|
||||
@ -161,8 +161,8 @@ typedef struct pkcs7_enveloped_st {
|
||||
typedef struct pkcs7_signedandenveloped_st {
|
||||
ASN1_INTEGER *version; /* version 1 */
|
||||
STACK_OF(X509_ALGOR) *md_algs; /* md used */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */ /* name should be 'certificates' */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */ /* name should be 'crls' */
|
||||
STACK_OF(PKCS7_SIGNER_INFO) *signer_info;
|
||||
PKCS7_ENC_CONTENT *enc_data;
|
||||
STACK_OF(PKCS7_RECIP_INFO) *recipientinfo;
|
||||
@ -203,7 +203,7 @@ typedef struct pkcs7_st {
|
||||
/* NID_pkcs7_data */
|
||||
ASN1_OCTET_STRING *data;
|
||||
/* NID_pkcs7_signed */
|
||||
PKCS7_SIGNED *sign;
|
||||
PKCS7_SIGNED *sign; /* field name 'signed' would clash with C keyword */
|
||||
/* NID_pkcs7_enveloped */
|
||||
PKCS7_ENVELOPE *enveloped;
|
||||
/* NID_pkcs7_signedAndEnveloped */
|
||||
@ -344,13 +344,13 @@ int PKCS7_SIGNER_INFO_set(PKCS7_SIGNER_INFO *p7i, X509 *x509, EVP_PKEY *pkey,
|
||||
const EVP_MD *dgst);
|
||||
int PKCS7_SIGNER_INFO_sign(PKCS7_SIGNER_INFO *si);
|
||||
int PKCS7_add_signer(PKCS7 *p7, PKCS7_SIGNER_INFO *p7i);
|
||||
int PKCS7_add_certificate(PKCS7 *p7, X509 *x509);
|
||||
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *x509);
|
||||
int PKCS7_add_certificate(PKCS7 *p7, X509 *cert);
|
||||
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *crl);
|
||||
int PKCS7_content_new(PKCS7 *p7, int nid);
|
||||
int PKCS7_dataVerify(X509_STORE *cert_store, X509_STORE_CTX *ctx,
|
||||
BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si);
|
||||
int PKCS7_signatureVerify(BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si,
|
||||
X509 *x509);
|
||||
X509 *signer);
|
||||
|
||||
BIO *PKCS7_dataInit(PKCS7 *p7, BIO *bio);
|
||||
int PKCS7_dataFinal(PKCS7 *p7, BIO *bio);
|
||||
|
@ -87,8 +87,8 @@ typedef struct pkcs7_recip_info_st {
|
||||
typedef struct pkcs7_signed_st {
|
||||
ASN1_INTEGER *version; /* version 1 */
|
||||
STACK_OF(X509_ALGOR) *md_algs; /* md used */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */ /* name should be 'certificates' */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */ /* name should be 'crls' */
|
||||
STACK_OF(PKCS7_SIGNER_INFO) *signer_info;
|
||||
struct pkcs7_st *contents;
|
||||
} PKCS7_SIGNED;
|
||||
@ -114,8 +114,8 @@ typedef struct pkcs7_enveloped_st {
|
||||
typedef struct pkcs7_signedandenveloped_st {
|
||||
ASN1_INTEGER *version; /* version 1 */
|
||||
STACK_OF(X509_ALGOR) *md_algs; /* md used */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */
|
||||
STACK_OF(X509) *cert; /* [ 0 ] */ /* name should be 'certificates' */
|
||||
STACK_OF(X509_CRL) *crl; /* [ 1 ] */ /* name should be 'crls' */
|
||||
STACK_OF(PKCS7_SIGNER_INFO) *signer_info;
|
||||
PKCS7_ENC_CONTENT *enc_data;
|
||||
STACK_OF(PKCS7_RECIP_INFO) *recipientinfo;
|
||||
@ -156,7 +156,7 @@ typedef struct pkcs7_st {
|
||||
/* NID_pkcs7_data */
|
||||
ASN1_OCTET_STRING *data;
|
||||
/* NID_pkcs7_signed */
|
||||
PKCS7_SIGNED *sign;
|
||||
PKCS7_SIGNED *sign; /* field name 'signed' would clash with C keyword */
|
||||
/* NID_pkcs7_enveloped */
|
||||
PKCS7_ENVELOPE *enveloped;
|
||||
/* NID_pkcs7_signedAndEnveloped */
|
||||
@ -273,13 +273,13 @@ int PKCS7_SIGNER_INFO_set(PKCS7_SIGNER_INFO *p7i, X509 *x509, EVP_PKEY *pkey,
|
||||
const EVP_MD *dgst);
|
||||
int PKCS7_SIGNER_INFO_sign(PKCS7_SIGNER_INFO *si);
|
||||
int PKCS7_add_signer(PKCS7 *p7, PKCS7_SIGNER_INFO *p7i);
|
||||
int PKCS7_add_certificate(PKCS7 *p7, X509 *x509);
|
||||
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *x509);
|
||||
int PKCS7_add_certificate(PKCS7 *p7, X509 *cert);
|
||||
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *crl);
|
||||
int PKCS7_content_new(PKCS7 *p7, int nid);
|
||||
int PKCS7_dataVerify(X509_STORE *cert_store, X509_STORE_CTX *ctx,
|
||||
BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si);
|
||||
int PKCS7_signatureVerify(BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si,
|
||||
X509 *x509);
|
||||
X509 *signer);
|
||||
|
||||
BIO *PKCS7_dataInit(PKCS7 *p7, BIO *bio);
|
||||
int PKCS7_dataFinal(PKCS7 *p7, BIO *bio);
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2021-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -19,6 +19,7 @@ extern "C" {
|
||||
|
||||
# define SSL_MAX_MASTER_KEY_LENGTH 48
|
||||
|
||||
/* SSL/TLS uses a 2 byte unsigned version number */
|
||||
# define SSL3_VERSION 0x0300
|
||||
# define TLS1_VERSION 0x0301
|
||||
# define TLS1_1_VERSION 0x0302
|
||||
@ -28,6 +29,9 @@ extern "C" {
|
||||
# define DTLS1_2_VERSION 0xFEFD
|
||||
# define DTLS1_BAD_VER 0x0100
|
||||
|
||||
/* QUIC uses a 4 byte unsigned version number */
|
||||
# define OSSL_QUIC1_VERSION 0x0000001
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -52,6 +52,7 @@
|
||||
# define PROV_R_INDICATOR_INTEGRITY_FAILURE 210
|
||||
# define PROV_R_INSUFFICIENT_DRBG_STRENGTH 181
|
||||
# define PROV_R_INVALID_AAD 108
|
||||
# define PROV_R_INVALID_AEAD 231
|
||||
# define PROV_R_INVALID_CONFIG_DATA 211
|
||||
# define PROV_R_INVALID_CONSTANT_LENGTH 157
|
||||
# define PROV_R_INVALID_CURVE 176
|
||||
@ -63,9 +64,11 @@
|
||||
# define PROV_R_INVALID_INPUT_LENGTH 230
|
||||
# define PROV_R_INVALID_ITERATION_COUNT 123
|
||||
# define PROV_R_INVALID_IV_LENGTH 109
|
||||
# define PROV_R_INVALID_KDF 232
|
||||
# define PROV_R_INVALID_KEY 158
|
||||
# define PROV_R_INVALID_KEY_LENGTH 105
|
||||
# define PROV_R_INVALID_MAC 151
|
||||
# define PROV_R_INVALID_MEMORY_SIZE 235
|
||||
# define PROV_R_INVALID_MGF1_MD 167
|
||||
# define PROV_R_INVALID_MODE 125
|
||||
# define PROV_R_INVALID_OUTPUT_LENGTH 217
|
||||
@ -77,6 +80,7 @@
|
||||
# define PROV_R_INVALID_STATE 212
|
||||
# define PROV_R_INVALID_TAG 110
|
||||
# define PROV_R_INVALID_TAG_LENGTH 118
|
||||
# define PROV_R_INVALID_THREAD_POOL_SIZE 234
|
||||
# define PROV_R_INVALID_UKM_LENGTH 200
|
||||
# define PROV_R_INVALID_X931_DIGEST 170
|
||||
# define PROV_R_IN_ERROR_STATE 192
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2019-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -17,13 +17,19 @@
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
/* Set the default provider search path */
|
||||
/* Set and Get a library context search path */
|
||||
int OSSL_PROVIDER_set_default_search_path(OSSL_LIB_CTX *, const char *path);
|
||||
const char *OSSL_PROVIDER_get0_default_search_path(OSSL_LIB_CTX *libctx);
|
||||
|
||||
/* Load and unload a provider */
|
||||
OSSL_PROVIDER *OSSL_PROVIDER_load(OSSL_LIB_CTX *, const char *name);
|
||||
OSSL_PROVIDER *OSSL_PROVIDER_load_ex(OSSL_LIB_CTX *, const char *name,
|
||||
OSSL_PARAM *params);
|
||||
OSSL_PROVIDER *OSSL_PROVIDER_try_load(OSSL_LIB_CTX *, const char *name,
|
||||
int retain_fallbacks);
|
||||
OSSL_PROVIDER *OSSL_PROVIDER_try_load_ex(OSSL_LIB_CTX *, const char *name,
|
||||
OSSL_PARAM *params,
|
||||
int retain_fallbacks);
|
||||
int OSSL_PROVIDER_unload(OSSL_PROVIDER *prov);
|
||||
int OSSL_PROVIDER_available(OSSL_LIB_CTX *, const char *name);
|
||||
int OSSL_PROVIDER_do_all(OSSL_LIB_CTX *ctx,
|
||||
|
37
deps/openssl/android/x86_64/usr/local/include/openssl/quic.h
vendored
Normal file
37
deps/openssl/android/x86_64/usr/local/include/openssl/quic.h
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Copyright 2022-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#ifndef OPENSSL_QUIC_H
|
||||
# define OPENSSL_QUIC_H
|
||||
# pragma once
|
||||
|
||||
# include <openssl/macros.h>
|
||||
# include <openssl/ssl.h>
|
||||
|
||||
# ifndef OPENSSL_NO_QUIC
|
||||
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
/*
|
||||
* Method used for non-thread-assisted QUIC client operation.
|
||||
*/
|
||||
__owur const SSL_METHOD *OSSL_QUIC_client_method(void);
|
||||
/*
|
||||
* Method used for thread-assisted QUIC client operation.
|
||||
*/
|
||||
__owur const SSL_METHOD *OSSL_QUIC_client_thread_method(void);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
# endif /* OPENSSL_NO_QUIC */
|
||||
#endif
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -189,6 +189,8 @@ int EVP_PKEY_CTX_get0_rsa_oaep_label(EVP_PKEY_CTX *ctx, unsigned char **label);
|
||||
|
||||
# define EVP_PKEY_CTRL_RSA_KEYGEN_PRIMES (EVP_PKEY_ALG_CTRL + 13)
|
||||
|
||||
# define EVP_PKEY_CTRL_RSA_IMPLICIT_REJECTION (EVP_PKEY_ALG_CTRL + 14)
|
||||
|
||||
# define RSA_PKCS1_PADDING 1
|
||||
# define RSA_NO_PADDING 3
|
||||
# define RSA_PKCS1_OAEP_PADDING 4
|
||||
@ -198,6 +200,9 @@ int EVP_PKEY_CTX_get0_rsa_oaep_label(EVP_PKEY_CTX *ctx, unsigned char **label);
|
||||
# define RSA_PKCS1_PSS_PADDING 6
|
||||
# define RSA_PKCS1_WITH_TLS_PADDING 7
|
||||
|
||||
/* internal RSA_ only */
|
||||
# define RSA_PKCS1_NO_IMPLICIT_REJECT_PADDING 8
|
||||
|
||||
# define RSA_PKCS1_PADDING_SIZE 11
|
||||
|
||||
# define RSA_set_app_data(s,arg) RSA_set_ex_data(s,0,arg)
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -81,6 +81,7 @@ OSSL_DEPRECATEDIN_3_0 void SHA256_Transform(SHA256_CTX *c,
|
||||
unsigned char *SHA224(const unsigned char *d, size_t n, unsigned char *md);
|
||||
unsigned char *SHA256(const unsigned char *d, size_t n, unsigned char *md);
|
||||
|
||||
# define SHA256_192_DIGEST_LENGTH 24
|
||||
# define SHA224_DIGEST_LENGTH 28
|
||||
# define SHA256_DIGEST_LENGTH 32
|
||||
# define SHA384_DIGEST_LENGTH 48
|
||||
|
@ -28,16 +28,28 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
# define SRTP_AES128_CM_SHA1_80 0x0001
|
||||
# define SRTP_AES128_CM_SHA1_32 0x0002
|
||||
# define SRTP_AES128_F8_SHA1_80 0x0003
|
||||
# define SRTP_AES128_F8_SHA1_32 0x0004
|
||||
# define SRTP_NULL_SHA1_80 0x0005
|
||||
# define SRTP_NULL_SHA1_32 0x0006
|
||||
# define SRTP_AES128_CM_SHA1_80 0x0001
|
||||
# define SRTP_AES128_CM_SHA1_32 0x0002
|
||||
# define SRTP_AES128_F8_SHA1_80 0x0003
|
||||
# define SRTP_AES128_F8_SHA1_32 0x0004
|
||||
# define SRTP_NULL_SHA1_80 0x0005
|
||||
# define SRTP_NULL_SHA1_32 0x0006
|
||||
|
||||
/* AEAD SRTP protection profiles from RFC 7714 */
|
||||
# define SRTP_AEAD_AES_128_GCM 0x0007
|
||||
# define SRTP_AEAD_AES_256_GCM 0x0008
|
||||
# define SRTP_AEAD_AES_128_GCM 0x0007
|
||||
# define SRTP_AEAD_AES_256_GCM 0x0008
|
||||
|
||||
/* DOUBLE AEAD SRTP protection profiles from RFC 8723 */
|
||||
# define SRTP_DOUBLE_AEAD_AES_128_GCM_AEAD_AES_128_GCM 0x0009
|
||||
# define SRTP_DOUBLE_AEAD_AES_256_GCM_AEAD_AES_256_GCM 0x000A
|
||||
|
||||
/* ARIA SRTP protection profiles from RFC 8269 */
|
||||
# define SRTP_ARIA_128_CTR_HMAC_SHA1_80 0x000B
|
||||
# define SRTP_ARIA_128_CTR_HMAC_SHA1_32 0x000C
|
||||
# define SRTP_ARIA_256_CTR_HMAC_SHA1_80 0x000D
|
||||
# define SRTP_ARIA_256_CTR_HMAC_SHA1_32 0x000E
|
||||
# define SRTP_AEAD_ARIA_128_GCM 0x000F
|
||||
# define SRTP_AEAD_ARIA_256_GCM 0x0010
|
||||
|
||||
# ifndef OPENSSL_NO_SRTP
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/ssl.h.in
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
* Copyright 2005 Nokia. All rights reserved.
|
||||
*
|
||||
@ -24,6 +24,7 @@
|
||||
# endif
|
||||
|
||||
# include <openssl/e_os2.h>
|
||||
# include <openssl/e_ostime.h>
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/comp.h>
|
||||
# include <openssl/bio.h>
|
||||
@ -281,28 +282,31 @@ typedef int (*tls_session_secret_cb_fn)(SSL *s, void *secret, int *secret_len,
|
||||
|
||||
/* Extension context codes */
|
||||
/* This extension is only allowed in TLS */
|
||||
#define SSL_EXT_TLS_ONLY 0x0001
|
||||
#define SSL_EXT_TLS_ONLY 0x00001
|
||||
/* This extension is only allowed in DTLS */
|
||||
#define SSL_EXT_DTLS_ONLY 0x0002
|
||||
#define SSL_EXT_DTLS_ONLY 0x00002
|
||||
/* Some extensions may be allowed in DTLS but we don't implement them for it */
|
||||
#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x0004
|
||||
#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x00004
|
||||
/* Most extensions are not defined for SSLv3 but EXT_TYPE_renegotiate is */
|
||||
#define SSL_EXT_SSL3_ALLOWED 0x0008
|
||||
#define SSL_EXT_SSL3_ALLOWED 0x00008
|
||||
/* Extension is only defined for TLS1.2 and below */
|
||||
#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x0010
|
||||
#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x00010
|
||||
/* Extension is only defined for TLS1.3 and above */
|
||||
#define SSL_EXT_TLS1_3_ONLY 0x0020
|
||||
#define SSL_EXT_TLS1_3_ONLY 0x00020
|
||||
/* Ignore this extension during parsing if we are resuming */
|
||||
#define SSL_EXT_IGNORE_ON_RESUMPTION 0x0040
|
||||
#define SSL_EXT_CLIENT_HELLO 0x0080
|
||||
#define SSL_EXT_IGNORE_ON_RESUMPTION 0x00040
|
||||
#define SSL_EXT_CLIENT_HELLO 0x00080
|
||||
/* Really means TLS1.2 or below */
|
||||
#define SSL_EXT_TLS1_2_SERVER_HELLO 0x0100
|
||||
#define SSL_EXT_TLS1_3_SERVER_HELLO 0x0200
|
||||
#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x0400
|
||||
#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x0800
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE 0x1000
|
||||
#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x2000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x4000
|
||||
#define SSL_EXT_TLS1_2_SERVER_HELLO 0x00100
|
||||
#define SSL_EXT_TLS1_3_SERVER_HELLO 0x00200
|
||||
#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x00400
|
||||
#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x00800
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE 0x01000
|
||||
#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x02000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x04000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_COMPRESSION 0x08000
|
||||
/* When sending a raw public key in a certificate message */
|
||||
#define SSL_EXT_TLS1_3_RAW_PUBLIC_KEY 0x10000
|
||||
|
||||
/* Typedefs for handling custom extensions */
|
||||
|
||||
@ -433,6 +437,17 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
|
||||
* interoperability with CryptoPro CSP 3.x
|
||||
*/
|
||||
# define SSL_OP_CRYPTOPRO_TLSEXT_BUG SSL_OP_BIT(31)
|
||||
/*
|
||||
* Disable RFC8879 certificate compression
|
||||
* SSL_OP_NO_TX_CERTIFICATE_COMPRESSION: don't send compressed certificates,
|
||||
* and ignore the extension when received.
|
||||
* SSL_OP_NO_RX_CERTIFICATE_COMPRESSION: don't send the extension, and
|
||||
* subsequently indicating that receiving is not supported
|
||||
*/
|
||||
# define SSL_OP_NO_TX_CERTIFICATE_COMPRESSION SSL_OP_BIT(32)
|
||||
# define SSL_OP_NO_RX_CERTIFICATE_COMPRESSION SSL_OP_BIT(33)
|
||||
/* Enable KTLS TX zerocopy on Linux */
|
||||
# define SSL_OP_ENABLE_KTLS_TX_ZEROCOPY_SENDFILE SSL_OP_BIT(34)
|
||||
|
||||
/*
|
||||
* Option "collections."
|
||||
@ -577,6 +592,8 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
|
||||
# define CERT_PKEY_CERT_TYPE 0x400
|
||||
/* Cert chain suitable to Suite B */
|
||||
# define CERT_PKEY_SUITEB 0x800
|
||||
/* Cert pkey valid for raw public key use */
|
||||
# define CERT_PKEY_RPK 0x1000
|
||||
|
||||
# define SSL_CONF_FLAG_CMDLINE 0x1
|
||||
# define SSL_CONF_FLAG_FILE 0x2
|
||||
@ -968,6 +985,7 @@ uint32_t SSL_get_recv_max_early_data(const SSL *s);
|
||||
# include <openssl/tls1.h> /* This is mostly sslv3 with a few tweaks */
|
||||
# include <openssl/dtls1.h> /* Datagram TLS */
|
||||
# include <openssl/srtp.h> /* Support for the use_srtp extension */
|
||||
# include <openssl/quic.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@ -1069,6 +1087,7 @@ typedef enum {
|
||||
DTLS_ST_CR_HELLO_VERIFY_REQUEST,
|
||||
TLS_ST_CR_SRVR_HELLO,
|
||||
TLS_ST_CR_CERT,
|
||||
TLS_ST_CR_COMP_CERT,
|
||||
TLS_ST_CR_CERT_STATUS,
|
||||
TLS_ST_CR_KEY_EXCH,
|
||||
TLS_ST_CR_CERT_REQ,
|
||||
@ -1078,6 +1097,7 @@ typedef enum {
|
||||
TLS_ST_CR_FINISHED,
|
||||
TLS_ST_CW_CLNT_HELLO,
|
||||
TLS_ST_CW_CERT,
|
||||
TLS_ST_CW_COMP_CERT,
|
||||
TLS_ST_CW_KEY_EXCH,
|
||||
TLS_ST_CW_CERT_VRFY,
|
||||
TLS_ST_CW_CHANGE,
|
||||
@ -1088,10 +1108,12 @@ typedef enum {
|
||||
DTLS_ST_SW_HELLO_VERIFY_REQUEST,
|
||||
TLS_ST_SW_SRVR_HELLO,
|
||||
TLS_ST_SW_CERT,
|
||||
TLS_ST_SW_COMP_CERT,
|
||||
TLS_ST_SW_KEY_EXCH,
|
||||
TLS_ST_SW_CERT_REQ,
|
||||
TLS_ST_SW_SRVR_DONE,
|
||||
TLS_ST_SR_CERT,
|
||||
TLS_ST_SR_COMP_CERT,
|
||||
TLS_ST_SR_KEY_EXCH,
|
||||
TLS_ST_SR_CERT_VRFY,
|
||||
TLS_ST_SR_NEXT_PROTO,
|
||||
@ -1383,6 +1405,7 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
# define SSL_CTRL_GET_SIGNATURE_NID 132
|
||||
# define SSL_CTRL_GET_TMP_KEY 133
|
||||
# define SSL_CTRL_GET_NEGOTIATED_GROUP 134
|
||||
# define SSL_CTRL_GET_IANA_GROUPS 135
|
||||
# define SSL_CTRL_SET_RETRY_VERIFY 136
|
||||
# define SSL_CTRL_GET_VERIFY_CERT_STORE 137
|
||||
# define SSL_CTRL_GET_CHAIN_CERT_STORE 138
|
||||
@ -1488,6 +1511,8 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
|
||||
# define SSL_get1_groups(s, glist) \
|
||||
SSL_ctrl(s,SSL_CTRL_GET_GROUPS,0,(int*)(glist))
|
||||
# define SSL_get0_iana_groups(s, plst) \
|
||||
SSL_ctrl(s,SSL_CTRL_GET_IANA_GROUPS,0,(uint16_t **)(plst))
|
||||
# define SSL_CTX_set1_groups(ctx, glist, glistlen) \
|
||||
SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(int *)(glist))
|
||||
# define SSL_CTX_set1_groups_list(ctx, s) \
|
||||
@ -1552,6 +1577,7 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
# define SSL_get_max_proto_version(s) \
|
||||
SSL_ctrl(s, SSL_CTRL_GET_MAX_PROTO_VERSION, 0, NULL)
|
||||
|
||||
const char *SSL_get0_group_name(SSL *s);
|
||||
const char *SSL_group_to_name(SSL *s, int id);
|
||||
|
||||
/* Backwards compatibility, original 1.1.0 names */
|
||||
@ -1786,6 +1812,9 @@ __owur int SSL_has_matching_session_id(const SSL *s,
|
||||
unsigned int id_len);
|
||||
SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,
|
||||
long length);
|
||||
SSL_SESSION *d2i_SSL_SESSION_ex(SSL_SESSION **a, const unsigned char **pp,
|
||||
long length, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
# ifdef OPENSSL_X509_H
|
||||
__owur X509 *SSL_get0_peer_certificate(const SSL *s);
|
||||
@ -1843,6 +1872,8 @@ __owur int SSL_CTX_set_session_id_context(SSL_CTX *ctx,
|
||||
SSL *SSL_new(SSL_CTX *ctx);
|
||||
int SSL_up_ref(SSL *s);
|
||||
int SSL_is_dtls(const SSL *s);
|
||||
int SSL_is_tls(const SSL *s);
|
||||
int SSL_is_quic(const SSL *s);
|
||||
__owur int SSL_set_session_id_context(SSL *ssl, const unsigned char *sid_ctx,
|
||||
unsigned int sid_ctx_len);
|
||||
|
||||
@ -1935,6 +1966,8 @@ size_t SSL_client_hello_get0_ciphers(SSL *s, const unsigned char **out);
|
||||
size_t SSL_client_hello_get0_compression_methods(SSL *s,
|
||||
const unsigned char **out);
|
||||
int SSL_client_hello_get1_extensions_present(SSL *s, int **out, size_t *outlen);
|
||||
int SSL_client_hello_get_extension_order(SSL *s, uint16_t *exts,
|
||||
size_t *num_exts);
|
||||
int SSL_client_hello_get0_ext(SSL *s, unsigned int type,
|
||||
const unsigned char **out, size_t *outlen);
|
||||
|
||||
@ -1989,6 +2022,7 @@ __owur int SSL_get_early_data_status(const SSL *s);
|
||||
|
||||
__owur int SSL_get_error(const SSL *s, int ret_code);
|
||||
__owur const char *SSL_get_version(const SSL *s);
|
||||
__owur int SSL_get_handshake_rtt(const SSL *s, uint64_t *rtt);
|
||||
|
||||
/* This sets the 'default' SSL version that SSL_new() will create */
|
||||
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
||||
@ -2297,6 +2331,105 @@ size_t SSL_get_num_tickets(const SSL *s);
|
||||
int SSL_CTX_set_num_tickets(SSL_CTX *ctx, size_t num_tickets);
|
||||
size_t SSL_CTX_get_num_tickets(const SSL_CTX *ctx);
|
||||
|
||||
/* QUIC support */
|
||||
int SSL_handle_events(SSL *s);
|
||||
__owur int SSL_get_event_timeout(SSL *s, struct timeval *tv, int *is_infinite);
|
||||
__owur int SSL_get_rpoll_descriptor(SSL *s, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int SSL_get_wpoll_descriptor(SSL *s, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int SSL_net_read_desired(SSL *s);
|
||||
__owur int SSL_net_write_desired(SSL *s);
|
||||
__owur int SSL_set_blocking_mode(SSL *s, int blocking);
|
||||
__owur int SSL_get_blocking_mode(SSL *s);
|
||||
__owur int SSL_set1_initial_peer_addr(SSL *s, const BIO_ADDR *peer_addr);
|
||||
__owur SSL *SSL_get0_connection(SSL *s);
|
||||
__owur int SSL_is_connection(SSL *s);
|
||||
|
||||
#define SSL_STREAM_TYPE_NONE 0
|
||||
#define SSL_STREAM_TYPE_READ (1U << 0)
|
||||
#define SSL_STREAM_TYPE_WRITE (1U << 1)
|
||||
#define SSL_STREAM_TYPE_BIDI (SSL_STREAM_TYPE_READ | SSL_STREAM_TYPE_WRITE)
|
||||
__owur int SSL_get_stream_type(SSL *s);
|
||||
|
||||
__owur uint64_t SSL_get_stream_id(SSL *s);
|
||||
__owur int SSL_is_stream_local(SSL *s);
|
||||
|
||||
#define SSL_DEFAULT_STREAM_MODE_NONE 0
|
||||
#define SSL_DEFAULT_STREAM_MODE_AUTO_BIDI 1
|
||||
#define SSL_DEFAULT_STREAM_MODE_AUTO_UNI 2
|
||||
__owur int SSL_set_default_stream_mode(SSL *s, uint32_t mode);
|
||||
|
||||
#define SSL_STREAM_FLAG_UNI (1U << 0)
|
||||
#define SSL_STREAM_FLAG_NO_BLOCK (1U << 1)
|
||||
#define SSL_STREAM_FLAG_ADVANCE (1U << 2)
|
||||
__owur SSL *SSL_new_stream(SSL *s, uint64_t flags);
|
||||
|
||||
#define SSL_INCOMING_STREAM_POLICY_AUTO 0
|
||||
#define SSL_INCOMING_STREAM_POLICY_ACCEPT 1
|
||||
#define SSL_INCOMING_STREAM_POLICY_REJECT 2
|
||||
__owur int SSL_set_incoming_stream_policy(SSL *s, int policy, uint64_t aec);
|
||||
|
||||
#define SSL_ACCEPT_STREAM_NO_BLOCK (1U << 0)
|
||||
__owur SSL *SSL_accept_stream(SSL *s, uint64_t flags);
|
||||
__owur size_t SSL_get_accept_stream_queue_len(SSL *s);
|
||||
|
||||
# ifndef OPENSSL_NO_QUIC
|
||||
__owur int SSL_inject_net_dgram(SSL *s, const unsigned char *buf,
|
||||
size_t buf_len,
|
||||
const BIO_ADDR *peer,
|
||||
const BIO_ADDR *local);
|
||||
# endif
|
||||
|
||||
typedef struct ssl_shutdown_ex_args_st {
|
||||
uint64_t quic_error_code;
|
||||
const char *quic_reason;
|
||||
} SSL_SHUTDOWN_EX_ARGS;
|
||||
|
||||
#define SSL_SHUTDOWN_FLAG_RAPID (1U << 0)
|
||||
#define SSL_SHUTDOWN_FLAG_NO_STREAM_FLUSH (1U << 1)
|
||||
#define SSL_SHUTDOWN_FLAG_NO_BLOCK (1U << 2)
|
||||
#define SSL_SHUTDOWN_FLAG_WAIT_PEER (1U << 3)
|
||||
|
||||
__owur int SSL_shutdown_ex(SSL *ssl, uint64_t flags,
|
||||
const SSL_SHUTDOWN_EX_ARGS *args,
|
||||
size_t args_len);
|
||||
|
||||
__owur int SSL_stream_conclude(SSL *ssl, uint64_t flags);
|
||||
|
||||
typedef struct ssl_stream_reset_args_st {
|
||||
uint64_t quic_error_code;
|
||||
} SSL_STREAM_RESET_ARGS;
|
||||
|
||||
__owur int SSL_stream_reset(SSL *ssl,
|
||||
const SSL_STREAM_RESET_ARGS *args,
|
||||
size_t args_len);
|
||||
|
||||
#define SSL_STREAM_STATE_NONE 0
|
||||
#define SSL_STREAM_STATE_OK 1
|
||||
#define SSL_STREAM_STATE_WRONG_DIR 2
|
||||
#define SSL_STREAM_STATE_FINISHED 3
|
||||
#define SSL_STREAM_STATE_RESET_LOCAL 4
|
||||
#define SSL_STREAM_STATE_RESET_REMOTE 5
|
||||
#define SSL_STREAM_STATE_CONN_CLOSED 6
|
||||
__owur int SSL_get_stream_read_state(SSL *ssl);
|
||||
__owur int SSL_get_stream_write_state(SSL *ssl);
|
||||
|
||||
__owur int SSL_get_stream_read_error_code(SSL *ssl, uint64_t *app_error_code);
|
||||
__owur int SSL_get_stream_write_error_code(SSL *ssl, uint64_t *app_error_code);
|
||||
|
||||
#define SSL_CONN_CLOSE_FLAG_LOCAL (1U << 0)
|
||||
#define SSL_CONN_CLOSE_FLAG_TRANSPORT (1U << 1)
|
||||
|
||||
typedef struct ssl_conn_close_info_st {
|
||||
uint64_t error_code, frame_type;
|
||||
const char *reason;
|
||||
size_t reason_len;
|
||||
uint32_t flags;
|
||||
} SSL_CONN_CLOSE_INFO;
|
||||
|
||||
__owur int SSL_get_conn_close_info(SSL *ssl,
|
||||
SSL_CONN_CLOSE_INFO *info,
|
||||
size_t info_len);
|
||||
|
||||
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
# define SSL_cache_hit(s) SSL_session_reused(s)
|
||||
# endif
|
||||
@ -2596,6 +2729,36 @@ void SSL_set_allow_early_data_cb(SSL *s,
|
||||
const char *OSSL_default_cipher_list(void);
|
||||
const char *OSSL_default_ciphersuites(void);
|
||||
|
||||
/* RFC8879 Certificate compression APIs */
|
||||
|
||||
int SSL_CTX_compress_certs(SSL_CTX *ctx, int alg);
|
||||
int SSL_compress_certs(SSL *ssl, int alg);
|
||||
|
||||
int SSL_CTX_set1_cert_comp_preference(SSL_CTX *ctx, int *algs, size_t len);
|
||||
int SSL_set1_cert_comp_preference(SSL *ssl, int *algs, size_t len);
|
||||
|
||||
int SSL_CTX_set1_compressed_cert(SSL_CTX *ctx, int algorithm, unsigned char *comp_data,
|
||||
size_t comp_length, size_t orig_length);
|
||||
int SSL_set1_compressed_cert(SSL *ssl, int algorithm, unsigned char *comp_data,
|
||||
size_t comp_length, size_t orig_length);
|
||||
size_t SSL_CTX_get1_compressed_cert(SSL_CTX *ctx, int alg, unsigned char **data, size_t *orig_len);
|
||||
size_t SSL_get1_compressed_cert(SSL *ssl, int alg, unsigned char **data, size_t *orig_len);
|
||||
|
||||
__owur int SSL_add_expected_rpk(SSL *s, EVP_PKEY *rpk);
|
||||
__owur EVP_PKEY *SSL_get0_peer_rpk(const SSL *s);
|
||||
__owur EVP_PKEY *SSL_SESSION_get0_peer_rpk(SSL_SESSION *s);
|
||||
__owur int SSL_get_negotiated_client_cert_type(const SSL *s);
|
||||
__owur int SSL_get_negotiated_server_cert_type(const SSL *s);
|
||||
|
||||
__owur int SSL_set1_client_cert_type(SSL *s, const unsigned char *val, size_t len);
|
||||
__owur int SSL_set1_server_cert_type(SSL *s, const unsigned char *val, size_t len);
|
||||
__owur int SSL_CTX_set1_client_cert_type(SSL_CTX *ctx, const unsigned char *val, size_t len);
|
||||
__owur int SSL_CTX_set1_server_cert_type(SSL_CTX *ctx, const unsigned char *val, size_t len);
|
||||
__owur int SSL_get0_client_cert_type(const SSL *s, unsigned char **t, size_t *len);
|
||||
__owur int SSL_get0_server_cert_type(const SSL *s, unsigned char **t, size_t *len);
|
||||
__owur int SSL_CTX_get0_client_cert_type(const SSL_CTX *ctx, unsigned char **t, size_t *len);
|
||||
__owur int SSL_CTX_get0_server_cert_type(const SSL_CTX *s, unsigned char **t, size_t *len);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
* Copyright 2005 Nokia. All rights reserved.
|
||||
*
|
||||
@ -25,6 +25,7 @@ use OpenSSL::stackhash qw(generate_stack_macros generate_const_stack_macros);
|
||||
# endif
|
||||
|
||||
# include <openssl/e_os2.h>
|
||||
# include <openssl/e_ostime.h>
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/comp.h>
|
||||
# include <openssl/bio.h>
|
||||
@ -258,28 +259,31 @@ typedef int (*tls_session_secret_cb_fn)(SSL *s, void *secret, int *secret_len,
|
||||
|
||||
/* Extension context codes */
|
||||
/* This extension is only allowed in TLS */
|
||||
#define SSL_EXT_TLS_ONLY 0x0001
|
||||
#define SSL_EXT_TLS_ONLY 0x00001
|
||||
/* This extension is only allowed in DTLS */
|
||||
#define SSL_EXT_DTLS_ONLY 0x0002
|
||||
#define SSL_EXT_DTLS_ONLY 0x00002
|
||||
/* Some extensions may be allowed in DTLS but we don't implement them for it */
|
||||
#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x0004
|
||||
#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x00004
|
||||
/* Most extensions are not defined for SSLv3 but EXT_TYPE_renegotiate is */
|
||||
#define SSL_EXT_SSL3_ALLOWED 0x0008
|
||||
#define SSL_EXT_SSL3_ALLOWED 0x00008
|
||||
/* Extension is only defined for TLS1.2 and below */
|
||||
#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x0010
|
||||
#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x00010
|
||||
/* Extension is only defined for TLS1.3 and above */
|
||||
#define SSL_EXT_TLS1_3_ONLY 0x0020
|
||||
#define SSL_EXT_TLS1_3_ONLY 0x00020
|
||||
/* Ignore this extension during parsing if we are resuming */
|
||||
#define SSL_EXT_IGNORE_ON_RESUMPTION 0x0040
|
||||
#define SSL_EXT_CLIENT_HELLO 0x0080
|
||||
#define SSL_EXT_IGNORE_ON_RESUMPTION 0x00040
|
||||
#define SSL_EXT_CLIENT_HELLO 0x00080
|
||||
/* Really means TLS1.2 or below */
|
||||
#define SSL_EXT_TLS1_2_SERVER_HELLO 0x0100
|
||||
#define SSL_EXT_TLS1_3_SERVER_HELLO 0x0200
|
||||
#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x0400
|
||||
#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x0800
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE 0x1000
|
||||
#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x2000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x4000
|
||||
#define SSL_EXT_TLS1_2_SERVER_HELLO 0x00100
|
||||
#define SSL_EXT_TLS1_3_SERVER_HELLO 0x00200
|
||||
#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x00400
|
||||
#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x00800
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE 0x01000
|
||||
#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x02000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x04000
|
||||
#define SSL_EXT_TLS1_3_CERTIFICATE_COMPRESSION 0x08000
|
||||
/* When sending a raw public key in a certificate message */
|
||||
#define SSL_EXT_TLS1_3_RAW_PUBLIC_KEY 0x10000
|
||||
|
||||
/* Typedefs for handling custom extensions */
|
||||
|
||||
@ -410,6 +414,17 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
|
||||
* interoperability with CryptoPro CSP 3.x
|
||||
*/
|
||||
# define SSL_OP_CRYPTOPRO_TLSEXT_BUG SSL_OP_BIT(31)
|
||||
/*
|
||||
* Disable RFC8879 certificate compression
|
||||
* SSL_OP_NO_TX_CERTIFICATE_COMPRESSION: don't send compressed certificates,
|
||||
* and ignore the extension when received.
|
||||
* SSL_OP_NO_RX_CERTIFICATE_COMPRESSION: don't send the extension, and
|
||||
* subsequently indicating that receiving is not supported
|
||||
*/
|
||||
# define SSL_OP_NO_TX_CERTIFICATE_COMPRESSION SSL_OP_BIT(32)
|
||||
# define SSL_OP_NO_RX_CERTIFICATE_COMPRESSION SSL_OP_BIT(33)
|
||||
/* Enable KTLS TX zerocopy on Linux */
|
||||
# define SSL_OP_ENABLE_KTLS_TX_ZEROCOPY_SENDFILE SSL_OP_BIT(34)
|
||||
|
||||
/*
|
||||
* Option "collections."
|
||||
@ -554,6 +569,8 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
|
||||
# define CERT_PKEY_CERT_TYPE 0x400
|
||||
/* Cert chain suitable to Suite B */
|
||||
# define CERT_PKEY_SUITEB 0x800
|
||||
/* Cert pkey valid for raw public key use */
|
||||
# define CERT_PKEY_RPK 0x1000
|
||||
|
||||
# define SSL_CONF_FLAG_CMDLINE 0x1
|
||||
# define SSL_CONF_FLAG_FILE 0x2
|
||||
@ -945,6 +962,7 @@ uint32_t SSL_get_recv_max_early_data(const SSL *s);
|
||||
# include <openssl/tls1.h> /* This is mostly sslv3 with a few tweaks */
|
||||
# include <openssl/dtls1.h> /* Datagram TLS */
|
||||
# include <openssl/srtp.h> /* Support for the use_srtp extension */
|
||||
# include <openssl/quic.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@ -997,6 +1015,7 @@ typedef enum {
|
||||
DTLS_ST_CR_HELLO_VERIFY_REQUEST,
|
||||
TLS_ST_CR_SRVR_HELLO,
|
||||
TLS_ST_CR_CERT,
|
||||
TLS_ST_CR_COMP_CERT,
|
||||
TLS_ST_CR_CERT_STATUS,
|
||||
TLS_ST_CR_KEY_EXCH,
|
||||
TLS_ST_CR_CERT_REQ,
|
||||
@ -1006,6 +1025,7 @@ typedef enum {
|
||||
TLS_ST_CR_FINISHED,
|
||||
TLS_ST_CW_CLNT_HELLO,
|
||||
TLS_ST_CW_CERT,
|
||||
TLS_ST_CW_COMP_CERT,
|
||||
TLS_ST_CW_KEY_EXCH,
|
||||
TLS_ST_CW_CERT_VRFY,
|
||||
TLS_ST_CW_CHANGE,
|
||||
@ -1016,10 +1036,12 @@ typedef enum {
|
||||
DTLS_ST_SW_HELLO_VERIFY_REQUEST,
|
||||
TLS_ST_SW_SRVR_HELLO,
|
||||
TLS_ST_SW_CERT,
|
||||
TLS_ST_SW_COMP_CERT,
|
||||
TLS_ST_SW_KEY_EXCH,
|
||||
TLS_ST_SW_CERT_REQ,
|
||||
TLS_ST_SW_SRVR_DONE,
|
||||
TLS_ST_SR_CERT,
|
||||
TLS_ST_SR_COMP_CERT,
|
||||
TLS_ST_SR_KEY_EXCH,
|
||||
TLS_ST_SR_CERT_VRFY,
|
||||
TLS_ST_SR_NEXT_PROTO,
|
||||
@ -1311,6 +1333,7 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
# define SSL_CTRL_GET_SIGNATURE_NID 132
|
||||
# define SSL_CTRL_GET_TMP_KEY 133
|
||||
# define SSL_CTRL_GET_NEGOTIATED_GROUP 134
|
||||
# define SSL_CTRL_GET_IANA_GROUPS 135
|
||||
# define SSL_CTRL_SET_RETRY_VERIFY 136
|
||||
# define SSL_CTRL_GET_VERIFY_CERT_STORE 137
|
||||
# define SSL_CTRL_GET_CHAIN_CERT_STORE 138
|
||||
@ -1416,6 +1439,8 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
|
||||
# define SSL_get1_groups(s, glist) \
|
||||
SSL_ctrl(s,SSL_CTRL_GET_GROUPS,0,(int*)(glist))
|
||||
# define SSL_get0_iana_groups(s, plst) \
|
||||
SSL_ctrl(s,SSL_CTRL_GET_IANA_GROUPS,0,(uint16_t **)(plst))
|
||||
# define SSL_CTX_set1_groups(ctx, glist, glistlen) \
|
||||
SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(int *)(glist))
|
||||
# define SSL_CTX_set1_groups_list(ctx, s) \
|
||||
@ -1480,6 +1505,7 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
|
||||
# define SSL_get_max_proto_version(s) \
|
||||
SSL_ctrl(s, SSL_CTRL_GET_MAX_PROTO_VERSION, 0, NULL)
|
||||
|
||||
const char *SSL_get0_group_name(SSL *s);
|
||||
const char *SSL_group_to_name(SSL *s, int id);
|
||||
|
||||
/* Backwards compatibility, original 1.1.0 names */
|
||||
@ -1714,6 +1740,9 @@ __owur int SSL_has_matching_session_id(const SSL *s,
|
||||
unsigned int id_len);
|
||||
SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,
|
||||
long length);
|
||||
SSL_SESSION *d2i_SSL_SESSION_ex(SSL_SESSION **a, const unsigned char **pp,
|
||||
long length, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
|
||||
# ifdef OPENSSL_X509_H
|
||||
__owur X509 *SSL_get0_peer_certificate(const SSL *s);
|
||||
@ -1771,6 +1800,8 @@ __owur int SSL_CTX_set_session_id_context(SSL_CTX *ctx,
|
||||
SSL *SSL_new(SSL_CTX *ctx);
|
||||
int SSL_up_ref(SSL *s);
|
||||
int SSL_is_dtls(const SSL *s);
|
||||
int SSL_is_tls(const SSL *s);
|
||||
int SSL_is_quic(const SSL *s);
|
||||
__owur int SSL_set_session_id_context(SSL *ssl, const unsigned char *sid_ctx,
|
||||
unsigned int sid_ctx_len);
|
||||
|
||||
@ -1863,6 +1894,8 @@ size_t SSL_client_hello_get0_ciphers(SSL *s, const unsigned char **out);
|
||||
size_t SSL_client_hello_get0_compression_methods(SSL *s,
|
||||
const unsigned char **out);
|
||||
int SSL_client_hello_get1_extensions_present(SSL *s, int **out, size_t *outlen);
|
||||
int SSL_client_hello_get_extension_order(SSL *s, uint16_t *exts,
|
||||
size_t *num_exts);
|
||||
int SSL_client_hello_get0_ext(SSL *s, unsigned int type,
|
||||
const unsigned char **out, size_t *outlen);
|
||||
|
||||
@ -1917,6 +1950,7 @@ __owur int SSL_get_early_data_status(const SSL *s);
|
||||
|
||||
__owur int SSL_get_error(const SSL *s, int ret_code);
|
||||
__owur const char *SSL_get_version(const SSL *s);
|
||||
__owur int SSL_get_handshake_rtt(const SSL *s, uint64_t *rtt);
|
||||
|
||||
/* This sets the 'default' SSL version that SSL_new() will create */
|
||||
# ifndef OPENSSL_NO_DEPRECATED_3_0
|
||||
@ -2225,6 +2259,105 @@ size_t SSL_get_num_tickets(const SSL *s);
|
||||
int SSL_CTX_set_num_tickets(SSL_CTX *ctx, size_t num_tickets);
|
||||
size_t SSL_CTX_get_num_tickets(const SSL_CTX *ctx);
|
||||
|
||||
/* QUIC support */
|
||||
int SSL_handle_events(SSL *s);
|
||||
__owur int SSL_get_event_timeout(SSL *s, struct timeval *tv, int *is_infinite);
|
||||
__owur int SSL_get_rpoll_descriptor(SSL *s, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int SSL_get_wpoll_descriptor(SSL *s, BIO_POLL_DESCRIPTOR *desc);
|
||||
__owur int SSL_net_read_desired(SSL *s);
|
||||
__owur int SSL_net_write_desired(SSL *s);
|
||||
__owur int SSL_set_blocking_mode(SSL *s, int blocking);
|
||||
__owur int SSL_get_blocking_mode(SSL *s);
|
||||
__owur int SSL_set1_initial_peer_addr(SSL *s, const BIO_ADDR *peer_addr);
|
||||
__owur SSL *SSL_get0_connection(SSL *s);
|
||||
__owur int SSL_is_connection(SSL *s);
|
||||
|
||||
#define SSL_STREAM_TYPE_NONE 0
|
||||
#define SSL_STREAM_TYPE_READ (1U << 0)
|
||||
#define SSL_STREAM_TYPE_WRITE (1U << 1)
|
||||
#define SSL_STREAM_TYPE_BIDI (SSL_STREAM_TYPE_READ | SSL_STREAM_TYPE_WRITE)
|
||||
__owur int SSL_get_stream_type(SSL *s);
|
||||
|
||||
__owur uint64_t SSL_get_stream_id(SSL *s);
|
||||
__owur int SSL_is_stream_local(SSL *s);
|
||||
|
||||
#define SSL_DEFAULT_STREAM_MODE_NONE 0
|
||||
#define SSL_DEFAULT_STREAM_MODE_AUTO_BIDI 1
|
||||
#define SSL_DEFAULT_STREAM_MODE_AUTO_UNI 2
|
||||
__owur int SSL_set_default_stream_mode(SSL *s, uint32_t mode);
|
||||
|
||||
#define SSL_STREAM_FLAG_UNI (1U << 0)
|
||||
#define SSL_STREAM_FLAG_NO_BLOCK (1U << 1)
|
||||
#define SSL_STREAM_FLAG_ADVANCE (1U << 2)
|
||||
__owur SSL *SSL_new_stream(SSL *s, uint64_t flags);
|
||||
|
||||
#define SSL_INCOMING_STREAM_POLICY_AUTO 0
|
||||
#define SSL_INCOMING_STREAM_POLICY_ACCEPT 1
|
||||
#define SSL_INCOMING_STREAM_POLICY_REJECT 2
|
||||
__owur int SSL_set_incoming_stream_policy(SSL *s, int policy, uint64_t aec);
|
||||
|
||||
#define SSL_ACCEPT_STREAM_NO_BLOCK (1U << 0)
|
||||
__owur SSL *SSL_accept_stream(SSL *s, uint64_t flags);
|
||||
__owur size_t SSL_get_accept_stream_queue_len(SSL *s);
|
||||
|
||||
# ifndef OPENSSL_NO_QUIC
|
||||
__owur int SSL_inject_net_dgram(SSL *s, const unsigned char *buf,
|
||||
size_t buf_len,
|
||||
const BIO_ADDR *peer,
|
||||
const BIO_ADDR *local);
|
||||
# endif
|
||||
|
||||
typedef struct ssl_shutdown_ex_args_st {
|
||||
uint64_t quic_error_code;
|
||||
const char *quic_reason;
|
||||
} SSL_SHUTDOWN_EX_ARGS;
|
||||
|
||||
#define SSL_SHUTDOWN_FLAG_RAPID (1U << 0)
|
||||
#define SSL_SHUTDOWN_FLAG_NO_STREAM_FLUSH (1U << 1)
|
||||
#define SSL_SHUTDOWN_FLAG_NO_BLOCK (1U << 2)
|
||||
#define SSL_SHUTDOWN_FLAG_WAIT_PEER (1U << 3)
|
||||
|
||||
__owur int SSL_shutdown_ex(SSL *ssl, uint64_t flags,
|
||||
const SSL_SHUTDOWN_EX_ARGS *args,
|
||||
size_t args_len);
|
||||
|
||||
__owur int SSL_stream_conclude(SSL *ssl, uint64_t flags);
|
||||
|
||||
typedef struct ssl_stream_reset_args_st {
|
||||
uint64_t quic_error_code;
|
||||
} SSL_STREAM_RESET_ARGS;
|
||||
|
||||
__owur int SSL_stream_reset(SSL *ssl,
|
||||
const SSL_STREAM_RESET_ARGS *args,
|
||||
size_t args_len);
|
||||
|
||||
#define SSL_STREAM_STATE_NONE 0
|
||||
#define SSL_STREAM_STATE_OK 1
|
||||
#define SSL_STREAM_STATE_WRONG_DIR 2
|
||||
#define SSL_STREAM_STATE_FINISHED 3
|
||||
#define SSL_STREAM_STATE_RESET_LOCAL 4
|
||||
#define SSL_STREAM_STATE_RESET_REMOTE 5
|
||||
#define SSL_STREAM_STATE_CONN_CLOSED 6
|
||||
__owur int SSL_get_stream_read_state(SSL *ssl);
|
||||
__owur int SSL_get_stream_write_state(SSL *ssl);
|
||||
|
||||
__owur int SSL_get_stream_read_error_code(SSL *ssl, uint64_t *app_error_code);
|
||||
__owur int SSL_get_stream_write_error_code(SSL *ssl, uint64_t *app_error_code);
|
||||
|
||||
#define SSL_CONN_CLOSE_FLAG_LOCAL (1U << 0)
|
||||
#define SSL_CONN_CLOSE_FLAG_TRANSPORT (1U << 1)
|
||||
|
||||
typedef struct ssl_conn_close_info_st {
|
||||
uint64_t error_code, frame_type;
|
||||
const char *reason;
|
||||
size_t reason_len;
|
||||
uint32_t flags;
|
||||
} SSL_CONN_CLOSE_INFO;
|
||||
|
||||
__owur int SSL_get_conn_close_info(SSL *ssl,
|
||||
SSL_CONN_CLOSE_INFO *info,
|
||||
size_t info_len);
|
||||
|
||||
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
# define SSL_cache_hit(s) SSL_session_reused(s)
|
||||
# endif
|
||||
@ -2524,6 +2657,36 @@ void SSL_set_allow_early_data_cb(SSL *s,
|
||||
const char *OSSL_default_cipher_list(void);
|
||||
const char *OSSL_default_ciphersuites(void);
|
||||
|
||||
/* RFC8879 Certificate compression APIs */
|
||||
|
||||
int SSL_CTX_compress_certs(SSL_CTX *ctx, int alg);
|
||||
int SSL_compress_certs(SSL *ssl, int alg);
|
||||
|
||||
int SSL_CTX_set1_cert_comp_preference(SSL_CTX *ctx, int *algs, size_t len);
|
||||
int SSL_set1_cert_comp_preference(SSL *ssl, int *algs, size_t len);
|
||||
|
||||
int SSL_CTX_set1_compressed_cert(SSL_CTX *ctx, int algorithm, unsigned char *comp_data,
|
||||
size_t comp_length, size_t orig_length);
|
||||
int SSL_set1_compressed_cert(SSL *ssl, int algorithm, unsigned char *comp_data,
|
||||
size_t comp_length, size_t orig_length);
|
||||
size_t SSL_CTX_get1_compressed_cert(SSL_CTX *ctx, int alg, unsigned char **data, size_t *orig_len);
|
||||
size_t SSL_get1_compressed_cert(SSL *ssl, int alg, unsigned char **data, size_t *orig_len);
|
||||
|
||||
__owur int SSL_add_expected_rpk(SSL *s, EVP_PKEY *rpk);
|
||||
__owur EVP_PKEY *SSL_get0_peer_rpk(const SSL *s);
|
||||
__owur EVP_PKEY *SSL_SESSION_get0_peer_rpk(SSL_SESSION *s);
|
||||
__owur int SSL_get_negotiated_client_cert_type(const SSL *s);
|
||||
__owur int SSL_get_negotiated_server_cert_type(const SSL *s);
|
||||
|
||||
__owur int SSL_set1_client_cert_type(SSL *s, const unsigned char *val, size_t len);
|
||||
__owur int SSL_set1_server_cert_type(SSL *s, const unsigned char *val, size_t len);
|
||||
__owur int SSL_CTX_set1_client_cert_type(SSL_CTX *ctx, const unsigned char *val, size_t len);
|
||||
__owur int SSL_CTX_set1_server_cert_type(SSL_CTX *ctx, const unsigned char *val, size_t len);
|
||||
__owur int SSL_get0_client_cert_type(const SSL *s, unsigned char **t, size_t *len);
|
||||
__owur int SSL_get0_server_cert_type(const SSL *s, unsigned char **t, size_t *len);
|
||||
__owur int SSL_CTX_get0_client_cert_type(const SSL_CTX *ctx, unsigned char **t, size_t *len);
|
||||
__owur int SSL_CTX_get0_server_cert_type(const SSL_CTX *s, unsigned char **t, size_t *len);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@ -239,6 +239,13 @@ extern "C" {
|
||||
# define SSL3_RT_HEADER 0x100
|
||||
# define SSL3_RT_INNER_CONTENT_TYPE 0x101
|
||||
|
||||
/* Pseudo content types for QUIC */
|
||||
# define SSL3_RT_QUIC_DATAGRAM 0x200
|
||||
# define SSL3_RT_QUIC_PACKET 0x201
|
||||
# define SSL3_RT_QUIC_FRAME_FULL 0x202
|
||||
# define SSL3_RT_QUIC_FRAME_HEADER 0x203
|
||||
# define SSL3_RT_QUIC_FRAME_PADDING 0x204
|
||||
|
||||
# define SSL3_AL_WARNING 1
|
||||
# define SSL3_AL_FATAL 2
|
||||
|
||||
@ -300,6 +307,8 @@ extern "C" {
|
||||
/* Set if extended master secret extension required on renegotiation */
|
||||
# define TLS1_FLAGS_REQUIRED_EXTMS 0x1000
|
||||
|
||||
/* 0x2000 is reserved for TLS1_FLAGS_QUIC (internal) */
|
||||
|
||||
# define SSL3_MT_HELLO_REQUEST 0
|
||||
# define SSL3_MT_CLIENT_HELLO 1
|
||||
# define SSL3_MT_SERVER_HELLO 2
|
||||
@ -317,6 +326,7 @@ extern "C" {
|
||||
# define SSL3_MT_CERTIFICATE_STATUS 22
|
||||
# define SSL3_MT_SUPPLEMENTAL_DATA 23
|
||||
# define SSL3_MT_KEY_UPDATE 24
|
||||
# define SSL3_MT_COMPRESSED_CERTIFICATE 25
|
||||
# ifndef OPENSSL_NO_NEXTPROTONEG
|
||||
# define SSL3_MT_NEXT_PROTO 67
|
||||
# endif
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -25,8 +25,10 @@
|
||||
# define SSL_R_APP_DATA_IN_HANDSHAKE 100
|
||||
# define SSL_R_ATTEMPT_TO_REUSE_SESSION_IN_DIFFERENT_CONTEXT 272
|
||||
# define SSL_R_AT_LEAST_TLS_1_2_NEEDED_IN_SUITEB_MODE 158
|
||||
# define SSL_R_BAD_CERTIFICATE 348
|
||||
# define SSL_R_BAD_CHANGE_CIPHER_SPEC 103
|
||||
# define SSL_R_BAD_CIPHER 186
|
||||
# define SSL_R_BAD_COMPRESSION_ALGORITHM 326
|
||||
# define SSL_R_BAD_DATA 390
|
||||
# define SSL_R_BAD_DATA_RETURNED_BY_CALLBACK 106
|
||||
# define SSL_R_BAD_DECOMPRESSION 107
|
||||
@ -82,6 +84,7 @@
|
||||
# define SSL_R_COMPRESSION_ID_NOT_WITHIN_PRIVATE_RANGE 307
|
||||
# define SSL_R_COMPRESSION_LIBRARY_ERROR 142
|
||||
# define SSL_R_CONNECTION_TYPE_NOT_SET 144
|
||||
# define SSL_R_CONN_USE_ONLY 356
|
||||
# define SSL_R_CONTEXT_NOT_DANE_ENABLED 167
|
||||
# define SSL_R_COOKIE_GEN_CALLBACK_FAILURE 400
|
||||
# define SSL_R_COOKIE_MISMATCH 308
|
||||
@ -110,6 +113,7 @@
|
||||
# define SSL_R_ECC_CERT_NOT_FOR_SIGNING 318
|
||||
# define SSL_R_ECDH_REQUIRED_FOR_SUITEB_MODE 374
|
||||
# define SSL_R_EE_KEY_TOO_SMALL 399
|
||||
# define SSL_R_EMPTY_RAW_PUBLIC_KEY 349
|
||||
# define SSL_R_EMPTY_SRTP_PROTECTION_PROFILE_LIST 354
|
||||
# define SSL_R_ENCRYPTED_LENGTH_TOO_LONG 150
|
||||
# define SSL_R_ERROR_IN_RECEIVED_CIPHER_LIST 151
|
||||
@ -119,6 +123,7 @@
|
||||
# define SSL_R_EXTENSION_NOT_RECEIVED 279
|
||||
# define SSL_R_EXTRA_DATA_IN_MESSAGE 153
|
||||
# define SSL_R_EXT_LENGTH_MISMATCH 163
|
||||
# define SSL_R_FAILED_TO_GET_PARAMETER 316
|
||||
# define SSL_R_FAILED_TO_INIT_ASYNC 405
|
||||
# define SSL_R_FRAGMENTED_CLIENT_HELLO 401
|
||||
# define SSL_R_GOT_A_FIN_BEFORE_A_CCS 154
|
||||
@ -144,6 +149,8 @@
|
||||
# define SSL_R_INVALID_KEY_UPDATE_TYPE 120
|
||||
# define SSL_R_INVALID_MAX_EARLY_DATA 174
|
||||
# define SSL_R_INVALID_NULL_CMD_NAME 385
|
||||
# define SSL_R_INVALID_RAW_PUBLIC_KEY 350
|
||||
# define SSL_R_INVALID_RECORD 317
|
||||
# define SSL_R_INVALID_SEQUENCE_NUMBER 402
|
||||
# define SSL_R_INVALID_SERVERINFO_DATA 388
|
||||
# define SSL_R_INVALID_SESSION_ID 999
|
||||
@ -156,6 +163,7 @@
|
||||
# define SSL_R_LENGTH_TOO_SHORT 160
|
||||
# define SSL_R_LIBRARY_BUG 274
|
||||
# define SSL_R_LIBRARY_HAS_NO_CIPHERS 161
|
||||
# define SSL_R_MAXIMUM_ENCRYPTED_PKTS_REACHED 395
|
||||
# define SSL_R_MISSING_DSA_SIGNING_CERT 165
|
||||
# define SSL_R_MISSING_ECDSA_SIGNING_CERT 381
|
||||
# define SSL_R_MISSING_FATAL 256
|
||||
@ -196,9 +204,11 @@
|
||||
# define SSL_R_NO_SHARED_GROUPS 410
|
||||
# define SSL_R_NO_SHARED_SIGNATURE_ALGORITHMS 376
|
||||
# define SSL_R_NO_SRTP_PROFILES 359
|
||||
# define SSL_R_NO_STREAM 355
|
||||
# define SSL_R_NO_SUITABLE_DIGEST_ALGORITHM 297
|
||||
# define SSL_R_NO_SUITABLE_GROUPS 295
|
||||
# define SSL_R_NO_SUITABLE_KEY_SHARE 101
|
||||
# define SSL_R_NO_SUITABLE_RECORD_LAYER 322
|
||||
# define SSL_R_NO_SUITABLE_SIGNATURE_ALGORITHM 118
|
||||
# define SSL_R_NO_VALID_SCTS 216
|
||||
# define SSL_R_NO_VERIFY_COOKIE_CALLBACK 403
|
||||
@ -221,10 +231,16 @@
|
||||
# define SSL_R_PSK_IDENTITY_NOT_FOUND 223
|
||||
# define SSL_R_PSK_NO_CLIENT_CB 224
|
||||
# define SSL_R_PSK_NO_SERVER_CB 225
|
||||
# define SSL_R_QUIC_HANDSHAKE_LAYER_ERROR 393
|
||||
# define SSL_R_QUIC_NETWORK_ERROR 387
|
||||
# define SSL_R_QUIC_PROTOCOL_ERROR 382
|
||||
# define SSL_R_READ_BIO_NOT_SET 211
|
||||
# define SSL_R_READ_TIMEOUT_EXPIRED 312
|
||||
# define SSL_R_RECORDS_NOT_RELEASED 321
|
||||
# define SSL_R_RECORD_LAYER_FAILURE 313
|
||||
# define SSL_R_RECORD_LENGTH_MISMATCH 213
|
||||
# define SSL_R_RECORD_TOO_SMALL 298
|
||||
# define SSL_R_REMOTE_PEER_ADDRESS_NOT_SET 346
|
||||
# define SSL_R_RENEGOTIATE_EXT_TOO_LONG 335
|
||||
# define SSL_R_RENEGOTIATION_ENCODING_ERR 336
|
||||
# define SSL_R_RENEGOTIATION_MISMATCH 337
|
||||
@ -234,6 +250,7 @@
|
||||
# define SSL_R_REQUIRED_COMPRESSION_ALGORITHM_MISSING 342
|
||||
# define SSL_R_SCSV_RECEIVED_WHEN_RENEGOTIATING 345
|
||||
# define SSL_R_SCT_VERIFICATION_FAILED 208
|
||||
# define SSL_R_SEQUENCE_CTR_WRAPPED 327
|
||||
# define SSL_R_SERVERHELLO_TLSEXT 275
|
||||
# define SSL_R_SESSION_ID_CONTEXT_UNINITIALIZED 277
|
||||
# define SSL_R_SHUTDOWN_WHILE_IN_INIT 407
|
||||
@ -273,6 +290,11 @@
|
||||
# define SSL_R_SSL_SESSION_ID_TOO_LONG 408
|
||||
# define SSL_R_SSL_SESSION_VERSION_MISMATCH 210
|
||||
# define SSL_R_STILL_IN_INIT 121
|
||||
# define SSL_R_STREAM_COUNT_LIMITED 411
|
||||
# define SSL_R_STREAM_FINISHED 365
|
||||
# define SSL_R_STREAM_RECV_ONLY 366
|
||||
# define SSL_R_STREAM_RESET 375
|
||||
# define SSL_R_STREAM_SEND_ONLY 379
|
||||
# define SSL_R_TLSV13_ALERT_CERTIFICATE_REQUIRED 1116
|
||||
# define SSL_R_TLSV13_ALERT_MISSING_EXTENSION 1109
|
||||
# define SSL_R_TLSV1_ALERT_ACCESS_DENIED 1049
|
||||
@ -316,6 +338,7 @@
|
||||
# define SSL_R_UNKNOWN_COMMAND 139
|
||||
# define SSL_R_UNKNOWN_DIGEST 368
|
||||
# define SSL_R_UNKNOWN_KEY_EXCHANGE_TYPE 250
|
||||
# define SSL_R_UNKNOWN_MANDATORY_PARAMETER 323
|
||||
# define SSL_R_UNKNOWN_PKEY_TYPE 251
|
||||
# define SSL_R_UNKNOWN_PROTOCOL 252
|
||||
# define SSL_R_UNKNOWN_SSL_VERSION 254
|
||||
@ -333,6 +356,7 @@
|
||||
# define SSL_R_WRONG_CERTIFICATE_TYPE 383
|
||||
# define SSL_R_WRONG_CIPHER_RETURNED 261
|
||||
# define SSL_R_WRONG_CURVE 378
|
||||
# define SSL_R_WRONG_RPK_TYPE 351
|
||||
# define SSL_R_WRONG_SIGNATURE_LENGTH 264
|
||||
# define SSL_R_WRONG_SIGNATURE_SIZE 265
|
||||
# define SSL_R_WRONG_SIGNATURE_TYPE 370
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2016-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2016-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -98,6 +98,14 @@ OSSL_DEPRECATEDIN_3_0 int OSSL_STORE_vctrl(OSSL_STORE_CTX *ctx, int cmd,
|
||||
*/
|
||||
OSSL_STORE_INFO *OSSL_STORE_load(OSSL_STORE_CTX *ctx);
|
||||
|
||||
/*
|
||||
* Deletes the object in the store by URI.
|
||||
* Returns 1 on success, 0 otherwise.
|
||||
*/
|
||||
int OSSL_STORE_delete(const char *uri, OSSL_LIB_CTX *libctx, const char *propq,
|
||||
const UI_METHOD *ui_method, void *ui_data,
|
||||
const OSSL_PARAM params[]);
|
||||
|
||||
/*
|
||||
* Check if end of data (end of file) is reached
|
||||
* Returns 1 on end, 0 otherwise.
|
||||
@ -345,7 +353,7 @@ int OSSL_STORE_LOADER_set_close(OSSL_STORE_LOADER *loader,
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
const ENGINE *OSSL_STORE_LOADER_get0_engine(const OSSL_STORE_LOADER *loader);
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
const char * OSSL_STORE_LOADER_get0_scheme(const OSSL_STORE_LOADER *loader);
|
||||
const char *OSSL_STORE_LOADER_get0_scheme(const OSSL_STORE_LOADER *loader);
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
int OSSL_STORE_register_loader(OSSL_STORE_LOADER *loader);
|
||||
OSSL_DEPRECATEDIN_3_0
|
||||
|
31
deps/openssl/android/x86_64/usr/local/include/openssl/thread.h
vendored
Normal file
31
deps/openssl/android/x86_64/usr/local/include/openssl/thread.h
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#ifndef OPENSSL_THREAD_H
|
||||
# define OPENSSL_THREAD_H
|
||||
|
||||
# define OSSL_THREAD_SUPPORT_FLAG_THREAD_POOL (1U<<0)
|
||||
# define OSSL_THREAD_SUPPORT_FLAG_DEFAULT_SPAWN (1U<<1)
|
||||
|
||||
# include <openssl/types.h>
|
||||
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
|
||||
uint32_t OSSL_get_thread_support_flags(void);
|
||||
int OSSL_set_max_threads(OSSL_LIB_CTX *ctx, uint64_t max_threads);
|
||||
uint64_t OSSL_get_max_threads(OSSL_LIB_CTX *ctx);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
#endif /* OPENSSL_THREAD_H */
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
* Copyright 2005 Nokia. All rights reserved.
|
||||
*
|
||||
@ -28,7 +28,7 @@ extern "C" {
|
||||
|
||||
/* Default security level if not overridden at config time */
|
||||
# ifndef OPENSSL_TLS_SECURITY_LEVEL
|
||||
# define OPENSSL_TLS_SECURITY_LEVEL 1
|
||||
# define OPENSSL_TLS_SECURITY_LEVEL 2
|
||||
# endif
|
||||
|
||||
/* TLS*_VERSION constants are defined in prov_ssl.h */
|
||||
@ -122,6 +122,14 @@ extern "C" {
|
||||
*/
|
||||
# define TLSEXT_TYPE_signed_certificate_timestamp 18
|
||||
|
||||
/*
|
||||
* Extension type for Raw Public Keys
|
||||
* https://tools.ietf.org/html/rfc7250
|
||||
* https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml
|
||||
*/
|
||||
# define TLSEXT_TYPE_client_cert_type 19
|
||||
# define TLSEXT_TYPE_server_cert_type 20
|
||||
|
||||
/*
|
||||
* ExtensionType value for TLS padding extension.
|
||||
* http://tools.ietf.org/html/draft-agl-tls-padding
|
||||
@ -134,6 +142,9 @@ extern "C" {
|
||||
/* ExtensionType value from RFC7627 */
|
||||
# define TLSEXT_TYPE_extended_master_secret 23
|
||||
|
||||
/* ExtensionType value from RFC8879 */
|
||||
# define TLSEXT_TYPE_compress_certificate 27
|
||||
|
||||
/* ExtensionType value from RFC4507 */
|
||||
# define TLSEXT_TYPE_session_ticket 35
|
||||
|
||||
@ -147,6 +158,7 @@ extern "C" {
|
||||
# define TLSEXT_TYPE_post_handshake_auth 49
|
||||
# define TLSEXT_TYPE_signature_algorithms_cert 50
|
||||
# define TLSEXT_TYPE_key_share 51
|
||||
# define TLSEXT_TYPE_quic_transport_parameters 57
|
||||
|
||||
/* Temporary extension type */
|
||||
# define TLSEXT_TYPE_renegotiate 0xff01
|
||||
@ -195,6 +207,15 @@ extern "C" {
|
||||
|
||||
# define TLSEXT_hash_num 10
|
||||
|
||||
/* Possible compression values from RFC8879 */
|
||||
/* Not defined in RFC8879, but used internally for no-compression */
|
||||
# define TLSEXT_comp_cert_none 0
|
||||
# define TLSEXT_comp_cert_zlib 1
|
||||
# define TLSEXT_comp_cert_brotli 2
|
||||
# define TLSEXT_comp_cert_zstd 3
|
||||
/* one more than the number of defined values - used as size of 0-terminated array */
|
||||
# define TLSEXT_comp_cert_limit 4
|
||||
|
||||
/* Flag set for unrecognised algorithms */
|
||||
# define TLSEXT_nid_unknown 0x1000000
|
||||
|
||||
@ -211,6 +232,15 @@ extern "C" {
|
||||
# define TLSEXT_max_fragment_length_2048 3
|
||||
# define TLSEXT_max_fragment_length_4096 4
|
||||
|
||||
/*
|
||||
* TLS Certificate Type (for RFC7250)
|
||||
* https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#tls-extensiontype-values-3
|
||||
*/
|
||||
# define TLSEXT_cert_type_x509 0
|
||||
# define TLSEXT_cert_type_pgp 1 /* recognized, but not supported */
|
||||
# define TLSEXT_cert_type_rpk 2
|
||||
# define TLSEXT_cert_type_1609dot2 3 /* recognized, but not supported */
|
||||
|
||||
int SSL_CTX_set_tlsext_max_fragment_length(SSL_CTX *ctx, uint8_t mode);
|
||||
int SSL_set_tlsext_max_fragment_length(SSL *ssl, uint8_t mode);
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2019-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -305,6 +305,14 @@ void OSSL_trace_end(int category, BIO *channel);
|
||||
# define OSSL_TRACE9(category, format, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) \
|
||||
OSSL_TRACEV(category, (trc_out, format, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9))
|
||||
|
||||
#define OSSL_TRACE_STRING_MAX 80
|
||||
int OSSL_trace_string(BIO *out, int text, int full,
|
||||
const unsigned char *data, size_t size);
|
||||
#define OSSL_TRACE_STRING(category, text, full, data, len) \
|
||||
OSSL_TRACE_BEGIN(category) { \
|
||||
OSSL_trace_string(trc_out, text, full, data, len); \
|
||||
} OSSL_TRACE_END(category)
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2006-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2006-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2001-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2001-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/x509.h.in
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@ -606,6 +606,8 @@ EVP_PKEY *d2i_PrivateKey_ex_fp(FILE *fp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a);
|
||||
int i2d_PUBKEY_fp(FILE *fp, const EVP_PKEY *pkey);
|
||||
EVP_PKEY *d2i_PUBKEY_ex_fp(FILE *fp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a);
|
||||
# endif
|
||||
|
||||
@ -654,6 +656,8 @@ EVP_PKEY *d2i_PrivateKey_ex_bio(BIO *bp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a);
|
||||
int i2d_PUBKEY_bio(BIO *bp, const EVP_PKEY *pkey);
|
||||
EVP_PKEY *d2i_PUBKEY_ex_bio(BIO *bp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a);
|
||||
|
||||
DECLARE_ASN1_DUP_FUNCTION(X509)
|
||||
@ -887,7 +891,7 @@ int X509_REQ_get_signature_nid(const X509_REQ *req);
|
||||
int i2d_re_X509_REQ_tbs(X509_REQ *req, unsigned char **pp);
|
||||
int X509_REQ_set_pubkey(X509_REQ *x, EVP_PKEY *pkey);
|
||||
EVP_PKEY *X509_REQ_get_pubkey(X509_REQ *req);
|
||||
EVP_PKEY *X509_REQ_get0_pubkey(X509_REQ *req);
|
||||
EVP_PKEY *X509_REQ_get0_pubkey(const X509_REQ *req);
|
||||
X509_PUBKEY *X509_REQ_get_X509_PUBKEY(X509_REQ *req);
|
||||
int X509_REQ_extension_nid(int nid);
|
||||
int *X509_REQ_get_extension_nids(void);
|
||||
@ -953,13 +957,14 @@ X509_REVOKED_get0_extensions(const X509_REVOKED *r);
|
||||
X509_CRL *X509_CRL_diff(X509_CRL *base, X509_CRL *newer,
|
||||
EVP_PKEY *skey, const EVP_MD *md, unsigned int flags);
|
||||
|
||||
int X509_REQ_check_private_key(X509_REQ *x509, EVP_PKEY *pkey);
|
||||
int X509_REQ_check_private_key(const X509_REQ *req, EVP_PKEY *pkey);
|
||||
|
||||
int X509_check_private_key(const X509 *x509, const EVP_PKEY *pkey);
|
||||
int X509_check_private_key(const X509 *cert, const EVP_PKEY *pkey);
|
||||
int X509_chain_check_suiteb(int *perror_depth,
|
||||
X509 *x, STACK_OF(X509) *chain,
|
||||
unsigned long flags);
|
||||
int X509_CRL_check_suiteb(X509_CRL *crl, EVP_PKEY *pk, unsigned long flags);
|
||||
void OSSL_STACK_OF_X509_free(STACK_OF(X509) *certs);
|
||||
STACK_OF(X509) *X509_chain_up_ref(STACK_OF(X509) *chain);
|
||||
|
||||
int X509_issuer_and_serial_cmp(const X509 *a, const X509 *b);
|
||||
@ -1265,6 +1270,8 @@ int PKCS8_pkey_add1_attr_by_OBJ(PKCS8_PRIV_KEY_INFO *p8, const ASN1_OBJECT *obj,
|
||||
int type, const unsigned char *bytes, int len);
|
||||
|
||||
|
||||
void X509_PUBKEY_set0_public_key(X509_PUBKEY *pub,
|
||||
unsigned char *penc, int penclen);
|
||||
int X509_PUBKEY_set0_param(X509_PUBKEY *pub, ASN1_OBJECT *aobj,
|
||||
int ptype, void *pval,
|
||||
unsigned char *penc, int penclen);
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
@ -412,6 +412,8 @@ EVP_PKEY *d2i_PrivateKey_ex_fp(FILE *fp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a);
|
||||
int i2d_PUBKEY_fp(FILE *fp, const EVP_PKEY *pkey);
|
||||
EVP_PKEY *d2i_PUBKEY_ex_fp(FILE *fp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a);
|
||||
# endif
|
||||
|
||||
@ -460,6 +462,8 @@ EVP_PKEY *d2i_PrivateKey_ex_bio(BIO *bp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a);
|
||||
int i2d_PUBKEY_bio(BIO *bp, const EVP_PKEY *pkey);
|
||||
EVP_PKEY *d2i_PUBKEY_ex_bio(BIO *bp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a);
|
||||
|
||||
DECLARE_ASN1_DUP_FUNCTION(X509)
|
||||
@ -693,7 +697,7 @@ int X509_REQ_get_signature_nid(const X509_REQ *req);
|
||||
int i2d_re_X509_REQ_tbs(X509_REQ *req, unsigned char **pp);
|
||||
int X509_REQ_set_pubkey(X509_REQ *x, EVP_PKEY *pkey);
|
||||
EVP_PKEY *X509_REQ_get_pubkey(X509_REQ *req);
|
||||
EVP_PKEY *X509_REQ_get0_pubkey(X509_REQ *req);
|
||||
EVP_PKEY *X509_REQ_get0_pubkey(const X509_REQ *req);
|
||||
X509_PUBKEY *X509_REQ_get_X509_PUBKEY(X509_REQ *req);
|
||||
int X509_REQ_extension_nid(int nid);
|
||||
int *X509_REQ_get_extension_nids(void);
|
||||
@ -759,13 +763,14 @@ X509_REVOKED_get0_extensions(const X509_REVOKED *r);
|
||||
X509_CRL *X509_CRL_diff(X509_CRL *base, X509_CRL *newer,
|
||||
EVP_PKEY *skey, const EVP_MD *md, unsigned int flags);
|
||||
|
||||
int X509_REQ_check_private_key(X509_REQ *x509, EVP_PKEY *pkey);
|
||||
int X509_REQ_check_private_key(const X509_REQ *req, EVP_PKEY *pkey);
|
||||
|
||||
int X509_check_private_key(const X509 *x509, const EVP_PKEY *pkey);
|
||||
int X509_check_private_key(const X509 *cert, const EVP_PKEY *pkey);
|
||||
int X509_chain_check_suiteb(int *perror_depth,
|
||||
X509 *x, STACK_OF(X509) *chain,
|
||||
unsigned long flags);
|
||||
int X509_CRL_check_suiteb(X509_CRL *crl, EVP_PKEY *pk, unsigned long flags);
|
||||
void OSSL_STACK_OF_X509_free(STACK_OF(X509) *certs);
|
||||
STACK_OF(X509) *X509_chain_up_ref(STACK_OF(X509) *chain);
|
||||
|
||||
int X509_issuer_and_serial_cmp(const X509 *a, const X509 *b);
|
||||
@ -1071,6 +1076,8 @@ int PKCS8_pkey_add1_attr_by_OBJ(PKCS8_PRIV_KEY_INFO *p8, const ASN1_OBJECT *obj,
|
||||
int type, const unsigned char *bytes, int len);
|
||||
|
||||
|
||||
void X509_PUBKEY_set0_public_key(X509_PUBKEY *pub,
|
||||
unsigned char *penc, int penclen);
|
||||
int X509_PUBKEY_set0_param(X509_PUBKEY *pub, ASN1_OBJECT *aobj,
|
||||
int ptype, void *pval,
|
||||
unsigned char *penc, int penclen);
|
||||
|
@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/x509_vfy.h.in
|
||||
*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -411,6 +411,7 @@ X509_LOOKUP_ctrl_ex((x), X509_L_ADD_STORE, (name), 0, NULL, \
|
||||
# define X509_V_ERR_CA_CERT_MISSING_KEY_USAGE 92
|
||||
# define X509_V_ERR_EXTENSIONS_REQUIRE_VERSION_3 93
|
||||
# define X509_V_ERR_EC_KEY_EXPLICIT_PARAMS 94
|
||||
# define X509_V_ERR_RPK_UNTRUSTED 95
|
||||
|
||||
/* Certificate verify flags */
|
||||
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
@ -491,71 +492,71 @@ int X509_OBJECT_set1_X509(X509_OBJECT *a, X509 *obj);
|
||||
X509_CRL *X509_OBJECT_get0_X509_CRL(const X509_OBJECT *a);
|
||||
int X509_OBJECT_set1_X509_CRL(X509_OBJECT *a, X509_CRL *obj);
|
||||
X509_STORE *X509_STORE_new(void);
|
||||
void X509_STORE_free(X509_STORE *v);
|
||||
int X509_STORE_lock(X509_STORE *ctx);
|
||||
int X509_STORE_unlock(X509_STORE *ctx);
|
||||
int X509_STORE_up_ref(X509_STORE *v);
|
||||
STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(const X509_STORE *v);
|
||||
STACK_OF(X509) *X509_STORE_get1_all_certs(X509_STORE *st);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *st,
|
||||
void X509_STORE_free(X509_STORE *xs);
|
||||
int X509_STORE_lock(X509_STORE *xs);
|
||||
int X509_STORE_unlock(X509_STORE *xs);
|
||||
int X509_STORE_up_ref(X509_STORE *xs);
|
||||
STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(const X509_STORE *xs);
|
||||
STACK_OF(X509) *X509_STORE_get1_all_certs(X509_STORE *xs);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *xs,
|
||||
const X509_NAME *nm);
|
||||
STACK_OF(X509_CRL) *X509_STORE_CTX_get1_crls(const X509_STORE_CTX *st,
|
||||
const X509_NAME *nm);
|
||||
int X509_STORE_set_flags(X509_STORE *ctx, unsigned long flags);
|
||||
int X509_STORE_set_purpose(X509_STORE *ctx, int purpose);
|
||||
int X509_STORE_set_trust(X509_STORE *ctx, int trust);
|
||||
int X509_STORE_set1_param(X509_STORE *ctx, const X509_VERIFY_PARAM *pm);
|
||||
X509_VERIFY_PARAM *X509_STORE_get0_param(const X509_STORE *ctx);
|
||||
int X509_STORE_set_flags(X509_STORE *xs, unsigned long flags);
|
||||
int X509_STORE_set_purpose(X509_STORE *xs, int purpose);
|
||||
int X509_STORE_set_trust(X509_STORE *xs, int trust);
|
||||
int X509_STORE_set1_param(X509_STORE *xs, const X509_VERIFY_PARAM *pm);
|
||||
X509_VERIFY_PARAM *X509_STORE_get0_param(const X509_STORE *xs);
|
||||
|
||||
void X509_STORE_set_verify(X509_STORE *ctx, X509_STORE_CTX_verify_fn verify);
|
||||
void X509_STORE_set_verify(X509_STORE *xs, X509_STORE_CTX_verify_fn verify);
|
||||
#define X509_STORE_set_verify_func(ctx, func) \
|
||||
X509_STORE_set_verify((ctx),(func))
|
||||
void X509_STORE_CTX_set_verify(X509_STORE_CTX *ctx,
|
||||
X509_STORE_CTX_verify_fn verify);
|
||||
X509_STORE_CTX_verify_fn X509_STORE_get_verify(const X509_STORE *ctx);
|
||||
void X509_STORE_set_verify_cb(X509_STORE *ctx,
|
||||
X509_STORE_CTX_verify_fn X509_STORE_get_verify(const X509_STORE *xs);
|
||||
void X509_STORE_set_verify_cb(X509_STORE *xs,
|
||||
X509_STORE_CTX_verify_cb verify_cb);
|
||||
# define X509_STORE_set_verify_cb_func(ctx,func) \
|
||||
X509_STORE_set_verify_cb((ctx),(func))
|
||||
X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(const X509_STORE *ctx);
|
||||
void X509_STORE_set_get_issuer(X509_STORE *ctx,
|
||||
X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(const X509_STORE *xs);
|
||||
void X509_STORE_set_get_issuer(X509_STORE *xs,
|
||||
X509_STORE_CTX_get_issuer_fn get_issuer);
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_get_get_issuer(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_issued(X509_STORE *ctx,
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_get_get_issuer(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_issued(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_issued_fn check_issued);
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_get_check_issued(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_revocation(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_get_check_issued(const X509_STORE *s);
|
||||
void X509_STORE_set_check_revocation(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_revocation_fn check_revocation);
|
||||
X509_STORE_CTX_check_revocation_fn
|
||||
X509_STORE_get_check_revocation(const X509_STORE *ctx);
|
||||
void X509_STORE_set_get_crl(X509_STORE *ctx,
|
||||
X509_STORE_get_check_revocation(const X509_STORE *xs);
|
||||
void X509_STORE_set_get_crl(X509_STORE *xs,
|
||||
X509_STORE_CTX_get_crl_fn get_crl);
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_get_get_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_crl(X509_STORE *ctx,
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_get_get_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_crl(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_crl_fn check_crl);
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_get_check_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_cert_crl(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_get_check_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_cert_crl(X509_STORE *xs,
|
||||
X509_STORE_CTX_cert_crl_fn cert_crl);
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_get_cert_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_policy(X509_STORE *ctx,
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_get_cert_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_policy(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_policy_fn check_policy);
|
||||
X509_STORE_CTX_check_policy_fn X509_STORE_get_check_policy(const X509_STORE *ctx);
|
||||
void X509_STORE_set_lookup_certs(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_policy_fn X509_STORE_get_check_policy(const X509_STORE *s);
|
||||
void X509_STORE_set_lookup_certs(X509_STORE *xs,
|
||||
X509_STORE_CTX_lookup_certs_fn lookup_certs);
|
||||
X509_STORE_CTX_lookup_certs_fn X509_STORE_get_lookup_certs(const X509_STORE *ctx);
|
||||
void X509_STORE_set_lookup_crls(X509_STORE *ctx,
|
||||
X509_STORE_CTX_lookup_certs_fn X509_STORE_get_lookup_certs(const X509_STORE *s);
|
||||
void X509_STORE_set_lookup_crls(X509_STORE *xs,
|
||||
X509_STORE_CTX_lookup_crls_fn lookup_crls);
|
||||
#define X509_STORE_set_lookup_crls_cb(ctx, func) \
|
||||
X509_STORE_set_lookup_crls((ctx), (func))
|
||||
X509_STORE_CTX_lookup_crls_fn X509_STORE_get_lookup_crls(const X509_STORE *ctx);
|
||||
void X509_STORE_set_cleanup(X509_STORE *ctx,
|
||||
X509_STORE_CTX_lookup_crls_fn X509_STORE_get_lookup_crls(const X509_STORE *xs);
|
||||
void X509_STORE_set_cleanup(X509_STORE *xs,
|
||||
X509_STORE_CTX_cleanup_fn cleanup);
|
||||
X509_STORE_CTX_cleanup_fn X509_STORE_get_cleanup(const X509_STORE *ctx);
|
||||
X509_STORE_CTX_cleanup_fn X509_STORE_get_cleanup(const X509_STORE *xs);
|
||||
|
||||
#define X509_STORE_get_ex_new_index(l, p, newf, dupf, freef) \
|
||||
CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE, l, p, newf, dupf, freef)
|
||||
int X509_STORE_set_ex_data(X509_STORE *ctx, int idx, void *data);
|
||||
void *X509_STORE_get_ex_data(const X509_STORE *ctx, int idx);
|
||||
int X509_STORE_set_ex_data(X509_STORE *xs, int idx, void *data);
|
||||
void *X509_STORE_get_ex_data(const X509_STORE *xs, int idx);
|
||||
|
||||
X509_STORE_CTX *X509_STORE_CTX_new_ex(OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509_STORE_CTX *X509_STORE_CTX_new(void);
|
||||
@ -565,11 +566,14 @@ int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x);
|
||||
void X509_STORE_CTX_free(X509_STORE_CTX *ctx);
|
||||
int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *trust_store,
|
||||
X509 *target, STACK_OF(X509) *untrusted);
|
||||
int X509_STORE_CTX_init_rpk(X509_STORE_CTX *ctx, X509_STORE *trust_store,
|
||||
EVP_PKEY* rpk);
|
||||
void X509_STORE_CTX_set0_trusted_stack(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx);
|
||||
|
||||
X509_STORE *X509_STORE_CTX_get0_store(const X509_STORE_CTX *ctx);
|
||||
X509 *X509_STORE_CTX_get0_cert(const X509_STORE_CTX *ctx);
|
||||
EVP_PKEY *X509_STORE_CTX_get0_rpk(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509)* X509_STORE_CTX_get0_untrusted(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set0_untrusted(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_set_verify_cb(X509_STORE_CTX *ctx,
|
||||
@ -579,6 +583,8 @@ X509_STORE_CTX_verify_fn X509_STORE_CTX_get_verify(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_CTX_get_get_issuer(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_CTX_get_check_issued(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_revocation_fn X509_STORE_CTX_get_check_revocation(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set_get_crl(X509_STORE_CTX *ctx,
|
||||
X509_STORE_CTX_get_crl_fn get_crl);
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_CTX_get_get_crl(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_CTX_get_check_crl(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_CTX_get_cert_crl(const X509_STORE_CTX *ctx);
|
||||
@ -600,7 +606,7 @@ X509_STORE_CTX_cleanup_fn X509_STORE_CTX_get_cleanup(const X509_STORE_CTX *ctx);
|
||||
# define X509_STORE_get1_crl X509_STORE_CTX_get1_crls
|
||||
#endif
|
||||
|
||||
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
|
||||
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *xs, X509_LOOKUP_METHOD *m);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_file(void);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_store(void);
|
||||
@ -685,8 +691,8 @@ X509_LOOKUP_get_by_alias_fn X509_LOOKUP_meth_get_get_by_alias(
|
||||
const X509_LOOKUP_METHOD *method);
|
||||
|
||||
|
||||
int X509_STORE_add_cert(X509_STORE *ctx, X509 *x);
|
||||
int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x);
|
||||
int X509_STORE_add_cert(X509_STORE *xs, X509 *x);
|
||||
int X509_STORE_add_crl(X509_STORE *xs, X509_CRL *x);
|
||||
|
||||
int X509_STORE_CTX_get_by_subject(const X509_STORE_CTX *vs,
|
||||
X509_LOOKUP_TYPE type,
|
||||
@ -730,23 +736,21 @@ void *X509_LOOKUP_get_method_data(const X509_LOOKUP *ctx);
|
||||
X509_STORE *X509_LOOKUP_get_store(const X509_LOOKUP *ctx);
|
||||
int X509_LOOKUP_shutdown(X509_LOOKUP *ctx);
|
||||
|
||||
int X509_STORE_load_file(X509_STORE *ctx, const char *file);
|
||||
int X509_STORE_load_path(X509_STORE *ctx, const char *path);
|
||||
int X509_STORE_load_store(X509_STORE *ctx, const char *store);
|
||||
int X509_STORE_load_locations(X509_STORE *ctx,
|
||||
const char *file,
|
||||
const char *dir);
|
||||
int X509_STORE_set_default_paths(X509_STORE *ctx);
|
||||
int X509_STORE_load_file(X509_STORE *xs, const char *file);
|
||||
int X509_STORE_load_path(X509_STORE *xs, const char *path);
|
||||
int X509_STORE_load_store(X509_STORE *xs, const char *store);
|
||||
int X509_STORE_load_locations(X509_STORE *s, const char *file, const char *dir);
|
||||
int X509_STORE_set_default_paths(X509_STORE *xs);
|
||||
|
||||
int X509_STORE_load_file_ex(X509_STORE *ctx, const char *file,
|
||||
int X509_STORE_load_file_ex(X509_STORE *xs, const char *file,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_load_store_ex(X509_STORE *ctx, const char *store,
|
||||
int X509_STORE_load_store_ex(X509_STORE *xs, const char *store,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_load_locations_ex(X509_STORE *ctx, const char *file,
|
||||
const char *dir, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
int X509_STORE_set_default_paths_ex(X509_STORE *ctx, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
int X509_STORE_load_locations_ex(X509_STORE *xs,
|
||||
const char *file, const char *dir,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_set_default_paths_ex(X509_STORE *xs,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
#define X509_STORE_CTX_get_ex_new_index(l, p, newf, dupf, freef) \
|
||||
CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE_CTX, l, p, newf, dupf, freef)
|
||||
@ -764,6 +768,7 @@ X509_STORE_CTX *X509_STORE_CTX_get0_parent_ctx(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get0_chain(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_chain(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set_cert(X509_STORE_CTX *ctx, X509 *target);
|
||||
void X509_STORE_CTX_set0_rpk(X509_STORE_CTX *ctx, EVP_PKEY *target);
|
||||
void X509_STORE_CTX_set0_verified_chain(X509_STORE_CTX *c, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_set0_crls(X509_STORE_CTX *ctx, STACK_OF(X509_CRL) *sk);
|
||||
int X509_STORE_CTX_set_purpose(X509_STORE_CTX *ctx, int purpose);
|
||||
@ -773,6 +778,8 @@ int X509_STORE_CTX_purpose_inherit(X509_STORE_CTX *ctx, int def_purpose,
|
||||
void X509_STORE_CTX_set_flags(X509_STORE_CTX *ctx, unsigned long flags);
|
||||
void X509_STORE_CTX_set_time(X509_STORE_CTX *ctx, unsigned long flags,
|
||||
time_t t);
|
||||
void X509_STORE_CTX_set_current_reasons(X509_STORE_CTX *ctx,
|
||||
unsigned int current_reasons);
|
||||
|
||||
X509_POLICY_TREE *X509_STORE_CTX_get0_policy_tree(const X509_STORE_CTX *ctx);
|
||||
int X509_STORE_CTX_get_explicit_policy(const X509_STORE_CTX *ctx);
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -314,6 +314,7 @@ X509_LOOKUP_ctrl_ex((x), X509_L_ADD_STORE, (name), 0, NULL, \
|
||||
# define X509_V_ERR_CA_CERT_MISSING_KEY_USAGE 92
|
||||
# define X509_V_ERR_EXTENSIONS_REQUIRE_VERSION_3 93
|
||||
# define X509_V_ERR_EC_KEY_EXPLICIT_PARAMS 94
|
||||
# define X509_V_ERR_RPK_UNTRUSTED 95
|
||||
|
||||
/* Certificate verify flags */
|
||||
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
|
||||
@ -394,71 +395,71 @@ int X509_OBJECT_set1_X509(X509_OBJECT *a, X509 *obj);
|
||||
X509_CRL *X509_OBJECT_get0_X509_CRL(const X509_OBJECT *a);
|
||||
int X509_OBJECT_set1_X509_CRL(X509_OBJECT *a, X509_CRL *obj);
|
||||
X509_STORE *X509_STORE_new(void);
|
||||
void X509_STORE_free(X509_STORE *v);
|
||||
int X509_STORE_lock(X509_STORE *ctx);
|
||||
int X509_STORE_unlock(X509_STORE *ctx);
|
||||
int X509_STORE_up_ref(X509_STORE *v);
|
||||
STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(const X509_STORE *v);
|
||||
STACK_OF(X509) *X509_STORE_get1_all_certs(X509_STORE *st);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *st,
|
||||
void X509_STORE_free(X509_STORE *xs);
|
||||
int X509_STORE_lock(X509_STORE *xs);
|
||||
int X509_STORE_unlock(X509_STORE *xs);
|
||||
int X509_STORE_up_ref(X509_STORE *xs);
|
||||
STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(const X509_STORE *xs);
|
||||
STACK_OF(X509) *X509_STORE_get1_all_certs(X509_STORE *xs);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *xs,
|
||||
const X509_NAME *nm);
|
||||
STACK_OF(X509_CRL) *X509_STORE_CTX_get1_crls(const X509_STORE_CTX *st,
|
||||
const X509_NAME *nm);
|
||||
int X509_STORE_set_flags(X509_STORE *ctx, unsigned long flags);
|
||||
int X509_STORE_set_purpose(X509_STORE *ctx, int purpose);
|
||||
int X509_STORE_set_trust(X509_STORE *ctx, int trust);
|
||||
int X509_STORE_set1_param(X509_STORE *ctx, const X509_VERIFY_PARAM *pm);
|
||||
X509_VERIFY_PARAM *X509_STORE_get0_param(const X509_STORE *ctx);
|
||||
int X509_STORE_set_flags(X509_STORE *xs, unsigned long flags);
|
||||
int X509_STORE_set_purpose(X509_STORE *xs, int purpose);
|
||||
int X509_STORE_set_trust(X509_STORE *xs, int trust);
|
||||
int X509_STORE_set1_param(X509_STORE *xs, const X509_VERIFY_PARAM *pm);
|
||||
X509_VERIFY_PARAM *X509_STORE_get0_param(const X509_STORE *xs);
|
||||
|
||||
void X509_STORE_set_verify(X509_STORE *ctx, X509_STORE_CTX_verify_fn verify);
|
||||
void X509_STORE_set_verify(X509_STORE *xs, X509_STORE_CTX_verify_fn verify);
|
||||
#define X509_STORE_set_verify_func(ctx, func) \
|
||||
X509_STORE_set_verify((ctx),(func))
|
||||
void X509_STORE_CTX_set_verify(X509_STORE_CTX *ctx,
|
||||
X509_STORE_CTX_verify_fn verify);
|
||||
X509_STORE_CTX_verify_fn X509_STORE_get_verify(const X509_STORE *ctx);
|
||||
void X509_STORE_set_verify_cb(X509_STORE *ctx,
|
||||
X509_STORE_CTX_verify_fn X509_STORE_get_verify(const X509_STORE *xs);
|
||||
void X509_STORE_set_verify_cb(X509_STORE *xs,
|
||||
X509_STORE_CTX_verify_cb verify_cb);
|
||||
# define X509_STORE_set_verify_cb_func(ctx,func) \
|
||||
X509_STORE_set_verify_cb((ctx),(func))
|
||||
X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(const X509_STORE *ctx);
|
||||
void X509_STORE_set_get_issuer(X509_STORE *ctx,
|
||||
X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(const X509_STORE *xs);
|
||||
void X509_STORE_set_get_issuer(X509_STORE *xs,
|
||||
X509_STORE_CTX_get_issuer_fn get_issuer);
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_get_get_issuer(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_issued(X509_STORE *ctx,
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_get_get_issuer(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_issued(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_issued_fn check_issued);
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_get_check_issued(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_revocation(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_get_check_issued(const X509_STORE *s);
|
||||
void X509_STORE_set_check_revocation(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_revocation_fn check_revocation);
|
||||
X509_STORE_CTX_check_revocation_fn
|
||||
X509_STORE_get_check_revocation(const X509_STORE *ctx);
|
||||
void X509_STORE_set_get_crl(X509_STORE *ctx,
|
||||
X509_STORE_get_check_revocation(const X509_STORE *xs);
|
||||
void X509_STORE_set_get_crl(X509_STORE *xs,
|
||||
X509_STORE_CTX_get_crl_fn get_crl);
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_get_get_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_crl(X509_STORE *ctx,
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_get_get_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_crl(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_crl_fn check_crl);
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_get_check_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_cert_crl(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_get_check_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_cert_crl(X509_STORE *xs,
|
||||
X509_STORE_CTX_cert_crl_fn cert_crl);
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_get_cert_crl(const X509_STORE *ctx);
|
||||
void X509_STORE_set_check_policy(X509_STORE *ctx,
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_get_cert_crl(const X509_STORE *xs);
|
||||
void X509_STORE_set_check_policy(X509_STORE *xs,
|
||||
X509_STORE_CTX_check_policy_fn check_policy);
|
||||
X509_STORE_CTX_check_policy_fn X509_STORE_get_check_policy(const X509_STORE *ctx);
|
||||
void X509_STORE_set_lookup_certs(X509_STORE *ctx,
|
||||
X509_STORE_CTX_check_policy_fn X509_STORE_get_check_policy(const X509_STORE *s);
|
||||
void X509_STORE_set_lookup_certs(X509_STORE *xs,
|
||||
X509_STORE_CTX_lookup_certs_fn lookup_certs);
|
||||
X509_STORE_CTX_lookup_certs_fn X509_STORE_get_lookup_certs(const X509_STORE *ctx);
|
||||
void X509_STORE_set_lookup_crls(X509_STORE *ctx,
|
||||
X509_STORE_CTX_lookup_certs_fn X509_STORE_get_lookup_certs(const X509_STORE *s);
|
||||
void X509_STORE_set_lookup_crls(X509_STORE *xs,
|
||||
X509_STORE_CTX_lookup_crls_fn lookup_crls);
|
||||
#define X509_STORE_set_lookup_crls_cb(ctx, func) \
|
||||
X509_STORE_set_lookup_crls((ctx), (func))
|
||||
X509_STORE_CTX_lookup_crls_fn X509_STORE_get_lookup_crls(const X509_STORE *ctx);
|
||||
void X509_STORE_set_cleanup(X509_STORE *ctx,
|
||||
X509_STORE_CTX_lookup_crls_fn X509_STORE_get_lookup_crls(const X509_STORE *xs);
|
||||
void X509_STORE_set_cleanup(X509_STORE *xs,
|
||||
X509_STORE_CTX_cleanup_fn cleanup);
|
||||
X509_STORE_CTX_cleanup_fn X509_STORE_get_cleanup(const X509_STORE *ctx);
|
||||
X509_STORE_CTX_cleanup_fn X509_STORE_get_cleanup(const X509_STORE *xs);
|
||||
|
||||
#define X509_STORE_get_ex_new_index(l, p, newf, dupf, freef) \
|
||||
CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE, l, p, newf, dupf, freef)
|
||||
int X509_STORE_set_ex_data(X509_STORE *ctx, int idx, void *data);
|
||||
void *X509_STORE_get_ex_data(const X509_STORE *ctx, int idx);
|
||||
int X509_STORE_set_ex_data(X509_STORE *xs, int idx, void *data);
|
||||
void *X509_STORE_get_ex_data(const X509_STORE *xs, int idx);
|
||||
|
||||
X509_STORE_CTX *X509_STORE_CTX_new_ex(OSSL_LIB_CTX *libctx, const char *propq);
|
||||
X509_STORE_CTX *X509_STORE_CTX_new(void);
|
||||
@ -468,11 +469,14 @@ int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x);
|
||||
void X509_STORE_CTX_free(X509_STORE_CTX *ctx);
|
||||
int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *trust_store,
|
||||
X509 *target, STACK_OF(X509) *untrusted);
|
||||
int X509_STORE_CTX_init_rpk(X509_STORE_CTX *ctx, X509_STORE *trust_store,
|
||||
EVP_PKEY* rpk);
|
||||
void X509_STORE_CTX_set0_trusted_stack(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx);
|
||||
|
||||
X509_STORE *X509_STORE_CTX_get0_store(const X509_STORE_CTX *ctx);
|
||||
X509 *X509_STORE_CTX_get0_cert(const X509_STORE_CTX *ctx);
|
||||
EVP_PKEY *X509_STORE_CTX_get0_rpk(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509)* X509_STORE_CTX_get0_untrusted(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set0_untrusted(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_set_verify_cb(X509_STORE_CTX *ctx,
|
||||
@ -482,6 +486,8 @@ X509_STORE_CTX_verify_fn X509_STORE_CTX_get_verify(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_get_issuer_fn X509_STORE_CTX_get_get_issuer(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_issued_fn X509_STORE_CTX_get_check_issued(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_revocation_fn X509_STORE_CTX_get_check_revocation(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set_get_crl(X509_STORE_CTX *ctx,
|
||||
X509_STORE_CTX_get_crl_fn get_crl);
|
||||
X509_STORE_CTX_get_crl_fn X509_STORE_CTX_get_get_crl(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_check_crl_fn X509_STORE_CTX_get_check_crl(const X509_STORE_CTX *ctx);
|
||||
X509_STORE_CTX_cert_crl_fn X509_STORE_CTX_get_cert_crl(const X509_STORE_CTX *ctx);
|
||||
@ -503,7 +509,7 @@ X509_STORE_CTX_cleanup_fn X509_STORE_CTX_get_cleanup(const X509_STORE_CTX *ctx);
|
||||
# define X509_STORE_get1_crl X509_STORE_CTX_get1_crls
|
||||
#endif
|
||||
|
||||
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
|
||||
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *xs, X509_LOOKUP_METHOD *m);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_file(void);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_store(void);
|
||||
@ -588,8 +594,8 @@ X509_LOOKUP_get_by_alias_fn X509_LOOKUP_meth_get_get_by_alias(
|
||||
const X509_LOOKUP_METHOD *method);
|
||||
|
||||
|
||||
int X509_STORE_add_cert(X509_STORE *ctx, X509 *x);
|
||||
int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x);
|
||||
int X509_STORE_add_cert(X509_STORE *xs, X509 *x);
|
||||
int X509_STORE_add_crl(X509_STORE *xs, X509_CRL *x);
|
||||
|
||||
int X509_STORE_CTX_get_by_subject(const X509_STORE_CTX *vs,
|
||||
X509_LOOKUP_TYPE type,
|
||||
@ -633,23 +639,21 @@ void *X509_LOOKUP_get_method_data(const X509_LOOKUP *ctx);
|
||||
X509_STORE *X509_LOOKUP_get_store(const X509_LOOKUP *ctx);
|
||||
int X509_LOOKUP_shutdown(X509_LOOKUP *ctx);
|
||||
|
||||
int X509_STORE_load_file(X509_STORE *ctx, const char *file);
|
||||
int X509_STORE_load_path(X509_STORE *ctx, const char *path);
|
||||
int X509_STORE_load_store(X509_STORE *ctx, const char *store);
|
||||
int X509_STORE_load_locations(X509_STORE *ctx,
|
||||
const char *file,
|
||||
const char *dir);
|
||||
int X509_STORE_set_default_paths(X509_STORE *ctx);
|
||||
int X509_STORE_load_file(X509_STORE *xs, const char *file);
|
||||
int X509_STORE_load_path(X509_STORE *xs, const char *path);
|
||||
int X509_STORE_load_store(X509_STORE *xs, const char *store);
|
||||
int X509_STORE_load_locations(X509_STORE *s, const char *file, const char *dir);
|
||||
int X509_STORE_set_default_paths(X509_STORE *xs);
|
||||
|
||||
int X509_STORE_load_file_ex(X509_STORE *ctx, const char *file,
|
||||
int X509_STORE_load_file_ex(X509_STORE *xs, const char *file,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_load_store_ex(X509_STORE *ctx, const char *store,
|
||||
int X509_STORE_load_store_ex(X509_STORE *xs, const char *store,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_load_locations_ex(X509_STORE *ctx, const char *file,
|
||||
const char *dir, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
int X509_STORE_set_default_paths_ex(X509_STORE *ctx, OSSL_LIB_CTX *libctx,
|
||||
const char *propq);
|
||||
int X509_STORE_load_locations_ex(X509_STORE *xs,
|
||||
const char *file, const char *dir,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
int X509_STORE_set_default_paths_ex(X509_STORE *xs,
|
||||
OSSL_LIB_CTX *libctx, const char *propq);
|
||||
|
||||
#define X509_STORE_CTX_get_ex_new_index(l, p, newf, dupf, freef) \
|
||||
CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE_CTX, l, p, newf, dupf, freef)
|
||||
@ -667,6 +671,7 @@ X509_STORE_CTX *X509_STORE_CTX_get0_parent_ctx(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get0_chain(const X509_STORE_CTX *ctx);
|
||||
STACK_OF(X509) *X509_STORE_CTX_get1_chain(const X509_STORE_CTX *ctx);
|
||||
void X509_STORE_CTX_set_cert(X509_STORE_CTX *ctx, X509 *target);
|
||||
void X509_STORE_CTX_set0_rpk(X509_STORE_CTX *ctx, EVP_PKEY *target);
|
||||
void X509_STORE_CTX_set0_verified_chain(X509_STORE_CTX *c, STACK_OF(X509) *sk);
|
||||
void X509_STORE_CTX_set0_crls(X509_STORE_CTX *ctx, STACK_OF(X509_CRL) *sk);
|
||||
int X509_STORE_CTX_set_purpose(X509_STORE_CTX *ctx, int purpose);
|
||||
@ -676,6 +681,8 @@ int X509_STORE_CTX_purpose_inherit(X509_STORE_CTX *ctx, int def_purpose,
|
||||
void X509_STORE_CTX_set_flags(X509_STORE_CTX *ctx, unsigned long flags);
|
||||
void X509_STORE_CTX_set_time(X509_STORE_CTX *ctx, unsigned long flags,
|
||||
time_t t);
|
||||
void X509_STORE_CTX_set_current_reasons(X509_STORE_CTX *ctx,
|
||||
unsigned int current_reasons);
|
||||
|
||||
X509_POLICY_TREE *X509_STORE_CTX_get0_policy_tree(const X509_STORE_CTX *ctx);
|
||||
int X509_STORE_CTX_get_explicit_policy(const X509_STORE_CTX *ctx);
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
|
@ -742,9 +742,10 @@ SKM_DEFINE_STACK_OF_INTERNAL(X509_PURPOSE, X509_PURPOSE, X509_PURPOSE)
|
||||
# define X509_PURPOSE_ANY 7
|
||||
# define X509_PURPOSE_OCSP_HELPER 8
|
||||
# define X509_PURPOSE_TIMESTAMP_SIGN 9
|
||||
# define X509_PURPOSE_CODE_SIGN 10
|
||||
|
||||
# define X509_PURPOSE_MIN 1
|
||||
# define X509_PURPOSE_MAX 9
|
||||
# define X509_PURPOSE_MAX 10
|
||||
|
||||
/* Flags for X509V3_EXT_print() */
|
||||
|
||||
|
@ -478,9 +478,10 @@ typedef struct x509_purpose_st {
|
||||
# define X509_PURPOSE_ANY 7
|
||||
# define X509_PURPOSE_OCSP_HELPER 8
|
||||
# define X509_PURPOSE_TIMESTAMP_SIGN 9
|
||||
# define X509_PURPOSE_CODE_SIGN 10
|
||||
|
||||
# define X509_PURPOSE_MIN 1
|
||||
# define X509_PURPOSE_MAX 9
|
||||
# define X509_PURPOSE_MAX 10
|
||||
|
||||
/* Flags for X509V3_EXT_print() */
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Generated by util/mkerr.pl DO NOT EDIT
|
||||
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the Apache License 2.0 (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
@ -23,6 +23,8 @@
|
||||
*/
|
||||
# define X509V3_R_BAD_IP_ADDRESS 118
|
||||
# define X509V3_R_BAD_OBJECT 119
|
||||
# define X509V3_R_BAD_OPTION 170
|
||||
# define X509V3_R_BAD_VALUE 171
|
||||
# define X509V3_R_BN_DEC2BN_ERROR 100
|
||||
# define X509V3_R_BN_TO_ASN1_INTEGER_ERROR 101
|
||||
# define X509V3_R_DIRNAME_ERROR 149
|
||||
@ -86,6 +88,7 @@
|
||||
# define X509V3_R_UNKNOWN_EXTENSION 129
|
||||
# define X509V3_R_UNKNOWN_EXTENSION_NAME 130
|
||||
# define X509V3_R_UNKNOWN_OPTION 120
|
||||
# define X509V3_R_UNKNOWN_VALUE 172
|
||||
# define X509V3_R_UNSUPPORTED_OPTION 117
|
||||
# define X509V3_R_UNSUPPORTED_TYPE 167
|
||||
# define X509V3_R_USER_TOO_LONG 132
|
||||
|
Reference in New Issue
Block a user