mirror of
https://github.com/Ylianst/MeshAgent
synced 2025-12-16 00:03:45 +00:00
Updated OpenSSL
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2017 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
|
||||
@@ -14,9 +14,8 @@
|
||||
# include <openssl/e_os2.h>
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/stack.h>
|
||||
# include <openssl/safestack.h>
|
||||
|
||||
# include <openssl/asn1err.h>
|
||||
# include <openssl/symhacks.h>
|
||||
|
||||
# include <openssl/ossl_typ.h>
|
||||
@@ -40,7 +39,7 @@ extern "C" {
|
||||
|
||||
# define V_ASN1_CONSTRUCTED 0x20
|
||||
# define V_ASN1_PRIMITIVE_TAG 0x1f
|
||||
# define V_ASN1_PRIMATIVE_TAG 0x1f
|
||||
# define V_ASN1_PRIMATIVE_TAG /*compat*/ V_ASN1_PRIMITIVE_TAG
|
||||
|
||||
# define V_ASN1_APP_CHOOSE -2/* let the recipient choose */
|
||||
# define V_ASN1_OTHER -3/* used in ASN1_TYPE */
|
||||
@@ -141,6 +140,8 @@ DEFINE_STACK_OF(X509_ALGOR)
|
||||
# define ASN1_STRING_FLAG_MSTRING 0x040
|
||||
/* String is embedded and only content should be freed */
|
||||
# define ASN1_STRING_FLAG_EMBED 0x080
|
||||
/* String should be parsed in RFC 5280's time format */
|
||||
# define ASN1_STRING_FLAG_X509_TIME 0x100
|
||||
/* This is the base type that holds just about everything :-) */
|
||||
struct asn1_string_st {
|
||||
int length;
|
||||
@@ -588,6 +589,7 @@ ASN1_GENERALIZEDTIME *ASN1_GENERALIZEDTIME_adj(ASN1_GENERALIZEDTIME *s,
|
||||
time_t t, int offset_day,
|
||||
long offset_sec);
|
||||
int ASN1_GENERALIZEDTIME_set_string(ASN1_GENERALIZEDTIME *s, const char *str);
|
||||
|
||||
int ASN1_TIME_diff(int *pday, int *psec,
|
||||
const ASN1_TIME *from, const ASN1_TIME *to);
|
||||
|
||||
@@ -628,6 +630,11 @@ int ASN1_TIME_check(const ASN1_TIME *t);
|
||||
ASN1_GENERALIZEDTIME *ASN1_TIME_to_generalizedtime(const ASN1_TIME *t,
|
||||
ASN1_GENERALIZEDTIME **out);
|
||||
int ASN1_TIME_set_string(ASN1_TIME *s, const char *str);
|
||||
int ASN1_TIME_set_string_X509(ASN1_TIME *s, const char *str);
|
||||
int ASN1_TIME_to_tm(const ASN1_TIME *s, struct tm *tm);
|
||||
int ASN1_TIME_normalize(ASN1_TIME *s);
|
||||
int ASN1_TIME_cmp_time_t(const ASN1_TIME *s, time_t t);
|
||||
int ASN1_TIME_compare(const ASN1_TIME *a, const ASN1_TIME *b);
|
||||
|
||||
int i2a_ASN1_INTEGER(BIO *bp, const ASN1_INTEGER *a);
|
||||
int a2i_ASN1_INTEGER(BIO *bp, ASN1_INTEGER *bs, char *buf, int size);
|
||||
@@ -870,228 +877,8 @@ ASN1_VALUE *SMIME_read_ASN1(BIO *bio, BIO **bcont, const ASN1_ITEM *it);
|
||||
int SMIME_crlf_copy(BIO *in, BIO *out, int flags);
|
||||
int SMIME_text(BIO *in, BIO *out);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_ASN1_strings(void);
|
||||
|
||||
/* Error codes for the ASN1 functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define ASN1_F_A2D_ASN1_OBJECT 100
|
||||
# define ASN1_F_A2I_ASN1_INTEGER 102
|
||||
# define ASN1_F_A2I_ASN1_STRING 103
|
||||
# define ASN1_F_APPEND_EXP 176
|
||||
# define ASN1_F_ASN1_BIT_STRING_SET_BIT 183
|
||||
# define ASN1_F_ASN1_CB 177
|
||||
# define ASN1_F_ASN1_CHECK_TLEN 104
|
||||
# define ASN1_F_ASN1_COLLECT 106
|
||||
# define ASN1_F_ASN1_D2I_EX_PRIMITIVE 108
|
||||
# define ASN1_F_ASN1_D2I_FP 109
|
||||
# define ASN1_F_ASN1_D2I_READ_BIO 107
|
||||
# define ASN1_F_ASN1_DIGEST 184
|
||||
# define ASN1_F_ASN1_DO_ADB 110
|
||||
# define ASN1_F_ASN1_DO_LOCK 233
|
||||
# define ASN1_F_ASN1_DUP 111
|
||||
# define ASN1_F_ASN1_EX_C2I 204
|
||||
# define ASN1_F_ASN1_FIND_END 190
|
||||
# define ASN1_F_ASN1_GENERALIZEDTIME_ADJ 216
|
||||
# define ASN1_F_ASN1_GENERATE_V3 178
|
||||
# define ASN1_F_ASN1_GET_INT64 224
|
||||
# define ASN1_F_ASN1_GET_OBJECT 114
|
||||
# define ASN1_F_ASN1_GET_UINT64 225
|
||||
# define ASN1_F_ASN1_I2D_BIO 116
|
||||
# define ASN1_F_ASN1_I2D_FP 117
|
||||
# define ASN1_F_ASN1_ITEM_D2I_FP 206
|
||||
# define ASN1_F_ASN1_ITEM_DUP 191
|
||||
# define ASN1_F_ASN1_ITEM_EMBED_D2I 120
|
||||
# define ASN1_F_ASN1_ITEM_EMBED_NEW 121
|
||||
# define ASN1_F_ASN1_ITEM_I2D_BIO 192
|
||||
# define ASN1_F_ASN1_ITEM_I2D_FP 193
|
||||
# define ASN1_F_ASN1_ITEM_PACK 198
|
||||
# define ASN1_F_ASN1_ITEM_SIGN 195
|
||||
# define ASN1_F_ASN1_ITEM_SIGN_CTX 220
|
||||
# define ASN1_F_ASN1_ITEM_UNPACK 199
|
||||
# define ASN1_F_ASN1_ITEM_VERIFY 197
|
||||
# define ASN1_F_ASN1_MBSTRING_NCOPY 122
|
||||
# define ASN1_F_ASN1_OBJECT_NEW 123
|
||||
# define ASN1_F_ASN1_OUTPUT_DATA 214
|
||||
# define ASN1_F_ASN1_PCTX_NEW 205
|
||||
# define ASN1_F_ASN1_SCTX_NEW 221
|
||||
# define ASN1_F_ASN1_SIGN 128
|
||||
# define ASN1_F_ASN1_STR2TYPE 179
|
||||
# define ASN1_F_ASN1_STRING_GET_INT64 227
|
||||
# define ASN1_F_ASN1_STRING_GET_UINT64 230
|
||||
# define ASN1_F_ASN1_STRING_SET 186
|
||||
# define ASN1_F_ASN1_STRING_TABLE_ADD 129
|
||||
# define ASN1_F_ASN1_STRING_TO_BN 228
|
||||
# define ASN1_F_ASN1_STRING_TYPE_NEW 130
|
||||
# define ASN1_F_ASN1_TEMPLATE_EX_D2I 132
|
||||
# define ASN1_F_ASN1_TEMPLATE_NEW 133
|
||||
# define ASN1_F_ASN1_TEMPLATE_NOEXP_D2I 131
|
||||
# define ASN1_F_ASN1_TIME_ADJ 217
|
||||
# define ASN1_F_ASN1_TYPE_GET_INT_OCTETSTRING 134
|
||||
# define ASN1_F_ASN1_TYPE_GET_OCTETSTRING 135
|
||||
# define ASN1_F_ASN1_UTCTIME_ADJ 218
|
||||
# define ASN1_F_ASN1_VERIFY 137
|
||||
# define ASN1_F_B64_READ_ASN1 209
|
||||
# define ASN1_F_B64_WRITE_ASN1 210
|
||||
# define ASN1_F_BIO_NEW_NDEF 208
|
||||
# define ASN1_F_BITSTR_CB 180
|
||||
# define ASN1_F_BN_TO_ASN1_STRING 229
|
||||
# define ASN1_F_C2I_ASN1_BIT_STRING 189
|
||||
# define ASN1_F_C2I_ASN1_INTEGER 194
|
||||
# define ASN1_F_C2I_ASN1_OBJECT 196
|
||||
# define ASN1_F_C2I_IBUF 226
|
||||
# define ASN1_F_C2I_UINT64_INT 101
|
||||
# define ASN1_F_COLLECT_DATA 140
|
||||
# define ASN1_F_D2I_ASN1_OBJECT 147
|
||||
# define ASN1_F_D2I_ASN1_UINTEGER 150
|
||||
# define ASN1_F_D2I_AUTOPRIVATEKEY 207
|
||||
# define ASN1_F_D2I_PRIVATEKEY 154
|
||||
# define ASN1_F_D2I_PUBLICKEY 155
|
||||
# define ASN1_F_DO_TCREATE 222
|
||||
# define ASN1_F_I2D_ASN1_BIO_STREAM 211
|
||||
# define ASN1_F_I2D_DSA_PUBKEY 161
|
||||
# define ASN1_F_I2D_EC_PUBKEY 181
|
||||
# define ASN1_F_I2D_PRIVATEKEY 163
|
||||
# define ASN1_F_I2D_PUBLICKEY 164
|
||||
# define ASN1_F_I2D_RSA_PUBKEY 165
|
||||
# define ASN1_F_LONG_C2I 166
|
||||
# define ASN1_F_OID_MODULE_INIT 174
|
||||
# define ASN1_F_PARSE_TAGGING 182
|
||||
# define ASN1_F_PKCS5_PBE2_SET_IV 167
|
||||
# define ASN1_F_PKCS5_PBE2_SET_SCRYPT 231
|
||||
# define ASN1_F_PKCS5_PBE_SET 202
|
||||
# define ASN1_F_PKCS5_PBE_SET0_ALGOR 215
|
||||
# define ASN1_F_PKCS5_PBKDF2_SET 219
|
||||
# define ASN1_F_PKCS5_SCRYPT_SET 232
|
||||
# define ASN1_F_SMIME_READ_ASN1 212
|
||||
# define ASN1_F_SMIME_TEXT 213
|
||||
# define ASN1_F_STBL_MODULE_INIT 223
|
||||
# define ASN1_F_UINT32_C2I 105
|
||||
# define ASN1_F_UINT64_C2I 112
|
||||
# define ASN1_F_X509_CRL_ADD0_REVOKED 169
|
||||
# define ASN1_F_X509_INFO_NEW 170
|
||||
# define ASN1_F_X509_NAME_ENCODE 203
|
||||
# define ASN1_F_X509_NAME_EX_D2I 158
|
||||
# define ASN1_F_X509_NAME_EX_NEW 171
|
||||
# define ASN1_F_X509_PKEY_NEW 173
|
||||
|
||||
/* Reason codes. */
|
||||
# define ASN1_R_ADDING_OBJECT 171
|
||||
# define ASN1_R_ASN1_PARSE_ERROR 203
|
||||
# define ASN1_R_ASN1_SIG_PARSE_ERROR 204
|
||||
# define ASN1_R_AUX_ERROR 100
|
||||
# define ASN1_R_BAD_OBJECT_HEADER 102
|
||||
# define ASN1_R_BMPSTRING_IS_WRONG_LENGTH 214
|
||||
# define ASN1_R_BN_LIB 105
|
||||
# define ASN1_R_BOOLEAN_IS_WRONG_LENGTH 106
|
||||
# define ASN1_R_BUFFER_TOO_SMALL 107
|
||||
# define ASN1_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER 108
|
||||
# define ASN1_R_CONTEXT_NOT_INITIALISED 217
|
||||
# define ASN1_R_DATA_IS_WRONG 109
|
||||
# define ASN1_R_DECODE_ERROR 110
|
||||
# define ASN1_R_DEPTH_EXCEEDED 174
|
||||
# define ASN1_R_DIGEST_AND_KEY_TYPE_NOT_SUPPORTED 198
|
||||
# define ASN1_R_ENCODE_ERROR 112
|
||||
# define ASN1_R_ERROR_GETTING_TIME 173
|
||||
# define ASN1_R_ERROR_LOADING_SECTION 172
|
||||
# define ASN1_R_ERROR_SETTING_CIPHER_PARAMS 114
|
||||
# define ASN1_R_EXPECTING_AN_INTEGER 115
|
||||
# define ASN1_R_EXPECTING_AN_OBJECT 116
|
||||
# define ASN1_R_EXPLICIT_LENGTH_MISMATCH 119
|
||||
# define ASN1_R_EXPLICIT_TAG_NOT_CONSTRUCTED 120
|
||||
# define ASN1_R_FIELD_MISSING 121
|
||||
# define ASN1_R_FIRST_NUM_TOO_LARGE 122
|
||||
# define ASN1_R_HEADER_TOO_LONG 123
|
||||
# define ASN1_R_ILLEGAL_BITSTRING_FORMAT 175
|
||||
# define ASN1_R_ILLEGAL_BOOLEAN 176
|
||||
# define ASN1_R_ILLEGAL_CHARACTERS 124
|
||||
# define ASN1_R_ILLEGAL_FORMAT 177
|
||||
# define ASN1_R_ILLEGAL_HEX 178
|
||||
# define ASN1_R_ILLEGAL_IMPLICIT_TAG 179
|
||||
# define ASN1_R_ILLEGAL_INTEGER 180
|
||||
# define ASN1_R_ILLEGAL_NEGATIVE_VALUE 226
|
||||
# define ASN1_R_ILLEGAL_NESTED_TAGGING 181
|
||||
# define ASN1_R_ILLEGAL_NULL 125
|
||||
# define ASN1_R_ILLEGAL_NULL_VALUE 182
|
||||
# define ASN1_R_ILLEGAL_OBJECT 183
|
||||
# define ASN1_R_ILLEGAL_OPTIONAL_ANY 126
|
||||
# define ASN1_R_ILLEGAL_OPTIONS_ON_ITEM_TEMPLATE 170
|
||||
# define ASN1_R_ILLEGAL_PADDING 221
|
||||
# define ASN1_R_ILLEGAL_TAGGED_ANY 127
|
||||
# define ASN1_R_ILLEGAL_TIME_VALUE 184
|
||||
# define ASN1_R_ILLEGAL_ZERO_CONTENT 222
|
||||
# define ASN1_R_INTEGER_NOT_ASCII_FORMAT 185
|
||||
# define ASN1_R_INTEGER_TOO_LARGE_FOR_LONG 128
|
||||
# define ASN1_R_INVALID_BIT_STRING_BITS_LEFT 220
|
||||
# define ASN1_R_INVALID_BMPSTRING_LENGTH 129
|
||||
# define ASN1_R_INVALID_DIGIT 130
|
||||
# define ASN1_R_INVALID_MIME_TYPE 205
|
||||
# define ASN1_R_INVALID_MODIFIER 186
|
||||
# define ASN1_R_INVALID_NUMBER 187
|
||||
# define ASN1_R_INVALID_OBJECT_ENCODING 216
|
||||
# define ASN1_R_INVALID_SCRYPT_PARAMETERS 227
|
||||
# define ASN1_R_INVALID_SEPARATOR 131
|
||||
# define ASN1_R_INVALID_STRING_TABLE_VALUE 218
|
||||
# define ASN1_R_INVALID_UNIVERSALSTRING_LENGTH 133
|
||||
# define ASN1_R_INVALID_UTF8STRING 134
|
||||
# define ASN1_R_INVALID_VALUE 219
|
||||
# define ASN1_R_LIST_ERROR 188
|
||||
# define ASN1_R_MIME_NO_CONTENT_TYPE 206
|
||||
# define ASN1_R_MIME_PARSE_ERROR 207
|
||||
# define ASN1_R_MIME_SIG_PARSE_ERROR 208
|
||||
# define ASN1_R_MISSING_EOC 137
|
||||
# define ASN1_R_MISSING_SECOND_NUMBER 138
|
||||
# define ASN1_R_MISSING_VALUE 189
|
||||
# define ASN1_R_MSTRING_NOT_UNIVERSAL 139
|
||||
# define ASN1_R_MSTRING_WRONG_TAG 140
|
||||
# define ASN1_R_NESTED_ASN1_STRING 197
|
||||
# define ASN1_R_NON_HEX_CHARACTERS 141
|
||||
# define ASN1_R_NOT_ASCII_FORMAT 190
|
||||
# define ASN1_R_NOT_ENOUGH_DATA 142
|
||||
# define ASN1_R_NO_CONTENT_TYPE 209
|
||||
# define ASN1_R_NO_MATCHING_CHOICE_TYPE 143
|
||||
# define ASN1_R_NO_MULTIPART_BODY_FAILURE 210
|
||||
# define ASN1_R_NO_MULTIPART_BOUNDARY 211
|
||||
# define ASN1_R_NO_SIG_CONTENT_TYPE 212
|
||||
# define ASN1_R_NULL_IS_WRONG_LENGTH 144
|
||||
# define ASN1_R_OBJECT_NOT_ASCII_FORMAT 191
|
||||
# define ASN1_R_ODD_NUMBER_OF_CHARS 145
|
||||
# define ASN1_R_SECOND_NUMBER_TOO_LARGE 147
|
||||
# define ASN1_R_SEQUENCE_LENGTH_MISMATCH 148
|
||||
# define ASN1_R_SEQUENCE_NOT_CONSTRUCTED 149
|
||||
# define ASN1_R_SEQUENCE_OR_SET_NEEDS_CONFIG 192
|
||||
# define ASN1_R_SHORT_LINE 150
|
||||
# define ASN1_R_SIG_INVALID_MIME_TYPE 213
|
||||
# define ASN1_R_STREAMING_NOT_SUPPORTED 202
|
||||
# define ASN1_R_STRING_TOO_LONG 151
|
||||
# define ASN1_R_STRING_TOO_SHORT 152
|
||||
# define ASN1_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD 154
|
||||
# define ASN1_R_TIME_NOT_ASCII_FORMAT 193
|
||||
# define ASN1_R_TOO_LARGE 223
|
||||
# define ASN1_R_TOO_LONG 155
|
||||
# define ASN1_R_TOO_SMALL 224
|
||||
# define ASN1_R_TYPE_NOT_CONSTRUCTED 156
|
||||
# define ASN1_R_TYPE_NOT_PRIMITIVE 195
|
||||
# define ASN1_R_UNEXPECTED_EOC 159
|
||||
# define ASN1_R_UNIVERSALSTRING_IS_WRONG_LENGTH 215
|
||||
# define ASN1_R_UNKNOWN_FORMAT 160
|
||||
# define ASN1_R_UNKNOWN_MESSAGE_DIGEST_ALGORITHM 161
|
||||
# define ASN1_R_UNKNOWN_OBJECT_TYPE 162
|
||||
# define ASN1_R_UNKNOWN_PUBLIC_KEY_TYPE 163
|
||||
# define ASN1_R_UNKNOWN_SIGNATURE_ALGORITHM 199
|
||||
# define ASN1_R_UNKNOWN_TAG 194
|
||||
# define ASN1_R_UNSUPPORTED_ANY_DEFINED_BY_TYPE 164
|
||||
# define ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE 167
|
||||
# define ASN1_R_UNSUPPORTED_TYPE 196
|
||||
# define ASN1_R_WRONG_INTEGER_TYPE 225
|
||||
# define ASN1_R_WRONG_PUBLIC_KEY_TYPE 200
|
||||
# define ASN1_R_WRONG_TAG 168
|
||||
const ASN1_ITEM *ASN1_ITEM_lookup(const char *name);
|
||||
const ASN1_ITEM *ASN1_ITEM_get(size_t i);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ extern "C" {
|
||||
/* Macros for start and end of ASN1_ITEM definition */
|
||||
|
||||
# define ASN1_ITEM_start(itname) \
|
||||
OPENSSL_GLOBAL const ASN1_ITEM itname##_it = {
|
||||
const ASN1_ITEM itname##_it = {
|
||||
|
||||
# define static_ASN1_ITEM_start(itname) \
|
||||
static const ASN1_ITEM itname##_it = {
|
||||
@@ -44,7 +44,7 @@ extern "C" {
|
||||
# else
|
||||
|
||||
/* Macro to obtain ASN1_ADB pointer from a type (only used internally) */
|
||||
# define ASN1_ADB_ptr(iptr) ((const ASN1_ADB *)(iptr()))
|
||||
# define ASN1_ADB_ptr(iptr) ((const ASN1_ADB *)((iptr)()))
|
||||
|
||||
/* Macros for start and end of ASN1_ITEM definition */
|
||||
|
||||
@@ -130,7 +130,7 @@ extern "C" {
|
||||
sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\
|
||||
NULL,\
|
||||
sizeof(stname),\
|
||||
#stname \
|
||||
#tname \
|
||||
ASN1_ITEM_end(tname)
|
||||
|
||||
# define static_ASN1_SEQUENCE_END_name(stname, tname) \
|
||||
@@ -208,7 +208,7 @@ extern "C" {
|
||||
sizeof(tname##_seq_tt) / sizeof(ASN1_TEMPLATE),\
|
||||
&tname##_aux,\
|
||||
sizeof(stname),\
|
||||
#stname \
|
||||
#tname \
|
||||
ASN1_ITEM_end(tname)
|
||||
# define static_ASN1_SEQUENCE_END_ref(stname, tname) \
|
||||
;\
|
||||
@@ -325,10 +325,10 @@ extern "C" {
|
||||
/* implicit and explicit helper macros */
|
||||
|
||||
# define ASN1_IMP_EX(stname, field, type, tag, ex) \
|
||||
ASN1_EX_TYPE(ASN1_TFLG_IMPLICIT | ex, tag, stname, field, type)
|
||||
ASN1_EX_TYPE(ASN1_TFLG_IMPLICIT | (ex), tag, stname, field, type)
|
||||
|
||||
# define ASN1_EXP_EX(stname, field, type, tag, ex) \
|
||||
ASN1_EX_TYPE(ASN1_TFLG_EXPLICIT | ex, tag, stname, field, type)
|
||||
ASN1_EX_TYPE(ASN1_TFLG_EXPLICIT | (ex), tag, stname, field, type)
|
||||
|
||||
/* Any defined by macros: the field used is in the table itself */
|
||||
|
||||
@@ -531,10 +531,10 @@ struct ASN1_ADB_TABLE_st {
|
||||
# define ASN1_TFLG_TAG_MASK (0x3 << 3)
|
||||
|
||||
/* context specific IMPLICIT */
|
||||
# define ASN1_TFLG_IMPLICIT ASN1_TFLG_IMPTAG|ASN1_TFLG_CONTEXT
|
||||
# define ASN1_TFLG_IMPLICIT (ASN1_TFLG_IMPTAG|ASN1_TFLG_CONTEXT)
|
||||
|
||||
/* context specific EXPLICIT */
|
||||
# define ASN1_TFLG_EXPLICIT ASN1_TFLG_EXPTAG|ASN1_TFLG_CONTEXT
|
||||
# define ASN1_TFLG_EXPLICIT (ASN1_TFLG_EXPTAG|ASN1_TFLG_CONTEXT)
|
||||
|
||||
/*
|
||||
* If tagging is in force these determine the type of tag to use. Otherwise
|
||||
@@ -906,8 +906,24 @@ DECLARE_ASN1_ITEM(ASN1_FBOOLEAN)
|
||||
DECLARE_ASN1_ITEM(ASN1_SEQUENCE)
|
||||
DECLARE_ASN1_ITEM(CBIGNUM)
|
||||
DECLARE_ASN1_ITEM(BIGNUM)
|
||||
DECLARE_ASN1_ITEM(INT32)
|
||||
DECLARE_ASN1_ITEM(ZINT32)
|
||||
DECLARE_ASN1_ITEM(UINT32)
|
||||
DECLARE_ASN1_ITEM(ZUINT32)
|
||||
DECLARE_ASN1_ITEM(INT64)
|
||||
DECLARE_ASN1_ITEM(ZINT64)
|
||||
DECLARE_ASN1_ITEM(UINT64)
|
||||
DECLARE_ASN1_ITEM(ZUINT64)
|
||||
|
||||
# if OPENSSL_API_COMPAT < 0x10200000L
|
||||
/*
|
||||
* LONG and ZLONG are strongly discouraged for use as stored data, as the
|
||||
* underlying C type (long) differs in size depending on the architecture.
|
||||
* They are designed with 32-bit longs in mind.
|
||||
*/
|
||||
DECLARE_ASN1_ITEM(LONG)
|
||||
DECLARE_ASN1_ITEM(ZLONG)
|
||||
# endif
|
||||
|
||||
DEFINE_STACK_OF(ASN1_VALUE)
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2015-2018 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
|
||||
@@ -22,6 +22,7 @@
|
||||
#define OSSL_ASYNC_FD int
|
||||
#define OSSL_BAD_ASYNC_FD -1
|
||||
#endif
|
||||
# include <openssl/asyncerr.h>
|
||||
|
||||
|
||||
# ifdef __cplusplus
|
||||
@@ -68,29 +69,6 @@ ASYNC_WAIT_CTX *ASYNC_get_wait_ctx(ASYNC_JOB *job);
|
||||
void ASYNC_block_pause(void);
|
||||
void ASYNC_unblock_pause(void);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_ASYNC_strings(void);
|
||||
|
||||
/* Error codes for the ASYNC functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define ASYNC_F_ASYNC_CTX_NEW 100
|
||||
# define ASYNC_F_ASYNC_INIT_THREAD 101
|
||||
# define ASYNC_F_ASYNC_JOB_NEW 102
|
||||
# define ASYNC_F_ASYNC_PAUSE_JOB 103
|
||||
# define ASYNC_F_ASYNC_START_FUNC 104
|
||||
# define ASYNC_F_ASYNC_START_JOB 105
|
||||
|
||||
/* Reason codes. */
|
||||
# define ASYNC_R_FAILED_TO_SET_POOL 101
|
||||
# define ASYNC_R_FAILED_TO_SWAP_CONTEXT 102
|
||||
# define ASYNC_R_INIT_FAILED 105
|
||||
# define ASYNC_R_INVALID_POOL_SIZE 103
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -18,6 +18,7 @@
|
||||
# include <stdarg.h>
|
||||
|
||||
# include <openssl/crypto.h>
|
||||
# include <openssl/bioerr.h>
|
||||
|
||||
# ifndef OPENSSL_NO_SCTP
|
||||
# include <openssl/e_os2.h>
|
||||
@@ -87,6 +88,7 @@ extern "C" {
|
||||
# define BIO_CTRL_SET_CALLBACK 14/* opt - set callback function */
|
||||
# define BIO_CTRL_GET_CALLBACK 15/* opt - set callback function */
|
||||
|
||||
# define BIO_CTRL_PEEK 29/* BIO_f_buffer special */
|
||||
# define BIO_CTRL_SET_FILENAME 30/* BIO_s_file special */
|
||||
|
||||
/* dgram BIO stuff */
|
||||
@@ -125,11 +127,10 @@ extern "C" {
|
||||
|
||||
# define BIO_CTRL_DGRAM_GET_MTU_OVERHEAD 49
|
||||
|
||||
# define BIO_CTRL_DGRAM_SET_PEEK_MODE 50
|
||||
|
||||
/* Deliberately outside of OPENSSL_NO_SCTP - used in bss_dgram.c */
|
||||
# define BIO_CTRL_DGRAM_SCTP_SET_IN_HANDSHAKE 50
|
||||
# ifndef OPENSSL_NO_SCTP
|
||||
/* SCTP stuff */
|
||||
# define BIO_CTRL_DGRAM_SCTP_SET_IN_HANDSHAKE 50
|
||||
# define BIO_CTRL_DGRAM_SCTP_ADD_AUTH_KEY 51
|
||||
# define BIO_CTRL_DGRAM_SCTP_NEXT_AUTH_KEY 52
|
||||
# define BIO_CTRL_DGRAM_SCTP_AUTH_CCS_RCVD 53
|
||||
@@ -142,6 +143,8 @@ extern "C" {
|
||||
# define BIO_CTRL_DGRAM_SCTP_SAVE_SHUTDOWN 70
|
||||
# endif
|
||||
|
||||
# define BIO_CTRL_DGRAM_SET_PEEK_MODE 71
|
||||
|
||||
/* modifiers */
|
||||
# define BIO_FP_READ 0x02
|
||||
# define BIO_FP_WRITE 0x04
|
||||
@@ -235,8 +238,15 @@ void BIO_clear_flags(BIO *b, int flags);
|
||||
|
||||
typedef long (*BIO_callback_fn)(BIO *b, int oper, const char *argp, int argi,
|
||||
long argl, long ret);
|
||||
typedef long (*BIO_callback_fn_ex)(BIO *b, int oper, const char *argp,
|
||||
size_t len, int argi,
|
||||
long argl, int ret, size_t *processed);
|
||||
BIO_callback_fn BIO_get_callback(const BIO *b);
|
||||
void BIO_set_callback(BIO *b, BIO_callback_fn callback);
|
||||
|
||||
BIO_callback_fn_ex BIO_get_callback_ex(const BIO *b);
|
||||
void BIO_set_callback_ex(BIO *b, BIO_callback_fn_ex callback);
|
||||
|
||||
char *BIO_get_callback_arg(const BIO *b);
|
||||
void BIO_set_callback_arg(BIO *b, char *arg);
|
||||
|
||||
@@ -245,7 +255,8 @@ typedef struct bio_method_st BIO_METHOD;
|
||||
const char *BIO_method_name(const BIO *b);
|
||||
int BIO_method_type(const BIO *b);
|
||||
|
||||
typedef void bio_info_cb(BIO *, int, const char *, int, long, long);
|
||||
typedef int BIO_info_cb(BIO *, int, int);
|
||||
typedef BIO_info_cb bio_info_cb; /* backward compatibility */
|
||||
|
||||
DEFINE_STACK_OF(BIO)
|
||||
|
||||
@@ -357,9 +368,12 @@ struct bio_dgram_sctp_prinfo {
|
||||
# define BIO_FAMILY_IPANY 256
|
||||
|
||||
/* BIO_s_connect() */
|
||||
# define BIO_set_conn_hostname(b,name) BIO_ctrl(b,BIO_C_SET_CONNECT,0,(char *)name)
|
||||
# define BIO_set_conn_port(b,port) BIO_ctrl(b,BIO_C_SET_CONNECT,1,(char *)port)
|
||||
# define BIO_set_conn_address(b,addr) BIO_ctrl(b,BIO_C_SET_CONNECT,2,(char *)addr)
|
||||
# define BIO_set_conn_hostname(b,name) BIO_ctrl(b,BIO_C_SET_CONNECT,0, \
|
||||
(char *)(name))
|
||||
# define BIO_set_conn_port(b,port) BIO_ctrl(b,BIO_C_SET_CONNECT,1, \
|
||||
(char *)(port))
|
||||
# define BIO_set_conn_address(b,addr) BIO_ctrl(b,BIO_C_SET_CONNECT,2, \
|
||||
(char *)(addr))
|
||||
# define BIO_set_conn_ip_family(b,f) BIO_int_ctrl(b,BIO_C_SET_CONNECT,3,f)
|
||||
# define BIO_get_conn_hostname(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,0))
|
||||
# define BIO_get_conn_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,1))
|
||||
@@ -368,15 +382,18 @@ struct bio_dgram_sctp_prinfo {
|
||||
# define BIO_set_conn_mode(b,n) BIO_ctrl(b,BIO_C_SET_CONNECT_MODE,(n),NULL)
|
||||
|
||||
/* BIO_s_accept() */
|
||||
# define BIO_set_accept_name(b,name) BIO_ctrl(b,BIO_C_SET_ACCEPT,0,(char *)name)
|
||||
# define BIO_set_accept_port(b,port) BIO_ctrl(b,BIO_C_SET_ACCEPT,1,(char *)port)
|
||||
# define BIO_set_accept_name(b,name) BIO_ctrl(b,BIO_C_SET_ACCEPT,0, \
|
||||
(char *)(name))
|
||||
# define BIO_set_accept_port(b,port) BIO_ctrl(b,BIO_C_SET_ACCEPT,1, \
|
||||
(char *)(port))
|
||||
# define BIO_get_accept_name(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_ACCEPT,0))
|
||||
# define BIO_get_accept_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_ACCEPT,1))
|
||||
# define BIO_get_peer_name(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_ACCEPT,2))
|
||||
# define BIO_get_peer_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_ACCEPT,3))
|
||||
/* #define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL) */
|
||||
# define BIO_set_nbio_accept(b,n) BIO_ctrl(b,BIO_C_SET_ACCEPT,2,(n)?(void *)"a":NULL)
|
||||
# define BIO_set_accept_bios(b,bio) BIO_ctrl(b,BIO_C_SET_ACCEPT,3,(char *)bio)
|
||||
# define BIO_set_accept_bios(b,bio) BIO_ctrl(b,BIO_C_SET_ACCEPT,3, \
|
||||
(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)
|
||||
|
||||
@@ -396,11 +413,11 @@ struct bio_dgram_sctp_prinfo {
|
||||
|
||||
/* BIO_s_datagram(), BIO_s_fd(), BIO_s_socket(), BIO_s_accept() and BIO_s_connect() */
|
||||
# define BIO_set_fd(b,fd,c) BIO_int_ctrl(b,BIO_C_SET_FD,c,fd)
|
||||
# define BIO_get_fd(b,c) BIO_ctrl(b,BIO_C_GET_FD,0,(char *)c)
|
||||
# define BIO_get_fd(b,c) BIO_ctrl(b,BIO_C_GET_FD,0,(char *)(c))
|
||||
|
||||
/* BIO_s_file() */
|
||||
# define BIO_set_fp(b,fp,c) BIO_ctrl(b,BIO_C_SET_FILE_PTR,c,(char *)fp)
|
||||
# define BIO_get_fp(b,fpp) BIO_ctrl(b,BIO_C_GET_FILE_PTR,0,(char *)fpp)
|
||||
# define BIO_set_fp(b,fp,c) BIO_ctrl(b,BIO_C_SET_FILE_PTR,c,(char *)(fp))
|
||||
# define BIO_get_fp(b,fpp) BIO_ctrl(b,BIO_C_GET_FILE_PTR,0,(char *)(fpp))
|
||||
|
||||
/* BIO_s_fd() and BIO_s_file() */
|
||||
# define BIO_seek(b,ofs) (int)BIO_ctrl(b,BIO_C_FILE_SEEK,ofs,NULL)
|
||||
@@ -418,7 +435,7 @@ struct bio_dgram_sctp_prinfo {
|
||||
int BIO_read_filename(BIO *b, const char *name);
|
||||
# else
|
||||
# define BIO_read_filename(b,name) (int)BIO_ctrl(b,BIO_C_SET_FILENAME, \
|
||||
BIO_CLOSE|BIO_FP_READ,(char *)name)
|
||||
BIO_CLOSE|BIO_FP_READ,(char *)(name))
|
||||
# endif
|
||||
# define BIO_write_filename(b,name) (int)BIO_ctrl(b,BIO_C_SET_FILENAME, \
|
||||
BIO_CLOSE|BIO_FP_WRITE,name)
|
||||
@@ -433,8 +450,8 @@ int BIO_read_filename(BIO *b, const char *name);
|
||||
* next_bio field in the bio. So when you free the BIO, make sure you are
|
||||
* doing a BIO_free_all() to catch the underlying BIO.
|
||||
*/
|
||||
# define BIO_set_ssl(b,ssl,c) BIO_ctrl(b,BIO_C_SET_SSL,c,(char *)ssl)
|
||||
# define BIO_get_ssl(b,sslp) BIO_ctrl(b,BIO_C_GET_SSL,0,(char *)sslp)
|
||||
# define BIO_set_ssl(b,ssl,c) BIO_ctrl(b,BIO_C_SET_SSL,c,(char *)(ssl))
|
||||
# define BIO_get_ssl(b,sslp) BIO_ctrl(b,BIO_C_GET_SSL,0,(char *)(sslp))
|
||||
# define BIO_set_ssl_mode(b,client) BIO_ctrl(b,BIO_C_SSL_MODE,client,NULL)
|
||||
# define BIO_set_ssl_renegotiate_bytes(b,num) \
|
||||
BIO_ctrl(b,BIO_C_SET_SSL_RENEGOTIATE_BYTES,num,NULL)
|
||||
@@ -444,11 +461,12 @@ int BIO_read_filename(BIO *b, const char *name);
|
||||
BIO_ctrl(b,BIO_C_SET_SSL_RENEGOTIATE_TIMEOUT,seconds,NULL)
|
||||
|
||||
/* defined in evp.h */
|
||||
/* #define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,1,(char *)md) */
|
||||
/* #define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,1,(char *)(md)) */
|
||||
|
||||
# define BIO_get_mem_data(b,pp) BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)pp)
|
||||
# define BIO_set_mem_buf(b,bm,c) BIO_ctrl(b,BIO_C_SET_BUF_MEM,c,(char *)bm)
|
||||
# define BIO_get_mem_ptr(b,pp) BIO_ctrl(b,BIO_C_GET_BUF_MEM_PTR,0,(char *)pp)
|
||||
# define BIO_get_mem_data(b,pp) BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)(pp))
|
||||
# define BIO_set_mem_buf(b,bm,c) BIO_ctrl(b,BIO_C_SET_BUF_MEM,c,(char *)(bm))
|
||||
# define BIO_get_mem_ptr(b,pp) BIO_ctrl(b,BIO_C_GET_BUF_MEM_PTR,0, \
|
||||
(char *)(pp))
|
||||
# define BIO_set_mem_eof_return(b,v) \
|
||||
BIO_ctrl(b,BIO_C_SET_BUF_MEM_EOF_RETURN,v,NULL)
|
||||
|
||||
@@ -478,6 +496,7 @@ size_t BIO_ctrl_wpending(BIO *b);
|
||||
|
||||
/* For the BIO_f_buffer() type */
|
||||
# define BIO_buffer_get_num_lines(b) BIO_ctrl(b,BIO_CTRL_GET,0,NULL)
|
||||
# define BIO_buffer_peek(b,s,l) BIO_ctrl(b,BIO_CTRL_PEEK,(l),(s))
|
||||
|
||||
/* For BIO_s_bio() */
|
||||
# define BIO_set_write_buf_size(b,size) (int)BIO_ctrl(b,BIO_C_SET_WRITE_BUF_SIZE,size,NULL)
|
||||
@@ -494,17 +513,17 @@ int BIO_ctrl_reset_read_request(BIO *b);
|
||||
|
||||
/* ctrl macros for dgram */
|
||||
# define BIO_ctrl_dgram_connect(b,peer) \
|
||||
(int)BIO_ctrl(b,BIO_CTRL_DGRAM_CONNECT,0, (char *)peer)
|
||||
(int)BIO_ctrl(b,BIO_CTRL_DGRAM_CONNECT,0, (char *)(peer))
|
||||
# define BIO_ctrl_set_connected(b,peer) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_CONNECTED, 0, (char *)peer)
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_CONNECTED, 0, (char *)(peer))
|
||||
# define BIO_dgram_recv_timedout(b) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_RECV_TIMER_EXP, 0, NULL)
|
||||
# define BIO_dgram_send_timedout(b) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_SEND_TIMER_EXP, 0, NULL)
|
||||
# define BIO_dgram_get_peer(b,peer) \
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_PEER, 0, (char *)peer)
|
||||
(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)
|
||||
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, (char *)(peer))
|
||||
# define BIO_dgram_get_mtu_overhead(b) \
|
||||
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU_OVERHEAD, 0, NULL)
|
||||
|
||||
@@ -540,14 +559,15 @@ void BIO_set_shutdown(BIO *a, int shut);
|
||||
int BIO_get_shutdown(BIO *a);
|
||||
void BIO_vfree(BIO *a);
|
||||
int BIO_up_ref(BIO *a);
|
||||
int BIO_read(BIO *b, void *data, int len);
|
||||
int BIO_read(BIO *b, void *data, int dlen);
|
||||
int BIO_read_ex(BIO *b, void *data, size_t dlen, size_t *readbytes);
|
||||
int BIO_gets(BIO *bp, char *buf, int size);
|
||||
int BIO_write(BIO *b, const void *data, int len);
|
||||
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);
|
||||
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);
|
||||
long BIO_callback_ctrl(BIO *b, int cmd,
|
||||
void (*fp) (BIO *, int, const char *, int, long, long));
|
||||
long BIO_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp);
|
||||
void *BIO_ptr_ctrl(BIO *bp, int cmd, long larg);
|
||||
long BIO_int_ctrl(BIO *bp, int cmd, long larg, int iarg);
|
||||
BIO *BIO_push(BIO *b, BIO *append);
|
||||
@@ -654,6 +674,9 @@ enum BIO_lookup_type {
|
||||
int BIO_lookup(const char *host, const char *service,
|
||||
enum BIO_lookup_type lookup_type,
|
||||
int family, int socktype, BIO_ADDRINFO **res);
|
||||
int BIO_lookup_ex(const char *host, const char *service,
|
||||
int lookup_type, int family, int socktype, int protocol,
|
||||
BIO_ADDRINFO **res);
|
||||
int BIO_sock_error(int sock);
|
||||
int BIO_socket_ioctl(int fd, long type, void *arg);
|
||||
int BIO_socket_nbio(int fd, int mode);
|
||||
@@ -686,6 +709,7 @@ int BIO_sock_info(int sock,
|
||||
|
||||
int BIO_socket(int domain, int socktype, int protocol, int options);
|
||||
int BIO_connect(int sock, const BIO_ADDR *addr, int options);
|
||||
int BIO_bind(int sock, const BIO_ADDR *addr, int options);
|
||||
int BIO_listen(int sock, const BIO_ADDR *addr, int options);
|
||||
int BIO_accept_ex(int accept_sock, BIO_ADDR *addr, int options);
|
||||
int BIO_closesocket(int sock);
|
||||
@@ -711,138 +735,68 @@ void BIO_copy_next_retry(BIO *b);
|
||||
* long BIO_ghbn_ctrl(int cmd,int iarg,char *parg);
|
||||
*/
|
||||
|
||||
# ifdef __GNUC__
|
||||
# define __bio_h__attr__ __attribute__
|
||||
# define ossl_bio__attr__(x)
|
||||
# if defined(__GNUC__) && defined(__STDC_VERSION__) \
|
||||
&& !defined(__APPLE__)
|
||||
/*
|
||||
* Because we support the 'z' modifier, which made its appearance in C99,
|
||||
* we can't use __attribute__ with pre C99 dialects.
|
||||
*/
|
||||
# if __STDC_VERSION__ >= 199901L
|
||||
# undef ossl_bio__attr__
|
||||
# define ossl_bio__attr__ __attribute__
|
||||
# if __GNUC__*10 + __GNUC_MINOR__ >= 44
|
||||
# define ossl_bio__printf__ __gnu_printf__
|
||||
# else
|
||||
# define __bio_h__attr__(x)
|
||||
# define ossl_bio__printf__ __printf__
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
int BIO_printf(BIO *bio, const char *format, ...)
|
||||
__bio_h__attr__((__format__(__printf__, 2, 3)));
|
||||
ossl_bio__attr__((__format__(ossl_bio__printf__, 2, 3)));
|
||||
int BIO_vprintf(BIO *bio, const char *format, va_list args)
|
||||
__bio_h__attr__((__format__(__printf__, 2, 0)));
|
||||
ossl_bio__attr__((__format__(ossl_bio__printf__, 2, 0)));
|
||||
int BIO_snprintf(char *buf, size_t n, const char *format, ...)
|
||||
__bio_h__attr__((__format__(__printf__, 3, 4)));
|
||||
ossl_bio__attr__((__format__(ossl_bio__printf__, 3, 4)));
|
||||
int BIO_vsnprintf(char *buf, size_t n, const char *format, va_list args)
|
||||
__bio_h__attr__((__format__(__printf__, 3, 0)));
|
||||
# undef __bio_h__attr__
|
||||
ossl_bio__attr__((__format__(ossl_bio__printf__, 3, 0)));
|
||||
# undef ossl_bio__attr__
|
||||
# undef ossl_bio__printf__
|
||||
|
||||
|
||||
BIO_METHOD *BIO_meth_new(int type, const char *name);
|
||||
void BIO_meth_free(BIO_METHOD *biom);
|
||||
int (*BIO_meth_get_write(BIO_METHOD *biom)) (BIO *, const char *, int);
|
||||
int (*BIO_meth_get_write(const BIO_METHOD *biom)) (BIO *, const char *, int);
|
||||
int (*BIO_meth_get_write_ex(const BIO_METHOD *biom)) (BIO *, const char *, size_t,
|
||||
size_t *);
|
||||
int BIO_meth_set_write(BIO_METHOD *biom,
|
||||
int (*write) (BIO *, const char *, int));
|
||||
int (*BIO_meth_get_read(BIO_METHOD *biom)) (BIO *, char *, int);
|
||||
int BIO_meth_set_write_ex(BIO_METHOD *biom,
|
||||
int (*bwrite) (BIO *, const char *, size_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_get_puts(BIO_METHOD *biom)) (BIO *, const char *);
|
||||
int BIO_meth_set_read_ex(BIO_METHOD *biom,
|
||||
int (*bread) (BIO *, char *, size_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(BIO_METHOD *biom)) (BIO *, char *, int);
|
||||
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));
|
||||
long (*BIO_meth_get_ctrl(BIO_METHOD *biom)) (BIO *, int, long, void *);
|
||||
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 *));
|
||||
int (*BIO_meth_get_create(BIO_METHOD *bion)) (BIO *);
|
||||
int (*BIO_meth_get_create(const BIO_METHOD *bion)) (BIO *);
|
||||
int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *));
|
||||
int (*BIO_meth_get_destroy(BIO_METHOD *biom)) (BIO *);
|
||||
int (*BIO_meth_get_destroy(const BIO_METHOD *biom)) (BIO *);
|
||||
int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *));
|
||||
long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom))
|
||||
(BIO *, int, bio_info_cb *);
|
||||
long (*BIO_meth_get_callback_ctrl(const BIO_METHOD *biom))
|
||||
(BIO *, int, BIO_info_cb *);
|
||||
int BIO_meth_set_callback_ctrl(BIO_METHOD *biom,
|
||||
long (*callback_ctrl) (BIO *, int,
|
||||
bio_info_cb *));
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_BIO_strings(void);
|
||||
|
||||
/* Error codes for the BIO functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define BIO_F_ACPT_STATE 100
|
||||
# define BIO_F_ADDR_STRINGS 134
|
||||
# define BIO_F_BIO_ACCEPT 101
|
||||
# define BIO_F_BIO_ACCEPT_EX 137
|
||||
# define BIO_F_BIO_ADDR_NEW 144
|
||||
# define BIO_F_BIO_CALLBACK_CTRL 131
|
||||
# define BIO_F_BIO_CONNECT 138
|
||||
# define BIO_F_BIO_CTRL 103
|
||||
# define BIO_F_BIO_GETS 104
|
||||
# define BIO_F_BIO_GET_HOST_IP 106
|
||||
# define BIO_F_BIO_GET_NEW_INDEX 102
|
||||
# define BIO_F_BIO_GET_PORT 107
|
||||
# define BIO_F_BIO_LISTEN 139
|
||||
# define BIO_F_BIO_LOOKUP 135
|
||||
# define BIO_F_BIO_MAKE_PAIR 121
|
||||
# define BIO_F_BIO_NEW 108
|
||||
# define BIO_F_BIO_NEW_FILE 109
|
||||
# define BIO_F_BIO_NEW_MEM_BUF 126
|
||||
# define BIO_F_BIO_NREAD 123
|
||||
# define BIO_F_BIO_NREAD0 124
|
||||
# define BIO_F_BIO_NWRITE 125
|
||||
# define BIO_F_BIO_NWRITE0 122
|
||||
# define BIO_F_BIO_PARSE_HOSTSERV 136
|
||||
# define BIO_F_BIO_PUTS 110
|
||||
# define BIO_F_BIO_READ 111
|
||||
# define BIO_F_BIO_SOCKET 140
|
||||
# define BIO_F_BIO_SOCKET_NBIO 142
|
||||
# define BIO_F_BIO_SOCK_INFO 141
|
||||
# define BIO_F_BIO_SOCK_INIT 112
|
||||
# define BIO_F_BIO_WRITE 113
|
||||
# define BIO_F_BUFFER_CTRL 114
|
||||
# define BIO_F_CONN_CTRL 127
|
||||
# define BIO_F_CONN_STATE 115
|
||||
# define BIO_F_DGRAM_SCTP_READ 132
|
||||
# define BIO_F_DGRAM_SCTP_WRITE 133
|
||||
# define BIO_F_FILE_CTRL 116
|
||||
# define BIO_F_FILE_READ 130
|
||||
# define BIO_F_LINEBUFFER_CTRL 129
|
||||
# define BIO_F_MEM_WRITE 117
|
||||
# define BIO_F_SSL_NEW 118
|
||||
|
||||
/* Reason codes. */
|
||||
# define BIO_R_ACCEPT_ERROR 100
|
||||
# define BIO_R_ADDRINFO_ADDR_IS_NOT_AF_INET 141
|
||||
# define BIO_R_AMBIGUOUS_HOST_OR_SERVICE 129
|
||||
# define BIO_R_BAD_FOPEN_MODE 101
|
||||
# define BIO_R_BROKEN_PIPE 124
|
||||
# define BIO_R_CONNECT_ERROR 103
|
||||
# define BIO_R_GETHOSTBYNAME_ADDR_IS_NOT_AF_INET 107
|
||||
# define BIO_R_GETSOCKNAME_ERROR 132
|
||||
# define BIO_R_GETSOCKNAME_TRUNCATED_ADDRESS 133
|
||||
# define BIO_R_GETTING_SOCKTYPE 134
|
||||
# define BIO_R_INVALID_ARGUMENT 125
|
||||
# define BIO_R_INVALID_SOCKET 135
|
||||
# define BIO_R_IN_USE 123
|
||||
# define BIO_R_LISTEN_V6_ONLY 136
|
||||
# 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_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
|
||||
# define BIO_R_UNABLE_TO_BIND_SOCKET 117
|
||||
# define BIO_R_UNABLE_TO_CREATE_SOCKET 118
|
||||
# define BIO_R_UNABLE_TO_KEEPALIVE 137
|
||||
# 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_UNAVAILABLE_IP_FAMILY 145
|
||||
# define BIO_R_UNINITIALIZED 120
|
||||
# define BIO_R_UNKNOWN_INFO_TYPE 140
|
||||
# define BIO_R_UNSUPPORTED_IP_FAMILY 146
|
||||
# define BIO_R_UNSUPPORTED_METHOD 121
|
||||
# define BIO_R_UNSUPPORTED_PROTOCOL_FAMILY 131
|
||||
# define BIO_R_WRITE_TO_READ_ONLY_BIO 126
|
||||
# define BIO_R_WSASTARTUP 122
|
||||
BIO_info_cb *));
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. 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
|
||||
@@ -7,20 +8,6 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
|
||||
*
|
||||
* Portions of the attached software ("Contribution") are developed by
|
||||
* SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project.
|
||||
*
|
||||
* The Contribution is licensed pursuant to the Eric Young open source
|
||||
* license provided above.
|
||||
*
|
||||
* The binary polynomial arithmetic software is originally written by
|
||||
* Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems Laboratories.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef HEADER_BN_H
|
||||
# define HEADER_BN_H
|
||||
|
||||
@@ -31,6 +18,7 @@
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/crypto.h>
|
||||
# include <openssl/bnerr.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -119,25 +107,76 @@ void *BN_GENCB_get_arg(BN_GENCB *cb);
|
||||
* on the size of the number */
|
||||
|
||||
/*
|
||||
* number of Miller-Rabin iterations for an error rate of less than 2^-80 for
|
||||
* random 'b'-bit input, b >= 100 (taken from table 4.4 in the Handbook of
|
||||
* Applied Cryptography [Menezes, van Oorschot, Vanstone; CRC Press 1996];
|
||||
* original paper: Damgaard, Landrock, Pomerance: Average case error
|
||||
* estimates for the strong probable prime test. -- Math. Comp. 61 (1993)
|
||||
* 177-194)
|
||||
* BN_prime_checks_for_size() returns the number of Miller-Rabin iterations
|
||||
* that will be done for checking that a random number is probably prime. The
|
||||
* error rate for accepting a composite number as prime depends on the size of
|
||||
* the prime |b|. The error rates used are for calculating an RSA key with 2 primes,
|
||||
* and so the level is what you would expect for a key of double the size of the
|
||||
* prime.
|
||||
*
|
||||
* This table is generated using the algorithm of FIPS PUB 186-4
|
||||
* Digital Signature Standard (DSS), section F.1, page 117.
|
||||
* (https://dx.doi.org/10.6028/NIST.FIPS.186-4)
|
||||
*
|
||||
* The following magma script was used to generate the output:
|
||||
* securitybits:=125;
|
||||
* k:=1024;
|
||||
* for t:=1 to 65 do
|
||||
* for M:=3 to Floor(2*Sqrt(k-1)-1) do
|
||||
* S:=0;
|
||||
* // Sum over m
|
||||
* for m:=3 to M do
|
||||
* s:=0;
|
||||
* // Sum over j
|
||||
* for j:=2 to m do
|
||||
* s+:=(RealField(32)!2)^-(j+(k-1)/j);
|
||||
* end for;
|
||||
* S+:=2^(m-(m-1)*t)*s;
|
||||
* end for;
|
||||
* A:=2^(k-2-M*t);
|
||||
* B:=8*(Pi(RealField(32))^2-6)/3*2^(k-2)*S;
|
||||
* pkt:=2.00743*Log(2)*k*2^-k*(A+B);
|
||||
* seclevel:=Floor(-Log(2,pkt));
|
||||
* if seclevel ge securitybits then
|
||||
* printf "k: %5o, security: %o bits (t: %o, M: %o)\n",k,seclevel,t,M;
|
||||
* break;
|
||||
* end if;
|
||||
* end for;
|
||||
* if seclevel ge securitybits then break; end if;
|
||||
* end for;
|
||||
*
|
||||
* It can be run online at:
|
||||
* http://magma.maths.usyd.edu.au/calc
|
||||
*
|
||||
* And will output:
|
||||
* k: 1024, security: 129 bits (t: 6, M: 23)
|
||||
*
|
||||
* k is the number of bits of the prime, securitybits is the level we want to
|
||||
* reach.
|
||||
*
|
||||
* prime length | RSA key size | # MR tests | security level
|
||||
* -------------+--------------|------------+---------------
|
||||
* (b) >= 6394 | >= 12788 | 3 | 256 bit
|
||||
* (b) >= 3747 | >= 7494 | 3 | 192 bit
|
||||
* (b) >= 1345 | >= 2690 | 4 | 128 bit
|
||||
* (b) >= 1080 | >= 2160 | 5 | 128 bit
|
||||
* (b) >= 852 | >= 1704 | 5 | 112 bit
|
||||
* (b) >= 476 | >= 952 | 5 | 80 bit
|
||||
* (b) >= 400 | >= 800 | 6 | 80 bit
|
||||
* (b) >= 347 | >= 694 | 7 | 80 bit
|
||||
* (b) >= 308 | >= 616 | 8 | 80 bit
|
||||
* (b) >= 55 | >= 110 | 27 | 64 bit
|
||||
* (b) >= 6 | >= 12 | 34 | 64 bit
|
||||
*/
|
||||
# define BN_prime_checks_for_size(b) ((b) >= 1300 ? 2 : \
|
||||
(b) >= 850 ? 3 : \
|
||||
(b) >= 650 ? 4 : \
|
||||
(b) >= 550 ? 5 : \
|
||||
(b) >= 450 ? 6 : \
|
||||
(b) >= 400 ? 7 : \
|
||||
(b) >= 350 ? 8 : \
|
||||
(b) >= 300 ? 9 : \
|
||||
(b) >= 250 ? 12 : \
|
||||
(b) >= 200 ? 15 : \
|
||||
(b) >= 150 ? 18 : \
|
||||
/* b >= 100 */ 27)
|
||||
|
||||
# define BN_prime_checks_for_size(b) ((b) >= 3747 ? 3 : \
|
||||
(b) >= 1345 ? 4 : \
|
||||
(b) >= 476 ? 5 : \
|
||||
(b) >= 400 ? 6 : \
|
||||
(b) >= 347 ? 7 : \
|
||||
(b) >= 308 ? 8 : \
|
||||
(b) >= 55 ? 27 : \
|
||||
/* b >= 6 */ 34)
|
||||
|
||||
# define BN_num_bytes(a) ((BN_num_bits(a)+7)/8)
|
||||
|
||||
@@ -166,8 +205,10 @@ void BN_CTX_start(BN_CTX *ctx);
|
||||
BIGNUM *BN_CTX_get(BN_CTX *ctx);
|
||||
void BN_CTX_end(BN_CTX *ctx);
|
||||
int BN_rand(BIGNUM *rnd, int bits, int top, int bottom);
|
||||
int BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom);
|
||||
int BN_priv_rand(BIGNUM *rnd, int bits, int top, int bottom);
|
||||
int BN_rand_range(BIGNUM *rnd, const BIGNUM *range);
|
||||
int BN_priv_rand_range(BIGNUM *rnd, const BIGNUM *range);
|
||||
int BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom);
|
||||
int BN_pseudo_rand_range(BIGNUM *rnd, const BIGNUM *range);
|
||||
int BN_num_bits(const BIGNUM *a);
|
||||
int BN_num_bits_word(BN_ULONG l);
|
||||
@@ -196,7 +237,7 @@ int BN_sqr(BIGNUM *r, const BIGNUM *a, BN_CTX *ctx);
|
||||
*/
|
||||
void BN_set_negative(BIGNUM *b, int n);
|
||||
/** BN_is_negative returns 1 if the BIGNUM is negative
|
||||
* \param a pointer to the BIGNUM object
|
||||
* \param b pointer to the BIGNUM object
|
||||
* \return 1 if a < 0 and 0 otherwise
|
||||
*/
|
||||
int BN_is_negative(const BIGNUM *b);
|
||||
@@ -491,83 +532,6 @@ BIGNUM *BN_get_rfc3526_prime_8192(BIGNUM *bn);
|
||||
|
||||
int BN_bntest_rand(BIGNUM *rnd, int bits, int top, int bottom);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_BN_strings(void);
|
||||
|
||||
/* Error codes for the BN functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define BN_F_BNRAND 127
|
||||
# define BN_F_BN_BLINDING_CONVERT_EX 100
|
||||
# define BN_F_BN_BLINDING_CREATE_PARAM 128
|
||||
# define BN_F_BN_BLINDING_INVERT_EX 101
|
||||
# define BN_F_BN_BLINDING_NEW 102
|
||||
# define BN_F_BN_BLINDING_UPDATE 103
|
||||
# define BN_F_BN_BN2DEC 104
|
||||
# define BN_F_BN_BN2HEX 105
|
||||
# define BN_F_BN_COMPUTE_WNAF 142
|
||||
# define BN_F_BN_CTX_GET 116
|
||||
# define BN_F_BN_CTX_NEW 106
|
||||
# define BN_F_BN_CTX_START 129
|
||||
# define BN_F_BN_DIV 107
|
||||
# define BN_F_BN_DIV_RECP 130
|
||||
# define BN_F_BN_EXP 123
|
||||
# define BN_F_BN_EXPAND_INTERNAL 120
|
||||
# define BN_F_BN_GENCB_NEW 143
|
||||
# define BN_F_BN_GENERATE_DSA_NONCE 140
|
||||
# define BN_F_BN_GENERATE_PRIME_EX 141
|
||||
# define BN_F_BN_GF2M_MOD 131
|
||||
# define BN_F_BN_GF2M_MOD_EXP 132
|
||||
# define BN_F_BN_GF2M_MOD_MUL 133
|
||||
# define BN_F_BN_GF2M_MOD_SOLVE_QUAD 134
|
||||
# define BN_F_BN_GF2M_MOD_SOLVE_QUAD_ARR 135
|
||||
# define BN_F_BN_GF2M_MOD_SQR 136
|
||||
# define BN_F_BN_GF2M_MOD_SQRT 137
|
||||
# define BN_F_BN_LSHIFT 145
|
||||
# define BN_F_BN_MOD_EXP2_MONT 118
|
||||
# define BN_F_BN_MOD_EXP_MONT 109
|
||||
# define BN_F_BN_MOD_EXP_MONT_CONSTTIME 124
|
||||
# define BN_F_BN_MOD_EXP_MONT_WORD 117
|
||||
# define BN_F_BN_MOD_EXP_RECP 125
|
||||
# define BN_F_BN_MOD_EXP_SIMPLE 126
|
||||
# define BN_F_BN_MOD_INVERSE 110
|
||||
# define BN_F_BN_MOD_INVERSE_NO_BRANCH 139
|
||||
# define BN_F_BN_MOD_LSHIFT_QUICK 119
|
||||
# define BN_F_BN_MOD_SQRT 121
|
||||
# define BN_F_BN_MPI2BN 112
|
||||
# define BN_F_BN_NEW 113
|
||||
# define BN_F_BN_RAND 114
|
||||
# define BN_F_BN_RAND_RANGE 122
|
||||
# define BN_F_BN_RSHIFT 146
|
||||
# define BN_F_BN_SET_WORDS 144
|
||||
# define BN_F_BN_USUB 115
|
||||
|
||||
/* Reason codes. */
|
||||
# define BN_R_ARG2_LT_ARG3 100
|
||||
# define BN_R_BAD_RECIPROCAL 101
|
||||
# define BN_R_BIGNUM_TOO_LONG 114
|
||||
# define BN_R_BITS_TOO_SMALL 118
|
||||
# define BN_R_CALLED_WITH_EVEN_MODULUS 102
|
||||
# define BN_R_DIV_BY_ZERO 103
|
||||
# define BN_R_ENCODING_ERROR 104
|
||||
# define BN_R_EXPAND_ON_STATIC_BIGNUM_DATA 105
|
||||
# define BN_R_INPUT_NOT_REDUCED 110
|
||||
# define BN_R_INVALID_LENGTH 106
|
||||
# define BN_R_INVALID_RANGE 115
|
||||
# define BN_R_INVALID_SHIFT 119
|
||||
# define BN_R_NOT_A_SQUARE 111
|
||||
# define BN_R_NOT_INITIALIZED 107
|
||||
# define BN_R_NO_INVERSE 108
|
||||
# define BN_R_NO_SOLUTION 116
|
||||
# define BN_R_PRIVATE_KEY_TOO_LARGE 117
|
||||
# define BN_R_P_IS_NOT_PRIME 112
|
||||
# define BN_R_TOO_MANY_ITERATIONS 113
|
||||
# define BN_R_TOO_MANY_TEMPORARY_VARIABLES 109
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -14,6 +14,7 @@
|
||||
# ifndef HEADER_CRYPTO_H
|
||||
# include <openssl/crypto.h>
|
||||
# endif
|
||||
# include <openssl/buffererr.h>
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
@@ -21,10 +22,7 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
# include <stddef.h>
|
||||
|
||||
# if !defined(NO_SYS_TYPES_H)
|
||||
# include <sys/types.h>
|
||||
# endif
|
||||
|
||||
/*
|
||||
* These names are outdated as of OpenSSL 1.1; a future release
|
||||
@@ -53,22 +51,6 @@ size_t BUF_MEM_grow(BUF_MEM *str, size_t len);
|
||||
size_t BUF_MEM_grow_clean(BUF_MEM *str, size_t len);
|
||||
void BUF_reverse(unsigned char *out, const unsigned char *in, size_t siz);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_BUF_strings(void);
|
||||
|
||||
/* Error codes for the BUF functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define BUF_F_BUF_MEM_GROW 100
|
||||
# define BUF_F_BUF_MEM_GROW_CLEAN 105
|
||||
# define BUF_F_BUF_MEM_NEW 101
|
||||
|
||||
/* Reason codes. */
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2008-2018 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
|
||||
@@ -15,6 +15,7 @@
|
||||
# ifndef OPENSSL_NO_CMS
|
||||
# include <openssl/x509.h>
|
||||
# include <openssl/x509v3.h>
|
||||
# include <openssl/cmserr.h>
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
@@ -329,181 +330,10 @@ int CMS_RecipientInfo_kari_decrypt(CMS_ContentInfo *cms,
|
||||
int CMS_SharedInfo_encode(unsigned char **pder, X509_ALGOR *kekalg,
|
||||
ASN1_OCTET_STRING *ukm, int keylen);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_CMS_strings(void);
|
||||
|
||||
/* Error codes for the CMS functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define CMS_F_CHECK_CONTENT 99
|
||||
# define CMS_F_CMS_ADD0_CERT 164
|
||||
# define CMS_F_CMS_ADD0_RECIPIENT_KEY 100
|
||||
# define CMS_F_CMS_ADD0_RECIPIENT_PASSWORD 165
|
||||
# define CMS_F_CMS_ADD1_RECEIPTREQUEST 158
|
||||
# define CMS_F_CMS_ADD1_RECIPIENT_CERT 101
|
||||
# define CMS_F_CMS_ADD1_SIGNER 102
|
||||
# define CMS_F_CMS_ADD1_SIGNINGTIME 103
|
||||
# define CMS_F_CMS_COMPRESS 104
|
||||
# define CMS_F_CMS_COMPRESSEDDATA_CREATE 105
|
||||
# define CMS_F_CMS_COMPRESSEDDATA_INIT_BIO 106
|
||||
# define CMS_F_CMS_COPY_CONTENT 107
|
||||
# define CMS_F_CMS_COPY_MESSAGEDIGEST 108
|
||||
# define CMS_F_CMS_DATA 109
|
||||
# define CMS_F_CMS_DATAFINAL 110
|
||||
# define CMS_F_CMS_DATAINIT 111
|
||||
# define CMS_F_CMS_DECRYPT 112
|
||||
# define CMS_F_CMS_DECRYPT_SET1_KEY 113
|
||||
# define CMS_F_CMS_DECRYPT_SET1_PASSWORD 166
|
||||
# define CMS_F_CMS_DECRYPT_SET1_PKEY 114
|
||||
# define CMS_F_CMS_DIGESTALGORITHM_FIND_CTX 115
|
||||
# define CMS_F_CMS_DIGESTALGORITHM_INIT_BIO 116
|
||||
# define CMS_F_CMS_DIGESTEDDATA_DO_FINAL 117
|
||||
# define CMS_F_CMS_DIGEST_VERIFY 118
|
||||
# define CMS_F_CMS_ENCODE_RECEIPT 161
|
||||
# define CMS_F_CMS_ENCRYPT 119
|
||||
# define CMS_F_CMS_ENCRYPTEDCONTENT_INIT_BIO 120
|
||||
# define CMS_F_CMS_ENCRYPTEDDATA_DECRYPT 121
|
||||
# define CMS_F_CMS_ENCRYPTEDDATA_ENCRYPT 122
|
||||
# define CMS_F_CMS_ENCRYPTEDDATA_SET1_KEY 123
|
||||
# define CMS_F_CMS_ENVELOPEDDATA_CREATE 124
|
||||
# define CMS_F_CMS_ENVELOPEDDATA_INIT_BIO 125
|
||||
# define CMS_F_CMS_ENVELOPED_DATA_INIT 126
|
||||
# define CMS_F_CMS_ENV_ASN1_CTRL 171
|
||||
# define CMS_F_CMS_FINAL 127
|
||||
# define CMS_F_CMS_GET0_CERTIFICATE_CHOICES 128
|
||||
# define CMS_F_CMS_GET0_CONTENT 129
|
||||
# define CMS_F_CMS_GET0_ECONTENT_TYPE 130
|
||||
# define CMS_F_CMS_GET0_ENVELOPED 131
|
||||
# define CMS_F_CMS_GET0_REVOCATION_CHOICES 132
|
||||
# define CMS_F_CMS_GET0_SIGNED 133
|
||||
# define CMS_F_CMS_MSGSIGDIGEST_ADD1 162
|
||||
# define CMS_F_CMS_RECEIPTREQUEST_CREATE0 159
|
||||
# define CMS_F_CMS_RECEIPT_VERIFY 160
|
||||
# define CMS_F_CMS_RECIPIENTINFO_DECRYPT 134
|
||||
# define CMS_F_CMS_RECIPIENTINFO_ENCRYPT 169
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KARI_ENCRYPT 178
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_ALG 175
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_ORIG_ID 173
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KARI_GET0_REKS 172
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KARI_ORIG_ID_CMP 174
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT 135
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KEKRI_ENCRYPT 136
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KEKRI_GET0_ID 137
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KEKRI_ID_CMP 138
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KTRI_CERT_CMP 139
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KTRI_DECRYPT 140
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KTRI_ENCRYPT 141
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_ALGS 142
|
||||
# define CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_SIGNER_ID 143
|
||||
# define CMS_F_CMS_RECIPIENTINFO_PWRI_CRYPT 167
|
||||
# define CMS_F_CMS_RECIPIENTINFO_SET0_KEY 144
|
||||
# define CMS_F_CMS_RECIPIENTINFO_SET0_PASSWORD 168
|
||||
# define CMS_F_CMS_RECIPIENTINFO_SET0_PKEY 145
|
||||
# define CMS_F_CMS_SD_ASN1_CTRL 170
|
||||
# define CMS_F_CMS_SET1_IAS 176
|
||||
# define CMS_F_CMS_SET1_KEYID 177
|
||||
# define CMS_F_CMS_SET1_SIGNERIDENTIFIER 146
|
||||
# define CMS_F_CMS_SET_DETACHED 147
|
||||
# define CMS_F_CMS_SIGN 148
|
||||
# define CMS_F_CMS_SIGNED_DATA_INIT 149
|
||||
# define CMS_F_CMS_SIGNERINFO_CONTENT_SIGN 150
|
||||
# define CMS_F_CMS_SIGNERINFO_SIGN 151
|
||||
# define CMS_F_CMS_SIGNERINFO_VERIFY 152
|
||||
# define CMS_F_CMS_SIGNERINFO_VERIFY_CERT 153
|
||||
# define CMS_F_CMS_SIGNERINFO_VERIFY_CONTENT 154
|
||||
# define CMS_F_CMS_SIGN_RECEIPT 163
|
||||
# define CMS_F_CMS_STREAM 155
|
||||
# define CMS_F_CMS_UNCOMPRESS 156
|
||||
# define CMS_F_CMS_VERIFY 157
|
||||
|
||||
/* Reason codes. */
|
||||
# define CMS_R_ADD_SIGNER_ERROR 99
|
||||
# define CMS_R_CERTIFICATE_ALREADY_PRESENT 175
|
||||
# define CMS_R_CERTIFICATE_HAS_NO_KEYID 160
|
||||
# define CMS_R_CERTIFICATE_VERIFY_ERROR 100
|
||||
# define CMS_R_CIPHER_INITIALISATION_ERROR 101
|
||||
# define CMS_R_CIPHER_PARAMETER_INITIALISATION_ERROR 102
|
||||
# define CMS_R_CMS_DATAFINAL_ERROR 103
|
||||
# define CMS_R_CMS_LIB 104
|
||||
# define CMS_R_CONTENTIDENTIFIER_MISMATCH 170
|
||||
# define CMS_R_CONTENT_NOT_FOUND 105
|
||||
# define CMS_R_CONTENT_TYPE_MISMATCH 171
|
||||
# define CMS_R_CONTENT_TYPE_NOT_COMPRESSED_DATA 106
|
||||
# define CMS_R_CONTENT_TYPE_NOT_ENVELOPED_DATA 107
|
||||
# define CMS_R_CONTENT_TYPE_NOT_SIGNED_DATA 108
|
||||
# define CMS_R_CONTENT_VERIFY_ERROR 109
|
||||
# define CMS_R_CTRL_ERROR 110
|
||||
# define CMS_R_CTRL_FAILURE 111
|
||||
# define CMS_R_DECRYPT_ERROR 112
|
||||
# define CMS_R_ERROR_GETTING_PUBLIC_KEY 113
|
||||
# define CMS_R_ERROR_READING_MESSAGEDIGEST_ATTRIBUTE 114
|
||||
# define CMS_R_ERROR_SETTING_KEY 115
|
||||
# define CMS_R_ERROR_SETTING_RECIPIENTINFO 116
|
||||
# define CMS_R_INVALID_ENCRYPTED_KEY_LENGTH 117
|
||||
# define CMS_R_INVALID_KEY_ENCRYPTION_PARAMETER 176
|
||||
# define CMS_R_INVALID_KEY_LENGTH 118
|
||||
# define CMS_R_MD_BIO_INIT_ERROR 119
|
||||
# define CMS_R_MESSAGEDIGEST_ATTRIBUTE_WRONG_LENGTH 120
|
||||
# define CMS_R_MESSAGEDIGEST_WRONG_LENGTH 121
|
||||
# define CMS_R_MSGSIGDIGEST_ERROR 172
|
||||
# define CMS_R_MSGSIGDIGEST_VERIFICATION_FAILURE 162
|
||||
# define CMS_R_MSGSIGDIGEST_WRONG_LENGTH 163
|
||||
# define CMS_R_NEED_ONE_SIGNER 164
|
||||
# define CMS_R_NOT_A_SIGNED_RECEIPT 165
|
||||
# define CMS_R_NOT_ENCRYPTED_DATA 122
|
||||
# define CMS_R_NOT_KEK 123
|
||||
# define CMS_R_NOT_KEY_AGREEMENT 181
|
||||
# define CMS_R_NOT_KEY_TRANSPORT 124
|
||||
# define CMS_R_NOT_PWRI 177
|
||||
# define CMS_R_NOT_SUPPORTED_FOR_THIS_KEY_TYPE 125
|
||||
# define CMS_R_NO_CIPHER 126
|
||||
# define CMS_R_NO_CONTENT 127
|
||||
# define CMS_R_NO_CONTENT_TYPE 173
|
||||
# define CMS_R_NO_DEFAULT_DIGEST 128
|
||||
# define CMS_R_NO_DIGEST_SET 129
|
||||
# define CMS_R_NO_KEY 130
|
||||
# define CMS_R_NO_KEY_OR_CERT 174
|
||||
# define CMS_R_NO_MATCHING_DIGEST 131
|
||||
# define CMS_R_NO_MATCHING_RECIPIENT 132
|
||||
# define CMS_R_NO_MATCHING_SIGNATURE 166
|
||||
# define CMS_R_NO_MSGSIGDIGEST 167
|
||||
# define CMS_R_NO_PASSWORD 178
|
||||
# define CMS_R_NO_PRIVATE_KEY 133
|
||||
# define CMS_R_NO_PUBLIC_KEY 134
|
||||
# define CMS_R_NO_RECEIPT_REQUEST 168
|
||||
# define CMS_R_NO_SIGNERS 135
|
||||
# define CMS_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 136
|
||||
# define CMS_R_RECEIPT_DECODE_ERROR 169
|
||||
# define CMS_R_RECIPIENT_ERROR 137
|
||||
# define CMS_R_SIGNER_CERTIFICATE_NOT_FOUND 138
|
||||
# define CMS_R_SIGNFINAL_ERROR 139
|
||||
# define CMS_R_SMIME_TEXT_ERROR 140
|
||||
# define CMS_R_STORE_INIT_ERROR 141
|
||||
# define CMS_R_TYPE_NOT_COMPRESSED_DATA 142
|
||||
# define CMS_R_TYPE_NOT_DATA 143
|
||||
# define CMS_R_TYPE_NOT_DIGESTED_DATA 144
|
||||
# define CMS_R_TYPE_NOT_ENCRYPTED_DATA 145
|
||||
# define CMS_R_TYPE_NOT_ENVELOPED_DATA 146
|
||||
# define CMS_R_UNABLE_TO_FINALIZE_CONTEXT 147
|
||||
# define CMS_R_UNKNOWN_CIPHER 148
|
||||
# define CMS_R_UNKNOWN_DIGEST_ALGORIHM 149
|
||||
# define CMS_R_UNKNOWN_ID 150
|
||||
# define CMS_R_UNSUPPORTED_COMPRESSION_ALGORITHM 151
|
||||
# define CMS_R_UNSUPPORTED_CONTENT_TYPE 152
|
||||
# define CMS_R_UNSUPPORTED_KEK_ALGORITHM 153
|
||||
# define CMS_R_UNSUPPORTED_KEY_ENCRYPTION_ALGORITHM 179
|
||||
# define CMS_R_UNSUPPORTED_RECIPIENT_TYPE 154
|
||||
# define CMS_R_UNSUPPORTED_RECPIENTINFO_TYPE 155
|
||||
# define CMS_R_UNSUPPORTED_TYPE 156
|
||||
# define CMS_R_UNWRAP_ERROR 157
|
||||
# define CMS_R_UNWRAP_FAILURE 180
|
||||
# define CMS_R_VERIFICATION_FAILURE 158
|
||||
# define CMS_R_WRAP_ERROR 159
|
||||
/* Backward compatibility for spelling errors. */
|
||||
# define CMS_R_UNKNOWN_DIGEST_ALGORITM CMS_R_UNKNOWN_DIGEST_ALGORITHM
|
||||
# define CMS_R_UNSUPPORTED_RECPIENTINFO_TYPE \
|
||||
CMS_R_UNSUPPORTED_RECIPIENTINFO_TYPE
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2015-2018 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
|
||||
@@ -14,6 +14,7 @@
|
||||
|
||||
# ifndef OPENSSL_NO_COMP
|
||||
# include <openssl/crypto.h>
|
||||
# include <openssl/comperr.h>
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
@@ -44,26 +45,6 @@ const BIO_METHOD *BIO_f_zlib(void);
|
||||
# endif
|
||||
# endif
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_COMP_strings(void);
|
||||
|
||||
/* Error codes for the COMP functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define COMP_F_BIO_ZLIB_FLUSH 99
|
||||
# define COMP_F_BIO_ZLIB_NEW 100
|
||||
# define COMP_F_BIO_ZLIB_READ 101
|
||||
# define COMP_F_BIO_ZLIB_WRITE 102
|
||||
|
||||
/* Reason codes. */
|
||||
# define COMP_R_ZLIB_DEFLATE_ERROR 99
|
||||
# define COMP_R_ZLIB_INFLATE_ERROR 100
|
||||
# define COMP_R_ZLIB_NOT_SUPPORTED 101
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -12,11 +12,10 @@
|
||||
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/lhash.h>
|
||||
# include <openssl/stack.h>
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/e_os2.h>
|
||||
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/conferr.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -162,54 +161,6 @@ int CONF_parse_list(const char *list, int sep, int nospc,
|
||||
|
||||
void OPENSSL_load_builtin_modules(void);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_CONF_strings(void);
|
||||
|
||||
/* Error codes for the CONF functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define CONF_F_CONF_DUMP_FP 104
|
||||
# define CONF_F_CONF_LOAD 100
|
||||
# define CONF_F_CONF_LOAD_FP 103
|
||||
# define CONF_F_CONF_PARSE_LIST 119
|
||||
# define CONF_F_DEF_LOAD 120
|
||||
# define CONF_F_DEF_LOAD_BIO 121
|
||||
# define CONF_F_MODULE_INIT 115
|
||||
# define CONF_F_MODULE_LOAD_DSO 117
|
||||
# define CONF_F_MODULE_RUN 118
|
||||
# define CONF_F_NCONF_DUMP_BIO 105
|
||||
# define CONF_F_NCONF_DUMP_FP 106
|
||||
# define CONF_F_NCONF_GET_NUMBER_E 112
|
||||
# define CONF_F_NCONF_GET_SECTION 108
|
||||
# define CONF_F_NCONF_GET_STRING 109
|
||||
# define CONF_F_NCONF_LOAD 113
|
||||
# define CONF_F_NCONF_LOAD_BIO 110
|
||||
# define CONF_F_NCONF_LOAD_FP 114
|
||||
# define CONF_F_NCONF_NEW 111
|
||||
# define CONF_F_STR_COPY 101
|
||||
|
||||
/* Reason codes. */
|
||||
# define CONF_R_ERROR_LOADING_DSO 110
|
||||
# define CONF_R_LIST_CANNOT_BE_NULL 115
|
||||
# define CONF_R_MISSING_CLOSE_SQUARE_BRACKET 100
|
||||
# define CONF_R_MISSING_EQUAL_SIGN 101
|
||||
# define CONF_R_MISSING_INIT_FUNCTION 112
|
||||
# define CONF_R_MODULE_INITIALIZATION_ERROR 109
|
||||
# define CONF_R_NO_CLOSE_BRACE 102
|
||||
# define CONF_R_NO_CONF 105
|
||||
# define CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE 106
|
||||
# define CONF_R_NO_SECTION 107
|
||||
# define CONF_R_NO_SUCH_FILE 114
|
||||
# define CONF_R_NO_VALUE 108
|
||||
# define CONF_R_UNABLE_TO_CREATE_NEW_SECTION 103
|
||||
# define CONF_R_UNKNOWN_MODULE_NAME 113
|
||||
# define CONF_R_VARIABLE_EXPANSION_TOO_LONG 116
|
||||
# define CONF_R_VARIABLE_HAS_NO_VALUE 104
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. 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
|
||||
@@ -7,12 +8,6 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
|
||||
* ECDH support in OpenSSL originally developed by
|
||||
* SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project.
|
||||
*/
|
||||
|
||||
#ifndef HEADER_CRYPTO_H
|
||||
# define HEADER_CRYPTO_H
|
||||
|
||||
@@ -25,11 +20,11 @@
|
||||
# include <stdio.h>
|
||||
# endif
|
||||
|
||||
# include <openssl/stack.h>
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/opensslv.h>
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/cryptoerr.h>
|
||||
|
||||
# ifdef CHARSET_EBCDIC
|
||||
# include <openssl/ebcdic.h>
|
||||
@@ -110,7 +105,9 @@ DEFINE_STACK_OF(void)
|
||||
# define CRYPTO_EX_INDEX_UI 11
|
||||
# define CRYPTO_EX_INDEX_BIO 12
|
||||
# define CRYPTO_EX_INDEX_APP 13
|
||||
# define CRYPTO_EX_INDEX__COUNT 14
|
||||
# define CRYPTO_EX_INDEX_UI_METHOD 14
|
||||
# define CRYPTO_EX_INDEX_DRBG 15
|
||||
# define CRYPTO_EX_INDEX__COUNT 16
|
||||
|
||||
/*
|
||||
* This is the default callbacks, but we can have others as well: this is
|
||||
@@ -146,6 +143,8 @@ int CRYPTO_mem_ctrl(int mode);
|
||||
CRYPTO_secure_zalloc(num, OPENSSL_FILE, OPENSSL_LINE)
|
||||
# define OPENSSL_secure_free(addr) \
|
||||
CRYPTO_secure_free(addr, OPENSSL_FILE, OPENSSL_LINE)
|
||||
# define OPENSSL_secure_clear_free(addr, num) \
|
||||
CRYPTO_secure_clear_free(addr, num, OPENSSL_FILE, OPENSSL_LINE)
|
||||
# define OPENSSL_secure_actual_size(ptr) \
|
||||
CRYPTO_secure_actual_size(ptr)
|
||||
|
||||
@@ -209,7 +208,7 @@ void *CRYPTO_get_ex_data(const CRYPTO_EX_DATA *ad, int idx);
|
||||
* The old locking functions have been removed completely without compatibility
|
||||
* macros. This is because the old functions either could not properly report
|
||||
* errors, or the returned error values were not clearly documented.
|
||||
* Replacing the locking functions with with no-ops would cause race condition
|
||||
* Replacing the locking functions with no-ops would cause race condition
|
||||
* issues in the affected applications. It is far better for them to fail at
|
||||
* compile time.
|
||||
* On the other hand, the locking callbacks are no longer used. Consequently,
|
||||
@@ -285,6 +284,8 @@ int CRYPTO_secure_malloc_done(void);
|
||||
void *CRYPTO_secure_malloc(size_t num, const char *file, int line);
|
||||
void *CRYPTO_secure_zalloc(size_t num, const char *file, int line);
|
||||
void CRYPTO_secure_free(void *ptr, const char *file, int line);
|
||||
void CRYPTO_secure_clear_free(void *ptr, size_t num,
|
||||
const char *file, int line);
|
||||
int CRYPTO_secure_allocated(const void *ptr);
|
||||
int CRYPTO_secure_malloc_initialized(void);
|
||||
size_t CRYPTO_secure_actual_size(void *ptr);
|
||||
@@ -299,6 +300,7 @@ void OPENSSL_cleanse(void *ptr, size_t len);
|
||||
CRYPTO_mem_debug_pop()
|
||||
int CRYPTO_mem_debug_push(const char *info, const char *file, int line);
|
||||
int CRYPTO_mem_debug_pop(void);
|
||||
void CRYPTO_get_alloc_counts(int *mcount, int *rcount, int *fcount);
|
||||
|
||||
/*-
|
||||
* Debugging functions (enabled by CRYPTO_set_mem_debug(1))
|
||||
@@ -313,6 +315,8 @@ void CRYPTO_mem_debug_realloc(void *addr1, void *addr2, size_t num, int flag,
|
||||
void CRYPTO_mem_debug_free(void *addr, int flag,
|
||||
const char *file, int line);
|
||||
|
||||
int CRYPTO_mem_leaks_cb(int (*cb) (const char *str, size_t len, void *u),
|
||||
void *u);
|
||||
# ifndef OPENSSL_NO_STDIO
|
||||
int CRYPTO_mem_leaks_fp(FILE *);
|
||||
# endif
|
||||
@@ -333,6 +337,11 @@ int FIPS_mode(void);
|
||||
int FIPS_mode_set(int r);
|
||||
|
||||
void OPENSSL_init(void);
|
||||
# ifdef OPENSSL_SYS_UNIX
|
||||
void OPENSSL_fork_prepare(void);
|
||||
void OPENSSL_fork_parent(void);
|
||||
void OPENSSL_fork_child(void);
|
||||
# endif
|
||||
|
||||
struct tm *OPENSSL_gmtime(const time_t *timer, struct tm *result);
|
||||
int OPENSSL_gmtime_adj(struct tm *tm, int offset_day, long offset_sec);
|
||||
@@ -346,9 +355,7 @@ int OPENSSL_gmtime_diff(int *pday, int *psec,
|
||||
* into a defined order as the return value when a != b is undefined, other
|
||||
* than to be non-zero.
|
||||
*/
|
||||
int CRYPTO_memcmp(const volatile void * volatile in_a,
|
||||
const volatile void * volatile in_b,
|
||||
size_t len);
|
||||
int CRYPTO_memcmp(const void * in_a, const void * in_b, size_t len);
|
||||
|
||||
/* Standard initialisation options */
|
||||
# define OPENSSL_INIT_NO_LOAD_CRYPTO_STRINGS 0x00000001L
|
||||
@@ -367,7 +374,9 @@ int CRYPTO_memcmp(const volatile void * volatile in_a,
|
||||
# define OPENSSL_INIT_ENGINE_CAPI 0x00002000L
|
||||
# define OPENSSL_INIT_ENGINE_PADLOCK 0x00004000L
|
||||
# define OPENSSL_INIT_ENGINE_AFALG 0x00008000L
|
||||
/* OPENSSL_INIT flag 0x00010000 reserved for internal use */
|
||||
/* OPENSSL_INIT_ZLIB 0x00010000L */
|
||||
# define OPENSSL_INIT_ATFORK 0x00020000L
|
||||
/* OPENSSL_INIT_BASE_ONLY 0x00040000L */
|
||||
/* OPENSSL_INIT flag range 0xfff00000 reserved for OPENSSL_init_ssl() */
|
||||
/* Max OPENSSL_INIT flag value is 0x80000000 */
|
||||
|
||||
@@ -429,33 +438,6 @@ int CRYPTO_THREAD_cleanup_local(CRYPTO_THREAD_LOCAL *key);
|
||||
CRYPTO_THREAD_ID CRYPTO_THREAD_get_current_id(void);
|
||||
int CRYPTO_THREAD_compare_id(CRYPTO_THREAD_ID a, CRYPTO_THREAD_ID b);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_CRYPTO_strings(void);
|
||||
|
||||
/* Error codes for the CRYPTO functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define CRYPTO_F_CRYPTO_DUP_EX_DATA 110
|
||||
# define CRYPTO_F_CRYPTO_FREE_EX_DATA 111
|
||||
# define CRYPTO_F_CRYPTO_GET_EX_NEW_INDEX 100
|
||||
# define CRYPTO_F_CRYPTO_MEMDUP 115
|
||||
# define CRYPTO_F_CRYPTO_NEW_EX_DATA 112
|
||||
# define CRYPTO_F_CRYPTO_SET_EX_DATA 102
|
||||
# define CRYPTO_F_FIPS_MODE_SET 109
|
||||
# define CRYPTO_F_GET_AND_LOCK 113
|
||||
# define CRYPTO_F_OPENSSL_BUF2HEXSTR 117
|
||||
# define CRYPTO_F_OPENSSL_HEXSTR2BUF 118
|
||||
# define CRYPTO_F_OPENSSL_INIT_CRYPTO 116
|
||||
|
||||
/* Reason codes. */
|
||||
# define CRYPTO_R_FIPS_MODE_NOT_SUPPORTED 101
|
||||
# define CRYPTO_R_ILLEGAL_HEX_DIGIT 102
|
||||
# define CRYPTO_R_ODD_NUMBER_OF_DIGITS 103
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2016-2018 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
|
||||
@@ -16,6 +16,7 @@
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/x509.h>
|
||||
# include <openssl/cterr.h>
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
@@ -468,64 +469,6 @@ __owur int CTLOG_STORE_load_file(CTLOG_STORE *store, const char *file);
|
||||
*/
|
||||
__owur int CTLOG_STORE_load_default_file(CTLOG_STORE *store);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_CT_strings(void);
|
||||
|
||||
/* Error codes for the CT functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define CT_F_CTLOG_NEW 117
|
||||
# define CT_F_CTLOG_NEW_FROM_BASE64 118
|
||||
# define CT_F_CTLOG_NEW_FROM_CONF 119
|
||||
# define CT_F_CTLOG_STORE_LOAD_CTX_NEW 122
|
||||
# define CT_F_CTLOG_STORE_LOAD_FILE 123
|
||||
# define CT_F_CTLOG_STORE_LOAD_LOG 130
|
||||
# define CT_F_CTLOG_STORE_NEW 131
|
||||
# define CT_F_CT_BASE64_DECODE 124
|
||||
# define CT_F_CT_POLICY_EVAL_CTX_NEW 133
|
||||
# define CT_F_CT_V1_LOG_ID_FROM_PKEY 125
|
||||
# define CT_F_I2O_SCT 107
|
||||
# define CT_F_I2O_SCT_LIST 108
|
||||
# define CT_F_I2O_SCT_SIGNATURE 109
|
||||
# define CT_F_O2I_SCT 110
|
||||
# define CT_F_O2I_SCT_LIST 111
|
||||
# define CT_F_O2I_SCT_SIGNATURE 112
|
||||
# define CT_F_SCT_CTX_NEW 126
|
||||
# define CT_F_SCT_CTX_VERIFY 128
|
||||
# define CT_F_SCT_NEW 100
|
||||
# define CT_F_SCT_NEW_FROM_BASE64 127
|
||||
# define CT_F_SCT_SET0_LOG_ID 101
|
||||
# define CT_F_SCT_SET1_EXTENSIONS 114
|
||||
# define CT_F_SCT_SET1_LOG_ID 115
|
||||
# define CT_F_SCT_SET1_SIGNATURE 116
|
||||
# define CT_F_SCT_SET_LOG_ENTRY_TYPE 102
|
||||
# define CT_F_SCT_SET_SIGNATURE_NID 103
|
||||
# define CT_F_SCT_SET_VERSION 104
|
||||
|
||||
/* Reason codes. */
|
||||
# define CT_R_BASE64_DECODE_ERROR 108
|
||||
# define CT_R_INVALID_LOG_ID_LENGTH 100
|
||||
# define CT_R_LOG_CONF_INVALID 109
|
||||
# define CT_R_LOG_CONF_INVALID_KEY 110
|
||||
# define CT_R_LOG_CONF_MISSING_DESCRIPTION 111
|
||||
# define CT_R_LOG_CONF_MISSING_KEY 112
|
||||
# define CT_R_LOG_KEY_INVALID 113
|
||||
# define CT_R_SCT_FUTURE_TIMESTAMP 116
|
||||
# define CT_R_SCT_INVALID 104
|
||||
# define CT_R_SCT_INVALID_SIGNATURE 107
|
||||
# define CT_R_SCT_LIST_INVALID 105
|
||||
# define CT_R_SCT_LOG_ID_MISMATCH 114
|
||||
# define CT_R_SCT_NOT_SET 106
|
||||
# define CT_R_SCT_UNSUPPORTED_VERSION 115
|
||||
# define CT_R_UNRECOGNIZED_SIGNATURE_NID 101
|
||||
# define CT_R_UNSUPPORTED_ENTRY_TYPE 102
|
||||
# define CT_R_UNSUPPORTED_VERSION 103
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -20,6 +20,7 @@
|
||||
# if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# include <openssl/bn.h>
|
||||
# endif
|
||||
# include <openssl/dherr.h>
|
||||
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -141,6 +142,9 @@ DEPRECATEDIN_0_9_8(DH *DH_generate_parameters(int prime_len, int generator,
|
||||
int DH_generate_parameters_ex(DH *dh, int prime_len, int generator,
|
||||
BN_GENCB *cb);
|
||||
|
||||
int DH_check_params_ex(const DH *dh);
|
||||
int DH_check_ex(const DH *dh);
|
||||
int DH_check_pub_key_ex(const DH *dh, const BIGNUM *pub_key);
|
||||
int DH_check_params(const DH *dh, int *ret);
|
||||
int DH_check(const DH *dh, int *codes);
|
||||
int DH_check_pub_key(const DH *dh, const BIGNUM *pub_key, int *codes);
|
||||
@@ -161,6 +165,10 @@ DH *DH_get_1024_160(void);
|
||||
DH *DH_get_2048_224(void);
|
||||
DH *DH_get_2048_256(void);
|
||||
|
||||
/* Named parameters, currently RFC7919 */
|
||||
DH *DH_new_by_nid(int nid);
|
||||
int DH_get_nid(const DH *dh);
|
||||
|
||||
# ifndef OPENSSL_NO_CMS
|
||||
/* RFC2631 KDF */
|
||||
int DH_KDF_X9_42(unsigned char *out, size_t outlen,
|
||||
@@ -175,6 +183,11 @@ int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g);
|
||||
void DH_get0_key(const DH *dh,
|
||||
const BIGNUM **pub_key, const BIGNUM **priv_key);
|
||||
int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key);
|
||||
const BIGNUM *DH_get0_p(const DH *dh);
|
||||
const BIGNUM *DH_get0_q(const DH *dh);
|
||||
const BIGNUM *DH_get0_g(const DH *dh);
|
||||
const BIGNUM *DH_get0_priv_key(const DH *dh);
|
||||
const BIGNUM *DH_get0_pub_key(const DH *dh);
|
||||
void DH_clear_flags(DH *dh, int flags);
|
||||
int DH_test_flags(const DH *dh, int flags);
|
||||
void DH_set_flags(DH *dh, int flags);
|
||||
@@ -187,7 +200,7 @@ void DH_meth_free(DH_METHOD *dhm);
|
||||
DH_METHOD *DH_meth_dup(const DH_METHOD *dhm);
|
||||
const char *DH_meth_get0_name(const DH_METHOD *dhm);
|
||||
int DH_meth_set1_name(DH_METHOD *dhm, const char *name);
|
||||
int DH_meth_get_flags(DH_METHOD *dhm);
|
||||
int DH_meth_get_flags(const DH_METHOD *dhm);
|
||||
int DH_meth_set_flags(DH_METHOD *dhm, int flags);
|
||||
void *DH_meth_get0_app_data(const DH_METHOD *dhm);
|
||||
int DH_meth_set0_app_data(DH_METHOD *dhm, void *app_data);
|
||||
@@ -237,6 +250,15 @@ int DH_meth_set_generate_params(DH_METHOD *dhm,
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, EVP_PKEY_OP_PARAMGEN, \
|
||||
EVP_PKEY_CTRL_DH_RFC5114, gen, NULL)
|
||||
|
||||
# define EVP_PKEY_CTX_set_dh_nid(ctx, nid) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DH, \
|
||||
EVP_PKEY_OP_PARAMGEN | EVP_PKEY_OP_KEYGEN, \
|
||||
EVP_PKEY_CTRL_DH_NID, nid, NULL)
|
||||
|
||||
# define EVP_PKEY_CTX_set_dh_pad(ctx, pad) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DH, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_DH_PAD, pad, NULL)
|
||||
|
||||
# define EVP_PKEY_CTX_set_dh_kdf_type(ctx, kdf) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
@@ -250,22 +272,22 @@ int DH_meth_set_generate_params(DH_METHOD *dhm,
|
||||
# define EVP_PKEY_CTX_set0_dh_kdf_oid(ctx, oid) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_DH_KDF_OID, 0, (void *)oid)
|
||||
EVP_PKEY_CTRL_DH_KDF_OID, 0, (void *)(oid))
|
||||
|
||||
# define EVP_PKEY_CTX_get0_dh_kdf_oid(ctx, poid) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_GET_DH_KDF_OID, 0, (void *)poid)
|
||||
EVP_PKEY_CTRL_GET_DH_KDF_OID, 0, (void *)(poid))
|
||||
|
||||
# define EVP_PKEY_CTX_set_dh_kdf_md(ctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_DH_KDF_MD, 0, (void *)md)
|
||||
EVP_PKEY_CTRL_DH_KDF_MD, 0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTX_get_dh_kdf_md(ctx, pmd) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_GET_DH_KDF_MD, 0, (void *)pmd)
|
||||
EVP_PKEY_CTRL_GET_DH_KDF_MD, 0, (void *)(pmd))
|
||||
|
||||
# define EVP_PKEY_CTX_set_dh_kdf_outlen(ctx, len) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
@@ -275,17 +297,17 @@ int DH_meth_set_generate_params(DH_METHOD *dhm,
|
||||
# define EVP_PKEY_CTX_get_dh_kdf_outlen(ctx, plen) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN, 0, (void *)plen)
|
||||
EVP_PKEY_CTRL_GET_DH_KDF_OUTLEN, 0, (void *)(plen))
|
||||
|
||||
# define EVP_PKEY_CTX_set0_dh_kdf_ukm(ctx, p, plen) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_DH_KDF_UKM, plen, (void *)p)
|
||||
EVP_PKEY_CTRL_DH_KDF_UKM, plen, (void *)(p))
|
||||
|
||||
# define EVP_PKEY_CTX_get0_dh_kdf_ukm(ctx, p) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DHX, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_GET_DH_KDF_UKM, 0, (void *)p)
|
||||
EVP_PKEY_CTRL_GET_DH_KDF_UKM, 0, (void *)(p))
|
||||
|
||||
# define EVP_PKEY_CTRL_DH_PARAMGEN_PRIME_LEN (EVP_PKEY_ALG_CTRL + 1)
|
||||
# define EVP_PKEY_CTRL_DH_PARAMGEN_GENERATOR (EVP_PKEY_ALG_CTRL + 2)
|
||||
@@ -301,6 +323,8 @@ int DH_meth_set_generate_params(DH_METHOD *dhm,
|
||||
# define EVP_PKEY_CTRL_GET_DH_KDF_UKM (EVP_PKEY_ALG_CTRL + 12)
|
||||
# define EVP_PKEY_CTRL_DH_KDF_OID (EVP_PKEY_ALG_CTRL + 13)
|
||||
# define EVP_PKEY_CTRL_GET_DH_KDF_OID (EVP_PKEY_ALG_CTRL + 14)
|
||||
# define EVP_PKEY_CTRL_DH_NID (EVP_PKEY_ALG_CTRL + 15)
|
||||
# define EVP_PKEY_CTRL_DH_PAD (EVP_PKEY_ALG_CTRL + 16)
|
||||
|
||||
/* KDF types */
|
||||
# define EVP_PKEY_DH_KDF_NONE 1
|
||||
@@ -308,51 +332,6 @@ int DH_meth_set_generate_params(DH_METHOD *dhm,
|
||||
# define EVP_PKEY_DH_KDF_X9_42 2
|
||||
# endif
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_DH_strings(void);
|
||||
|
||||
/* Error codes for the DH functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define DH_F_COMPUTE_KEY 102
|
||||
# define DH_F_DHPARAMS_PRINT_FP 101
|
||||
# define DH_F_DH_BUILTIN_GENPARAMS 106
|
||||
# define DH_F_DH_CMS_DECRYPT 114
|
||||
# define DH_F_DH_CMS_SET_PEERKEY 115
|
||||
# define DH_F_DH_CMS_SET_SHARED_INFO 116
|
||||
# define DH_F_DH_METH_DUP 117
|
||||
# define DH_F_DH_METH_NEW 118
|
||||
# define DH_F_DH_METH_SET1_NAME 119
|
||||
# define DH_F_DH_NEW_METHOD 105
|
||||
# define DH_F_DH_PARAM_DECODE 107
|
||||
# define DH_F_DH_PRIV_DECODE 110
|
||||
# define DH_F_DH_PRIV_ENCODE 111
|
||||
# define DH_F_DH_PUB_DECODE 108
|
||||
# define DH_F_DH_PUB_ENCODE 109
|
||||
# define DH_F_DO_DH_PRINT 100
|
||||
# define DH_F_GENERATE_KEY 103
|
||||
# define DH_F_PKEY_DH_DERIVE 112
|
||||
# define DH_F_PKEY_DH_KEYGEN 113
|
||||
|
||||
/* Reason codes. */
|
||||
# define DH_R_BAD_GENERATOR 101
|
||||
# define DH_R_BN_DECODE_ERROR 109
|
||||
# define DH_R_BN_ERROR 106
|
||||
# define DH_R_DECODE_ERROR 104
|
||||
# define DH_R_INVALID_PUBKEY 102
|
||||
# define DH_R_KDF_PARAMETER_ERROR 112
|
||||
# define DH_R_KEYS_NOT_SET 108
|
||||
# define DH_R_MODULUS_TOO_LARGE 103
|
||||
# define DH_R_NO_PARAMETERS_SET 107
|
||||
# define DH_R_NO_PRIVATE_VALUE 100
|
||||
# define DH_R_PARAMETER_ENCODING_ERROR 105
|
||||
# define DH_R_PEER_KEY_ERROR 111
|
||||
# define DH_R_SHARED_INFO_ERROR 113
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -7,11 +7,6 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/*
|
||||
* The DSS routines are based on patches supplied by
|
||||
* Steven Schoch <schoch@sheba.arc.nasa.gov>.
|
||||
*/
|
||||
|
||||
#ifndef HEADER_DSA_H
|
||||
# define HEADER_DSA_H
|
||||
|
||||
@@ -25,11 +20,11 @@ extern "C" {
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/crypto.h>
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/bn.h>
|
||||
# if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# include <openssl/dh.h>
|
||||
# endif
|
||||
# include <openssl/dsaerr.h>
|
||||
|
||||
# ifndef OPENSSL_DSA_MAX_MODULUS_BITS
|
||||
# define OPENSSL_DSA_MAX_MODULUS_BITS 10000
|
||||
@@ -104,7 +99,7 @@ int DSA_size(const DSA *);
|
||||
int DSA_bits(const DSA *d);
|
||||
int DSA_security_bits(const DSA *d);
|
||||
/* next 4 return -1 on error */
|
||||
int DSA_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp);
|
||||
DEPRECATEDIN_1_2_0(int DSA_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp))
|
||||
int DSA_sign(int type, const unsigned char *dgst, int dlen,
|
||||
unsigned char *sig, unsigned int *siglen, DSA *dsa);
|
||||
int DSA_verify(int type, const unsigned char *dgst, int dgst_len,
|
||||
@@ -146,10 +141,12 @@ int DSAparams_print_fp(FILE *fp, const DSA *x);
|
||||
int DSA_print_fp(FILE *bp, const DSA *x, int off);
|
||||
# endif
|
||||
|
||||
# define DSS_prime_checks 50
|
||||
# define DSS_prime_checks 64
|
||||
/*
|
||||
* Primality test according to FIPS PUB 186[-1], Appendix 2.1: 50 rounds of
|
||||
* Rabin-Miller
|
||||
* Primality test according to FIPS PUB 186-4, Appendix C.3. Since we only
|
||||
* have one value here we set the number of checks to 64 which is the 128 bit
|
||||
* security level that is the highest level and valid for creating a 3072 bit
|
||||
* DSA key.
|
||||
*/
|
||||
# define DSA_is_prime(n, callback, cb_arg) \
|
||||
BN_is_prime(n, DSS_prime_checks, callback, NULL, cb_arg)
|
||||
@@ -176,6 +173,11 @@ int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g);
|
||||
void DSA_get0_key(const DSA *d,
|
||||
const BIGNUM **pub_key, const BIGNUM **priv_key);
|
||||
int DSA_set0_key(DSA *d, BIGNUM *pub_key, BIGNUM *priv_key);
|
||||
const BIGNUM *DSA_get0_p(const DSA *d);
|
||||
const BIGNUM *DSA_get0_q(const DSA *d);
|
||||
const BIGNUM *DSA_get0_g(const DSA *d);
|
||||
const BIGNUM *DSA_get0_pub_key(const DSA *d);
|
||||
const BIGNUM *DSA_get0_priv_key(const DSA *d);
|
||||
void DSA_clear_flags(DSA *d, int flags);
|
||||
int DSA_test_flags(const DSA *d, int flags);
|
||||
void DSA_set_flags(DSA *d, int flags);
|
||||
@@ -186,7 +188,7 @@ void DSA_meth_free(DSA_METHOD *dsam);
|
||||
DSA_METHOD *DSA_meth_dup(const DSA_METHOD *dsam);
|
||||
const char *DSA_meth_get0_name(const DSA_METHOD *dsam);
|
||||
int DSA_meth_set1_name(DSA_METHOD *dsam, const char *name);
|
||||
int DSA_meth_get_flags(DSA_METHOD *dsam);
|
||||
int DSA_meth_get_flags(const DSA_METHOD *dsam);
|
||||
int DSA_meth_set_flags(DSA_METHOD *dsam, int flags);
|
||||
void *DSA_meth_get0_app_data(const DSA_METHOD *dsam);
|
||||
int DSA_meth_set0_app_data(DSA_METHOD *dsam, void *app_data);
|
||||
@@ -228,53 +230,6 @@ int DSA_meth_set_paramgen(DSA_METHOD *dsam,
|
||||
int (*DSA_meth_get_keygen(const DSA_METHOD *dsam)) (DSA *);
|
||||
int DSA_meth_set_keygen(DSA_METHOD *dsam, int (*keygen) (DSA *));
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_DSA_strings(void);
|
||||
|
||||
/* Error codes for the DSA functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define DSA_F_DSAPARAMS_PRINT 100
|
||||
# define DSA_F_DSAPARAMS_PRINT_FP 101
|
||||
# define DSA_F_DSA_BUILTIN_PARAMGEN 125
|
||||
# define DSA_F_DSA_BUILTIN_PARAMGEN2 126
|
||||
# define DSA_F_DSA_DO_SIGN 112
|
||||
# define DSA_F_DSA_DO_VERIFY 113
|
||||
# define DSA_F_DSA_METH_DUP 127
|
||||
# define DSA_F_DSA_METH_NEW 128
|
||||
# define DSA_F_DSA_METH_SET1_NAME 129
|
||||
# define DSA_F_DSA_NEW_METHOD 103
|
||||
# define DSA_F_DSA_PARAM_DECODE 119
|
||||
# define DSA_F_DSA_PRINT_FP 105
|
||||
# define DSA_F_DSA_PRIV_DECODE 115
|
||||
# define DSA_F_DSA_PRIV_ENCODE 116
|
||||
# define DSA_F_DSA_PUB_DECODE 117
|
||||
# define DSA_F_DSA_PUB_ENCODE 118
|
||||
# define DSA_F_DSA_SIGN 106
|
||||
# define DSA_F_DSA_SIGN_SETUP 107
|
||||
# define DSA_F_DSA_SIG_NEW 102
|
||||
# define DSA_F_OLD_DSA_PRIV_DECODE 122
|
||||
# define DSA_F_PKEY_DSA_CTRL 120
|
||||
# define DSA_F_PKEY_DSA_KEYGEN 121
|
||||
|
||||
/* Reason codes. */
|
||||
# define DSA_R_BAD_Q_VALUE 102
|
||||
# define DSA_R_BN_DECODE_ERROR 108
|
||||
# define DSA_R_BN_ERROR 109
|
||||
# define DSA_R_DECODE_ERROR 104
|
||||
# define DSA_R_INVALID_DIGEST_TYPE 106
|
||||
# define DSA_R_INVALID_PARAMETERS 112
|
||||
# define DSA_R_MISSING_PARAMETERS 101
|
||||
# define DSA_R_MODULUS_TOO_LARGE 103
|
||||
# define DSA_R_NO_PARAMETERS_SET 107
|
||||
# define DSA_R_PARAMETER_ENCODING_ERROR 105
|
||||
# define DSA_R_Q_NOT_PRIME 113
|
||||
# define DSA_R_SEED_LEN_SMALL 110
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2005-2018 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
|
||||
@@ -26,6 +26,10 @@ extern "C" {
|
||||
# define DTLS_ANY_VERSION 0x1FFFF
|
||||
|
||||
/* lengths of messages */
|
||||
/*
|
||||
* Actually the max cookie length in DTLS is 255. But we can't change this now
|
||||
* due to compatibility concerns.
|
||||
*/
|
||||
# define DTLS1_COOKIE_LENGTH 256
|
||||
|
||||
# define DTLS1_RT_HEADER_LENGTH 13
|
||||
@@ -37,12 +41,7 @@ extern "C" {
|
||||
|
||||
# define DTLS1_CCS_HEADER_LENGTH 1
|
||||
|
||||
# ifdef DTLS1_AD_MISSING_HANDSHAKE_MESSAGE
|
||||
# define DTLS1_AL_HEADER_LENGTH 7
|
||||
# else
|
||||
# define DTLS1_AL_HEADER_LENGTH 2
|
||||
# endif
|
||||
|
||||
|
||||
/* Timeout multipliers (timeout slice is defined in apps/timeouts.h */
|
||||
# define DTLS1_TMO_READ_COUNT 2
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -49,7 +49,6 @@ extern "C" {
|
||||
# define OPENSSL_SYS_WIN32_UWIN
|
||||
# else
|
||||
# if defined(__CYGWIN__) || defined(OPENSSL_SYS_CYGWIN)
|
||||
# undef OPENSSL_SYS_UNIX
|
||||
# define OPENSSL_SYS_WIN32_CYGWIN
|
||||
# else
|
||||
# if defined(_WIN32) || defined(OPENSSL_SYS_WIN32)
|
||||
@@ -147,36 +146,30 @@ extern "C" {
|
||||
# endif
|
||||
|
||||
/*-
|
||||
* Definitions of OPENSSL_GLOBAL and OPENSSL_EXTERN, to define and declare
|
||||
* certain global symbols that, with some compilers under VMS, have to be
|
||||
* defined and declared explicitly with globaldef and globalref.
|
||||
* Definitions of OPENSSL_EXPORT and OPENSSL_IMPORT, to define and declare
|
||||
* DLL exports and imports for compilers under Win32. These are a little
|
||||
* more complicated to use. Basically, for any library that exports some
|
||||
* global variables, the following code must be present in the header file
|
||||
* that declares them, before OPENSSL_EXTERN is used:
|
||||
* OPENSSL_EXTERN is normally used to declare a symbol with possible extra
|
||||
* attributes to handle its presence in a shared library.
|
||||
* OPENSSL_EXPORT is used to define a symbol with extra possible attributes
|
||||
* to make it visible in a shared library.
|
||||
* Care needs to be taken when a header file is used both to declare and
|
||||
* define symbols. Basically, for any library that exports some global
|
||||
* variables, the following code must be present in the header file that
|
||||
* declares them, before OPENSSL_EXTERN is used:
|
||||
*
|
||||
* #ifdef SOME_BUILD_FLAG_MACRO
|
||||
* # undef OPENSSL_EXTERN
|
||||
* # define OPENSSL_EXTERN OPENSSL_EXPORT
|
||||
* #endif
|
||||
*
|
||||
* The default is to have OPENSSL_EXPORT, OPENSSL_EXTERN and OPENSSL_GLOBAL
|
||||
* The default is to have OPENSSL_EXPORT and OPENSSL_EXTERN
|
||||
* have some generally sensible values.
|
||||
*/
|
||||
|
||||
# if defined(OPENSSL_SYS_VMS_NODECC)
|
||||
# define OPENSSL_EXPORT globalref
|
||||
# define OPENSSL_EXTERN globalref
|
||||
# define OPENSSL_GLOBAL globaldef
|
||||
# elif defined(OPENSSL_SYS_WINDOWS) && defined(OPENSSL_OPT_WINDLL)
|
||||
# if defined(OPENSSL_SYS_WINDOWS) && defined(OPENSSL_OPT_WINDLL)
|
||||
# define OPENSSL_EXPORT extern __declspec(dllexport)
|
||||
# define OPENSSL_EXTERN extern __declspec(dllimport)
|
||||
# define OPENSSL_GLOBAL
|
||||
# else
|
||||
# define OPENSSL_EXPORT extern
|
||||
# define OPENSSL_EXTERN extern
|
||||
# define OPENSSL_GLOBAL
|
||||
# endif
|
||||
|
||||
/*-
|
||||
@@ -197,7 +190,7 @@ extern "C" {
|
||||
# define OPENSSL_DECLARE_GLOBAL(type,name) type *_shadow_##name(void)
|
||||
# define OPENSSL_GLOBAL_REF(name) (*(_shadow_##name()))
|
||||
# else
|
||||
# define OPENSSL_IMPLEMENT_GLOBAL(type,name,value) OPENSSL_GLOBAL type _shadow_##name=value;
|
||||
# define OPENSSL_IMPLEMENT_GLOBAL(type,name,value) type _shadow_##name=value;
|
||||
# define OPENSSL_DECLARE_GLOBAL(type,name) OPENSSL_EXPORT type _shadow_##name
|
||||
# define OPENSSL_GLOBAL_REF(name) _shadow_##name
|
||||
# endif
|
||||
@@ -223,6 +216,8 @@ extern "C" {
|
||||
# define OSSL_SSIZE_MAX SSIZE_MAX
|
||||
# elif defined(_POSIX_SSIZE_MAX)
|
||||
# define OSSL_SSIZE_MAX _POSIX_SSIZE_MAX
|
||||
# else
|
||||
# define OSSL_SSIZE_MAX ((ssize_t)(SIZE_MAX>>1))
|
||||
# endif
|
||||
# endif
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2002-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. 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
|
||||
@@ -7,20 +8,6 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
|
||||
*
|
||||
* Portions of the attached software ("Contribution") are developed by
|
||||
* SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project.
|
||||
*
|
||||
* The Contribution is licensed pursuant to the OpenSSL open source
|
||||
* license provided above.
|
||||
*
|
||||
* The elliptic curve binary polynomial software is originally written by
|
||||
* Sheueling Chang Shantz and Douglas Stebila of Sun Microsystems Laboratories.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef HEADER_EC_H
|
||||
# define HEADER_EC_H
|
||||
|
||||
@@ -32,6 +19,7 @@
|
||||
# if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# include <openssl/bn.h>
|
||||
# endif
|
||||
# include <openssl/ecerr.h>
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
@@ -235,50 +223,84 @@ unsigned char *EC_GROUP_get0_seed(const EC_GROUP *x);
|
||||
size_t EC_GROUP_get_seed_len(const EC_GROUP *);
|
||||
size_t EC_GROUP_set_seed(EC_GROUP *, const unsigned char *, size_t len);
|
||||
|
||||
/** Sets the parameter of a ec over GFp defined by y^2 = x^3 + a*x + b
|
||||
/** Sets the parameters of a ec curve defined by y^2 = x^3 + a*x + b (for GFp)
|
||||
* or y^2 + x*y = x^3 + a*x^2 + b (for GF2m)
|
||||
* \param group EC_GROUP object
|
||||
* \param p BIGNUM with the prime number
|
||||
* \param p BIGNUM with the prime number (GFp) or the polynomial
|
||||
* defining the underlying field (GF2m)
|
||||
* \param a BIGNUM with parameter a of the equation
|
||||
* \param b BIGNUM with parameter b of the equation
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_GROUP_set_curve_GFp(EC_GROUP *group, const BIGNUM *p, const BIGNUM *a,
|
||||
int EC_GROUP_set_curve(EC_GROUP *group, const BIGNUM *p, const BIGNUM *a,
|
||||
const BIGNUM *b, BN_CTX *ctx);
|
||||
|
||||
/** Gets the parameter of the ec over GFp defined by y^2 = x^3 + a*x + b
|
||||
/** Gets the parameters of the ec curve defined by y^2 = x^3 + a*x + b (for GFp)
|
||||
* or y^2 + x*y = x^3 + a*x^2 + b (for GF2m)
|
||||
* \param group EC_GROUP object
|
||||
* \param p BIGNUM for the prime number
|
||||
* \param p BIGNUM with the prime number (GFp) or the polynomial
|
||||
* defining the underlying field (GF2m)
|
||||
* \param a BIGNUM for parameter a of the equation
|
||||
* \param b BIGNUM for parameter b of the equation
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_GROUP_get_curve_GFp(const EC_GROUP *group, BIGNUM *p, BIGNUM *a,
|
||||
BIGNUM *b, BN_CTX *ctx);
|
||||
int EC_GROUP_get_curve(const EC_GROUP *group, BIGNUM *p, BIGNUM *a, BIGNUM *b,
|
||||
BN_CTX *ctx);
|
||||
|
||||
/** Sets the parameters of an ec curve. Synonym for EC_GROUP_set_curve
|
||||
* \param group EC_GROUP object
|
||||
* \param p BIGNUM with the prime number (GFp) or the polynomial
|
||||
* defining the underlying field (GF2m)
|
||||
* \param a BIGNUM with parameter a of the equation
|
||||
* \param b BIGNUM with parameter b of the equation
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
DEPRECATEDIN_1_2_0(int EC_GROUP_set_curve_GFp(EC_GROUP *group, const BIGNUM *p,
|
||||
const BIGNUM *a, const BIGNUM *b,
|
||||
BN_CTX *ctx))
|
||||
|
||||
/** Gets the parameters of an ec curve. Synonym for EC_GROUP_get_curve
|
||||
* \param group EC_GROUP object
|
||||
* \param p BIGNUM with the prime number (GFp) or the polynomial
|
||||
* defining the underlying field (GF2m)
|
||||
* \param a BIGNUM for parameter a of the equation
|
||||
* \param b BIGNUM for parameter b of the equation
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
DEPRECATEDIN_1_2_0(int EC_GROUP_get_curve_GFp(const EC_GROUP *group, BIGNUM *p,
|
||||
BIGNUM *a, BIGNUM *b,
|
||||
BN_CTX *ctx))
|
||||
|
||||
# ifndef OPENSSL_NO_EC2M
|
||||
/** Sets the parameter of a ec over GF2m defined by y^2 + x*y = x^3 + a*x^2 + b
|
||||
/** Sets the parameter of an ec curve. Synonym for EC_GROUP_set_curve
|
||||
* \param group EC_GROUP object
|
||||
* \param p BIGNUM with the polynomial defining the underlying field
|
||||
* \param p BIGNUM with the prime number (GFp) or the polynomial
|
||||
* defining the underlying field (GF2m)
|
||||
* \param a BIGNUM with parameter a of the equation
|
||||
* \param b BIGNUM with parameter b of the equation
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_GROUP_set_curve_GF2m(EC_GROUP *group, const BIGNUM *p, const BIGNUM *a,
|
||||
const BIGNUM *b, BN_CTX *ctx);
|
||||
DEPRECATEDIN_1_2_0(int EC_GROUP_set_curve_GF2m(EC_GROUP *group, const BIGNUM *p,
|
||||
const BIGNUM *a, const BIGNUM *b,
|
||||
BN_CTX *ctx))
|
||||
|
||||
/** Gets the parameter of the ec over GF2m defined by y^2 + x*y = x^3 + a*x^2 + b
|
||||
/** Gets the parameters of an ec curve. Synonym for EC_GROUP_get_curve
|
||||
* \param group EC_GROUP object
|
||||
* \param p BIGNUM for the polynomial defining the underlying field
|
||||
* \param p BIGNUM with the prime number (GFp) or the polynomial
|
||||
* defining the underlying field (GF2m)
|
||||
* \param a BIGNUM for parameter a of the equation
|
||||
* \param b BIGNUM for parameter b of the equation
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_GROUP_get_curve_GF2m(const EC_GROUP *group, BIGNUM *p, BIGNUM *a,
|
||||
BIGNUM *b, BN_CTX *ctx);
|
||||
DEPRECATEDIN_1_2_0(int EC_GROUP_get_curve_GF2m(const EC_GROUP *group, BIGNUM *p,
|
||||
BIGNUM *a, BIGNUM *b,
|
||||
BN_CTX *ctx))
|
||||
# endif
|
||||
/** Returns the number of bits needed to represent a field element
|
||||
* \param group EC_GROUP object
|
||||
@@ -350,7 +372,7 @@ EC_GROUP *EC_GROUP_new_by_curve_name(int nid);
|
||||
*/
|
||||
EC_GROUP *EC_GROUP_new_from_ecparameters(const ECPARAMETERS *params);
|
||||
|
||||
/** Creates an ECPARAMETERS object for the the given EC_GROUP object.
|
||||
/** Creates an ECPARAMETERS object for the given EC_GROUP object.
|
||||
* \param group pointer to the EC_GROUP object
|
||||
* \param params pointer to an existing ECPARAMETERS object or NULL
|
||||
* \return pointer to the new ECPARAMETERS object or NULL
|
||||
@@ -366,7 +388,7 @@ ECPARAMETERS *EC_GROUP_get_ecparameters(const EC_GROUP *group,
|
||||
*/
|
||||
EC_GROUP *EC_GROUP_new_from_ecpkparameters(const ECPKPARAMETERS *params);
|
||||
|
||||
/** Creates an ECPKPARAMETERS object for the the given EC_GROUP object.
|
||||
/** Creates an ECPKPARAMETERS object for the given EC_GROUP object.
|
||||
* \param group pointer to the EC_GROUP object
|
||||
* \param params pointer to an existing ECPKPARAMETERS object or NULL
|
||||
* \return pointer to the new ECPKPARAMETERS object or NULL
|
||||
@@ -471,7 +493,7 @@ int EC_POINT_get_Jprojective_coordinates_GFp(const EC_GROUP *group,
|
||||
BIGNUM *y, BIGNUM *z,
|
||||
BN_CTX *ctx);
|
||||
|
||||
/** Sets the affine coordinates of a EC_POINT over GFp
|
||||
/** Sets the affine coordinates of an EC_POINT
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM with the x-coordinate
|
||||
@@ -479,11 +501,11 @@ int EC_POINT_get_Jprojective_coordinates_GFp(const EC_GROUP *group,
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *group, EC_POINT *p,
|
||||
int EC_POINT_set_affine_coordinates(const EC_GROUP *group, EC_POINT *p,
|
||||
const BIGNUM *x, const BIGNUM *y,
|
||||
BN_CTX *ctx);
|
||||
|
||||
/** Gets the affine coordinates of a EC_POINT over GFp
|
||||
/** Gets the affine coordinates of an EC_POINT.
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM for the x-coordinate
|
||||
@@ -491,11 +513,40 @@ int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *group, EC_POINT *p,
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_POINT_get_affine_coordinates_GFp(const EC_GROUP *group,
|
||||
const EC_POINT *p, BIGNUM *x,
|
||||
BIGNUM *y, BN_CTX *ctx);
|
||||
int EC_POINT_get_affine_coordinates(const EC_GROUP *group, const EC_POINT *p,
|
||||
BIGNUM *x, BIGNUM *y, BN_CTX *ctx);
|
||||
|
||||
/** Sets the x9.62 compressed coordinates of a EC_POINT over GFp
|
||||
/** Sets the affine coordinates of an EC_POINT. A synonym of
|
||||
* EC_POINT_set_affine_coordinates
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM with the x-coordinate
|
||||
* \param y BIGNUM with the y-coordinate
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
DEPRECATEDIN_1_2_0(int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *group,
|
||||
EC_POINT *p,
|
||||
const BIGNUM *x,
|
||||
const BIGNUM *y,
|
||||
BN_CTX *ctx))
|
||||
|
||||
/** Gets the affine coordinates of an EC_POINT. A synonym of
|
||||
* EC_POINT_get_affine_coordinates
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM for the x-coordinate
|
||||
* \param y BIGNUM for the y-coordinate
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
DEPRECATEDIN_1_2_0(int EC_POINT_get_affine_coordinates_GFp(const EC_GROUP *group,
|
||||
const EC_POINT *p,
|
||||
BIGNUM *x,
|
||||
BIGNUM *y,
|
||||
BN_CTX *ctx))
|
||||
|
||||
/** Sets the x9.62 compressed coordinates of a EC_POINT
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM with x-coordinate
|
||||
@@ -503,11 +554,27 @@ int EC_POINT_get_affine_coordinates_GFp(const EC_GROUP *group,
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_POINT_set_compressed_coordinates_GFp(const EC_GROUP *group,
|
||||
EC_POINT *p, const BIGNUM *x,
|
||||
int y_bit, BN_CTX *ctx);
|
||||
int EC_POINT_set_compressed_coordinates(const EC_GROUP *group, EC_POINT *p,
|
||||
const BIGNUM *x, int y_bit,
|
||||
BN_CTX *ctx);
|
||||
|
||||
/** Sets the x9.62 compressed coordinates of a EC_POINT. A synonym of
|
||||
* EC_POINT_set_compressed_coordinates
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM with x-coordinate
|
||||
* \param y_bit integer with the y-Bit (either 0 or 1)
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
DEPRECATEDIN_1_2_0(int EC_POINT_set_compressed_coordinates_GFp(const EC_GROUP *group,
|
||||
EC_POINT *p,
|
||||
const BIGNUM *x,
|
||||
int y_bit,
|
||||
BN_CTX *ctx))
|
||||
# ifndef OPENSSL_NO_EC2M
|
||||
/** Sets the affine coordinates of a EC_POINT over GF2m
|
||||
/** Sets the affine coordinates of an EC_POINT. A synonym of
|
||||
* EC_POINT_set_affine_coordinates
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM with the x-coordinate
|
||||
@@ -515,11 +582,14 @@ int EC_POINT_set_compressed_coordinates_GFp(const EC_GROUP *group,
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_POINT_set_affine_coordinates_GF2m(const EC_GROUP *group, EC_POINT *p,
|
||||
const BIGNUM *x, const BIGNUM *y,
|
||||
BN_CTX *ctx);
|
||||
DEPRECATEDIN_1_2_0(int EC_POINT_set_affine_coordinates_GF2m(const EC_GROUP *group,
|
||||
EC_POINT *p,
|
||||
const BIGNUM *x,
|
||||
const BIGNUM *y,
|
||||
BN_CTX *ctx))
|
||||
|
||||
/** Gets the affine coordinates of a EC_POINT over GF2m
|
||||
/** Gets the affine coordinates of an EC_POINT. A synonym of
|
||||
* EC_POINT_get_affine_coordinates
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM for the x-coordinate
|
||||
@@ -527,11 +597,14 @@ int EC_POINT_set_affine_coordinates_GF2m(const EC_GROUP *group, EC_POINT *p,
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_POINT_get_affine_coordinates_GF2m(const EC_GROUP *group,
|
||||
const EC_POINT *p, BIGNUM *x,
|
||||
BIGNUM *y, BN_CTX *ctx);
|
||||
DEPRECATEDIN_1_2_0(int EC_POINT_get_affine_coordinates_GF2m(const EC_GROUP *group,
|
||||
const EC_POINT *p,
|
||||
BIGNUM *x,
|
||||
BIGNUM *y,
|
||||
BN_CTX *ctx))
|
||||
|
||||
/** Sets the x9.62 compressed coordinates of a EC_POINT over GF2m
|
||||
/** Sets the x9.62 compressed coordinates of a EC_POINT. A synonym of
|
||||
* EC_POINT_set_compressed_coordinates
|
||||
* \param group underlying EC_GROUP object
|
||||
* \param p EC_POINT object
|
||||
* \param x BIGNUM with x-coordinate
|
||||
@@ -539,9 +612,11 @@ int EC_POINT_get_affine_coordinates_GF2m(const EC_GROUP *group,
|
||||
* \param ctx BN_CTX object (optional)
|
||||
* \return 1 on success and 0 if an error occurred
|
||||
*/
|
||||
int EC_POINT_set_compressed_coordinates_GF2m(const EC_GROUP *group,
|
||||
EC_POINT *p, const BIGNUM *x,
|
||||
int y_bit, BN_CTX *ctx);
|
||||
DEPRECATEDIN_1_2_0(int EC_POINT_set_compressed_coordinates_GF2m(const EC_GROUP *group,
|
||||
EC_POINT *p,
|
||||
const BIGNUM *x,
|
||||
int y_bit,
|
||||
BN_CTX *ctx))
|
||||
# endif
|
||||
/** Encodes a EC_POINT object to a octet string
|
||||
* \param group underlying EC_GROUP object
|
||||
@@ -785,6 +860,12 @@ EC_KEY *EC_KEY_dup(const EC_KEY *src);
|
||||
*/
|
||||
int EC_KEY_up_ref(EC_KEY *key);
|
||||
|
||||
/** Returns the ENGINE object of a EC_KEY object
|
||||
* \param eckey EC_KEY object
|
||||
* \return the ENGINE object (possibly NULL).
|
||||
*/
|
||||
ENGINE *EC_KEY_get0_engine(const EC_KEY *eckey);
|
||||
|
||||
/** Returns the EC_GROUP object of a EC_KEY object
|
||||
* \param key EC_KEY object
|
||||
* \return the EC_GROUP object (possibly NULL).
|
||||
@@ -1066,14 +1147,24 @@ int i2d_ECDSA_SIG(const ECDSA_SIG *sig, unsigned char **pp);
|
||||
ECDSA_SIG *d2i_ECDSA_SIG(ECDSA_SIG **sig, const unsigned char **pp, long len);
|
||||
|
||||
/** Accessor for r and s fields of ECDSA_SIG
|
||||
* \param sig pointer to ECDSA_SIG pointer
|
||||
* \param sig pointer to ECDSA_SIG structure
|
||||
* \param pr pointer to BIGNUM pointer for r (may be NULL)
|
||||
* \param ps pointer to BIGNUM pointer for s (may be NULL)
|
||||
*/
|
||||
void ECDSA_SIG_get0(const ECDSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps);
|
||||
|
||||
/** Accessor for r field of ECDSA_SIG
|
||||
* \param sig pointer to ECDSA_SIG structure
|
||||
*/
|
||||
const BIGNUM *ECDSA_SIG_get0_r(const ECDSA_SIG *sig);
|
||||
|
||||
/** Accessor for s field of ECDSA_SIG
|
||||
* \param sig pointer to ECDSA_SIG structure
|
||||
*/
|
||||
const BIGNUM *ECDSA_SIG_get0_s(const ECDSA_SIG *sig);
|
||||
|
||||
/** Setter for r and s fields of ECDSA_SIG
|
||||
* \param sig pointer to ECDSA_SIG pointer
|
||||
* \param sig pointer to ECDSA_SIG structure
|
||||
* \param r pointer to BIGNUM for r (may be NULL)
|
||||
* \param s pointer to BIGNUM for s (may be NULL)
|
||||
*/
|
||||
@@ -1223,7 +1314,7 @@ void EC_KEY_METHOD_set_verify(EC_KEY_METHOD *meth,
|
||||
const ECDSA_SIG *sig,
|
||||
EC_KEY *eckey));
|
||||
|
||||
void EC_KEY_METHOD_get_init(EC_KEY_METHOD *meth,
|
||||
void EC_KEY_METHOD_get_init(const EC_KEY_METHOD *meth,
|
||||
int (**pinit)(EC_KEY *key),
|
||||
void (**pfinish)(EC_KEY *key),
|
||||
int (**pcopy)(EC_KEY *dest, const EC_KEY *src),
|
||||
@@ -1234,16 +1325,16 @@ void EC_KEY_METHOD_get_init(EC_KEY_METHOD *meth,
|
||||
int (**pset_public)(EC_KEY *key,
|
||||
const EC_POINT *pub_key));
|
||||
|
||||
void EC_KEY_METHOD_get_keygen(EC_KEY_METHOD *meth,
|
||||
void EC_KEY_METHOD_get_keygen(const EC_KEY_METHOD *meth,
|
||||
int (**pkeygen)(EC_KEY *key));
|
||||
|
||||
void EC_KEY_METHOD_get_compute_key(EC_KEY_METHOD *meth,
|
||||
void EC_KEY_METHOD_get_compute_key(const EC_KEY_METHOD *meth,
|
||||
int (**pck)(unsigned char **psec,
|
||||
size_t *pseclen,
|
||||
const EC_POINT *pub_key,
|
||||
const EC_KEY *ecdh));
|
||||
|
||||
void EC_KEY_METHOD_get_sign(EC_KEY_METHOD *meth,
|
||||
void EC_KEY_METHOD_get_sign(const EC_KEY_METHOD *meth,
|
||||
int (**psign)(int type, const unsigned char *dgst,
|
||||
int dlen, unsigned char *sig,
|
||||
unsigned int *siglen,
|
||||
@@ -1257,7 +1348,7 @@ void EC_KEY_METHOD_get_sign(EC_KEY_METHOD *meth,
|
||||
const BIGNUM *in_r,
|
||||
EC_KEY *eckey));
|
||||
|
||||
void EC_KEY_METHOD_get_verify(EC_KEY_METHOD *meth,
|
||||
void EC_KEY_METHOD_get_verify(const EC_KEY_METHOD *meth,
|
||||
int (**pverify)(int type, const unsigned
|
||||
char *dgst, int dgst_len,
|
||||
const unsigned char *sigbuf,
|
||||
@@ -1310,12 +1401,12 @@ void EC_KEY_METHOD_get_verify(EC_KEY_METHOD *meth,
|
||||
# define EVP_PKEY_CTX_set_ecdh_kdf_md(ctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_EC_KDF_MD, 0, (void *)md)
|
||||
EVP_PKEY_CTRL_EC_KDF_MD, 0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTX_get_ecdh_kdf_md(ctx, pmd) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_GET_EC_KDF_MD, 0, (void *)pmd)
|
||||
EVP_PKEY_CTRL_GET_EC_KDF_MD, 0, (void *)(pmd))
|
||||
|
||||
# define EVP_PKEY_CTX_set_ecdh_kdf_outlen(ctx, len) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \
|
||||
@@ -1325,17 +1416,31 @@ void EC_KEY_METHOD_get_verify(EC_KEY_METHOD *meth,
|
||||
# define EVP_PKEY_CTX_get_ecdh_kdf_outlen(ctx, plen) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_GET_EC_KDF_OUTLEN, 0, (void *)plen)
|
||||
EVP_PKEY_CTRL_GET_EC_KDF_OUTLEN, 0, \
|
||||
(void *)(plen))
|
||||
|
||||
# define EVP_PKEY_CTX_set0_ecdh_kdf_ukm(ctx, p, plen) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_EC_KDF_UKM, plen, (void *)p)
|
||||
EVP_PKEY_CTRL_EC_KDF_UKM, plen, (void *)(p))
|
||||
|
||||
# define EVP_PKEY_CTX_get0_ecdh_kdf_ukm(ctx, p) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_EC, \
|
||||
EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_GET_EC_KDF_UKM, 0, (void *)p)
|
||||
EVP_PKEY_CTRL_GET_EC_KDF_UKM, 0, (void *)(p))
|
||||
|
||||
/* SM2 will skip the operation check so no need to pass operation here */
|
||||
# define EVP_PKEY_CTX_set1_id(ctx, id, id_len) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, -1, -1, \
|
||||
EVP_PKEY_CTRL_SET1_ID, (int)id_len, (void*)(id))
|
||||
|
||||
# define EVP_PKEY_CTX_get1_id(ctx, id) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, -1, -1, \
|
||||
EVP_PKEY_CTRL_GET1_ID, 0, (void*)(id))
|
||||
|
||||
# define EVP_PKEY_CTX_get1_id_len(ctx, id_len) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, -1, -1, \
|
||||
EVP_PKEY_CTRL_GET1_ID_LEN, 0, (void*)(id_len))
|
||||
|
||||
# define EVP_PKEY_CTRL_EC_PARAMGEN_CURVE_NID (EVP_PKEY_ALG_CTRL + 1)
|
||||
# define EVP_PKEY_CTRL_EC_PARAM_ENC (EVP_PKEY_ALG_CTRL + 2)
|
||||
@@ -1347,227 +1452,13 @@ void EC_KEY_METHOD_get_verify(EC_KEY_METHOD *meth,
|
||||
# define EVP_PKEY_CTRL_GET_EC_KDF_OUTLEN (EVP_PKEY_ALG_CTRL + 8)
|
||||
# define EVP_PKEY_CTRL_EC_KDF_UKM (EVP_PKEY_ALG_CTRL + 9)
|
||||
# define EVP_PKEY_CTRL_GET_EC_KDF_UKM (EVP_PKEY_ALG_CTRL + 10)
|
||||
# define EVP_PKEY_CTRL_SET1_ID (EVP_PKEY_ALG_CTRL + 11)
|
||||
# define EVP_PKEY_CTRL_GET1_ID (EVP_PKEY_ALG_CTRL + 12)
|
||||
# define EVP_PKEY_CTRL_GET1_ID_LEN (EVP_PKEY_ALG_CTRL + 13)
|
||||
/* KDF types */
|
||||
# define EVP_PKEY_ECDH_KDF_NONE 1
|
||||
# define EVP_PKEY_ECDH_KDF_X9_62 2
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_EC_strings(void);
|
||||
|
||||
/* Error codes for the EC functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define EC_F_BN_TO_FELEM 224
|
||||
# define EC_F_D2I_ECPARAMETERS 144
|
||||
# define EC_F_D2I_ECPKPARAMETERS 145
|
||||
# define EC_F_D2I_ECPRIVATEKEY 146
|
||||
# define EC_F_DO_EC_KEY_PRINT 221
|
||||
# define EC_F_ECDH_CMS_DECRYPT 238
|
||||
# define EC_F_ECDH_CMS_SET_SHARED_INFO 239
|
||||
# define EC_F_ECDH_COMPUTE_KEY 246
|
||||
# define EC_F_ECDH_SIMPLE_COMPUTE_KEY 257
|
||||
# define EC_F_ECDSA_DO_SIGN_EX 251
|
||||
# define EC_F_ECDSA_DO_VERIFY 252
|
||||
# define EC_F_ECDSA_SIGN_EX 254
|
||||
# define EC_F_ECDSA_SIGN_SETUP 248
|
||||
# define EC_F_ECDSA_SIG_NEW 265
|
||||
# define EC_F_ECDSA_VERIFY 253
|
||||
# define EC_F_ECKEY_PARAM2TYPE 223
|
||||
# define EC_F_ECKEY_PARAM_DECODE 212
|
||||
# define EC_F_ECKEY_PRIV_DECODE 213
|
||||
# define EC_F_ECKEY_PRIV_ENCODE 214
|
||||
# define EC_F_ECKEY_PUB_DECODE 215
|
||||
# define EC_F_ECKEY_PUB_ENCODE 216
|
||||
# define EC_F_ECKEY_TYPE2PARAM 220
|
||||
# define EC_F_ECPARAMETERS_PRINT 147
|
||||
# define EC_F_ECPARAMETERS_PRINT_FP 148
|
||||
# define EC_F_ECPKPARAMETERS_PRINT 149
|
||||
# define EC_F_ECPKPARAMETERS_PRINT_FP 150
|
||||
# define EC_F_ECP_NISTZ256_GET_AFFINE 240
|
||||
# define EC_F_ECP_NISTZ256_MULT_PRECOMPUTE 243
|
||||
# define EC_F_ECP_NISTZ256_POINTS_MUL 241
|
||||
# define EC_F_ECP_NISTZ256_PRE_COMP_NEW 244
|
||||
# define EC_F_ECP_NISTZ256_WINDOWED_MUL 242
|
||||
# define EC_F_ECX_KEY_OP 266
|
||||
# define EC_F_ECX_PRIV_ENCODE 267
|
||||
# define EC_F_ECX_PUB_ENCODE 268
|
||||
# define EC_F_EC_ASN1_GROUP2CURVE 153
|
||||
# define EC_F_EC_ASN1_GROUP2FIELDID 154
|
||||
# define EC_F_EC_GF2M_MONTGOMERY_POINT_MULTIPLY 208
|
||||
# define EC_F_EC_GF2M_SIMPLE_GROUP_CHECK_DISCRIMINANT 159
|
||||
# define EC_F_EC_GF2M_SIMPLE_GROUP_SET_CURVE 195
|
||||
# define EC_F_EC_GF2M_SIMPLE_OCT2POINT 160
|
||||
# define EC_F_EC_GF2M_SIMPLE_POINT2OCT 161
|
||||
# define EC_F_EC_GF2M_SIMPLE_POINT_GET_AFFINE_COORDINATES 162
|
||||
# define EC_F_EC_GF2M_SIMPLE_POINT_SET_AFFINE_COORDINATES 163
|
||||
# define EC_F_EC_GF2M_SIMPLE_SET_COMPRESSED_COORDINATES 164
|
||||
# define EC_F_EC_GFP_MONT_FIELD_DECODE 133
|
||||
# define EC_F_EC_GFP_MONT_FIELD_ENCODE 134
|
||||
# define EC_F_EC_GFP_MONT_FIELD_MUL 131
|
||||
# define EC_F_EC_GFP_MONT_FIELD_SET_TO_ONE 209
|
||||
# define EC_F_EC_GFP_MONT_FIELD_SQR 132
|
||||
# define EC_F_EC_GFP_MONT_GROUP_SET_CURVE 189
|
||||
# define EC_F_EC_GFP_NISTP224_GROUP_SET_CURVE 225
|
||||
# define EC_F_EC_GFP_NISTP224_POINTS_MUL 228
|
||||
# define EC_F_EC_GFP_NISTP224_POINT_GET_AFFINE_COORDINATES 226
|
||||
# define EC_F_EC_GFP_NISTP256_GROUP_SET_CURVE 230
|
||||
# define EC_F_EC_GFP_NISTP256_POINTS_MUL 231
|
||||
# define EC_F_EC_GFP_NISTP256_POINT_GET_AFFINE_COORDINATES 232
|
||||
# define EC_F_EC_GFP_NISTP521_GROUP_SET_CURVE 233
|
||||
# define EC_F_EC_GFP_NISTP521_POINTS_MUL 234
|
||||
# define EC_F_EC_GFP_NISTP521_POINT_GET_AFFINE_COORDINATES 235
|
||||
# define EC_F_EC_GFP_NIST_FIELD_MUL 200
|
||||
# define EC_F_EC_GFP_NIST_FIELD_SQR 201
|
||||
# define EC_F_EC_GFP_NIST_GROUP_SET_CURVE 202
|
||||
# define EC_F_EC_GFP_SIMPLE_GROUP_CHECK_DISCRIMINANT 165
|
||||
# define EC_F_EC_GFP_SIMPLE_GROUP_SET_CURVE 166
|
||||
# define EC_F_EC_GFP_SIMPLE_MAKE_AFFINE 102
|
||||
# define EC_F_EC_GFP_SIMPLE_OCT2POINT 103
|
||||
# define EC_F_EC_GFP_SIMPLE_POINT2OCT 104
|
||||
# define EC_F_EC_GFP_SIMPLE_POINTS_MAKE_AFFINE 137
|
||||
# define EC_F_EC_GFP_SIMPLE_POINT_GET_AFFINE_COORDINATES 167
|
||||
# define EC_F_EC_GFP_SIMPLE_POINT_SET_AFFINE_COORDINATES 168
|
||||
# define EC_F_EC_GFP_SIMPLE_SET_COMPRESSED_COORDINATES 169
|
||||
# define EC_F_EC_GROUP_CHECK 170
|
||||
# define EC_F_EC_GROUP_CHECK_DISCRIMINANT 171
|
||||
# define EC_F_EC_GROUP_COPY 106
|
||||
# define EC_F_EC_GROUP_GET_CURVE_GF2M 172
|
||||
# define EC_F_EC_GROUP_GET_CURVE_GFP 130
|
||||
# define EC_F_EC_GROUP_GET_DEGREE 173
|
||||
# define EC_F_EC_GROUP_GET_ECPARAMETERS 261
|
||||
# define EC_F_EC_GROUP_GET_ECPKPARAMETERS 262
|
||||
# define EC_F_EC_GROUP_GET_PENTANOMIAL_BASIS 193
|
||||
# define EC_F_EC_GROUP_GET_TRINOMIAL_BASIS 194
|
||||
# define EC_F_EC_GROUP_NEW 108
|
||||
# define EC_F_EC_GROUP_NEW_BY_CURVE_NAME 174
|
||||
# define EC_F_EC_GROUP_NEW_FROM_DATA 175
|
||||
# define EC_F_EC_GROUP_NEW_FROM_ECPARAMETERS 263
|
||||
# define EC_F_EC_GROUP_NEW_FROM_ECPKPARAMETERS 264
|
||||
# define EC_F_EC_GROUP_SET_CURVE_GF2M 176
|
||||
# define EC_F_EC_GROUP_SET_CURVE_GFP 109
|
||||
# define EC_F_EC_GROUP_SET_GENERATOR 111
|
||||
# define EC_F_EC_KEY_CHECK_KEY 177
|
||||
# define EC_F_EC_KEY_COPY 178
|
||||
# define EC_F_EC_KEY_GENERATE_KEY 179
|
||||
# define EC_F_EC_KEY_NEW 182
|
||||
# define EC_F_EC_KEY_NEW_METHOD 245
|
||||
# define EC_F_EC_KEY_OCT2PRIV 255
|
||||
# define EC_F_EC_KEY_PRINT 180
|
||||
# define EC_F_EC_KEY_PRINT_FP 181
|
||||
# define EC_F_EC_KEY_PRIV2OCT 256
|
||||
# define EC_F_EC_KEY_SET_PUBLIC_KEY_AFFINE_COORDINATES 229
|
||||
# define EC_F_EC_KEY_SIMPLE_CHECK_KEY 258
|
||||
# define EC_F_EC_KEY_SIMPLE_OCT2PRIV 259
|
||||
# define EC_F_EC_KEY_SIMPLE_PRIV2OCT 260
|
||||
# define EC_F_EC_POINTS_MAKE_AFFINE 136
|
||||
# define EC_F_EC_POINT_ADD 112
|
||||
# define EC_F_EC_POINT_CMP 113
|
||||
# define EC_F_EC_POINT_COPY 114
|
||||
# define EC_F_EC_POINT_DBL 115
|
||||
# define EC_F_EC_POINT_GET_AFFINE_COORDINATES_GF2M 183
|
||||
# define EC_F_EC_POINT_GET_AFFINE_COORDINATES_GFP 116
|
||||
# define EC_F_EC_POINT_GET_JPROJECTIVE_COORDINATES_GFP 117
|
||||
# define EC_F_EC_POINT_INVERT 210
|
||||
# define EC_F_EC_POINT_IS_AT_INFINITY 118
|
||||
# define EC_F_EC_POINT_IS_ON_CURVE 119
|
||||
# define EC_F_EC_POINT_MAKE_AFFINE 120
|
||||
# define EC_F_EC_POINT_NEW 121
|
||||
# define EC_F_EC_POINT_OCT2POINT 122
|
||||
# define EC_F_EC_POINT_POINT2OCT 123
|
||||
# define EC_F_EC_POINT_SET_AFFINE_COORDINATES_GF2M 185
|
||||
# define EC_F_EC_POINT_SET_AFFINE_COORDINATES_GFP 124
|
||||
# define EC_F_EC_POINT_SET_COMPRESSED_COORDINATES_GF2M 186
|
||||
# define EC_F_EC_POINT_SET_COMPRESSED_COORDINATES_GFP 125
|
||||
# define EC_F_EC_POINT_SET_JPROJECTIVE_COORDINATES_GFP 126
|
||||
# define EC_F_EC_POINT_SET_TO_INFINITY 127
|
||||
# define EC_F_EC_PRE_COMP_NEW 196
|
||||
# define EC_F_EC_WNAF_MUL 187
|
||||
# define EC_F_EC_WNAF_PRECOMPUTE_MULT 188
|
||||
# define EC_F_I2D_ECPARAMETERS 190
|
||||
# define EC_F_I2D_ECPKPARAMETERS 191
|
||||
# define EC_F_I2D_ECPRIVATEKEY 192
|
||||
# define EC_F_I2O_ECPUBLICKEY 151
|
||||
# define EC_F_NISTP224_PRE_COMP_NEW 227
|
||||
# define EC_F_NISTP256_PRE_COMP_NEW 236
|
||||
# define EC_F_NISTP521_PRE_COMP_NEW 237
|
||||
# define EC_F_O2I_ECPUBLICKEY 152
|
||||
# define EC_F_OLD_EC_PRIV_DECODE 222
|
||||
# define EC_F_OSSL_ECDH_COMPUTE_KEY 247
|
||||
# define EC_F_OSSL_ECDSA_SIGN_SIG 249
|
||||
# define EC_F_OSSL_ECDSA_VERIFY_SIG 250
|
||||
# define EC_F_PKEY_ECX_DERIVE 269
|
||||
# define EC_F_PKEY_EC_CTRL 197
|
||||
# define EC_F_PKEY_EC_CTRL_STR 198
|
||||
# define EC_F_PKEY_EC_DERIVE 217
|
||||
# define EC_F_PKEY_EC_KEYGEN 199
|
||||
# define EC_F_PKEY_EC_PARAMGEN 219
|
||||
# define EC_F_PKEY_EC_SIGN 218
|
||||
|
||||
/* Reason codes. */
|
||||
# define EC_R_ASN1_ERROR 115
|
||||
# define EC_R_BAD_SIGNATURE 156
|
||||
# define EC_R_BIGNUM_OUT_OF_RANGE 144
|
||||
# define EC_R_BUFFER_TOO_SMALL 100
|
||||
# define EC_R_COORDINATES_OUT_OF_RANGE 146
|
||||
# define EC_R_CURVE_DOES_NOT_SUPPORT_ECDH 160
|
||||
# define EC_R_CURVE_DOES_NOT_SUPPORT_SIGNING 159
|
||||
# define EC_R_D2I_ECPKPARAMETERS_FAILURE 117
|
||||
# define EC_R_DECODE_ERROR 142
|
||||
# define EC_R_DISCRIMINANT_IS_ZERO 118
|
||||
# define EC_R_EC_GROUP_NEW_BY_NAME_FAILURE 119
|
||||
# define EC_R_FIELD_TOO_LARGE 143
|
||||
# define EC_R_GF2M_NOT_SUPPORTED 147
|
||||
# define EC_R_GROUP2PKPARAMETERS_FAILURE 120
|
||||
# define EC_R_I2D_ECPKPARAMETERS_FAILURE 121
|
||||
# define EC_R_INCOMPATIBLE_OBJECTS 101
|
||||
# define EC_R_INVALID_ARGUMENT 112
|
||||
# define EC_R_INVALID_COMPRESSED_POINT 110
|
||||
# define EC_R_INVALID_COMPRESSION_BIT 109
|
||||
# define EC_R_INVALID_CURVE 141
|
||||
# define EC_R_INVALID_DIGEST 151
|
||||
# define EC_R_INVALID_DIGEST_TYPE 138
|
||||
# define EC_R_INVALID_ENCODING 102
|
||||
# define EC_R_INVALID_FIELD 103
|
||||
# define EC_R_INVALID_FORM 104
|
||||
# define EC_R_INVALID_GROUP_ORDER 122
|
||||
# define EC_R_INVALID_KEY 116
|
||||
# define EC_R_INVALID_OUTPUT_LENGTH 161
|
||||
# define EC_R_INVALID_PEER_KEY 133
|
||||
# define EC_R_INVALID_PENTANOMIAL_BASIS 132
|
||||
# define EC_R_INVALID_PRIVATE_KEY 123
|
||||
# define EC_R_INVALID_TRINOMIAL_BASIS 137
|
||||
# define EC_R_KDF_PARAMETER_ERROR 148
|
||||
# define EC_R_KEYS_NOT_SET 140
|
||||
# define EC_R_MISSING_PARAMETERS 124
|
||||
# define EC_R_MISSING_PRIVATE_KEY 125
|
||||
# define EC_R_NEED_NEW_SETUP_VALUES 157
|
||||
# define EC_R_NOT_A_NIST_PRIME 135
|
||||
# define EC_R_NOT_IMPLEMENTED 126
|
||||
# define EC_R_NOT_INITIALIZED 111
|
||||
# define EC_R_NO_PARAMETERS_SET 139
|
||||
# define EC_R_NO_PRIVATE_VALUE 154
|
||||
# define EC_R_OPERATION_NOT_SUPPORTED 152
|
||||
# define EC_R_PASSED_NULL_PARAMETER 134
|
||||
# define EC_R_PEER_KEY_ERROR 149
|
||||
# define EC_R_PKPARAMETERS2GROUP_FAILURE 127
|
||||
# define EC_R_POINT_ARITHMETIC_FAILURE 155
|
||||
# define EC_R_POINT_AT_INFINITY 106
|
||||
# define EC_R_POINT_IS_NOT_ON_CURVE 107
|
||||
# define EC_R_RANDOM_NUMBER_GENERATION_FAILED 158
|
||||
# define EC_R_SHARED_INFO_ERROR 150
|
||||
# define EC_R_SLOT_FULL 108
|
||||
# define EC_R_UNDEFINED_GENERATOR 113
|
||||
# define EC_R_UNDEFINED_ORDER 128
|
||||
# define EC_R_UNKNOWN_GROUP 129
|
||||
# define EC_R_UNKNOWN_ORDER 114
|
||||
# define EC_R_UNSUPPORTED_FIELD 131
|
||||
# define EC_R_WRONG_CURVE_PARAMETERS 145
|
||||
# define EC_R_WRONG_ORDER 130
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. 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
|
||||
@@ -7,12 +8,6 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
|
||||
* ECDH support in OpenSSL originally developed by
|
||||
* SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project.
|
||||
*/
|
||||
|
||||
#ifndef HEADER_ENGINE_H
|
||||
# define HEADER_ENGINE_H
|
||||
|
||||
@@ -32,6 +27,7 @@
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/symhacks.h>
|
||||
# include <openssl/x509.h>
|
||||
# include <openssl/engineerr.h>
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
@@ -405,7 +401,7 @@ int ENGINE_register_complete(ENGINE *e);
|
||||
int ENGINE_register_all_complete(void);
|
||||
|
||||
/*
|
||||
* Send parametrised control commands to the engine. The possibilities to
|
||||
* Send parameterised control commands to the engine. The possibilities to
|
||||
* send down an integer, a pointer to data or a function pointer are
|
||||
* provided. Any of the parameters may or may not be NULL, depending on the
|
||||
* command number. In actuality, this function only requires a structural
|
||||
@@ -743,95 +739,10 @@ typedef int (*dynamic_bind_engine) (ENGINE *e, const char *id,
|
||||
*/
|
||||
void *ENGINE_get_static_state(void);
|
||||
|
||||
# if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(HAVE_CRYPTODEV)
|
||||
# if defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__DragonFly__)
|
||||
DEPRECATEDIN_1_1_0(void ENGINE_setup_bsd_cryptodev(void))
|
||||
# endif
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_ENGINE_strings(void);
|
||||
|
||||
/* Error codes for the ENGINE functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define ENGINE_F_DYNAMIC_CTRL 180
|
||||
# define ENGINE_F_DYNAMIC_GET_DATA_CTX 181
|
||||
# define ENGINE_F_DYNAMIC_LOAD 182
|
||||
# define ENGINE_F_DYNAMIC_SET_DATA_CTX 183
|
||||
# define ENGINE_F_ENGINE_ADD 105
|
||||
# define ENGINE_F_ENGINE_BY_ID 106
|
||||
# define ENGINE_F_ENGINE_CMD_IS_EXECUTABLE 170
|
||||
# define ENGINE_F_ENGINE_CTRL 142
|
||||
# define ENGINE_F_ENGINE_CTRL_CMD 178
|
||||
# define ENGINE_F_ENGINE_CTRL_CMD_STRING 171
|
||||
# define ENGINE_F_ENGINE_FINISH 107
|
||||
# define ENGINE_F_ENGINE_GET_CIPHER 185
|
||||
# define ENGINE_F_ENGINE_GET_DIGEST 186
|
||||
# define ENGINE_F_ENGINE_GET_FIRST 195
|
||||
# define ENGINE_F_ENGINE_GET_LAST 196
|
||||
# define ENGINE_F_ENGINE_GET_NEXT 115
|
||||
# define ENGINE_F_ENGINE_GET_PKEY_ASN1_METH 193
|
||||
# define ENGINE_F_ENGINE_GET_PKEY_METH 192
|
||||
# define ENGINE_F_ENGINE_GET_PREV 116
|
||||
# define ENGINE_F_ENGINE_INIT 119
|
||||
# define ENGINE_F_ENGINE_LIST_ADD 120
|
||||
# define ENGINE_F_ENGINE_LIST_REMOVE 121
|
||||
# define ENGINE_F_ENGINE_LOAD_PRIVATE_KEY 150
|
||||
# define ENGINE_F_ENGINE_LOAD_PUBLIC_KEY 151
|
||||
# define ENGINE_F_ENGINE_LOAD_SSL_CLIENT_CERT 194
|
||||
# define ENGINE_F_ENGINE_NEW 122
|
||||
# define ENGINE_F_ENGINE_PKEY_ASN1_FIND_STR 197
|
||||
# define ENGINE_F_ENGINE_REMOVE 123
|
||||
# define ENGINE_F_ENGINE_SET_DEFAULT_STRING 189
|
||||
# define ENGINE_F_ENGINE_SET_ID 129
|
||||
# define ENGINE_F_ENGINE_SET_NAME 130
|
||||
# define ENGINE_F_ENGINE_TABLE_REGISTER 184
|
||||
# define ENGINE_F_ENGINE_UNLOCKED_FINISH 191
|
||||
# define ENGINE_F_ENGINE_UP_REF 190
|
||||
# define ENGINE_F_INT_CTRL_HELPER 172
|
||||
# define ENGINE_F_INT_ENGINE_CONFIGURE 188
|
||||
# define ENGINE_F_INT_ENGINE_MODULE_INIT 187
|
||||
|
||||
/* Reason codes. */
|
||||
# define ENGINE_R_ALREADY_LOADED 100
|
||||
# define ENGINE_R_ARGUMENT_IS_NOT_A_NUMBER 133
|
||||
# define ENGINE_R_CMD_NOT_EXECUTABLE 134
|
||||
# define ENGINE_R_COMMAND_TAKES_INPUT 135
|
||||
# define ENGINE_R_COMMAND_TAKES_NO_INPUT 136
|
||||
# define ENGINE_R_CONFLICTING_ENGINE_ID 103
|
||||
# define ENGINE_R_CTRL_COMMAND_NOT_IMPLEMENTED 119
|
||||
# define ENGINE_R_DSO_FAILURE 104
|
||||
# define ENGINE_R_DSO_NOT_FOUND 132
|
||||
# define ENGINE_R_ENGINES_SECTION_ERROR 148
|
||||
# define ENGINE_R_ENGINE_CONFIGURATION_ERROR 102
|
||||
# define ENGINE_R_ENGINE_IS_NOT_IN_LIST 105
|
||||
# define ENGINE_R_ENGINE_SECTION_ERROR 149
|
||||
# define ENGINE_R_FAILED_LOADING_PRIVATE_KEY 128
|
||||
# define ENGINE_R_FAILED_LOADING_PUBLIC_KEY 129
|
||||
# define ENGINE_R_FINISH_FAILED 106
|
||||
# define ENGINE_R_ID_OR_NAME_MISSING 108
|
||||
# define ENGINE_R_INIT_FAILED 109
|
||||
# define ENGINE_R_INTERNAL_LIST_ERROR 110
|
||||
# define ENGINE_R_INVALID_ARGUMENT 143
|
||||
# define ENGINE_R_INVALID_CMD_NAME 137
|
||||
# define ENGINE_R_INVALID_CMD_NUMBER 138
|
||||
# define ENGINE_R_INVALID_INIT_VALUE 151
|
||||
# define ENGINE_R_INVALID_STRING 150
|
||||
# define ENGINE_R_NOT_INITIALISED 117
|
||||
# define ENGINE_R_NOT_LOADED 112
|
||||
# define ENGINE_R_NO_CONTROL_FUNCTION 120
|
||||
# define ENGINE_R_NO_INDEX 144
|
||||
# define ENGINE_R_NO_LOAD_FUNCTION 125
|
||||
# define ENGINE_R_NO_REFERENCE 130
|
||||
# define ENGINE_R_NO_SUCH_ENGINE 116
|
||||
# define ENGINE_R_UNIMPLEMENTED_CIPHER 146
|
||||
# define ENGINE_R_UNIMPLEMENTED_DIGEST 147
|
||||
# define ENGINE_R_UNIMPLEMENTED_PUBLIC_KEY_METHOD 101
|
||||
# define ENGINE_R_VERSION_INCOMPATIBILITY 145
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -84,7 +84,7 @@ typedef struct err_state_st {
|
||||
# define ERR_LIB_COMP 41
|
||||
# define ERR_LIB_ECDSA 42
|
||||
# define ERR_LIB_ECDH 43
|
||||
# define ERR_LIB_STORE 44
|
||||
# define ERR_LIB_OSSL_STORE 44
|
||||
# define ERR_LIB_FIPS 45
|
||||
# define ERR_LIB_CMS 46
|
||||
# define ERR_LIB_TS 47
|
||||
@@ -93,6 +93,7 @@ typedef struct err_state_st {
|
||||
# define ERR_LIB_CT 50
|
||||
# define ERR_LIB_ASYNC 51
|
||||
# define ERR_LIB_KDF 52
|
||||
# define ERR_LIB_SM2 53
|
||||
|
||||
# define ERR_LIB_USER 128
|
||||
|
||||
@@ -123,7 +124,7 @@ typedef struct err_state_st {
|
||||
# define COMPerr(f,r) ERR_PUT_error(ERR_LIB_COMP,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define ECDSAerr(f,r) ERR_PUT_error(ERR_LIB_ECDSA,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define ECDHerr(f,r) ERR_PUT_error(ERR_LIB_ECDH,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define STOREerr(f,r) ERR_PUT_error(ERR_LIB_STORE,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define OSSL_STOREerr(f,r) ERR_PUT_error(ERR_LIB_OSSL_STORE,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define FIPSerr(f,r) ERR_PUT_error(ERR_LIB_FIPS,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define CMSerr(f,r) ERR_PUT_error(ERR_LIB_CMS,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define TSerr(f,r) ERR_PUT_error(ERR_LIB_TS,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
@@ -131,6 +132,7 @@ typedef struct err_state_st {
|
||||
# define CTerr(f,r) ERR_PUT_error(ERR_LIB_CT,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define ASYNCerr(f,r) ERR_PUT_error(ERR_LIB_ASYNC,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define KDFerr(f,r) ERR_PUT_error(ERR_LIB_KDF,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
# define SM2err(f,r) ERR_PUT_error(ERR_LIB_SM2,(f),(r),OPENSSL_FILE,OPENSSL_LINE)
|
||||
|
||||
# define ERR_PACK(l,f,r) ( \
|
||||
(((unsigned int)(l) & 0x0FF) << 24L) | \
|
||||
@@ -160,6 +162,12 @@ typedef struct err_state_st {
|
||||
# define SYS_F_GETSOCKNAME 16
|
||||
# define SYS_F_GETHOSTBYNAME 17
|
||||
# define SYS_F_FFLUSH 18
|
||||
# define SYS_F_OPEN 19
|
||||
# define SYS_F_CLOSE 20
|
||||
# define SYS_F_IOCTL 21
|
||||
# define SYS_F_STAT 22
|
||||
# define SYS_F_FCNTL 23
|
||||
# define SYS_F_FSTAT 24
|
||||
|
||||
/* reasons */
|
||||
# define ERR_R_SYS_LIB ERR_LIB_SYS/* 2 */
|
||||
@@ -178,7 +186,9 @@ typedef struct err_state_st {
|
||||
# define ERR_R_PKCS7_LIB ERR_LIB_PKCS7/* 33 */
|
||||
# define ERR_R_X509V3_LIB ERR_LIB_X509V3/* 34 */
|
||||
# define ERR_R_ENGINE_LIB ERR_LIB_ENGINE/* 38 */
|
||||
# define ERR_R_UI_LIB ERR_LIB_UI/* 40 */
|
||||
# define ERR_R_ECDSA_LIB ERR_LIB_ECDSA/* 42 */
|
||||
# define ERR_R_OSSL_STORE_LIB ERR_LIB_OSSL_STORE/* 44 */
|
||||
|
||||
# define ERR_R_NESTED_ASN1_ERROR 58
|
||||
# define ERR_R_MISSING_ASN1_EOS 63
|
||||
@@ -192,6 +202,7 @@ typedef struct err_state_st {
|
||||
# define ERR_R_DISABLED (5|ERR_R_FATAL)
|
||||
# define ERR_R_INIT_FAIL (6|ERR_R_FATAL)
|
||||
# define ERR_R_PASSED_INVALID_ARGUMENT (7)
|
||||
# define ERR_R_OPERATION_FAIL (8|ERR_R_FATAL)
|
||||
|
||||
/*
|
||||
* 99 is the maximum possible ERR_R_... code, higher values are reserved for
|
||||
@@ -234,8 +245,9 @@ void ERR_print_errors_fp(FILE *fp);
|
||||
void ERR_print_errors(BIO *bp);
|
||||
void ERR_add_error_data(int num, ...);
|
||||
void ERR_add_error_vdata(int num, va_list args);
|
||||
int ERR_load_strings(int lib, ERR_STRING_DATA str[]);
|
||||
int ERR_unload_strings(int lib, ERR_STRING_DATA str[]);
|
||||
int ERR_load_strings(int lib, ERR_STRING_DATA *str);
|
||||
int ERR_load_strings_const(const ERR_STRING_DATA *str);
|
||||
int ERR_unload_strings(int lib, ERR_STRING_DATA *str);
|
||||
int ERR_load_ERR_strings(void);
|
||||
|
||||
#if OPENSSL_API_COMPAT < 0x10100000L
|
||||
@@ -252,6 +264,7 @@ int ERR_get_next_error_library(void);
|
||||
|
||||
int ERR_set_mark(void);
|
||||
int ERR_pop_to_mark(void);
|
||||
int ERR_clear_last_mark(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -14,6 +14,7 @@
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/symhacks.h>
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/evperr.h>
|
||||
|
||||
# define EVP_MAX_MD_SIZE 64/* longest known is SHA512 */
|
||||
# define EVP_MAX_KEY_LENGTH 64
|
||||
@@ -40,6 +41,7 @@
|
||||
# define EVP_PKEY_NONE NID_undef
|
||||
# define EVP_PKEY_RSA NID_rsaEncryption
|
||||
# define EVP_PKEY_RSA2 NID_rsa
|
||||
# define EVP_PKEY_RSA_PSS NID_rsassaPss
|
||||
# define EVP_PKEY_DSA NID_dsa
|
||||
# define EVP_PKEY_DSA1 NID_dsa_2
|
||||
# define EVP_PKEY_DSA2 NID_dsaWithSHA
|
||||
@@ -48,10 +50,18 @@
|
||||
# define EVP_PKEY_DH NID_dhKeyAgreement
|
||||
# define EVP_PKEY_DHX NID_dhpublicnumber
|
||||
# define EVP_PKEY_EC NID_X9_62_id_ecPublicKey
|
||||
# define EVP_PKEY_SM2 NID_sm2
|
||||
# define EVP_PKEY_HMAC NID_hmac
|
||||
# define EVP_PKEY_CMAC NID_cmac
|
||||
# define EVP_PKEY_SCRYPT NID_id_scrypt
|
||||
# define EVP_PKEY_TLS1_PRF NID_tls1_prf
|
||||
# define EVP_PKEY_HKDF NID_hkdf
|
||||
# define EVP_PKEY_POLY1305 NID_poly1305
|
||||
# define EVP_PKEY_SIPHASH NID_siphash
|
||||
# define EVP_PKEY_X25519 NID_X25519
|
||||
# define EVP_PKEY_ED25519 NID_ED25519
|
||||
# define EVP_PKEY_X448 NID_X448
|
||||
# define EVP_PKEY_ED448 NID_ED448
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -102,6 +112,9 @@ int (*EVP_MD_meth_get_ctrl(const EVP_MD *md))(EVP_MD_CTX *ctx, int cmd,
|
||||
/* digest can only handle a single block */
|
||||
# define EVP_MD_FLAG_ONESHOT 0x0001
|
||||
|
||||
/* digest is extensible-output function, XOF */
|
||||
# define EVP_MD_FLAG_XOF 0x0002
|
||||
|
||||
/* DigestAlgorithmIdentifier flags... */
|
||||
|
||||
# define EVP_MD_FLAG_DIGALGID_MASK 0x0018
|
||||
@@ -125,6 +138,7 @@ int (*EVP_MD_meth_get_ctrl(const EVP_MD *md))(EVP_MD_CTX *ctx, int cmd,
|
||||
|
||||
# define EVP_MD_CTRL_DIGALGID 0x1
|
||||
# define EVP_MD_CTRL_MICALG 0x2
|
||||
# define EVP_MD_CTRL_XOF_LEN 0x3
|
||||
|
||||
/* Minimum Algorithm specific ctrl value */
|
||||
|
||||
@@ -166,6 +180,7 @@ 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 in evp_int.h */
|
||||
|
||||
EVP_CIPHER *EVP_CIPHER_meth_new(int cipher_type, int block_size, int key_len);
|
||||
EVP_CIPHER *EVP_CIPHER_meth_dup(const EVP_CIPHER *cipher);
|
||||
@@ -364,6 +379,15 @@ typedef struct {
|
||||
# define EVP_CCM_TLS_FIXED_IV_LEN 4
|
||||
/* Length of explicit part of IV part of TLS records */
|
||||
# define EVP_CCM_TLS_EXPLICIT_IV_LEN 8
|
||||
/* Total length of CCM IV length for TLS */
|
||||
# define EVP_CCM_TLS_IV_LEN 12
|
||||
/* Length of tag for TLS */
|
||||
# define EVP_CCM_TLS_TAG_LEN 16
|
||||
/* Length of CCM8 tag for TLS */
|
||||
# define EVP_CCM8_TLS_TAG_LEN 8
|
||||
|
||||
/* Length of tag for TLS */
|
||||
# define EVP_CHACHAPOLY_TLS_TAG_LEN 16
|
||||
|
||||
typedef struct evp_cipher_info_st {
|
||||
const EVP_CIPHER *cipher;
|
||||
@@ -396,6 +420,15 @@ typedef int (EVP_PBE_KEYGEN) (EVP_CIPHER_CTX *ctx, const char *pass,
|
||||
# define EVP_PKEY_assign_EC_KEY(pkey,eckey) EVP_PKEY_assign((pkey),EVP_PKEY_EC,\
|
||||
(char *)(eckey))
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_SIPHASH
|
||||
# define EVP_PKEY_assign_SIPHASH(pkey,shkey) EVP_PKEY_assign((pkey),EVP_PKEY_SIPHASH,\
|
||||
(char *)(shkey))
|
||||
# endif
|
||||
|
||||
# ifndef OPENSSL_NO_POLY1305
|
||||
# define EVP_PKEY_assign_POLY1305(pkey,polykey) EVP_PKEY_assign((pkey),EVP_PKEY_POLY1305,\
|
||||
(char *)(polykey))
|
||||
# endif
|
||||
|
||||
/* Add some extra combinations */
|
||||
# define EVP_get_digestbynid(a) EVP_get_digestbyname(OBJ_nid2sn(a))
|
||||
@@ -421,6 +454,7 @@ void EVP_MD_CTX_set_update_fn(EVP_MD_CTX *ctx,
|
||||
# define EVP_MD_CTX_block_size(e) EVP_MD_block_size(EVP_MD_CTX_md(e))
|
||||
# define EVP_MD_CTX_type(e) EVP_MD_type(EVP_MD_CTX_md(e))
|
||||
EVP_PKEY_CTX *EVP_MD_CTX_pkey_ctx(const EVP_MD_CTX *ctx);
|
||||
void EVP_MD_CTX_set_pkey_ctx(EVP_MD_CTX *ctx, EVP_PKEY_CTX *pctx);
|
||||
void *EVP_MD_CTX_md_data(const EVP_MD_CTX *ctx);
|
||||
|
||||
int EVP_CIPHER_nid(const EVP_CIPHER *cipher);
|
||||
@@ -455,8 +489,8 @@ void *EVP_CIPHER_CTX_set_cipher_data(EVP_CIPHER_CTX *ctx, void *cipher_data);
|
||||
# endif
|
||||
# define EVP_CIPHER_CTX_mode(c) EVP_CIPHER_mode(EVP_CIPHER_CTX_cipher(c))
|
||||
|
||||
# define EVP_ENCODE_LENGTH(l) (((l+2)/3*4)+(l/48+1)*2+80)
|
||||
# define EVP_DECODE_LENGTH(l) ((l+3)/4*3+80)
|
||||
# define EVP_ENCODE_LENGTH(l) ((((l)+2)/3*4)+((l)/48+1)*2+80)
|
||||
# define EVP_DECODE_LENGTH(l) (((l)+3)/4*3+80)
|
||||
|
||||
# define EVP_SignInit_ex(a,b,c) EVP_DigestInit_ex(a,b,c)
|
||||
# define EVP_SignInit(a,b) EVP_DigestInit(a,b)
|
||||
@@ -472,13 +506,16 @@ void *EVP_CIPHER_CTX_set_cipher_data(EVP_CIPHER_CTX *ctx, void *cipher_data);
|
||||
# ifdef CONST_STRICT
|
||||
void BIO_set_md(BIO *, const EVP_MD *md);
|
||||
# else
|
||||
# define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,0,(char *)md)
|
||||
# define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,0,(char *)(md))
|
||||
# endif
|
||||
# define BIO_get_md(b,mdp) BIO_ctrl(b,BIO_C_GET_MD,0,(char *)mdp)
|
||||
# define BIO_get_md_ctx(b,mdcp) BIO_ctrl(b,BIO_C_GET_MD_CTX,0,(char *)mdcp)
|
||||
# define BIO_set_md_ctx(b,mdcp) BIO_ctrl(b,BIO_C_SET_MD_CTX,0,(char *)mdcp)
|
||||
# define BIO_get_md(b,mdp) BIO_ctrl(b,BIO_C_GET_MD,0,(char *)(mdp))
|
||||
# define BIO_get_md_ctx(b,mdcp) BIO_ctrl(b,BIO_C_GET_MD_CTX,0, \
|
||||
(char *)(mdcp))
|
||||
# define BIO_set_md_ctx(b,mdcp) BIO_ctrl(b,BIO_C_SET_MD_CTX,0, \
|
||||
(char *)(mdcp))
|
||||
# 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,(char *)c_pp)
|
||||
# define BIO_get_cipher_ctx(b,c_pp) BIO_ctrl(b,BIO_C_GET_CIPHER_CTX,0, \
|
||||
(char *)(c_pp))
|
||||
|
||||
/*__owur*/ int EVP_Cipher(EVP_CIPHER_CTX *c,
|
||||
unsigned char *out,
|
||||
@@ -518,14 +555,14 @@ __owur int EVP_MD_CTX_copy(EVP_MD_CTX *out, const EVP_MD_CTX *in);
|
||||
__owur int EVP_DigestInit(EVP_MD_CTX *ctx, const EVP_MD *type);
|
||||
__owur int EVP_DigestFinal(EVP_MD_CTX *ctx, unsigned char *md,
|
||||
unsigned int *s);
|
||||
__owur int EVP_DigestFinalXOF(EVP_MD_CTX *ctx, unsigned char *md,
|
||||
size_t len);
|
||||
|
||||
#ifndef OPENSSL_NO_UI
|
||||
int EVP_read_pw_string(char *buf, int length, const char *prompt, int verify);
|
||||
int EVP_read_pw_string_min(char *buf, int minlen, int maxlen,
|
||||
const char *prompt, int verify);
|
||||
void EVP_set_pw_prompt(const char *prompt);
|
||||
char *EVP_get_pw_prompt(void);
|
||||
#endif
|
||||
|
||||
__owur int EVP_BytesToKey(const EVP_CIPHER *type, const EVP_MD *md,
|
||||
const unsigned char *salt,
|
||||
@@ -579,9 +616,17 @@ __owur int EVP_CipherFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *outm,
|
||||
__owur int EVP_SignFinal(EVP_MD_CTX *ctx, unsigned char *md, unsigned int *s,
|
||||
EVP_PKEY *pkey);
|
||||
|
||||
__owur int EVP_DigestSign(EVP_MD_CTX *ctx, unsigned char *sigret,
|
||||
size_t *siglen, const unsigned char *tbs,
|
||||
size_t tbslen);
|
||||
|
||||
__owur int EVP_VerifyFinal(EVP_MD_CTX *ctx, const unsigned char *sigbuf,
|
||||
unsigned int siglen, EVP_PKEY *pkey);
|
||||
|
||||
__owur int EVP_DigestVerify(EVP_MD_CTX *ctx, const unsigned char *sigret,
|
||||
size_t siglen, const unsigned char *tbs,
|
||||
size_t tbslen);
|
||||
|
||||
/*__owur*/ int EVP_DigestSignInit(EVP_MD_CTX *ctx, EVP_PKEY_CTX **pctx,
|
||||
const EVP_MD *type, ENGINE *e,
|
||||
EVP_PKEY *pkey);
|
||||
@@ -662,6 +707,14 @@ const EVP_MD *EVP_sha224(void);
|
||||
const EVP_MD *EVP_sha256(void);
|
||||
const EVP_MD *EVP_sha384(void);
|
||||
const EVP_MD *EVP_sha512(void);
|
||||
const EVP_MD *EVP_sha512_224(void);
|
||||
const EVP_MD *EVP_sha512_256(void);
|
||||
const EVP_MD *EVP_sha3_224(void);
|
||||
const EVP_MD *EVP_sha3_256(void);
|
||||
const EVP_MD *EVP_sha3_384(void);
|
||||
const EVP_MD *EVP_sha3_512(void);
|
||||
const EVP_MD *EVP_shake128(void);
|
||||
const EVP_MD *EVP_shake256(void);
|
||||
# ifndef OPENSSL_NO_MDC2
|
||||
const EVP_MD *EVP_mdc2(void);
|
||||
# endif
|
||||
@@ -671,6 +724,9 @@ const EVP_MD *EVP_ripemd160(void);
|
||||
# ifndef OPENSSL_NO_WHIRLPOOL
|
||||
const EVP_MD *EVP_whirlpool(void);
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_SM3
|
||||
const EVP_MD *EVP_sm3(void);
|
||||
# endif
|
||||
const EVP_CIPHER *EVP_enc_null(void); /* does nothing :-) */
|
||||
# ifndef OPENSSL_NO_DES
|
||||
const EVP_CIPHER *EVP_des_ecb(void);
|
||||
@@ -797,6 +853,38 @@ const EVP_CIPHER *EVP_aes_128_cbc_hmac_sha1(void);
|
||||
const EVP_CIPHER *EVP_aes_256_cbc_hmac_sha1(void);
|
||||
const EVP_CIPHER *EVP_aes_128_cbc_hmac_sha256(void);
|
||||
const EVP_CIPHER *EVP_aes_256_cbc_hmac_sha256(void);
|
||||
# ifndef OPENSSL_NO_ARIA
|
||||
const EVP_CIPHER *EVP_aria_128_ecb(void);
|
||||
const EVP_CIPHER *EVP_aria_128_cbc(void);
|
||||
const EVP_CIPHER *EVP_aria_128_cfb1(void);
|
||||
const EVP_CIPHER *EVP_aria_128_cfb8(void);
|
||||
const EVP_CIPHER *EVP_aria_128_cfb128(void);
|
||||
# define EVP_aria_128_cfb EVP_aria_128_cfb128
|
||||
const EVP_CIPHER *EVP_aria_128_ctr(void);
|
||||
const EVP_CIPHER *EVP_aria_128_ofb(void);
|
||||
const EVP_CIPHER *EVP_aria_128_gcm(void);
|
||||
const EVP_CIPHER *EVP_aria_128_ccm(void);
|
||||
const EVP_CIPHER *EVP_aria_192_ecb(void);
|
||||
const EVP_CIPHER *EVP_aria_192_cbc(void);
|
||||
const EVP_CIPHER *EVP_aria_192_cfb1(void);
|
||||
const EVP_CIPHER *EVP_aria_192_cfb8(void);
|
||||
const EVP_CIPHER *EVP_aria_192_cfb128(void);
|
||||
# define EVP_aria_192_cfb EVP_aria_192_cfb128
|
||||
const EVP_CIPHER *EVP_aria_192_ctr(void);
|
||||
const EVP_CIPHER *EVP_aria_192_ofb(void);
|
||||
const EVP_CIPHER *EVP_aria_192_gcm(void);
|
||||
const EVP_CIPHER *EVP_aria_192_ccm(void);
|
||||
const EVP_CIPHER *EVP_aria_256_ecb(void);
|
||||
const EVP_CIPHER *EVP_aria_256_cbc(void);
|
||||
const EVP_CIPHER *EVP_aria_256_cfb1(void);
|
||||
const EVP_CIPHER *EVP_aria_256_cfb8(void);
|
||||
const EVP_CIPHER *EVP_aria_256_cfb128(void);
|
||||
# define EVP_aria_256_cfb EVP_aria_256_cfb128
|
||||
const EVP_CIPHER *EVP_aria_256_ctr(void);
|
||||
const EVP_CIPHER *EVP_aria_256_ofb(void);
|
||||
const EVP_CIPHER *EVP_aria_256_gcm(void);
|
||||
const EVP_CIPHER *EVP_aria_256_ccm(void);
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_CAMELLIA
|
||||
const EVP_CIPHER *EVP_camellia_128_ecb(void);
|
||||
const EVP_CIPHER *EVP_camellia_128_cbc(void);
|
||||
@@ -838,6 +926,15 @@ const EVP_CIPHER *EVP_seed_cfb128(void);
|
||||
const EVP_CIPHER *EVP_seed_ofb(void);
|
||||
# endif
|
||||
|
||||
# ifndef OPENSSL_NO_SM4
|
||||
const EVP_CIPHER *EVP_sm4_ecb(void);
|
||||
const EVP_CIPHER *EVP_sm4_cbc(void);
|
||||
const EVP_CIPHER *EVP_sm4_cfb128(void);
|
||||
# define EVP_sm4_cfb EVP_sm4_cfb128
|
||||
const EVP_CIPHER *EVP_sm4_ofb(void);
|
||||
const EVP_CIPHER *EVP_sm4_ctr(void);
|
||||
# endif
|
||||
|
||||
# if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# define OPENSSL_add_all_algorithms_conf() \
|
||||
OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS \
|
||||
@@ -900,9 +997,19 @@ int EVP_PKEY_security_bits(const EVP_PKEY *pkey);
|
||||
int EVP_PKEY_size(EVP_PKEY *pkey);
|
||||
int EVP_PKEY_set_type(EVP_PKEY *pkey, int type);
|
||||
int EVP_PKEY_set_type_str(EVP_PKEY *pkey, const char *str, int len);
|
||||
int EVP_PKEY_set_alias_type(EVP_PKEY *pkey, int type);
|
||||
# ifndef OPENSSL_NO_ENGINE
|
||||
int EVP_PKEY_set1_engine(EVP_PKEY *pkey, ENGINE *e);
|
||||
# endif
|
||||
int EVP_PKEY_assign(EVP_PKEY *pkey, int type, void *key);
|
||||
void *EVP_PKEY_get0(const EVP_PKEY *pkey);
|
||||
const unsigned char *EVP_PKEY_get0_hmac(const EVP_PKEY *pkey, size_t *len);
|
||||
# ifndef OPENSSL_NO_POLY1305
|
||||
const unsigned char *EVP_PKEY_get0_poly1305(const EVP_PKEY *pkey, size_t *len);
|
||||
# endif
|
||||
# ifndef OPENSSL_NO_SIPHASH
|
||||
const unsigned char *EVP_PKEY_get0_siphash(const EVP_PKEY *pkey, size_t *len);
|
||||
# endif
|
||||
|
||||
# ifndef OPENSSL_NO_RSA
|
||||
struct rsa_st;
|
||||
@@ -1111,6 +1218,38 @@ void EVP_PKEY_asn1_set_item(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
X509_ALGOR *alg2,
|
||||
ASN1_BIT_STRING *sig));
|
||||
|
||||
void EVP_PKEY_asn1_set_siginf(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*siginf_set) (X509_SIG_INFO *siginf,
|
||||
const X509_ALGOR *alg,
|
||||
const ASN1_STRING *sig));
|
||||
|
||||
void EVP_PKEY_asn1_set_check(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*pkey_check) (const EVP_PKEY *pk));
|
||||
|
||||
void EVP_PKEY_asn1_set_public_check(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*pkey_pub_check) (const EVP_PKEY *pk));
|
||||
|
||||
void EVP_PKEY_asn1_set_param_check(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*pkey_param_check) (const EVP_PKEY *pk));
|
||||
|
||||
void EVP_PKEY_asn1_set_set_priv_key(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*set_priv_key) (EVP_PKEY *pk,
|
||||
const unsigned char
|
||||
*priv,
|
||||
size_t len));
|
||||
void EVP_PKEY_asn1_set_set_pub_key(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*set_pub_key) (EVP_PKEY *pk,
|
||||
const unsigned char *pub,
|
||||
size_t len));
|
||||
void EVP_PKEY_asn1_set_get_priv_key(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*get_priv_key) (const EVP_PKEY *pk,
|
||||
unsigned char *priv,
|
||||
size_t *len));
|
||||
void EVP_PKEY_asn1_set_get_pub_key(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*get_pub_key) (const EVP_PKEY *pk,
|
||||
unsigned char *pub,
|
||||
size_t *len));
|
||||
|
||||
void EVP_PKEY_asn1_set_security_bits(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
int (*pkey_security_bits) (const EVP_PKEY
|
||||
*pk));
|
||||
@@ -1142,15 +1281,15 @@ void EVP_PKEY_asn1_set_security_bits(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
|
||||
# define EVP_PKEY_CTX_set_signature_md(ctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_TYPE_SIG, \
|
||||
EVP_PKEY_CTRL_MD, 0, (void *)md)
|
||||
EVP_PKEY_CTRL_MD, 0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTX_get_signature_md(ctx, pmd) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_TYPE_SIG, \
|
||||
EVP_PKEY_CTRL_GET_MD, 0, (void *)pmd)
|
||||
EVP_PKEY_CTRL_GET_MD, 0, (void *)(pmd))
|
||||
|
||||
# define EVP_PKEY_CTX_set_mac_key(ctx, key, len) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, -1, EVP_PKEY_OP_KEYGEN, \
|
||||
EVP_PKEY_CTRL_SET_MAC_KEY, len, (void *)key)
|
||||
EVP_PKEY_CTRL_SET_MAC_KEY, len, (void *)(key))
|
||||
|
||||
# define EVP_PKEY_CTRL_MD 1
|
||||
# define EVP_PKEY_CTRL_PEER_KEY 2
|
||||
@@ -1175,6 +1314,8 @@ void EVP_PKEY_asn1_set_security_bits(EVP_PKEY_ASN1_METHOD *ameth,
|
||||
|
||||
# define EVP_PKEY_CTRL_GET_MD 13
|
||||
|
||||
# define EVP_PKEY_CTRL_SET_DIGEST_SIZE 14
|
||||
|
||||
# define EVP_PKEY_ALG_CTRL 0x1000
|
||||
|
||||
# define EVP_PKEY_FLAG_AUTOARGLEN 2
|
||||
@@ -1190,6 +1331,9 @@ void EVP_PKEY_meth_get0_info(int *ppkey_id, int *pflags,
|
||||
void EVP_PKEY_meth_copy(EVP_PKEY_METHOD *dst, const EVP_PKEY_METHOD *src);
|
||||
void EVP_PKEY_meth_free(EVP_PKEY_METHOD *pmeth);
|
||||
int EVP_PKEY_meth_add0(const EVP_PKEY_METHOD *pmeth);
|
||||
int EVP_PKEY_meth_remove(const EVP_PKEY_METHOD *pmeth);
|
||||
size_t EVP_PKEY_meth_get_count(void);
|
||||
const EVP_PKEY_METHOD *EVP_PKEY_meth_get0(size_t idx);
|
||||
|
||||
EVP_PKEY_CTX *EVP_PKEY_CTX_new(EVP_PKEY *pkey, ENGINE *e);
|
||||
EVP_PKEY_CTX *EVP_PKEY_CTX_new_id(int id, ENGINE *e);
|
||||
@@ -1200,15 +1344,32 @@ int EVP_PKEY_CTX_ctrl(EVP_PKEY_CTX *ctx, int keytype, int optype,
|
||||
int cmd, int p1, void *p2);
|
||||
int EVP_PKEY_CTX_ctrl_str(EVP_PKEY_CTX *ctx, const char *type,
|
||||
const char *value);
|
||||
int EVP_PKEY_CTX_ctrl_uint64(EVP_PKEY_CTX *ctx, int keytype, int optype,
|
||||
int cmd, uint64_t value);
|
||||
|
||||
int EVP_PKEY_CTX_str2ctrl(EVP_PKEY_CTX *ctx, int cmd, const char *str);
|
||||
int EVP_PKEY_CTX_hex2ctrl(EVP_PKEY_CTX *ctx, int cmd, const char *hex);
|
||||
|
||||
int EVP_PKEY_CTX_md(EVP_PKEY_CTX *ctx, int optype, int cmd, const char *md);
|
||||
|
||||
int EVP_PKEY_CTX_get_operation(EVP_PKEY_CTX *ctx);
|
||||
void EVP_PKEY_CTX_set0_keygen_info(EVP_PKEY_CTX *ctx, int *dat, int datlen);
|
||||
|
||||
EVP_PKEY *EVP_PKEY_new_mac_key(int type, ENGINE *e,
|
||||
const unsigned char *key, int keylen);
|
||||
EVP_PKEY *EVP_PKEY_new_raw_private_key(int type, ENGINE *e,
|
||||
const unsigned char *priv,
|
||||
size_t len);
|
||||
EVP_PKEY *EVP_PKEY_new_raw_public_key(int type, ENGINE *e,
|
||||
const unsigned char *pub,
|
||||
size_t len);
|
||||
int EVP_PKEY_get_raw_private_key(const EVP_PKEY *pkey, unsigned char *priv,
|
||||
size_t *len);
|
||||
int EVP_PKEY_get_raw_public_key(const EVP_PKEY *pkey, unsigned char *pub,
|
||||
size_t *len);
|
||||
|
||||
EVP_PKEY *EVP_PKEY_new_CMAC_key(ENGINE *e, const unsigned char *priv,
|
||||
size_t len, const EVP_CIPHER *cipher);
|
||||
|
||||
void EVP_PKEY_CTX_set_data(EVP_PKEY_CTX *ctx, void *data);
|
||||
void *EVP_PKEY_CTX_get_data(EVP_PKEY_CTX *ctx);
|
||||
@@ -1250,6 +1411,9 @@ int EVP_PKEY_paramgen_init(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_paramgen(EVP_PKEY_CTX *ctx, EVP_PKEY **ppkey);
|
||||
int EVP_PKEY_keygen_init(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_keygen(EVP_PKEY_CTX *ctx, EVP_PKEY **ppkey);
|
||||
int EVP_PKEY_check(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_public_check(EVP_PKEY_CTX *ctx);
|
||||
int EVP_PKEY_param_check(EVP_PKEY_CTX *ctx);
|
||||
|
||||
void EVP_PKEY_CTX_set_cb(EVP_PKEY_CTX *ctx, EVP_PKEY_gen_cb *cb);
|
||||
EVP_PKEY_gen_cb *EVP_PKEY_CTX_get_cb(EVP_PKEY_CTX *ctx);
|
||||
@@ -1348,34 +1512,47 @@ void EVP_PKEY_meth_set_ctrl(EVP_PKEY_METHOD *pmeth,
|
||||
const char *type,
|
||||
const char *value));
|
||||
|
||||
void EVP_PKEY_meth_get_init(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_set_check(EVP_PKEY_METHOD *pmeth,
|
||||
int (*check) (EVP_PKEY *pkey));
|
||||
|
||||
void EVP_PKEY_meth_set_public_check(EVP_PKEY_METHOD *pmeth,
|
||||
int (*check) (EVP_PKEY *pkey));
|
||||
|
||||
void EVP_PKEY_meth_set_param_check(EVP_PKEY_METHOD *pmeth,
|
||||
int (*check) (EVP_PKEY *pkey));
|
||||
|
||||
void EVP_PKEY_meth_set_digest_custom(EVP_PKEY_METHOD *pmeth,
|
||||
int (*digest_custom) (EVP_PKEY_CTX *ctx,
|
||||
EVP_MD_CTX *mctx));
|
||||
|
||||
void EVP_PKEY_meth_get_init(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pinit) (EVP_PKEY_CTX *ctx));
|
||||
|
||||
void EVP_PKEY_meth_get_copy(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_copy(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pcopy) (EVP_PKEY_CTX *dst,
|
||||
EVP_PKEY_CTX *src));
|
||||
|
||||
void EVP_PKEY_meth_get_cleanup(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_cleanup(const EVP_PKEY_METHOD *pmeth,
|
||||
void (**pcleanup) (EVP_PKEY_CTX *ctx));
|
||||
|
||||
void EVP_PKEY_meth_get_paramgen(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_paramgen(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pparamgen_init) (EVP_PKEY_CTX *ctx),
|
||||
int (**pparamgen) (EVP_PKEY_CTX *ctx,
|
||||
EVP_PKEY *pkey));
|
||||
|
||||
void EVP_PKEY_meth_get_keygen(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_keygen(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pkeygen_init) (EVP_PKEY_CTX *ctx),
|
||||
int (**pkeygen) (EVP_PKEY_CTX *ctx,
|
||||
EVP_PKEY *pkey));
|
||||
|
||||
void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_sign(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**psign_init) (EVP_PKEY_CTX *ctx),
|
||||
int (**psign) (EVP_PKEY_CTX *ctx,
|
||||
unsigned char *sig, size_t *siglen,
|
||||
const unsigned char *tbs,
|
||||
size_t tbslen));
|
||||
|
||||
void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_verify(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pverify_init) (EVP_PKEY_CTX *ctx),
|
||||
int (**pverify) (EVP_PKEY_CTX *ctx,
|
||||
const unsigned char *sig,
|
||||
@@ -1383,7 +1560,7 @@ void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth,
|
||||
const unsigned char *tbs,
|
||||
size_t tbslen));
|
||||
|
||||
void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_verify_recover(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pverify_recover_init) (EVP_PKEY_CTX
|
||||
*ctx),
|
||||
int (**pverify_recover) (EVP_PKEY_CTX
|
||||
@@ -1395,7 +1572,7 @@ void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth,
|
||||
char *tbs,
|
||||
size_t tbslen));
|
||||
|
||||
void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_signctx(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**psignctx_init) (EVP_PKEY_CTX *ctx,
|
||||
EVP_MD_CTX *mctx),
|
||||
int (**psignctx) (EVP_PKEY_CTX *ctx,
|
||||
@@ -1403,7 +1580,7 @@ void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth,
|
||||
size_t *siglen,
|
||||
EVP_MD_CTX *mctx));
|
||||
|
||||
void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_verifyctx(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pverifyctx_init) (EVP_PKEY_CTX *ctx,
|
||||
EVP_MD_CTX *mctx),
|
||||
int (**pverifyctx) (EVP_PKEY_CTX *ctx,
|
||||
@@ -1411,7 +1588,7 @@ void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth,
|
||||
int siglen,
|
||||
EVP_MD_CTX *mctx));
|
||||
|
||||
void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_encrypt(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pencrypt_init) (EVP_PKEY_CTX *ctx),
|
||||
int (**pencryptfn) (EVP_PKEY_CTX *ctx,
|
||||
unsigned char *out,
|
||||
@@ -1419,7 +1596,7 @@ void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth,
|
||||
const unsigned char *in,
|
||||
size_t inlen));
|
||||
|
||||
void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_decrypt(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pdecrypt_init) (EVP_PKEY_CTX *ctx),
|
||||
int (**pdecrypt) (EVP_PKEY_CTX *ctx,
|
||||
unsigned char *out,
|
||||
@@ -1427,162 +1604,33 @@ void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth,
|
||||
const unsigned char *in,
|
||||
size_t inlen));
|
||||
|
||||
void EVP_PKEY_meth_get_derive(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_derive(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pderive_init) (EVP_PKEY_CTX *ctx),
|
||||
int (**pderive) (EVP_PKEY_CTX *ctx,
|
||||
unsigned char *key,
|
||||
size_t *keylen));
|
||||
|
||||
void EVP_PKEY_meth_get_ctrl(EVP_PKEY_METHOD *pmeth,
|
||||
void EVP_PKEY_meth_get_ctrl(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pctrl) (EVP_PKEY_CTX *ctx, int type, int p1,
|
||||
void *p2),
|
||||
int (**pctrl_str) (EVP_PKEY_CTX *ctx,
|
||||
const char *type,
|
||||
const char *value));
|
||||
|
||||
void EVP_PKEY_meth_get_check(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pcheck) (EVP_PKEY *pkey));
|
||||
|
||||
void EVP_PKEY_meth_get_public_check(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pcheck) (EVP_PKEY *pkey));
|
||||
|
||||
void EVP_PKEY_meth_get_param_check(const EVP_PKEY_METHOD *pmeth,
|
||||
int (**pcheck) (EVP_PKEY *pkey));
|
||||
|
||||
void EVP_PKEY_meth_get_digest_custom(EVP_PKEY_METHOD *pmeth,
|
||||
int (**pdigest_custom) (EVP_PKEY_CTX *ctx,
|
||||
EVP_MD_CTX *mctx));
|
||||
void EVP_add_alg_module(void);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_EVP_strings(void);
|
||||
|
||||
/* Error codes for the EVP functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define EVP_F_AESNI_INIT_KEY 165
|
||||
# define EVP_F_AES_INIT_KEY 133
|
||||
# define EVP_F_AES_OCB_CIPHER 169
|
||||
# define EVP_F_AES_T4_INIT_KEY 178
|
||||
# define EVP_F_AES_WRAP_CIPHER 170
|
||||
# define EVP_F_ALG_MODULE_INIT 177
|
||||
# define EVP_F_CAMELLIA_INIT_KEY 159
|
||||
# define EVP_F_CHACHA20_POLY1305_CTRL 182
|
||||
# define EVP_F_CMLL_T4_INIT_KEY 179
|
||||
# define EVP_F_DES_EDE3_WRAP_CIPHER 171
|
||||
# define EVP_F_DO_SIGVER_INIT 161
|
||||
# define EVP_F_EVP_CIPHERINIT_EX 123
|
||||
# define EVP_F_EVP_CIPHER_CTX_COPY 163
|
||||
# define EVP_F_EVP_CIPHER_CTX_CTRL 124
|
||||
# define EVP_F_EVP_CIPHER_CTX_SET_KEY_LENGTH 122
|
||||
# define EVP_F_EVP_DECRYPTFINAL_EX 101
|
||||
# define EVP_F_EVP_DECRYPTUPDATE 166
|
||||
# define EVP_F_EVP_DIGESTINIT_EX 128
|
||||
# define EVP_F_EVP_ENCRYPTFINAL_EX 127
|
||||
# define EVP_F_EVP_ENCRYPTUPDATE 167
|
||||
# define EVP_F_EVP_MD_CTX_COPY_EX 110
|
||||
# define EVP_F_EVP_MD_SIZE 162
|
||||
# define EVP_F_EVP_OPENINIT 102
|
||||
# define EVP_F_EVP_PBE_ALG_ADD 115
|
||||
# define EVP_F_EVP_PBE_ALG_ADD_TYPE 160
|
||||
# define EVP_F_EVP_PBE_CIPHERINIT 116
|
||||
# define EVP_F_EVP_PBE_SCRYPT 181
|
||||
# define EVP_F_EVP_PKCS82PKEY 111
|
||||
# define EVP_F_EVP_PKEY2PKCS8 113
|
||||
# define EVP_F_EVP_PKEY_COPY_PARAMETERS 103
|
||||
# define EVP_F_EVP_PKEY_CTX_CTRL 137
|
||||
# define EVP_F_EVP_PKEY_CTX_CTRL_STR 150
|
||||
# define EVP_F_EVP_PKEY_CTX_DUP 156
|
||||
# define EVP_F_EVP_PKEY_DECRYPT 104
|
||||
# define EVP_F_EVP_PKEY_DECRYPT_INIT 138
|
||||
# define EVP_F_EVP_PKEY_DECRYPT_OLD 151
|
||||
# define EVP_F_EVP_PKEY_DERIVE 153
|
||||
# define EVP_F_EVP_PKEY_DERIVE_INIT 154
|
||||
# define EVP_F_EVP_PKEY_DERIVE_SET_PEER 155
|
||||
# define EVP_F_EVP_PKEY_ENCRYPT 105
|
||||
# define EVP_F_EVP_PKEY_ENCRYPT_INIT 139
|
||||
# define EVP_F_EVP_PKEY_ENCRYPT_OLD 152
|
||||
# define EVP_F_EVP_PKEY_GET0_DH 119
|
||||
# define EVP_F_EVP_PKEY_GET0_DSA 120
|
||||
# define EVP_F_EVP_PKEY_GET0_EC_KEY 131
|
||||
# define EVP_F_EVP_PKEY_GET0_HMAC 183
|
||||
# define EVP_F_EVP_PKEY_GET0_RSA 121
|
||||
# define EVP_F_EVP_PKEY_KEYGEN 146
|
||||
# define EVP_F_EVP_PKEY_KEYGEN_INIT 147
|
||||
# define EVP_F_EVP_PKEY_NEW 106
|
||||
# define EVP_F_EVP_PKEY_PARAMGEN 148
|
||||
# define EVP_F_EVP_PKEY_PARAMGEN_INIT 149
|
||||
# define EVP_F_EVP_PKEY_SIGN 140
|
||||
# define EVP_F_EVP_PKEY_SIGN_INIT 141
|
||||
# define EVP_F_EVP_PKEY_VERIFY 142
|
||||
# define EVP_F_EVP_PKEY_VERIFY_INIT 143
|
||||
# define EVP_F_EVP_PKEY_VERIFY_RECOVER 144
|
||||
# define EVP_F_EVP_PKEY_VERIFY_RECOVER_INIT 145
|
||||
# define EVP_F_EVP_SIGNFINAL 107
|
||||
# define EVP_F_EVP_VERIFYFINAL 108
|
||||
# define EVP_F_INT_CTX_NEW 157
|
||||
# define EVP_F_PKCS5_PBE_KEYIVGEN 117
|
||||
# define EVP_F_PKCS5_V2_PBE_KEYIVGEN 118
|
||||
# define EVP_F_PKCS5_V2_PBKDF2_KEYIVGEN 164
|
||||
# define EVP_F_PKCS5_V2_SCRYPT_KEYIVGEN 180
|
||||
# define EVP_F_PKEY_SET_TYPE 158
|
||||
# define EVP_F_RC2_MAGIC_TO_METH 109
|
||||
# define EVP_F_RC5_CTRL 125
|
||||
|
||||
/* Reason codes. */
|
||||
# define EVP_R_AES_KEY_SETUP_FAILED 143
|
||||
# define EVP_R_BAD_DECRYPT 100
|
||||
# define EVP_R_BUFFER_TOO_SMALL 155
|
||||
# define EVP_R_CAMELLIA_KEY_SETUP_FAILED 157
|
||||
# define EVP_R_CIPHER_PARAMETER_ERROR 122
|
||||
# define EVP_R_COMMAND_NOT_SUPPORTED 147
|
||||
# define EVP_R_COPY_ERROR 173
|
||||
# define EVP_R_CTRL_NOT_IMPLEMENTED 132
|
||||
# define EVP_R_CTRL_OPERATION_NOT_IMPLEMENTED 133
|
||||
# define EVP_R_DATA_NOT_MULTIPLE_OF_BLOCK_LENGTH 138
|
||||
# define EVP_R_DECODE_ERROR 114
|
||||
# define EVP_R_DIFFERENT_KEY_TYPES 101
|
||||
# define EVP_R_DIFFERENT_PARAMETERS 153
|
||||
# define EVP_R_ERROR_LOADING_SECTION 165
|
||||
# define EVP_R_ERROR_SETTING_FIPS_MODE 166
|
||||
# define EVP_R_EXPECTING_AN_HMAC_KEY 174
|
||||
# define EVP_R_EXPECTING_AN_RSA_KEY 127
|
||||
# define EVP_R_EXPECTING_A_DH_KEY 128
|
||||
# define EVP_R_EXPECTING_A_DSA_KEY 129
|
||||
# define EVP_R_EXPECTING_A_EC_KEY 142
|
||||
# define EVP_R_FIPS_MODE_NOT_SUPPORTED 167
|
||||
# define EVP_R_ILLEGAL_SCRYPT_PARAMETERS 171
|
||||
# define EVP_R_INITIALIZATION_ERROR 134
|
||||
# define EVP_R_INPUT_NOT_INITIALIZED 111
|
||||
# define EVP_R_INVALID_DIGEST 152
|
||||
# define EVP_R_INVALID_FIPS_MODE 168
|
||||
# define EVP_R_INVALID_KEY 163
|
||||
# define EVP_R_INVALID_KEY_LENGTH 130
|
||||
# define EVP_R_INVALID_OPERATION 148
|
||||
# define EVP_R_KEYGEN_FAILURE 120
|
||||
# define EVP_R_MEMORY_LIMIT_EXCEEDED 172
|
||||
# define EVP_R_MESSAGE_DIGEST_IS_NULL 159
|
||||
# define EVP_R_METHOD_NOT_SUPPORTED 144
|
||||
# define EVP_R_MISSING_PARAMETERS 103
|
||||
# define EVP_R_NO_CIPHER_SET 131
|
||||
# define EVP_R_NO_DEFAULT_DIGEST 158
|
||||
# define EVP_R_NO_DIGEST_SET 139
|
||||
# define EVP_R_NO_KEY_SET 154
|
||||
# define EVP_R_NO_OPERATION_SET 149
|
||||
# define EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE 150
|
||||
# define EVP_R_OPERATON_NOT_INITIALIZED 151
|
||||
# define EVP_R_PARTIALLY_OVERLAPPING 162
|
||||
# define EVP_R_PRIVATE_KEY_DECODE_ERROR 145
|
||||
# define EVP_R_PRIVATE_KEY_ENCODE_ERROR 146
|
||||
# define EVP_R_PUBLIC_KEY_NOT_RSA 106
|
||||
# define EVP_R_UNKNOWN_CIPHER 160
|
||||
# define EVP_R_UNKNOWN_DIGEST 161
|
||||
# define EVP_R_UNKNOWN_OPTION 169
|
||||
# define EVP_R_UNKNOWN_PBE_ALGORITHM 121
|
||||
# define EVP_R_UNSUPPORTED_ALGORITHM 156
|
||||
# define EVP_R_UNSUPPORTED_CIPHER 107
|
||||
# define EVP_R_UNSUPPORTED_KEYLENGTH 123
|
||||
# define EVP_R_UNSUPPORTED_KEY_DERIVATION_FUNCTION 124
|
||||
# define EVP_R_UNSUPPORTED_KEY_SIZE 108
|
||||
# define EVP_R_UNSUPPORTED_NUMBER_OF_ROUNDS 135
|
||||
# define EVP_R_UNSUPPORTED_PRF 125
|
||||
# define EVP_R_UNSUPPORTED_PRIVATE_KEY_ALGORITHM 118
|
||||
# define EVP_R_UNSUPPORTED_SALT_TYPE 126
|
||||
# define EVP_R_WRAP_MODE_NOT_ALLOWED 170
|
||||
# define EVP_R_WRONG_FINAL_BLOCK_LENGTH 109
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -14,7 +14,9 @@
|
||||
|
||||
# include <openssl/evp.h>
|
||||
|
||||
# define HMAC_MAX_MD_CBLOCK 128/* largest known is SHA512 */
|
||||
# if OPENSSL_API_COMPAT < 0x10200000L
|
||||
# define HMAC_MAX_MD_CBLOCK 128 /* Deprecated */
|
||||
# endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2016-2018 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
|
||||
@@ -10,6 +10,7 @@
|
||||
#ifndef HEADER_KDF_H
|
||||
# define HEADER_KDF_H
|
||||
|
||||
# include <openssl/kdferr.h>
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
@@ -21,53 +22,74 @@ extern "C" {
|
||||
# define EVP_PKEY_CTRL_HKDF_SALT (EVP_PKEY_ALG_CTRL + 4)
|
||||
# define EVP_PKEY_CTRL_HKDF_KEY (EVP_PKEY_ALG_CTRL + 5)
|
||||
# define EVP_PKEY_CTRL_HKDF_INFO (EVP_PKEY_ALG_CTRL + 6)
|
||||
# define EVP_PKEY_CTRL_HKDF_MODE (EVP_PKEY_ALG_CTRL + 7)
|
||||
# define EVP_PKEY_CTRL_PASS (EVP_PKEY_ALG_CTRL + 8)
|
||||
# define EVP_PKEY_CTRL_SCRYPT_SALT (EVP_PKEY_ALG_CTRL + 9)
|
||||
# define EVP_PKEY_CTRL_SCRYPT_N (EVP_PKEY_ALG_CTRL + 10)
|
||||
# define EVP_PKEY_CTRL_SCRYPT_R (EVP_PKEY_ALG_CTRL + 11)
|
||||
# define EVP_PKEY_CTRL_SCRYPT_P (EVP_PKEY_ALG_CTRL + 12)
|
||||
# define EVP_PKEY_CTRL_SCRYPT_MAXMEM_BYTES (EVP_PKEY_ALG_CTRL + 13)
|
||||
|
||||
# define EVP_PKEY_HKDEF_MODE_EXTRACT_AND_EXPAND 0
|
||||
# define EVP_PKEY_HKDEF_MODE_EXTRACT_ONLY 1
|
||||
# define EVP_PKEY_HKDEF_MODE_EXPAND_ONLY 2
|
||||
|
||||
# define EVP_PKEY_CTX_set_tls1_prf_md(pctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_TLS_MD, 0, (void *)md)
|
||||
EVP_PKEY_CTRL_TLS_MD, 0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTX_set1_tls1_prf_secret(pctx, sec, seclen) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_TLS_SECRET, seclen, (void *)sec)
|
||||
EVP_PKEY_CTRL_TLS_SECRET, seclen, (void *)(sec))
|
||||
|
||||
# define EVP_PKEY_CTX_add1_tls1_prf_seed(pctx, seed, seedlen) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_TLS_SEED, seedlen, (void *)seed)
|
||||
EVP_PKEY_CTRL_TLS_SEED, seedlen, (void *)(seed))
|
||||
|
||||
# define EVP_PKEY_CTX_set_hkdf_md(pctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_HKDF_MD, 0, (void *)md)
|
||||
EVP_PKEY_CTRL_HKDF_MD, 0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTX_set1_hkdf_salt(pctx, salt, saltlen) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_HKDF_SALT, saltlen, (void *)salt)
|
||||
EVP_PKEY_CTRL_HKDF_SALT, saltlen, (void *)(salt))
|
||||
|
||||
# define EVP_PKEY_CTX_set1_hkdf_key(pctx, key, keylen) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_HKDF_KEY, keylen, (void *)key)
|
||||
EVP_PKEY_CTRL_HKDF_KEY, keylen, (void *)(key))
|
||||
|
||||
# define EVP_PKEY_CTX_add1_hkdf_info(pctx, info, infolen) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_HKDF_INFO, infolen, (void *)info)
|
||||
EVP_PKEY_CTRL_HKDF_INFO, infolen, (void *)(info))
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
# define EVP_PKEY_CTX_hkdf_mode(pctx, mode) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_HKDF_MODE, mode, NULL)
|
||||
|
||||
int ERR_load_KDF_strings(void);
|
||||
# define EVP_PKEY_CTX_set1_pbe_pass(pctx, pass, passlen) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_PASS, passlen, (void *)(pass))
|
||||
|
||||
/* Error codes for the KDF functions. */
|
||||
# define EVP_PKEY_CTX_set1_scrypt_salt(pctx, salt, saltlen) \
|
||||
EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_SCRYPT_SALT, saltlen, (void *)(salt))
|
||||
|
||||
/* Function codes. */
|
||||
# define KDF_F_PKEY_TLS1_PRF_CTRL_STR 100
|
||||
# define KDF_F_PKEY_TLS1_PRF_DERIVE 101
|
||||
# define EVP_PKEY_CTX_set_scrypt_N(pctx, n) \
|
||||
EVP_PKEY_CTX_ctrl_uint64(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_SCRYPT_N, n)
|
||||
|
||||
# define EVP_PKEY_CTX_set_scrypt_r(pctx, r) \
|
||||
EVP_PKEY_CTX_ctrl_uint64(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_SCRYPT_R, r)
|
||||
|
||||
# define EVP_PKEY_CTX_set_scrypt_p(pctx, p) \
|
||||
EVP_PKEY_CTX_ctrl_uint64(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_SCRYPT_P, p)
|
||||
|
||||
# define EVP_PKEY_CTX_set_scrypt_maxmem_bytes(pctx, maxmem_bytes) \
|
||||
EVP_PKEY_CTX_ctrl_uint64(pctx, -1, EVP_PKEY_OP_DERIVE, \
|
||||
EVP_PKEY_CTRL_SCRYPT_MAXMEM_BYTES, maxmem_bytes)
|
||||
|
||||
/* Reason codes. */
|
||||
# define KDF_R_INVALID_DIGEST 100
|
||||
# define KDF_R_MISSING_PARAMETER 101
|
||||
# define KDF_R_VALUE_MISSING 102
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -95,7 +95,7 @@ void OPENSSL_LH_node_usage_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
|
||||
# define _LHASH OPENSSL_LHASH
|
||||
# define LHASH_NODE OPENSSL_LH_NODE
|
||||
# define lh_error OPENSSL_LH_error
|
||||
# define lh_new OPENSSL_lh_new
|
||||
# define lh_new OPENSSL_LH_new
|
||||
# define lh_free OPENSSL_LH_free
|
||||
# define lh_insert OPENSSL_LH_insert
|
||||
# define lh_delete OPENSSL_LH_delete
|
||||
|
||||
@@ -7,6 +7,9 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#ifndef HEADER_MODES_H
|
||||
# define HEADER_MODES_H
|
||||
|
||||
# include <stddef.h>
|
||||
|
||||
# ifdef __cplusplus
|
||||
@@ -201,3 +204,5 @@ void CRYPTO_ocb128_cleanup(OCB128_CONTEXT *ctx);
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by crypto/objects/objects.pl
|
||||
*
|
||||
* Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2000-2018 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
|
||||
@@ -54,10 +54,24 @@
|
||||
#define NID_hmac_sha1 781
|
||||
#define OBJ_hmac_sha1 OBJ_identified_organization,6L,1L,5L,5L,8L,1L,2L
|
||||
|
||||
#define SN_x509ExtAdmission "x509ExtAdmission"
|
||||
#define LN_x509ExtAdmission "Professional Information or basis for Admission"
|
||||
#define NID_x509ExtAdmission 1093
|
||||
#define OBJ_x509ExtAdmission OBJ_identified_organization,36L,8L,3L,3L
|
||||
|
||||
#define SN_certicom_arc "certicom-arc"
|
||||
#define NID_certicom_arc 677
|
||||
#define OBJ_certicom_arc OBJ_identified_organization,132L
|
||||
|
||||
#define SN_ieee "ieee"
|
||||
#define NID_ieee 1170
|
||||
#define OBJ_ieee OBJ_identified_organization,111L
|
||||
|
||||
#define SN_ieee_siswg "ieee-siswg"
|
||||
#define LN_ieee_siswg "IEEE Security in Storage Working Group"
|
||||
#define NID_ieee_siswg 1171
|
||||
#define OBJ_ieee_siswg OBJ_ieee,2L,1619L
|
||||
|
||||
#define SN_international_organizations "international-organizations"
|
||||
#define LN_international_organizations "International Organizations"
|
||||
#define NID_international_organizations 647
|
||||
@@ -95,6 +109,19 @@
|
||||
#define NID_X9cm 185
|
||||
#define OBJ_X9cm OBJ_X9_57,4L
|
||||
|
||||
#define SN_ISO_CN "ISO-CN"
|
||||
#define LN_ISO_CN "ISO CN Member Body"
|
||||
#define NID_ISO_CN 1140
|
||||
#define OBJ_ISO_CN OBJ_member_body,156L
|
||||
|
||||
#define SN_oscca "oscca"
|
||||
#define NID_oscca 1141
|
||||
#define OBJ_oscca OBJ_ISO_CN,10197L
|
||||
|
||||
#define SN_sm_scheme "sm-scheme"
|
||||
#define NID_sm_scheme 1142
|
||||
#define OBJ_sm_scheme OBJ_oscca,1L
|
||||
|
||||
#define SN_dsa "DSA"
|
||||
#define LN_dsa "dsaEncryption"
|
||||
#define NID_dsa 116
|
||||
@@ -567,6 +594,16 @@
|
||||
#define NID_sha224WithRSAEncryption 671
|
||||
#define OBJ_sha224WithRSAEncryption OBJ_pkcs1,14L
|
||||
|
||||
#define SN_sha512_224WithRSAEncryption "RSA-SHA512/224"
|
||||
#define LN_sha512_224WithRSAEncryption "sha512-224WithRSAEncryption"
|
||||
#define NID_sha512_224WithRSAEncryption 1145
|
||||
#define OBJ_sha512_224WithRSAEncryption OBJ_pkcs1,15L
|
||||
|
||||
#define SN_sha512_256WithRSAEncryption "RSA-SHA512/256"
|
||||
#define LN_sha512_256WithRSAEncryption "sha512-256WithRSAEncryption"
|
||||
#define NID_sha512_256WithRSAEncryption 1146
|
||||
#define OBJ_sha512_256WithRSAEncryption OBJ_pkcs1,16L
|
||||
|
||||
#define SN_pkcs3 "pkcs3"
|
||||
#define NID_pkcs3 27
|
||||
#define OBJ_pkcs3 OBJ_pkcs,3L
|
||||
@@ -932,6 +969,10 @@
|
||||
#define NID_id_smime_aa_dvcs_dvc 240
|
||||
#define OBJ_id_smime_aa_dvcs_dvc OBJ_id_smime_aa,29L
|
||||
|
||||
#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_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
|
||||
@@ -1123,6 +1164,21 @@
|
||||
#define NID_hmacWithSHA1 163
|
||||
#define OBJ_hmacWithSHA1 OBJ_rsadsi,2L,7L
|
||||
|
||||
#define SN_sm2 "SM2"
|
||||
#define LN_sm2 "sm2"
|
||||
#define NID_sm2 1172
|
||||
#define OBJ_sm2 OBJ_sm_scheme,301L
|
||||
|
||||
#define SN_sm3 "SM3"
|
||||
#define LN_sm3 "sm3"
|
||||
#define NID_sm3 1143
|
||||
#define OBJ_sm3 OBJ_sm_scheme,401L
|
||||
|
||||
#define SN_sm3WithRSAEncryption "RSA-SM3"
|
||||
#define LN_sm3WithRSAEncryption "sm3WithRSAEncryption"
|
||||
#define NID_sm3WithRSAEncryption 1144
|
||||
#define OBJ_sm3WithRSAEncryption OBJ_sm_scheme,504L
|
||||
|
||||
#define LN_hmacWithSHA224 "hmacWithSHA224"
|
||||
#define NID_hmacWithSHA224 798
|
||||
#define OBJ_hmacWithSHA224 OBJ_rsadsi,2L,8L
|
||||
@@ -1139,6 +1195,14 @@
|
||||
#define NID_hmacWithSHA512 801
|
||||
#define OBJ_hmacWithSHA512 OBJ_rsadsi,2L,11L
|
||||
|
||||
#define LN_hmacWithSHA512_224 "hmacWithSHA512-224"
|
||||
#define NID_hmacWithSHA512_224 1193
|
||||
#define OBJ_hmacWithSHA512_224 OBJ_rsadsi,2L,12L
|
||||
|
||||
#define LN_hmacWithSHA512_256 "hmacWithSHA512-256"
|
||||
#define NID_hmacWithSHA512_256 1194
|
||||
#define OBJ_hmacWithSHA512_256 OBJ_rsadsi,2L,13L
|
||||
|
||||
#define SN_rc2_cbc "RC2-CBC"
|
||||
#define LN_rc2_cbc "rc2-cbc"
|
||||
#define NID_rc2_cbc 37
|
||||
@@ -1563,6 +1627,16 @@
|
||||
#define NID_sendProxiedOwner 1030
|
||||
#define OBJ_sendProxiedOwner OBJ_id_kp,26L
|
||||
|
||||
#define SN_cmcCA "cmcCA"
|
||||
#define LN_cmcCA "CMC Certificate Authority"
|
||||
#define NID_cmcCA 1131
|
||||
#define OBJ_cmcCA OBJ_id_kp,27L
|
||||
|
||||
#define SN_cmcRA "cmcRA"
|
||||
#define LN_cmcRA "CMC Registration Authority"
|
||||
#define NID_cmcRA 1132
|
||||
#define OBJ_cmcRA OBJ_id_kp,28L
|
||||
|
||||
#define SN_id_it_caProtEncCert "id-it-caProtEncCert"
|
||||
#define NID_id_it_caProtEncCert 298
|
||||
#define OBJ_id_it_caProtEncCert OBJ_id_it,1L
|
||||
@@ -2293,6 +2367,24 @@
|
||||
#define NID_role 400
|
||||
#define OBJ_role OBJ_X509,72L
|
||||
|
||||
#define LN_organizationIdentifier "organizationIdentifier"
|
||||
#define NID_organizationIdentifier 1089
|
||||
#define OBJ_organizationIdentifier OBJ_X509,97L
|
||||
|
||||
#define SN_countryCode3c "c3"
|
||||
#define LN_countryCode3c "countryCode3c"
|
||||
#define NID_countryCode3c 1090
|
||||
#define OBJ_countryCode3c OBJ_X509,98L
|
||||
|
||||
#define SN_countryCode3n "n3"
|
||||
#define LN_countryCode3n "countryCode3n"
|
||||
#define NID_countryCode3n 1091
|
||||
#define OBJ_countryCode3n OBJ_X509,99L
|
||||
|
||||
#define LN_dnsName "dnsName"
|
||||
#define NID_dnsName 1092
|
||||
#define OBJ_dnsName OBJ_X509,100L
|
||||
|
||||
#define SN_X500algorithms "X500algorithms"
|
||||
#define LN_X500algorithms "directory services - algorithms"
|
||||
#define NID_X500algorithms 378
|
||||
@@ -2723,6 +2815,16 @@
|
||||
#define NID_id_aes256_wrap_pad 903
|
||||
#define OBJ_id_aes256_wrap_pad OBJ_aes,48L
|
||||
|
||||
#define SN_aes_128_xts "AES-128-XTS"
|
||||
#define LN_aes_128_xts "aes-128-xts"
|
||||
#define NID_aes_128_xts 913
|
||||
#define OBJ_aes_128_xts OBJ_ieee_siswg,0L,1L,1L
|
||||
|
||||
#define SN_aes_256_xts "AES-256-XTS"
|
||||
#define LN_aes_256_xts "aes-256-xts"
|
||||
#define NID_aes_256_xts 914
|
||||
#define OBJ_aes_256_xts OBJ_ieee_siswg,0L,1L,2L
|
||||
|
||||
#define SN_aes_128_cfb1 "AES-128-CFB1"
|
||||
#define LN_aes_128_cfb1 "aes-128-cfb1"
|
||||
#define NID_aes_128_cfb1 650
|
||||
@@ -2771,14 +2873,6 @@
|
||||
#define LN_aes_256_ocb "aes-256-ocb"
|
||||
#define NID_aes_256_ocb 960
|
||||
|
||||
#define SN_aes_128_xts "AES-128-XTS"
|
||||
#define LN_aes_128_xts "aes-128-xts"
|
||||
#define NID_aes_128_xts 913
|
||||
|
||||
#define SN_aes_256_xts "AES-256-XTS"
|
||||
#define LN_aes_256_xts "aes-256-xts"
|
||||
#define NID_aes_256_xts 914
|
||||
|
||||
#define SN_des_cfb1 "DES-CFB1"
|
||||
#define LN_des_cfb1 "des-cfb1"
|
||||
#define NID_des_cfb1 656
|
||||
@@ -2817,6 +2911,66 @@
|
||||
#define NID_sha224 675
|
||||
#define OBJ_sha224 OBJ_nist_hashalgs,4L
|
||||
|
||||
#define SN_sha512_224 "SHA512-224"
|
||||
#define LN_sha512_224 "sha512-224"
|
||||
#define NID_sha512_224 1094
|
||||
#define OBJ_sha512_224 OBJ_nist_hashalgs,5L
|
||||
|
||||
#define SN_sha512_256 "SHA512-256"
|
||||
#define LN_sha512_256 "sha512-256"
|
||||
#define NID_sha512_256 1095
|
||||
#define OBJ_sha512_256 OBJ_nist_hashalgs,6L
|
||||
|
||||
#define SN_sha3_224 "SHA3-224"
|
||||
#define LN_sha3_224 "sha3-224"
|
||||
#define NID_sha3_224 1096
|
||||
#define OBJ_sha3_224 OBJ_nist_hashalgs,7L
|
||||
|
||||
#define SN_sha3_256 "SHA3-256"
|
||||
#define LN_sha3_256 "sha3-256"
|
||||
#define NID_sha3_256 1097
|
||||
#define OBJ_sha3_256 OBJ_nist_hashalgs,8L
|
||||
|
||||
#define SN_sha3_384 "SHA3-384"
|
||||
#define LN_sha3_384 "sha3-384"
|
||||
#define NID_sha3_384 1098
|
||||
#define OBJ_sha3_384 OBJ_nist_hashalgs,9L
|
||||
|
||||
#define SN_sha3_512 "SHA3-512"
|
||||
#define LN_sha3_512 "sha3-512"
|
||||
#define NID_sha3_512 1099
|
||||
#define OBJ_sha3_512 OBJ_nist_hashalgs,10L
|
||||
|
||||
#define SN_shake128 "SHAKE128"
|
||||
#define LN_shake128 "shake128"
|
||||
#define NID_shake128 1100
|
||||
#define OBJ_shake128 OBJ_nist_hashalgs,11L
|
||||
|
||||
#define SN_shake256 "SHAKE256"
|
||||
#define LN_shake256 "shake256"
|
||||
#define NID_shake256 1101
|
||||
#define OBJ_shake256 OBJ_nist_hashalgs,12L
|
||||
|
||||
#define SN_hmac_sha3_224 "id-hmacWithSHA3-224"
|
||||
#define LN_hmac_sha3_224 "hmac-sha3-224"
|
||||
#define NID_hmac_sha3_224 1102
|
||||
#define OBJ_hmac_sha3_224 OBJ_nist_hashalgs,13L
|
||||
|
||||
#define SN_hmac_sha3_256 "id-hmacWithSHA3-256"
|
||||
#define LN_hmac_sha3_256 "hmac-sha3-256"
|
||||
#define NID_hmac_sha3_256 1103
|
||||
#define OBJ_hmac_sha3_256 OBJ_nist_hashalgs,14L
|
||||
|
||||
#define SN_hmac_sha3_384 "id-hmacWithSHA3-384"
|
||||
#define LN_hmac_sha3_384 "hmac-sha3-384"
|
||||
#define NID_hmac_sha3_384 1104
|
||||
#define OBJ_hmac_sha3_384 OBJ_nist_hashalgs,15L
|
||||
|
||||
#define SN_hmac_sha3_512 "id-hmacWithSHA3-512"
|
||||
#define LN_hmac_sha3_512 "hmac-sha3-512"
|
||||
#define NID_hmac_sha3_512 1105
|
||||
#define OBJ_hmac_sha3_512 OBJ_nist_hashalgs,16L
|
||||
|
||||
#define OBJ_dsa_with_sha2 OBJ_nistAlgorithms,3L
|
||||
|
||||
#define SN_dsa_with_SHA224 "dsa_with_SHA224"
|
||||
@@ -2827,6 +2981,78 @@
|
||||
#define NID_dsa_with_SHA256 803
|
||||
#define OBJ_dsa_with_SHA256 OBJ_dsa_with_sha2,2L
|
||||
|
||||
#define OBJ_sigAlgs OBJ_nistAlgorithms,3L
|
||||
|
||||
#define SN_dsa_with_SHA384 "id-dsa-with-sha384"
|
||||
#define LN_dsa_with_SHA384 "dsa_with_SHA384"
|
||||
#define NID_dsa_with_SHA384 1106
|
||||
#define OBJ_dsa_with_SHA384 OBJ_sigAlgs,3L
|
||||
|
||||
#define SN_dsa_with_SHA512 "id-dsa-with-sha512"
|
||||
#define LN_dsa_with_SHA512 "dsa_with_SHA512"
|
||||
#define NID_dsa_with_SHA512 1107
|
||||
#define OBJ_dsa_with_SHA512 OBJ_sigAlgs,4L
|
||||
|
||||
#define SN_dsa_with_SHA3_224 "id-dsa-with-sha3-224"
|
||||
#define LN_dsa_with_SHA3_224 "dsa_with_SHA3-224"
|
||||
#define NID_dsa_with_SHA3_224 1108
|
||||
#define OBJ_dsa_with_SHA3_224 OBJ_sigAlgs,5L
|
||||
|
||||
#define SN_dsa_with_SHA3_256 "id-dsa-with-sha3-256"
|
||||
#define LN_dsa_with_SHA3_256 "dsa_with_SHA3-256"
|
||||
#define NID_dsa_with_SHA3_256 1109
|
||||
#define OBJ_dsa_with_SHA3_256 OBJ_sigAlgs,6L
|
||||
|
||||
#define SN_dsa_with_SHA3_384 "id-dsa-with-sha3-384"
|
||||
#define LN_dsa_with_SHA3_384 "dsa_with_SHA3-384"
|
||||
#define NID_dsa_with_SHA3_384 1110
|
||||
#define OBJ_dsa_with_SHA3_384 OBJ_sigAlgs,7L
|
||||
|
||||
#define SN_dsa_with_SHA3_512 "id-dsa-with-sha3-512"
|
||||
#define LN_dsa_with_SHA3_512 "dsa_with_SHA3-512"
|
||||
#define NID_dsa_with_SHA3_512 1111
|
||||
#define OBJ_dsa_with_SHA3_512 OBJ_sigAlgs,8L
|
||||
|
||||
#define SN_ecdsa_with_SHA3_224 "id-ecdsa-with-sha3-224"
|
||||
#define LN_ecdsa_with_SHA3_224 "ecdsa_with_SHA3-224"
|
||||
#define NID_ecdsa_with_SHA3_224 1112
|
||||
#define OBJ_ecdsa_with_SHA3_224 OBJ_sigAlgs,9L
|
||||
|
||||
#define SN_ecdsa_with_SHA3_256 "id-ecdsa-with-sha3-256"
|
||||
#define LN_ecdsa_with_SHA3_256 "ecdsa_with_SHA3-256"
|
||||
#define NID_ecdsa_with_SHA3_256 1113
|
||||
#define OBJ_ecdsa_with_SHA3_256 OBJ_sigAlgs,10L
|
||||
|
||||
#define SN_ecdsa_with_SHA3_384 "id-ecdsa-with-sha3-384"
|
||||
#define LN_ecdsa_with_SHA3_384 "ecdsa_with_SHA3-384"
|
||||
#define NID_ecdsa_with_SHA3_384 1114
|
||||
#define OBJ_ecdsa_with_SHA3_384 OBJ_sigAlgs,11L
|
||||
|
||||
#define SN_ecdsa_with_SHA3_512 "id-ecdsa-with-sha3-512"
|
||||
#define LN_ecdsa_with_SHA3_512 "ecdsa_with_SHA3-512"
|
||||
#define NID_ecdsa_with_SHA3_512 1115
|
||||
#define OBJ_ecdsa_with_SHA3_512 OBJ_sigAlgs,12L
|
||||
|
||||
#define SN_RSA_SHA3_224 "id-rsassa-pkcs1-v1_5-with-sha3-224"
|
||||
#define LN_RSA_SHA3_224 "RSA-SHA3-224"
|
||||
#define NID_RSA_SHA3_224 1116
|
||||
#define OBJ_RSA_SHA3_224 OBJ_sigAlgs,13L
|
||||
|
||||
#define SN_RSA_SHA3_256 "id-rsassa-pkcs1-v1_5-with-sha3-256"
|
||||
#define LN_RSA_SHA3_256 "RSA-SHA3-256"
|
||||
#define NID_RSA_SHA3_256 1117
|
||||
#define OBJ_RSA_SHA3_256 OBJ_sigAlgs,14L
|
||||
|
||||
#define SN_RSA_SHA3_384 "id-rsassa-pkcs1-v1_5-with-sha3-384"
|
||||
#define LN_RSA_SHA3_384 "RSA-SHA3-384"
|
||||
#define NID_RSA_SHA3_384 1118
|
||||
#define OBJ_RSA_SHA3_384 OBJ_sigAlgs,15L
|
||||
|
||||
#define SN_RSA_SHA3_512 "id-rsassa-pkcs1-v1_5-with-sha3-512"
|
||||
#define LN_RSA_SHA3_512 "RSA-SHA3-512"
|
||||
#define NID_RSA_SHA3_512 1119
|
||||
#define OBJ_RSA_SHA3_512 OBJ_sigAlgs,16L
|
||||
|
||||
#define SN_hold_instruction_code "holdInstructionCode"
|
||||
#define LN_hold_instruction_code "Hold Instruction Code"
|
||||
#define NID_hold_instruction_code 430
|
||||
@@ -4000,6 +4226,30 @@
|
||||
#define NID_id_tc26_cipher 990
|
||||
#define OBJ_id_tc26_cipher OBJ_id_tc26_algorithms,5L
|
||||
|
||||
#define SN_id_tc26_cipher_gostr3412_2015_magma "id-tc26-cipher-gostr3412-2015-magma"
|
||||
#define NID_id_tc26_cipher_gostr3412_2015_magma 1173
|
||||
#define OBJ_id_tc26_cipher_gostr3412_2015_magma OBJ_id_tc26_cipher,1L
|
||||
|
||||
#define SN_id_tc26_cipher_gostr3412_2015_magma_ctracpkm "id-tc26-cipher-gostr3412-2015-magma-ctracpkm"
|
||||
#define NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm 1174
|
||||
#define OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm OBJ_id_tc26_cipher_gostr3412_2015_magma,1L
|
||||
|
||||
#define SN_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac "id-tc26-cipher-gostr3412-2015-magma-ctracpkm-omac"
|
||||
#define NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac 1175
|
||||
#define OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac OBJ_id_tc26_cipher_gostr3412_2015_magma,2L
|
||||
|
||||
#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik "id-tc26-cipher-gostr3412-2015-kuznyechik"
|
||||
#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik 1176
|
||||
#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik OBJ_id_tc26_cipher,2L
|
||||
|
||||
#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm"
|
||||
#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm 1177
|
||||
#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik,1L
|
||||
|
||||
#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm-omac"
|
||||
#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac 1178
|
||||
#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik,2L
|
||||
|
||||
#define SN_id_tc26_agreement "id-tc26-agreement"
|
||||
#define NID_id_tc26_agreement 991
|
||||
#define OBJ_id_tc26_agreement OBJ_id_tc26_algorithms,6L
|
||||
@@ -4012,6 +4262,26 @@
|
||||
#define NID_id_tc26_agreement_gost_3410_2012_512 993
|
||||
#define OBJ_id_tc26_agreement_gost_3410_2012_512 OBJ_id_tc26_agreement,2L
|
||||
|
||||
#define SN_id_tc26_wrap "id-tc26-wrap"
|
||||
#define NID_id_tc26_wrap 1179
|
||||
#define OBJ_id_tc26_wrap OBJ_id_tc26_algorithms,7L
|
||||
|
||||
#define SN_id_tc26_wrap_gostr3412_2015_magma "id-tc26-wrap-gostr3412-2015-magma"
|
||||
#define NID_id_tc26_wrap_gostr3412_2015_magma 1180
|
||||
#define OBJ_id_tc26_wrap_gostr3412_2015_magma OBJ_id_tc26_wrap,1L
|
||||
|
||||
#define SN_id_tc26_wrap_gostr3412_2015_magma_kexp15 "id-tc26-wrap-gostr3412-2015-magma-kexp15"
|
||||
#define NID_id_tc26_wrap_gostr3412_2015_magma_kexp15 1181
|
||||
#define OBJ_id_tc26_wrap_gostr3412_2015_magma_kexp15 OBJ_id_tc26_wrap_gostr3412_2015_magma,1L
|
||||
|
||||
#define SN_id_tc26_wrap_gostr3412_2015_kuznyechik "id-tc26-wrap-gostr3412-2015-kuznyechik"
|
||||
#define NID_id_tc26_wrap_gostr3412_2015_kuznyechik 1182
|
||||
#define OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik OBJ_id_tc26_wrap,2L
|
||||
|
||||
#define SN_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 "id-tc26-wrap-gostr3412-2015-kuznyechik-kexp15"
|
||||
#define NID_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 1183
|
||||
#define OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 OBJ_id_tc26_wrap_gostr3412_2015_magma,1L
|
||||
|
||||
#define SN_id_tc26_constants "id-tc26-constants"
|
||||
#define NID_id_tc26_constants 994
|
||||
#define OBJ_id_tc26_constants OBJ_id_tc26,2L
|
||||
@@ -4020,6 +4290,30 @@
|
||||
#define NID_id_tc26_sign_constants 995
|
||||
#define OBJ_id_tc26_sign_constants OBJ_id_tc26_constants,1L
|
||||
|
||||
#define SN_id_tc26_gost_3410_2012_256_constants "id-tc26-gost-3410-2012-256-constants"
|
||||
#define NID_id_tc26_gost_3410_2012_256_constants 1147
|
||||
#define OBJ_id_tc26_gost_3410_2012_256_constants OBJ_id_tc26_sign_constants,1L
|
||||
|
||||
#define SN_id_tc26_gost_3410_2012_256_paramSetA "id-tc26-gost-3410-2012-256-paramSetA"
|
||||
#define LN_id_tc26_gost_3410_2012_256_paramSetA "GOST R 34.10-2012 (256 bit) ParamSet A"
|
||||
#define NID_id_tc26_gost_3410_2012_256_paramSetA 1148
|
||||
#define OBJ_id_tc26_gost_3410_2012_256_paramSetA OBJ_id_tc26_gost_3410_2012_256_constants,1L
|
||||
|
||||
#define SN_id_tc26_gost_3410_2012_256_paramSetB "id-tc26-gost-3410-2012-256-paramSetB"
|
||||
#define LN_id_tc26_gost_3410_2012_256_paramSetB "GOST R 34.10-2012 (256 bit) ParamSet B"
|
||||
#define NID_id_tc26_gost_3410_2012_256_paramSetB 1184
|
||||
#define OBJ_id_tc26_gost_3410_2012_256_paramSetB OBJ_id_tc26_gost_3410_2012_256_constants,2L
|
||||
|
||||
#define SN_id_tc26_gost_3410_2012_256_paramSetC "id-tc26-gost-3410-2012-256-paramSetC"
|
||||
#define LN_id_tc26_gost_3410_2012_256_paramSetC "GOST R 34.10-2012 (256 bit) ParamSet C"
|
||||
#define NID_id_tc26_gost_3410_2012_256_paramSetC 1185
|
||||
#define OBJ_id_tc26_gost_3410_2012_256_paramSetC OBJ_id_tc26_gost_3410_2012_256_constants,3L
|
||||
|
||||
#define SN_id_tc26_gost_3410_2012_256_paramSetD "id-tc26-gost-3410-2012-256-paramSetD"
|
||||
#define LN_id_tc26_gost_3410_2012_256_paramSetD "GOST R 34.10-2012 (256 bit) ParamSet D"
|
||||
#define NID_id_tc26_gost_3410_2012_256_paramSetD 1186
|
||||
#define OBJ_id_tc26_gost_3410_2012_256_paramSetD OBJ_id_tc26_gost_3410_2012_256_constants,4L
|
||||
|
||||
#define SN_id_tc26_gost_3410_2012_512_constants "id-tc26-gost-3410-2012-512-constants"
|
||||
#define NID_id_tc26_gost_3410_2012_512_constants 996
|
||||
#define OBJ_id_tc26_gost_3410_2012_512_constants OBJ_id_tc26_sign_constants,2L
|
||||
@@ -4039,6 +4333,11 @@
|
||||
#define NID_id_tc26_gost_3410_2012_512_paramSetB 999
|
||||
#define OBJ_id_tc26_gost_3410_2012_512_paramSetB OBJ_id_tc26_gost_3410_2012_512_constants,2L
|
||||
|
||||
#define SN_id_tc26_gost_3410_2012_512_paramSetC "id-tc26-gost-3410-2012-512-paramSetC"
|
||||
#define LN_id_tc26_gost_3410_2012_512_paramSetC "GOST R 34.10-2012 (512 bit) ParamSet C"
|
||||
#define NID_id_tc26_gost_3410_2012_512_paramSetC 1149
|
||||
#define OBJ_id_tc26_gost_3410_2012_512_paramSetC OBJ_id_tc26_gost_3410_2012_512_constants,3L
|
||||
|
||||
#define SN_id_tc26_digest_constants "id-tc26-digest-constants"
|
||||
#define NID_id_tc26_digest_constants 1000
|
||||
#define OBJ_id_tc26_digest_constants OBJ_id_tc26_constants,2L
|
||||
@@ -4099,6 +4398,24 @@
|
||||
#define SN_grasshopper_mac "grasshopper-mac"
|
||||
#define NID_grasshopper_mac 1017
|
||||
|
||||
#define SN_magma_ecb "magma-ecb"
|
||||
#define NID_magma_ecb 1187
|
||||
|
||||
#define SN_magma_ctr "magma-ctr"
|
||||
#define NID_magma_ctr 1188
|
||||
|
||||
#define SN_magma_ofb "magma-ofb"
|
||||
#define NID_magma_ofb 1189
|
||||
|
||||
#define SN_magma_cbc "magma-cbc"
|
||||
#define NID_magma_cbc 1190
|
||||
|
||||
#define SN_magma_cfb "magma-cfb"
|
||||
#define NID_magma_cfb 1191
|
||||
|
||||
#define SN_magma_mac "magma-mac"
|
||||
#define NID_magma_mac 1192
|
||||
|
||||
#define SN_camellia_128_cbc "CAMELLIA-128-CBC"
|
||||
#define LN_camellia_128_cbc "camellia-128-cbc"
|
||||
#define NID_camellia_128_cbc 751
|
||||
@@ -4259,6 +4576,137 @@
|
||||
#define LN_camellia_256_cfb8 "camellia-256-cfb8"
|
||||
#define NID_camellia_256_cfb8 765
|
||||
|
||||
#define OBJ_aria 1L,2L,410L,200046L,1L,1L
|
||||
|
||||
#define SN_aria_128_ecb "ARIA-128-ECB"
|
||||
#define LN_aria_128_ecb "aria-128-ecb"
|
||||
#define NID_aria_128_ecb 1065
|
||||
#define OBJ_aria_128_ecb OBJ_aria,1L
|
||||
|
||||
#define SN_aria_128_cbc "ARIA-128-CBC"
|
||||
#define LN_aria_128_cbc "aria-128-cbc"
|
||||
#define NID_aria_128_cbc 1066
|
||||
#define OBJ_aria_128_cbc OBJ_aria,2L
|
||||
|
||||
#define SN_aria_128_cfb128 "ARIA-128-CFB"
|
||||
#define LN_aria_128_cfb128 "aria-128-cfb"
|
||||
#define NID_aria_128_cfb128 1067
|
||||
#define OBJ_aria_128_cfb128 OBJ_aria,3L
|
||||
|
||||
#define SN_aria_128_ofb128 "ARIA-128-OFB"
|
||||
#define LN_aria_128_ofb128 "aria-128-ofb"
|
||||
#define NID_aria_128_ofb128 1068
|
||||
#define OBJ_aria_128_ofb128 OBJ_aria,4L
|
||||
|
||||
#define SN_aria_128_ctr "ARIA-128-CTR"
|
||||
#define LN_aria_128_ctr "aria-128-ctr"
|
||||
#define NID_aria_128_ctr 1069
|
||||
#define OBJ_aria_128_ctr OBJ_aria,5L
|
||||
|
||||
#define SN_aria_192_ecb "ARIA-192-ECB"
|
||||
#define LN_aria_192_ecb "aria-192-ecb"
|
||||
#define NID_aria_192_ecb 1070
|
||||
#define OBJ_aria_192_ecb OBJ_aria,6L
|
||||
|
||||
#define SN_aria_192_cbc "ARIA-192-CBC"
|
||||
#define LN_aria_192_cbc "aria-192-cbc"
|
||||
#define NID_aria_192_cbc 1071
|
||||
#define OBJ_aria_192_cbc OBJ_aria,7L
|
||||
|
||||
#define SN_aria_192_cfb128 "ARIA-192-CFB"
|
||||
#define LN_aria_192_cfb128 "aria-192-cfb"
|
||||
#define NID_aria_192_cfb128 1072
|
||||
#define OBJ_aria_192_cfb128 OBJ_aria,8L
|
||||
|
||||
#define SN_aria_192_ofb128 "ARIA-192-OFB"
|
||||
#define LN_aria_192_ofb128 "aria-192-ofb"
|
||||
#define NID_aria_192_ofb128 1073
|
||||
#define OBJ_aria_192_ofb128 OBJ_aria,9L
|
||||
|
||||
#define SN_aria_192_ctr "ARIA-192-CTR"
|
||||
#define LN_aria_192_ctr "aria-192-ctr"
|
||||
#define NID_aria_192_ctr 1074
|
||||
#define OBJ_aria_192_ctr OBJ_aria,10L
|
||||
|
||||
#define SN_aria_256_ecb "ARIA-256-ECB"
|
||||
#define LN_aria_256_ecb "aria-256-ecb"
|
||||
#define NID_aria_256_ecb 1075
|
||||
#define OBJ_aria_256_ecb OBJ_aria,11L
|
||||
|
||||
#define SN_aria_256_cbc "ARIA-256-CBC"
|
||||
#define LN_aria_256_cbc "aria-256-cbc"
|
||||
#define NID_aria_256_cbc 1076
|
||||
#define OBJ_aria_256_cbc OBJ_aria,12L
|
||||
|
||||
#define SN_aria_256_cfb128 "ARIA-256-CFB"
|
||||
#define LN_aria_256_cfb128 "aria-256-cfb"
|
||||
#define NID_aria_256_cfb128 1077
|
||||
#define OBJ_aria_256_cfb128 OBJ_aria,13L
|
||||
|
||||
#define SN_aria_256_ofb128 "ARIA-256-OFB"
|
||||
#define LN_aria_256_ofb128 "aria-256-ofb"
|
||||
#define NID_aria_256_ofb128 1078
|
||||
#define OBJ_aria_256_ofb128 OBJ_aria,14L
|
||||
|
||||
#define SN_aria_256_ctr "ARIA-256-CTR"
|
||||
#define LN_aria_256_ctr "aria-256-ctr"
|
||||
#define NID_aria_256_ctr 1079
|
||||
#define OBJ_aria_256_ctr OBJ_aria,15L
|
||||
|
||||
#define SN_aria_128_cfb1 "ARIA-128-CFB1"
|
||||
#define LN_aria_128_cfb1 "aria-128-cfb1"
|
||||
#define NID_aria_128_cfb1 1080
|
||||
|
||||
#define SN_aria_192_cfb1 "ARIA-192-CFB1"
|
||||
#define LN_aria_192_cfb1 "aria-192-cfb1"
|
||||
#define NID_aria_192_cfb1 1081
|
||||
|
||||
#define SN_aria_256_cfb1 "ARIA-256-CFB1"
|
||||
#define LN_aria_256_cfb1 "aria-256-cfb1"
|
||||
#define NID_aria_256_cfb1 1082
|
||||
|
||||
#define SN_aria_128_cfb8 "ARIA-128-CFB8"
|
||||
#define LN_aria_128_cfb8 "aria-128-cfb8"
|
||||
#define NID_aria_128_cfb8 1083
|
||||
|
||||
#define SN_aria_192_cfb8 "ARIA-192-CFB8"
|
||||
#define LN_aria_192_cfb8 "aria-192-cfb8"
|
||||
#define NID_aria_192_cfb8 1084
|
||||
|
||||
#define SN_aria_256_cfb8 "ARIA-256-CFB8"
|
||||
#define LN_aria_256_cfb8 "aria-256-cfb8"
|
||||
#define NID_aria_256_cfb8 1085
|
||||
|
||||
#define SN_aria_128_ccm "ARIA-128-CCM"
|
||||
#define LN_aria_128_ccm "aria-128-ccm"
|
||||
#define NID_aria_128_ccm 1120
|
||||
#define OBJ_aria_128_ccm OBJ_aria,37L
|
||||
|
||||
#define SN_aria_192_ccm "ARIA-192-CCM"
|
||||
#define LN_aria_192_ccm "aria-192-ccm"
|
||||
#define NID_aria_192_ccm 1121
|
||||
#define OBJ_aria_192_ccm OBJ_aria,38L
|
||||
|
||||
#define SN_aria_256_ccm "ARIA-256-CCM"
|
||||
#define LN_aria_256_ccm "aria-256-ccm"
|
||||
#define NID_aria_256_ccm 1122
|
||||
#define OBJ_aria_256_ccm OBJ_aria,39L
|
||||
|
||||
#define SN_aria_128_gcm "ARIA-128-GCM"
|
||||
#define LN_aria_128_gcm "aria-128-gcm"
|
||||
#define NID_aria_128_gcm 1123
|
||||
#define OBJ_aria_128_gcm OBJ_aria,34L
|
||||
|
||||
#define SN_aria_192_gcm "ARIA-192-GCM"
|
||||
#define LN_aria_192_gcm "aria-192-gcm"
|
||||
#define NID_aria_192_gcm 1124
|
||||
#define OBJ_aria_192_gcm OBJ_aria,35L
|
||||
|
||||
#define SN_aria_256_gcm "ARIA-256-GCM"
|
||||
#define LN_aria_256_gcm "aria-256-gcm"
|
||||
#define NID_aria_256_gcm 1125
|
||||
#define OBJ_aria_256_gcm OBJ_aria,36L
|
||||
|
||||
#define SN_kisa "KISA"
|
||||
#define LN_kisa "kisa"
|
||||
#define NID_kisa 773
|
||||
@@ -4284,6 +4732,41 @@
|
||||
#define NID_seed_ofb128 778
|
||||
#define OBJ_seed_ofb128 OBJ_kisa,1L,6L
|
||||
|
||||
#define SN_sm4_ecb "SM4-ECB"
|
||||
#define LN_sm4_ecb "sm4-ecb"
|
||||
#define NID_sm4_ecb 1133
|
||||
#define OBJ_sm4_ecb OBJ_sm_scheme,104L,1L
|
||||
|
||||
#define SN_sm4_cbc "SM4-CBC"
|
||||
#define LN_sm4_cbc "sm4-cbc"
|
||||
#define NID_sm4_cbc 1134
|
||||
#define OBJ_sm4_cbc OBJ_sm_scheme,104L,2L
|
||||
|
||||
#define SN_sm4_ofb128 "SM4-OFB"
|
||||
#define LN_sm4_ofb128 "sm4-ofb"
|
||||
#define NID_sm4_ofb128 1135
|
||||
#define OBJ_sm4_ofb128 OBJ_sm_scheme,104L,3L
|
||||
|
||||
#define SN_sm4_cfb128 "SM4-CFB"
|
||||
#define LN_sm4_cfb128 "sm4-cfb"
|
||||
#define NID_sm4_cfb128 1137
|
||||
#define OBJ_sm4_cfb128 OBJ_sm_scheme,104L,4L
|
||||
|
||||
#define SN_sm4_cfb1 "SM4-CFB1"
|
||||
#define LN_sm4_cfb1 "sm4-cfb1"
|
||||
#define NID_sm4_cfb1 1136
|
||||
#define OBJ_sm4_cfb1 OBJ_sm_scheme,104L,5L
|
||||
|
||||
#define SN_sm4_cfb8 "SM4-CFB8"
|
||||
#define LN_sm4_cfb8 "sm4-cfb8"
|
||||
#define NID_sm4_cfb8 1138
|
||||
#define OBJ_sm4_cfb8 OBJ_sm_scheme,104L,6L
|
||||
|
||||
#define SN_sm4_ctr "SM4-CTR"
|
||||
#define LN_sm4_ctr "sm4-ctr"
|
||||
#define NID_sm4_ctr 1139
|
||||
#define OBJ_sm4_ctr OBJ_sm_scheme,104L,7L
|
||||
|
||||
#define SN_hmac "HMAC"
|
||||
#define LN_hmac "hmac"
|
||||
#define NID_hmac 855
|
||||
@@ -4475,6 +4958,7 @@
|
||||
#define OBJ_jurisdictionCountryName 1L,3L,6L,1L,4L,1L,311L,60L,2L,1L,3L
|
||||
|
||||
#define SN_id_scrypt "id-scrypt"
|
||||
#define LN_id_scrypt "scrypt"
|
||||
#define NID_id_scrypt 973
|
||||
#define OBJ_id_scrypt 1L,3L,6L,1L,4L,1L,11591L,4L,11L
|
||||
|
||||
@@ -4508,6 +4992,14 @@
|
||||
#define NID_X448 1035
|
||||
#define OBJ_X448 1L,3L,101L,111L
|
||||
|
||||
#define SN_ED25519 "ED25519"
|
||||
#define NID_ED25519 1087
|
||||
#define OBJ_ED25519 1L,3L,101L,112L
|
||||
|
||||
#define SN_ED448 "ED448"
|
||||
#define NID_ED448 1088
|
||||
#define OBJ_ED448 1L,3L,101L,113L
|
||||
|
||||
#define SN_kx_rsa "KxRSA"
|
||||
#define LN_kx_rsa "kx-rsa"
|
||||
#define NID_kx_rsa 1037
|
||||
@@ -4544,6 +5036,10 @@
|
||||
#define LN_kx_gost "kx-gost"
|
||||
#define NID_kx_gost 1045
|
||||
|
||||
#define SN_kx_any "KxANY"
|
||||
#define LN_kx_any "kx-any"
|
||||
#define NID_kx_any 1063
|
||||
|
||||
#define SN_auth_rsa "AuthRSA"
|
||||
#define LN_auth_rsa "auth-rsa"
|
||||
#define NID_auth_rsa 1046
|
||||
@@ -4575,3 +5071,128 @@
|
||||
#define SN_auth_null "AuthNULL"
|
||||
#define LN_auth_null "auth-null"
|
||||
#define NID_auth_null 1053
|
||||
|
||||
#define SN_auth_any "AuthANY"
|
||||
#define LN_auth_any "auth-any"
|
||||
#define NID_auth_any 1064
|
||||
|
||||
#define SN_poly1305 "Poly1305"
|
||||
#define LN_poly1305 "poly1305"
|
||||
#define NID_poly1305 1061
|
||||
|
||||
#define SN_siphash "SipHash"
|
||||
#define LN_siphash "siphash"
|
||||
#define NID_siphash 1062
|
||||
|
||||
#define SN_ffdhe2048 "ffdhe2048"
|
||||
#define NID_ffdhe2048 1126
|
||||
|
||||
#define SN_ffdhe3072 "ffdhe3072"
|
||||
#define NID_ffdhe3072 1127
|
||||
|
||||
#define SN_ffdhe4096 "ffdhe4096"
|
||||
#define NID_ffdhe4096 1128
|
||||
|
||||
#define SN_ffdhe6144 "ffdhe6144"
|
||||
#define NID_ffdhe6144 1129
|
||||
|
||||
#define SN_ffdhe8192 "ffdhe8192"
|
||||
#define NID_ffdhe8192 1130
|
||||
|
||||
#define SN_ISO_UA "ISO-UA"
|
||||
#define NID_ISO_UA 1150
|
||||
#define OBJ_ISO_UA OBJ_member_body,804L
|
||||
|
||||
#define SN_ua_pki "ua-pki"
|
||||
#define NID_ua_pki 1151
|
||||
#define OBJ_ua_pki OBJ_ISO_UA,2L,1L,1L,1L
|
||||
|
||||
#define SN_dstu28147 "dstu28147"
|
||||
#define LN_dstu28147 "DSTU Gost 28147-2009"
|
||||
#define NID_dstu28147 1152
|
||||
#define OBJ_dstu28147 OBJ_ua_pki,1L,1L,1L
|
||||
|
||||
#define SN_dstu28147_ofb "dstu28147-ofb"
|
||||
#define LN_dstu28147_ofb "DSTU Gost 28147-2009 OFB mode"
|
||||
#define NID_dstu28147_ofb 1153
|
||||
#define OBJ_dstu28147_ofb OBJ_dstu28147,2L
|
||||
|
||||
#define SN_dstu28147_cfb "dstu28147-cfb"
|
||||
#define LN_dstu28147_cfb "DSTU Gost 28147-2009 CFB mode"
|
||||
#define NID_dstu28147_cfb 1154
|
||||
#define OBJ_dstu28147_cfb OBJ_dstu28147,3L
|
||||
|
||||
#define SN_dstu28147_wrap "dstu28147-wrap"
|
||||
#define LN_dstu28147_wrap "DSTU Gost 28147-2009 key wrap"
|
||||
#define NID_dstu28147_wrap 1155
|
||||
#define OBJ_dstu28147_wrap OBJ_dstu28147,5L
|
||||
|
||||
#define SN_hmacWithDstu34311 "hmacWithDstu34311"
|
||||
#define LN_hmacWithDstu34311 "HMAC DSTU Gost 34311-95"
|
||||
#define NID_hmacWithDstu34311 1156
|
||||
#define OBJ_hmacWithDstu34311 OBJ_ua_pki,1L,1L,2L
|
||||
|
||||
#define SN_dstu34311 "dstu34311"
|
||||
#define LN_dstu34311 "DSTU Gost 34311-95"
|
||||
#define NID_dstu34311 1157
|
||||
#define OBJ_dstu34311 OBJ_ua_pki,1L,2L,1L
|
||||
|
||||
#define SN_dstu4145le "dstu4145le"
|
||||
#define LN_dstu4145le "DSTU 4145-2002 little endian"
|
||||
#define NID_dstu4145le 1158
|
||||
#define OBJ_dstu4145le OBJ_ua_pki,1L,3L,1L,1L
|
||||
|
||||
#define SN_dstu4145be "dstu4145be"
|
||||
#define LN_dstu4145be "DSTU 4145-2002 big endian"
|
||||
#define NID_dstu4145be 1159
|
||||
#define OBJ_dstu4145be OBJ_dstu4145le,1L,1L
|
||||
|
||||
#define SN_uacurve0 "uacurve0"
|
||||
#define LN_uacurve0 "DSTU curve 0"
|
||||
#define NID_uacurve0 1160
|
||||
#define OBJ_uacurve0 OBJ_dstu4145le,2L,0L
|
||||
|
||||
#define SN_uacurve1 "uacurve1"
|
||||
#define LN_uacurve1 "DSTU curve 1"
|
||||
#define NID_uacurve1 1161
|
||||
#define OBJ_uacurve1 OBJ_dstu4145le,2L,1L
|
||||
|
||||
#define SN_uacurve2 "uacurve2"
|
||||
#define LN_uacurve2 "DSTU curve 2"
|
||||
#define NID_uacurve2 1162
|
||||
#define OBJ_uacurve2 OBJ_dstu4145le,2L,2L
|
||||
|
||||
#define SN_uacurve3 "uacurve3"
|
||||
#define LN_uacurve3 "DSTU curve 3"
|
||||
#define NID_uacurve3 1163
|
||||
#define OBJ_uacurve3 OBJ_dstu4145le,2L,3L
|
||||
|
||||
#define SN_uacurve4 "uacurve4"
|
||||
#define LN_uacurve4 "DSTU curve 4"
|
||||
#define NID_uacurve4 1164
|
||||
#define OBJ_uacurve4 OBJ_dstu4145le,2L,4L
|
||||
|
||||
#define SN_uacurve5 "uacurve5"
|
||||
#define LN_uacurve5 "DSTU curve 5"
|
||||
#define NID_uacurve5 1165
|
||||
#define OBJ_uacurve5 OBJ_dstu4145le,2L,5L
|
||||
|
||||
#define SN_uacurve6 "uacurve6"
|
||||
#define LN_uacurve6 "DSTU curve 6"
|
||||
#define NID_uacurve6 1166
|
||||
#define OBJ_uacurve6 OBJ_dstu4145le,2L,6L
|
||||
|
||||
#define SN_uacurve7 "uacurve7"
|
||||
#define LN_uacurve7 "DSTU curve 7"
|
||||
#define NID_uacurve7 1167
|
||||
#define OBJ_uacurve7 OBJ_dstu4145le,2L,7L
|
||||
|
||||
#define SN_uacurve8 "uacurve8"
|
||||
#define LN_uacurve8 "DSTU curve 8"
|
||||
#define NID_uacurve8 1168
|
||||
#define OBJ_uacurve8 OBJ_dstu4145le,2L,8L
|
||||
|
||||
#define SN_uacurve9 "uacurve9"
|
||||
#define LN_uacurve9 "DSTU curve 9"
|
||||
#define NID_uacurve9 1169
|
||||
#define OBJ_uacurve9 OBJ_dstu4145le,2L,9L
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -10,910 +10,10 @@
|
||||
#ifndef HEADER_OBJECTS_H
|
||||
# define HEADER_OBJECTS_H
|
||||
|
||||
# define USE_OBJ_MAC
|
||||
|
||||
# ifdef USE_OBJ_MAC
|
||||
# include <openssl/obj_mac.h>
|
||||
# else
|
||||
# define SN_undef "UNDEF"
|
||||
# define LN_undef "undefined"
|
||||
# define NID_undef 0
|
||||
# define OBJ_undef 0L
|
||||
|
||||
# define SN_Algorithm "Algorithm"
|
||||
# define LN_algorithm "algorithm"
|
||||
# define NID_algorithm 38
|
||||
# define OBJ_algorithm 1L,3L,14L,3L,2L
|
||||
|
||||
# define LN_rsadsi "rsadsi"
|
||||
# define NID_rsadsi 1
|
||||
# define OBJ_rsadsi 1L,2L,840L,113549L
|
||||
|
||||
# define LN_pkcs "pkcs"
|
||||
# define NID_pkcs 2
|
||||
# define OBJ_pkcs OBJ_rsadsi,1L
|
||||
|
||||
# define SN_md2 "MD2"
|
||||
# define LN_md2 "md2"
|
||||
# define NID_md2 3
|
||||
# define OBJ_md2 OBJ_rsadsi,2L,2L
|
||||
|
||||
# define SN_md5 "MD5"
|
||||
# define LN_md5 "md5"
|
||||
# define NID_md5 4
|
||||
# define OBJ_md5 OBJ_rsadsi,2L,5L
|
||||
|
||||
# define SN_rc4 "RC4"
|
||||
# define LN_rc4 "rc4"
|
||||
# define NID_rc4 5
|
||||
# define OBJ_rc4 OBJ_rsadsi,3L,4L
|
||||
|
||||
# define LN_rsaEncryption "rsaEncryption"
|
||||
# define NID_rsaEncryption 6
|
||||
# define OBJ_rsaEncryption OBJ_pkcs,1L,1L
|
||||
|
||||
# define SN_md2WithRSAEncryption "RSA-MD2"
|
||||
# define LN_md2WithRSAEncryption "md2WithRSAEncryption"
|
||||
# define NID_md2WithRSAEncryption 7
|
||||
# define OBJ_md2WithRSAEncryption OBJ_pkcs,1L,2L
|
||||
|
||||
# define SN_md5WithRSAEncryption "RSA-MD5"
|
||||
# define LN_md5WithRSAEncryption "md5WithRSAEncryption"
|
||||
# define NID_md5WithRSAEncryption 8
|
||||
# define OBJ_md5WithRSAEncryption OBJ_pkcs,1L,4L
|
||||
|
||||
# define SN_pbeWithMD2AndDES_CBC "PBE-MD2-DES"
|
||||
# define LN_pbeWithMD2AndDES_CBC "pbeWithMD2AndDES-CBC"
|
||||
# define NID_pbeWithMD2AndDES_CBC 9
|
||||
# define OBJ_pbeWithMD2AndDES_CBC OBJ_pkcs,5L,1L
|
||||
|
||||
# define SN_pbeWithMD5AndDES_CBC "PBE-MD5-DES"
|
||||
# define LN_pbeWithMD5AndDES_CBC "pbeWithMD5AndDES-CBC"
|
||||
# define NID_pbeWithMD5AndDES_CBC 10
|
||||
# define OBJ_pbeWithMD5AndDES_CBC OBJ_pkcs,5L,3L
|
||||
|
||||
# define LN_X500 "X500"
|
||||
# define NID_X500 11
|
||||
# define OBJ_X500 2L,5L
|
||||
|
||||
# define LN_X509 "X509"
|
||||
# define NID_X509 12
|
||||
# define OBJ_X509 OBJ_X500,4L
|
||||
|
||||
# define SN_commonName "CN"
|
||||
# define LN_commonName "commonName"
|
||||
# define NID_commonName 13
|
||||
# define OBJ_commonName OBJ_X509,3L
|
||||
|
||||
# define SN_countryName "C"
|
||||
# define LN_countryName "countryName"
|
||||
# define NID_countryName 14
|
||||
# define OBJ_countryName OBJ_X509,6L
|
||||
|
||||
# define SN_localityName "L"
|
||||
# define LN_localityName "localityName"
|
||||
# define NID_localityName 15
|
||||
# define OBJ_localityName OBJ_X509,7L
|
||||
|
||||
/* Postal Address? PA */
|
||||
|
||||
/* should be "ST" (rfc1327) but MS uses 'S' */
|
||||
# define SN_stateOrProvinceName "ST"
|
||||
# define LN_stateOrProvinceName "stateOrProvinceName"
|
||||
# define NID_stateOrProvinceName 16
|
||||
# define OBJ_stateOrProvinceName OBJ_X509,8L
|
||||
|
||||
# define SN_organizationName "O"
|
||||
# define LN_organizationName "organizationName"
|
||||
# define NID_organizationName 17
|
||||
# define OBJ_organizationName OBJ_X509,10L
|
||||
|
||||
# define SN_organizationalUnitName "OU"
|
||||
# define LN_organizationalUnitName "organizationalUnitName"
|
||||
# define NID_organizationalUnitName 18
|
||||
# define OBJ_organizationalUnitName OBJ_X509,11L
|
||||
|
||||
# define SN_rsa "RSA"
|
||||
# define LN_rsa "rsa"
|
||||
# define NID_rsa 19
|
||||
# define OBJ_rsa OBJ_X500,8L,1L,1L
|
||||
|
||||
# define LN_pkcs7 "pkcs7"
|
||||
# define NID_pkcs7 20
|
||||
# define OBJ_pkcs7 OBJ_pkcs,7L
|
||||
|
||||
# define LN_pkcs7_data "pkcs7-data"
|
||||
# define NID_pkcs7_data 21
|
||||
# define OBJ_pkcs7_data OBJ_pkcs7,1L
|
||||
|
||||
# define LN_pkcs7_signed "pkcs7-signedData"
|
||||
# define NID_pkcs7_signed 22
|
||||
# define OBJ_pkcs7_signed OBJ_pkcs7,2L
|
||||
|
||||
# define LN_pkcs7_enveloped "pkcs7-envelopedData"
|
||||
# define NID_pkcs7_enveloped 23
|
||||
# define OBJ_pkcs7_enveloped OBJ_pkcs7,3L
|
||||
|
||||
# define LN_pkcs7_signedAndEnveloped "pkcs7-signedAndEnvelopedData"
|
||||
# define NID_pkcs7_signedAndEnveloped 24
|
||||
# define OBJ_pkcs7_signedAndEnveloped OBJ_pkcs7,4L
|
||||
|
||||
# define LN_pkcs7_digest "pkcs7-digestData"
|
||||
# define NID_pkcs7_digest 25
|
||||
# define OBJ_pkcs7_digest OBJ_pkcs7,5L
|
||||
|
||||
# define LN_pkcs7_encrypted "pkcs7-encryptedData"
|
||||
# define NID_pkcs7_encrypted 26
|
||||
# define OBJ_pkcs7_encrypted OBJ_pkcs7,6L
|
||||
|
||||
# define LN_pkcs3 "pkcs3"
|
||||
# define NID_pkcs3 27
|
||||
# define OBJ_pkcs3 OBJ_pkcs,3L
|
||||
|
||||
# define LN_dhKeyAgreement "dhKeyAgreement"
|
||||
# define NID_dhKeyAgreement 28
|
||||
# define OBJ_dhKeyAgreement OBJ_pkcs3,1L
|
||||
|
||||
# define SN_des_ecb "DES-ECB"
|
||||
# define LN_des_ecb "des-ecb"
|
||||
# define NID_des_ecb 29
|
||||
# define OBJ_des_ecb OBJ_algorithm,6L
|
||||
|
||||
# define SN_des_cfb64 "DES-CFB"
|
||||
# define LN_des_cfb64 "des-cfb"
|
||||
# define NID_des_cfb64 30
|
||||
/* IV + num */
|
||||
# define OBJ_des_cfb64 OBJ_algorithm,9L
|
||||
|
||||
# define SN_des_cbc "DES-CBC"
|
||||
# define LN_des_cbc "des-cbc"
|
||||
# define NID_des_cbc 31
|
||||
/* IV */
|
||||
# define OBJ_des_cbc OBJ_algorithm,7L
|
||||
|
||||
# define SN_des_ede "DES-EDE"
|
||||
# define LN_des_ede "des-ede"
|
||||
# define NID_des_ede 32
|
||||
/* ?? */
|
||||
# define OBJ_des_ede OBJ_algorithm,17L
|
||||
|
||||
# define SN_des_ede3 "DES-EDE3"
|
||||
# define LN_des_ede3 "des-ede3"
|
||||
# define NID_des_ede3 33
|
||||
|
||||
# define SN_idea_cbc "IDEA-CBC"
|
||||
# define LN_idea_cbc "idea-cbc"
|
||||
# define NID_idea_cbc 34
|
||||
# define OBJ_idea_cbc 1L,3L,6L,1L,4L,1L,188L,7L,1L,1L,2L
|
||||
|
||||
# define SN_idea_cfb64 "IDEA-CFB"
|
||||
# define LN_idea_cfb64 "idea-cfb"
|
||||
# define NID_idea_cfb64 35
|
||||
|
||||
# define SN_idea_ecb "IDEA-ECB"
|
||||
# define LN_idea_ecb "idea-ecb"
|
||||
# define NID_idea_ecb 36
|
||||
|
||||
# define SN_rc2_cbc "RC2-CBC"
|
||||
# define LN_rc2_cbc "rc2-cbc"
|
||||
# define NID_rc2_cbc 37
|
||||
# define OBJ_rc2_cbc OBJ_rsadsi,3L,2L
|
||||
|
||||
# define SN_rc2_ecb "RC2-ECB"
|
||||
# define LN_rc2_ecb "rc2-ecb"
|
||||
# define NID_rc2_ecb 38
|
||||
|
||||
# define SN_rc2_cfb64 "RC2-CFB"
|
||||
# define LN_rc2_cfb64 "rc2-cfb"
|
||||
# define NID_rc2_cfb64 39
|
||||
|
||||
# define SN_rc2_ofb64 "RC2-OFB"
|
||||
# define LN_rc2_ofb64 "rc2-ofb"
|
||||
# define NID_rc2_ofb64 40
|
||||
|
||||
# define SN_sha "SHA"
|
||||
# define LN_sha "sha"
|
||||
# define NID_sha 41
|
||||
# define OBJ_sha OBJ_algorithm,18L
|
||||
|
||||
# define SN_shaWithRSAEncryption "RSA-SHA"
|
||||
# define LN_shaWithRSAEncryption "shaWithRSAEncryption"
|
||||
# define NID_shaWithRSAEncryption 42
|
||||
# define OBJ_shaWithRSAEncryption OBJ_algorithm,15L
|
||||
|
||||
# define SN_des_ede_cbc "DES-EDE-CBC"
|
||||
# define LN_des_ede_cbc "des-ede-cbc"
|
||||
# define NID_des_ede_cbc 43
|
||||
|
||||
# define SN_des_ede3_cbc "DES-EDE3-CBC"
|
||||
# define LN_des_ede3_cbc "des-ede3-cbc"
|
||||
# define NID_des_ede3_cbc 44
|
||||
# define OBJ_des_ede3_cbc OBJ_rsadsi,3L,7L
|
||||
|
||||
# define SN_des_ofb64 "DES-OFB"
|
||||
# define LN_des_ofb64 "des-ofb"
|
||||
# define NID_des_ofb64 45
|
||||
# define OBJ_des_ofb64 OBJ_algorithm,8L
|
||||
|
||||
# define SN_idea_ofb64 "IDEA-OFB"
|
||||
# define LN_idea_ofb64 "idea-ofb"
|
||||
# define NID_idea_ofb64 46
|
||||
|
||||
# define LN_pkcs9 "pkcs9"
|
||||
# define NID_pkcs9 47
|
||||
# define OBJ_pkcs9 OBJ_pkcs,9L
|
||||
|
||||
# define SN_pkcs9_emailAddress "Email"
|
||||
# define LN_pkcs9_emailAddress "emailAddress"
|
||||
# define NID_pkcs9_emailAddress 48
|
||||
# define OBJ_pkcs9_emailAddress OBJ_pkcs9,1L
|
||||
|
||||
# define LN_pkcs9_unstructuredName "unstructuredName"
|
||||
# define NID_pkcs9_unstructuredName 49
|
||||
# define OBJ_pkcs9_unstructuredName OBJ_pkcs9,2L
|
||||
|
||||
# define LN_pkcs9_contentType "contentType"
|
||||
# define NID_pkcs9_contentType 50
|
||||
# define OBJ_pkcs9_contentType OBJ_pkcs9,3L
|
||||
|
||||
# define LN_pkcs9_messageDigest "messageDigest"
|
||||
# define NID_pkcs9_messageDigest 51
|
||||
# define OBJ_pkcs9_messageDigest OBJ_pkcs9,4L
|
||||
|
||||
# define LN_pkcs9_signingTime "signingTime"
|
||||
# define NID_pkcs9_signingTime 52
|
||||
# define OBJ_pkcs9_signingTime OBJ_pkcs9,5L
|
||||
|
||||
# define LN_pkcs9_countersignature "countersignature"
|
||||
# define NID_pkcs9_countersignature 53
|
||||
# define OBJ_pkcs9_countersignature OBJ_pkcs9,6L
|
||||
|
||||
# define LN_pkcs9_challengePassword "challengePassword"
|
||||
# define NID_pkcs9_challengePassword 54
|
||||
# define OBJ_pkcs9_challengePassword OBJ_pkcs9,7L
|
||||
|
||||
# define LN_pkcs9_unstructuredAddress "unstructuredAddress"
|
||||
# define NID_pkcs9_unstructuredAddress 55
|
||||
# define OBJ_pkcs9_unstructuredAddress OBJ_pkcs9,8L
|
||||
|
||||
# define LN_pkcs9_extCertAttributes "extendedCertificateAttributes"
|
||||
# define NID_pkcs9_extCertAttributes 56
|
||||
# define OBJ_pkcs9_extCertAttributes OBJ_pkcs9,9L
|
||||
|
||||
# define SN_netscape "Netscape"
|
||||
# define LN_netscape "Netscape Communications Corp."
|
||||
# define NID_netscape 57
|
||||
# define OBJ_netscape 2L,16L,840L,1L,113730L
|
||||
|
||||
# define SN_netscape_cert_extension "nsCertExt"
|
||||
# define LN_netscape_cert_extension "Netscape Certificate Extension"
|
||||
# define NID_netscape_cert_extension 58
|
||||
# define OBJ_netscape_cert_extension OBJ_netscape,1L
|
||||
|
||||
# define SN_netscape_data_type "nsDataType"
|
||||
# define LN_netscape_data_type "Netscape Data Type"
|
||||
# define NID_netscape_data_type 59
|
||||
# define OBJ_netscape_data_type OBJ_netscape,2L
|
||||
|
||||
# define SN_des_ede_cfb64 "DES-EDE-CFB"
|
||||
# define LN_des_ede_cfb64 "des-ede-cfb"
|
||||
# define NID_des_ede_cfb64 60
|
||||
|
||||
# define SN_des_ede3_cfb64 "DES-EDE3-CFB"
|
||||
# define LN_des_ede3_cfb64 "des-ede3-cfb"
|
||||
# define NID_des_ede3_cfb64 61
|
||||
|
||||
# define SN_des_ede_ofb64 "DES-EDE-OFB"
|
||||
# define LN_des_ede_ofb64 "des-ede-ofb"
|
||||
# define NID_des_ede_ofb64 62
|
||||
|
||||
# define SN_des_ede3_ofb64 "DES-EDE3-OFB"
|
||||
# define LN_des_ede3_ofb64 "des-ede3-ofb"
|
||||
# define NID_des_ede3_ofb64 63
|
||||
|
||||
/* I'm not sure about the object ID */
|
||||
# define SN_sha1 "SHA1"
|
||||
# define LN_sha1 "sha1"
|
||||
# define NID_sha1 64
|
||||
# define OBJ_sha1 OBJ_algorithm,26L
|
||||
/* 28 Jun 1996 - eay */
|
||||
/* #define OBJ_sha1 1L,3L,14L,2L,26L,05L <- wrong */
|
||||
|
||||
# define SN_sha1WithRSAEncryption "RSA-SHA1"
|
||||
# define LN_sha1WithRSAEncryption "sha1WithRSAEncryption"
|
||||
# define NID_sha1WithRSAEncryption 65
|
||||
# define OBJ_sha1WithRSAEncryption OBJ_pkcs,1L,5L
|
||||
|
||||
# define SN_dsaWithSHA "DSA-SHA"
|
||||
# define LN_dsaWithSHA "dsaWithSHA"
|
||||
# define NID_dsaWithSHA 66
|
||||
# define OBJ_dsaWithSHA OBJ_algorithm,13L
|
||||
|
||||
# define SN_dsa_2 "DSA-old"
|
||||
# define LN_dsa_2 "dsaEncryption-old"
|
||||
# define NID_dsa_2 67
|
||||
# define OBJ_dsa_2 OBJ_algorithm,12L
|
||||
|
||||
/* proposed by microsoft to RSA */
|
||||
# define SN_pbeWithSHA1AndRC2_CBC "PBE-SHA1-RC2-64"
|
||||
# define LN_pbeWithSHA1AndRC2_CBC "pbeWithSHA1AndRC2-CBC"
|
||||
# define NID_pbeWithSHA1AndRC2_CBC 68
|
||||
# define OBJ_pbeWithSHA1AndRC2_CBC OBJ_pkcs,5L,11L
|
||||
|
||||
/*
|
||||
* proposed by microsoft to RSA as pbeWithSHA1AndRC4: it is now defined
|
||||
* explicitly in PKCS#5 v2.0 as id-PBKDF2 which is something completely
|
||||
* different.
|
||||
*/
|
||||
# define LN_id_pbkdf2 "PBKDF2"
|
||||
# define NID_id_pbkdf2 69
|
||||
# define OBJ_id_pbkdf2 OBJ_pkcs,5L,12L
|
||||
|
||||
# define SN_dsaWithSHA1_2 "DSA-SHA1-old"
|
||||
# define LN_dsaWithSHA1_2 "dsaWithSHA1-old"
|
||||
# define NID_dsaWithSHA1_2 70
|
||||
/* Got this one from 'sdn706r20.pdf' which is actually an NSA document :-) */
|
||||
# define OBJ_dsaWithSHA1_2 OBJ_algorithm,27L
|
||||
|
||||
# define SN_netscape_cert_type "nsCertType"
|
||||
# define LN_netscape_cert_type "Netscape Cert Type"
|
||||
# define NID_netscape_cert_type 71
|
||||
# define OBJ_netscape_cert_type OBJ_netscape_cert_extension,1L
|
||||
|
||||
# define SN_netscape_base_url "nsBaseUrl"
|
||||
# define LN_netscape_base_url "Netscape Base Url"
|
||||
# define NID_netscape_base_url 72
|
||||
# define OBJ_netscape_base_url OBJ_netscape_cert_extension,2L
|
||||
|
||||
# define SN_netscape_revocation_url "nsRevocationUrl"
|
||||
# define LN_netscape_revocation_url "Netscape Revocation Url"
|
||||
# define NID_netscape_revocation_url 73
|
||||
# define OBJ_netscape_revocation_url OBJ_netscape_cert_extension,3L
|
||||
|
||||
# define SN_netscape_ca_revocation_url "nsCaRevocationUrl"
|
||||
# define LN_netscape_ca_revocation_url "Netscape CA Revocation Url"
|
||||
# define NID_netscape_ca_revocation_url 74
|
||||
# define OBJ_netscape_ca_revocation_url OBJ_netscape_cert_extension,4L
|
||||
|
||||
# define SN_netscape_renewal_url "nsRenewalUrl"
|
||||
# define LN_netscape_renewal_url "Netscape Renewal Url"
|
||||
# define NID_netscape_renewal_url 75
|
||||
# define OBJ_netscape_renewal_url OBJ_netscape_cert_extension,7L
|
||||
|
||||
# define SN_netscape_ca_policy_url "nsCaPolicyUrl"
|
||||
# define LN_netscape_ca_policy_url "Netscape CA Policy Url"
|
||||
# define NID_netscape_ca_policy_url 76
|
||||
# define OBJ_netscape_ca_policy_url OBJ_netscape_cert_extension,8L
|
||||
|
||||
# define SN_netscape_ssl_server_name "nsSslServerName"
|
||||
# define LN_netscape_ssl_server_name "Netscape SSL Server Name"
|
||||
# define NID_netscape_ssl_server_name 77
|
||||
# define OBJ_netscape_ssl_server_name OBJ_netscape_cert_extension,12L
|
||||
|
||||
# define SN_netscape_comment "nsComment"
|
||||
# define LN_netscape_comment "Netscape Comment"
|
||||
# define NID_netscape_comment 78
|
||||
# define OBJ_netscape_comment OBJ_netscape_cert_extension,13L
|
||||
|
||||
# define SN_netscape_cert_sequence "nsCertSequence"
|
||||
# define LN_netscape_cert_sequence "Netscape Certificate Sequence"
|
||||
# define NID_netscape_cert_sequence 79
|
||||
# define OBJ_netscape_cert_sequence OBJ_netscape_data_type,5L
|
||||
|
||||
# define SN_desx_cbc "DESX-CBC"
|
||||
# define LN_desx_cbc "desx-cbc"
|
||||
# define NID_desx_cbc 80
|
||||
|
||||
# define SN_id_ce "id-ce"
|
||||
# define NID_id_ce 81
|
||||
# define OBJ_id_ce 2L,5L,29L
|
||||
|
||||
# define SN_subject_key_identifier "subjectKeyIdentifier"
|
||||
# define LN_subject_key_identifier "X509v3 Subject Key Identifier"
|
||||
# define NID_subject_key_identifier 82
|
||||
# define OBJ_subject_key_identifier OBJ_id_ce,14L
|
||||
|
||||
# define SN_key_usage "keyUsage"
|
||||
# define LN_key_usage "X509v3 Key Usage"
|
||||
# define NID_key_usage 83
|
||||
# define OBJ_key_usage OBJ_id_ce,15L
|
||||
|
||||
# define SN_private_key_usage_period "privateKeyUsagePeriod"
|
||||
# define LN_private_key_usage_period "X509v3 Private Key Usage Period"
|
||||
# define NID_private_key_usage_period 84
|
||||
# define OBJ_private_key_usage_period OBJ_id_ce,16L
|
||||
|
||||
# define SN_subject_alt_name "subjectAltName"
|
||||
# define LN_subject_alt_name "X509v3 Subject Alternative Name"
|
||||
# define NID_subject_alt_name 85
|
||||
# define OBJ_subject_alt_name OBJ_id_ce,17L
|
||||
|
||||
# define SN_issuer_alt_name "issuerAltName"
|
||||
# define LN_issuer_alt_name "X509v3 Issuer Alternative Name"
|
||||
# define NID_issuer_alt_name 86
|
||||
# define OBJ_issuer_alt_name OBJ_id_ce,18L
|
||||
|
||||
# define SN_basic_constraints "basicConstraints"
|
||||
# define LN_basic_constraints "X509v3 Basic Constraints"
|
||||
# define NID_basic_constraints 87
|
||||
# define OBJ_basic_constraints OBJ_id_ce,19L
|
||||
|
||||
# define SN_crl_number "crlNumber"
|
||||
# define LN_crl_number "X509v3 CRL Number"
|
||||
# define NID_crl_number 88
|
||||
# define OBJ_crl_number OBJ_id_ce,20L
|
||||
|
||||
# define SN_certificate_policies "certificatePolicies"
|
||||
# define LN_certificate_policies "X509v3 Certificate Policies"
|
||||
# define NID_certificate_policies 89
|
||||
# define OBJ_certificate_policies OBJ_id_ce,32L
|
||||
|
||||
# define SN_authority_key_identifier "authorityKeyIdentifier"
|
||||
# define LN_authority_key_identifier "X509v3 Authority Key Identifier"
|
||||
# define NID_authority_key_identifier 90
|
||||
# define OBJ_authority_key_identifier OBJ_id_ce,35L
|
||||
|
||||
# define SN_bf_cbc "BF-CBC"
|
||||
# define LN_bf_cbc "bf-cbc"
|
||||
# define NID_bf_cbc 91
|
||||
# define OBJ_bf_cbc 1L,3L,6L,1L,4L,1L,3029L,1L,2L
|
||||
|
||||
# define SN_bf_ecb "BF-ECB"
|
||||
# define LN_bf_ecb "bf-ecb"
|
||||
# define NID_bf_ecb 92
|
||||
|
||||
# define SN_bf_cfb64 "BF-CFB"
|
||||
# define LN_bf_cfb64 "bf-cfb"
|
||||
# define NID_bf_cfb64 93
|
||||
|
||||
# define SN_bf_ofb64 "BF-OFB"
|
||||
# define LN_bf_ofb64 "bf-ofb"
|
||||
# define NID_bf_ofb64 94
|
||||
|
||||
# define SN_mdc2 "MDC2"
|
||||
# define LN_mdc2 "mdc2"
|
||||
# define NID_mdc2 95
|
||||
# define OBJ_mdc2 2L,5L,8L,3L,101L
|
||||
/* An alternative? 1L,3L,14L,3L,2L,19L */
|
||||
|
||||
# define SN_mdc2WithRSA "RSA-MDC2"
|
||||
# define LN_mdc2WithRSA "mdc2withRSA"
|
||||
# define NID_mdc2WithRSA 96
|
||||
# define OBJ_mdc2WithRSA 2L,5L,8L,3L,100L
|
||||
|
||||
# define SN_rc4_40 "RC4-40"
|
||||
# define LN_rc4_40 "rc4-40"
|
||||
# define NID_rc4_40 97
|
||||
|
||||
# define SN_rc2_40_cbc "RC2-40-CBC"
|
||||
# define LN_rc2_40_cbc "rc2-40-cbc"
|
||||
# define NID_rc2_40_cbc 98
|
||||
|
||||
# define SN_givenName "G"
|
||||
# define LN_givenName "givenName"
|
||||
# define NID_givenName 99
|
||||
# define OBJ_givenName OBJ_X509,42L
|
||||
|
||||
# define SN_surname "S"
|
||||
# define LN_surname "surname"
|
||||
# define NID_surname 100
|
||||
# define OBJ_surname OBJ_X509,4L
|
||||
|
||||
# define SN_initials "I"
|
||||
# define LN_initials "initials"
|
||||
# define NID_initials 101
|
||||
# define OBJ_initials OBJ_X509,43L
|
||||
|
||||
# define SN_uniqueIdentifier "UID"
|
||||
# define LN_uniqueIdentifier "uniqueIdentifier"
|
||||
# define NID_uniqueIdentifier 102
|
||||
# define OBJ_uniqueIdentifier OBJ_X509,45L
|
||||
|
||||
# define SN_crl_distribution_points "crlDistributionPoints"
|
||||
# define LN_crl_distribution_points "X509v3 CRL Distribution Points"
|
||||
# define NID_crl_distribution_points 103
|
||||
# define OBJ_crl_distribution_points OBJ_id_ce,31L
|
||||
|
||||
# define SN_md5WithRSA "RSA-NP-MD5"
|
||||
# define LN_md5WithRSA "md5WithRSA"
|
||||
# define NID_md5WithRSA 104
|
||||
# define OBJ_md5WithRSA OBJ_algorithm,3L
|
||||
|
||||
# define SN_serialNumber "SN"
|
||||
# define LN_serialNumber "serialNumber"
|
||||
# define NID_serialNumber 105
|
||||
# define OBJ_serialNumber OBJ_X509,5L
|
||||
|
||||
# define SN_title "T"
|
||||
# define LN_title "title"
|
||||
# define NID_title 106
|
||||
# define OBJ_title OBJ_X509,12L
|
||||
|
||||
# define SN_description "D"
|
||||
# define LN_description "description"
|
||||
# define NID_description 107
|
||||
# define OBJ_description OBJ_X509,13L
|
||||
|
||||
/* CAST5 is CAST-128, I'm just sticking with the documentation */
|
||||
# define SN_cast5_cbc "CAST5-CBC"
|
||||
# define LN_cast5_cbc "cast5-cbc"
|
||||
# define NID_cast5_cbc 108
|
||||
# define OBJ_cast5_cbc 1L,2L,840L,113533L,7L,66L,10L
|
||||
|
||||
# define SN_cast5_ecb "CAST5-ECB"
|
||||
# define LN_cast5_ecb "cast5-ecb"
|
||||
# define NID_cast5_ecb 109
|
||||
|
||||
# define SN_cast5_cfb64 "CAST5-CFB"
|
||||
# define LN_cast5_cfb64 "cast5-cfb"
|
||||
# define NID_cast5_cfb64 110
|
||||
|
||||
# define SN_cast5_ofb64 "CAST5-OFB"
|
||||
# define LN_cast5_ofb64 "cast5-ofb"
|
||||
# define NID_cast5_ofb64 111
|
||||
|
||||
# define LN_pbeWithMD5AndCast5_CBC "pbeWithMD5AndCast5CBC"
|
||||
# define NID_pbeWithMD5AndCast5_CBC 112
|
||||
# define OBJ_pbeWithMD5AndCast5_CBC 1L,2L,840L,113533L,7L,66L,12L
|
||||
|
||||
/*-
|
||||
* This is one sun will soon be using :-(
|
||||
* id-dsa-with-sha1 ID ::= {
|
||||
* iso(1) member-body(2) us(840) x9-57 (10040) x9cm(4) 3 }
|
||||
*/
|
||||
# define SN_dsaWithSHA1 "DSA-SHA1"
|
||||
# define LN_dsaWithSHA1 "dsaWithSHA1"
|
||||
# define NID_dsaWithSHA1 113
|
||||
# define OBJ_dsaWithSHA1 1L,2L,840L,10040L,4L,3L
|
||||
|
||||
# define NID_md5_sha1 114
|
||||
# define SN_md5_sha1 "MD5-SHA1"
|
||||
# define LN_md5_sha1 "md5-sha1"
|
||||
|
||||
# define SN_sha1WithRSA "RSA-SHA1-2"
|
||||
# define LN_sha1WithRSA "sha1WithRSA"
|
||||
# define NID_sha1WithRSA 115
|
||||
# define OBJ_sha1WithRSA OBJ_algorithm,29L
|
||||
|
||||
# define SN_dsa "DSA"
|
||||
# define LN_dsa "dsaEncryption"
|
||||
# define NID_dsa 116
|
||||
# define OBJ_dsa 1L,2L,840L,10040L,4L,1L
|
||||
|
||||
# define SN_ripemd160 "RIPEMD160"
|
||||
# define LN_ripemd160 "ripemd160"
|
||||
# define NID_ripemd160 117
|
||||
# define OBJ_ripemd160 1L,3L,36L,3L,2L,1L
|
||||
|
||||
/*
|
||||
* The name should actually be rsaSignatureWithripemd160, but I'm going to
|
||||
* continue using the convention I'm using with the other ciphers
|
||||
*/
|
||||
# define SN_ripemd160WithRSA "RSA-RIPEMD160"
|
||||
# define LN_ripemd160WithRSA "ripemd160WithRSA"
|
||||
# define NID_ripemd160WithRSA 119
|
||||
# define OBJ_ripemd160WithRSA 1L,3L,36L,3L,3L,1L,2L
|
||||
|
||||
/*-
|
||||
* Taken from rfc2040
|
||||
* RC5_CBC_Parameters ::= SEQUENCE {
|
||||
* version INTEGER (v1_0(16)),
|
||||
* rounds INTEGER (8..127),
|
||||
* blockSizeInBits INTEGER (64, 128),
|
||||
* iv OCTET STRING OPTIONAL
|
||||
* }
|
||||
*/
|
||||
# define SN_rc5_cbc "RC5-CBC"
|
||||
# define LN_rc5_cbc "rc5-cbc"
|
||||
# define NID_rc5_cbc 120
|
||||
# define OBJ_rc5_cbc OBJ_rsadsi,3L,8L
|
||||
|
||||
# define SN_rc5_ecb "RC5-ECB"
|
||||
# define LN_rc5_ecb "rc5-ecb"
|
||||
# define NID_rc5_ecb 121
|
||||
|
||||
# define SN_rc5_cfb64 "RC5-CFB"
|
||||
# define LN_rc5_cfb64 "rc5-cfb"
|
||||
# define NID_rc5_cfb64 122
|
||||
|
||||
# define SN_rc5_ofb64 "RC5-OFB"
|
||||
# define LN_rc5_ofb64 "rc5-ofb"
|
||||
# define NID_rc5_ofb64 123
|
||||
|
||||
# define SN_rle_compression "RLE"
|
||||
# define LN_rle_compression "run length compression"
|
||||
# define NID_rle_compression 124
|
||||
# define OBJ_rle_compression 1L,1L,1L,1L,666L,1L
|
||||
|
||||
# define SN_zlib_compression "ZLIB"
|
||||
# define LN_zlib_compression "zlib compression"
|
||||
# define NID_zlib_compression 125
|
||||
# define OBJ_zlib_compression 1L,1L,1L,1L,666L,2L
|
||||
|
||||
# define SN_ext_key_usage "extendedKeyUsage"
|
||||
# define LN_ext_key_usage "X509v3 Extended Key Usage"
|
||||
# define NID_ext_key_usage 126
|
||||
# define OBJ_ext_key_usage OBJ_id_ce,37
|
||||
|
||||
# define SN_id_pkix "PKIX"
|
||||
# define NID_id_pkix 127
|
||||
# define OBJ_id_pkix 1L,3L,6L,1L,5L,5L,7L
|
||||
|
||||
# define SN_id_kp "id-kp"
|
||||
# define NID_id_kp 128
|
||||
# define OBJ_id_kp OBJ_id_pkix,3L
|
||||
|
||||
/* PKIX extended key usage OIDs */
|
||||
|
||||
# define SN_server_auth "serverAuth"
|
||||
# define LN_server_auth "TLS Web Server Authentication"
|
||||
# define NID_server_auth 129
|
||||
# define OBJ_server_auth OBJ_id_kp,1L
|
||||
|
||||
# define SN_client_auth "clientAuth"
|
||||
# define LN_client_auth "TLS Web Client Authentication"
|
||||
# define NID_client_auth 130
|
||||
# define OBJ_client_auth OBJ_id_kp,2L
|
||||
|
||||
# define SN_code_sign "codeSigning"
|
||||
# define LN_code_sign "Code Signing"
|
||||
# define NID_code_sign 131
|
||||
# define OBJ_code_sign OBJ_id_kp,3L
|
||||
|
||||
# define SN_email_protect "emailProtection"
|
||||
# define LN_email_protect "E-mail Protection"
|
||||
# define NID_email_protect 132
|
||||
# define OBJ_email_protect OBJ_id_kp,4L
|
||||
|
||||
# define SN_time_stamp "timeStamping"
|
||||
# define LN_time_stamp "Time Stamping"
|
||||
# define NID_time_stamp 133
|
||||
# define OBJ_time_stamp OBJ_id_kp,8L
|
||||
|
||||
/* Additional extended key usage OIDs: Microsoft */
|
||||
|
||||
# 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 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 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 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 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
|
||||
|
||||
/* Additional usage: Netscape */
|
||||
|
||||
# define SN_ns_sgc "nsSGC"
|
||||
# define LN_ns_sgc "Netscape Server Gated Crypto"
|
||||
# define NID_ns_sgc 139
|
||||
# define OBJ_ns_sgc OBJ_netscape,4L,1L
|
||||
|
||||
# define SN_delta_crl "deltaCRL"
|
||||
# define LN_delta_crl "X509v3 Delta CRL Indicator"
|
||||
# define NID_delta_crl 140
|
||||
# define OBJ_delta_crl OBJ_id_ce,27L
|
||||
|
||||
# define SN_crl_reason "CRLReason"
|
||||
# define LN_crl_reason "CRL Reason Code"
|
||||
# define NID_crl_reason 141
|
||||
# define OBJ_crl_reason OBJ_id_ce,21L
|
||||
|
||||
# define SN_invalidity_date "invalidityDate"
|
||||
# define LN_invalidity_date "Invalidity Date"
|
||||
# define NID_invalidity_date 142
|
||||
# define OBJ_invalidity_date OBJ_id_ce,24L
|
||||
|
||||
# define SN_sxnet "SXNetID"
|
||||
# define LN_sxnet "Strong Extranet ID"
|
||||
# define NID_sxnet 143
|
||||
# define OBJ_sxnet 1L,3L,101L,1L,4L,1L
|
||||
|
||||
/* PKCS12 and related OBJECT IDENTIFIERS */
|
||||
|
||||
# define OBJ_pkcs12 OBJ_pkcs,12L
|
||||
# define OBJ_pkcs12_pbeids OBJ_pkcs12, 1
|
||||
|
||||
# define SN_pbe_WithSHA1And128BitRC4 "PBE-SHA1-RC4-128"
|
||||
# define LN_pbe_WithSHA1And128BitRC4 "pbeWithSHA1And128BitRC4"
|
||||
# define NID_pbe_WithSHA1And128BitRC4 144
|
||||
# define OBJ_pbe_WithSHA1And128BitRC4 OBJ_pkcs12_pbeids, 1L
|
||||
|
||||
# define SN_pbe_WithSHA1And40BitRC4 "PBE-SHA1-RC4-40"
|
||||
# define LN_pbe_WithSHA1And40BitRC4 "pbeWithSHA1And40BitRC4"
|
||||
# define NID_pbe_WithSHA1And40BitRC4 145
|
||||
# define OBJ_pbe_WithSHA1And40BitRC4 OBJ_pkcs12_pbeids, 2L
|
||||
|
||||
# define SN_pbe_WithSHA1And3_Key_TripleDES_CBC "PBE-SHA1-3DES"
|
||||
# define LN_pbe_WithSHA1And3_Key_TripleDES_CBC "pbeWithSHA1And3-KeyTripleDES-CBC"
|
||||
# define NID_pbe_WithSHA1And3_Key_TripleDES_CBC 146
|
||||
# define OBJ_pbe_WithSHA1And3_Key_TripleDES_CBC OBJ_pkcs12_pbeids, 3L
|
||||
|
||||
# define SN_pbe_WithSHA1And2_Key_TripleDES_CBC "PBE-SHA1-2DES"
|
||||
# define LN_pbe_WithSHA1And2_Key_TripleDES_CBC "pbeWithSHA1And2-KeyTripleDES-CBC"
|
||||
# define NID_pbe_WithSHA1And2_Key_TripleDES_CBC 147
|
||||
# define OBJ_pbe_WithSHA1And2_Key_TripleDES_CBC OBJ_pkcs12_pbeids, 4L
|
||||
|
||||
# define SN_pbe_WithSHA1And128BitRC2_CBC "PBE-SHA1-RC2-128"
|
||||
# define LN_pbe_WithSHA1And128BitRC2_CBC "pbeWithSHA1And128BitRC2-CBC"
|
||||
# define NID_pbe_WithSHA1And128BitRC2_CBC 148
|
||||
# define OBJ_pbe_WithSHA1And128BitRC2_CBC OBJ_pkcs12_pbeids, 5L
|
||||
|
||||
# define SN_pbe_WithSHA1And40BitRC2_CBC "PBE-SHA1-RC2-40"
|
||||
# define LN_pbe_WithSHA1And40BitRC2_CBC "pbeWithSHA1And40BitRC2-CBC"
|
||||
# define NID_pbe_WithSHA1And40BitRC2_CBC 149
|
||||
# define OBJ_pbe_WithSHA1And40BitRC2_CBC OBJ_pkcs12_pbeids, 6L
|
||||
|
||||
# define OBJ_pkcs12_Version1 OBJ_pkcs12, 10L
|
||||
|
||||
# define OBJ_pkcs12_BagIds OBJ_pkcs12_Version1, 1L
|
||||
|
||||
# define LN_keyBag "keyBag"
|
||||
# define NID_keyBag 150
|
||||
# define OBJ_keyBag OBJ_pkcs12_BagIds, 1L
|
||||
|
||||
# define LN_pkcs8ShroudedKeyBag "pkcs8ShroudedKeyBag"
|
||||
# define NID_pkcs8ShroudedKeyBag 151
|
||||
# define OBJ_pkcs8ShroudedKeyBag OBJ_pkcs12_BagIds, 2L
|
||||
|
||||
# define LN_certBag "certBag"
|
||||
# define NID_certBag 152
|
||||
# define OBJ_certBag OBJ_pkcs12_BagIds, 3L
|
||||
|
||||
# define LN_crlBag "crlBag"
|
||||
# define NID_crlBag 153
|
||||
# define OBJ_crlBag OBJ_pkcs12_BagIds, 4L
|
||||
|
||||
# define LN_secretBag "secretBag"
|
||||
# define NID_secretBag 154
|
||||
# define OBJ_secretBag OBJ_pkcs12_BagIds, 5L
|
||||
|
||||
# define LN_safeContentsBag "safeContentsBag"
|
||||
# define NID_safeContentsBag 155
|
||||
# define OBJ_safeContentsBag OBJ_pkcs12_BagIds, 6L
|
||||
|
||||
# define LN_friendlyName "friendlyName"
|
||||
# define NID_friendlyName 156
|
||||
# define OBJ_friendlyName OBJ_pkcs9, 20L
|
||||
|
||||
# define LN_localKeyID "localKeyID"
|
||||
# define NID_localKeyID 157
|
||||
# define OBJ_localKeyID OBJ_pkcs9, 21L
|
||||
|
||||
# define OBJ_certTypes OBJ_pkcs9, 22L
|
||||
|
||||
# define LN_x509Certificate "x509Certificate"
|
||||
# define NID_x509Certificate 158
|
||||
# define OBJ_x509Certificate OBJ_certTypes, 1L
|
||||
|
||||
# define LN_sdsiCertificate "sdsiCertificate"
|
||||
# define NID_sdsiCertificate 159
|
||||
# define OBJ_sdsiCertificate OBJ_certTypes, 2L
|
||||
|
||||
# define OBJ_crlTypes OBJ_pkcs9, 23L
|
||||
|
||||
# define LN_x509Crl "x509Crl"
|
||||
# define NID_x509Crl 160
|
||||
# define OBJ_x509Crl OBJ_crlTypes, 1L
|
||||
|
||||
/* PKCS#5 v2 OIDs */
|
||||
|
||||
# define LN_pbes2 "PBES2"
|
||||
# define NID_pbes2 161
|
||||
# define OBJ_pbes2 OBJ_pkcs,5L,13L
|
||||
|
||||
# define LN_pbmac1 "PBMAC1"
|
||||
# define NID_pbmac1 162
|
||||
# define OBJ_pbmac1 OBJ_pkcs,5L,14L
|
||||
|
||||
# define LN_hmacWithSHA1 "hmacWithSHA1"
|
||||
# define NID_hmacWithSHA1 163
|
||||
# define OBJ_hmacWithSHA1 OBJ_rsadsi,2L,7L
|
||||
|
||||
/* Policy Qualifier Ids */
|
||||
|
||||
# define LN_id_qt_cps "Policy Qualifier CPS"
|
||||
# define SN_id_qt_cps "id-qt-cps"
|
||||
# define NID_id_qt_cps 164
|
||||
# define OBJ_id_qt_cps OBJ_id_pkix,2L,1L
|
||||
|
||||
# define LN_id_qt_unotice "Policy Qualifier User Notice"
|
||||
# define SN_id_qt_unotice "id-qt-unotice"
|
||||
# define NID_id_qt_unotice 165
|
||||
# define OBJ_id_qt_unotice OBJ_id_pkix,2L,2L
|
||||
|
||||
# define SN_rc2_64_cbc "RC2-64-CBC"
|
||||
# define LN_rc2_64_cbc "rc2-64-cbc"
|
||||
# define NID_rc2_64_cbc 166
|
||||
|
||||
# define SN_SMIMECapabilities "SMIME-CAPS"
|
||||
# define LN_SMIMECapabilities "S/MIME Capabilities"
|
||||
# define NID_SMIMECapabilities 167
|
||||
# define OBJ_SMIMECapabilities OBJ_pkcs9,15L
|
||||
|
||||
# define SN_pbeWithMD2AndRC2_CBC "PBE-MD2-RC2-64"
|
||||
# define LN_pbeWithMD2AndRC2_CBC "pbeWithMD2AndRC2-CBC"
|
||||
# define NID_pbeWithMD2AndRC2_CBC 168
|
||||
# define OBJ_pbeWithMD2AndRC2_CBC OBJ_pkcs,5L,4L
|
||||
|
||||
# define SN_pbeWithMD5AndRC2_CBC "PBE-MD5-RC2-64"
|
||||
# define LN_pbeWithMD5AndRC2_CBC "pbeWithMD5AndRC2-CBC"
|
||||
# define NID_pbeWithMD5AndRC2_CBC 169
|
||||
# define OBJ_pbeWithMD5AndRC2_CBC OBJ_pkcs,5L,6L
|
||||
|
||||
# define SN_pbeWithSHA1AndDES_CBC "PBE-SHA1-DES"
|
||||
# define LN_pbeWithSHA1AndDES_CBC "pbeWithSHA1AndDES-CBC"
|
||||
# define NID_pbeWithSHA1AndDES_CBC 170
|
||||
# define OBJ_pbeWithSHA1AndDES_CBC OBJ_pkcs,5L,10L
|
||||
|
||||
/* Extension request OIDs */
|
||||
|
||||
# define LN_ms_ext_req "Microsoft Extension Request"
|
||||
# define SN_ms_ext_req "msExtReq"
|
||||
# define NID_ms_ext_req 171
|
||||
# define OBJ_ms_ext_req 1L,3L,6L,1L,4L,1L,311L,2L,1L,14L
|
||||
|
||||
# define LN_ext_req "Extension Request"
|
||||
# define SN_ext_req "extReq"
|
||||
# define NID_ext_req 172
|
||||
# define OBJ_ext_req OBJ_pkcs9,14L
|
||||
|
||||
# define SN_name "name"
|
||||
# define LN_name "name"
|
||||
# define NID_name 173
|
||||
# define OBJ_name OBJ_X509,41L
|
||||
|
||||
# define SN_dnQualifier "dnQualifier"
|
||||
# define LN_dnQualifier "dnQualifier"
|
||||
# define NID_dnQualifier 174
|
||||
# define OBJ_dnQualifier OBJ_X509,46L
|
||||
|
||||
# define SN_id_pe "id-pe"
|
||||
# define NID_id_pe 175
|
||||
# define OBJ_id_pe OBJ_id_pkix,1L
|
||||
|
||||
# define SN_id_ad "id-ad"
|
||||
# define NID_id_ad 176
|
||||
# define OBJ_id_ad OBJ_id_pkix,48L
|
||||
|
||||
# define SN_info_access "authorityInfoAccess"
|
||||
# define LN_info_access "Authority Information Access"
|
||||
# define NID_info_access 177
|
||||
# define OBJ_info_access OBJ_id_pe,1L
|
||||
|
||||
# define SN_ad_OCSP "OCSP"
|
||||
# define LN_ad_OCSP "OCSP"
|
||||
# define NID_ad_OCSP 178
|
||||
# define OBJ_ad_OCSP OBJ_id_ad,1L
|
||||
|
||||
# define SN_ad_ca_issuers "caIssuers"
|
||||
# define LN_ad_ca_issuers "CA Issuers"
|
||||
# define NID_ad_ca_issuers 179
|
||||
# define OBJ_ad_ca_issuers OBJ_id_ad,2L
|
||||
|
||||
# define SN_OCSP_sign "OCSPSigning"
|
||||
# define LN_OCSP_sign "OCSP Signing"
|
||||
# define NID_OCSP_sign 180
|
||||
# define OBJ_OCSP_sign OBJ_id_kp,9L
|
||||
# endif /* USE_OBJ_MAC */
|
||||
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/asn1.h>
|
||||
# include <openssl/objectserr.h>
|
||||
|
||||
# define OBJ_NAME_TYPE_UNDEF 0x00
|
||||
# define OBJ_NAME_TYPE_MD_METH 0x01
|
||||
@@ -1068,28 +168,6 @@ int OBJ_find_sigid_by_algs(int *psignid, int dig_nid, int pkey_nid);
|
||||
int OBJ_add_sigid(int signid, int dig_id, int pkey_id);
|
||||
void OBJ_sigid_free(void);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_OBJ_strings(void);
|
||||
|
||||
/* Error codes for the OBJ functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define OBJ_F_OBJ_ADD_OBJECT 105
|
||||
# define OBJ_F_OBJ_CREATE 100
|
||||
# define OBJ_F_OBJ_DUP 101
|
||||
# define OBJ_F_OBJ_NAME_NEW_INDEX 106
|
||||
# define OBJ_F_OBJ_NID2LN 102
|
||||
# define OBJ_F_OBJ_NID2OBJ 103
|
||||
# define OBJ_F_OBJ_NID2SN 104
|
||||
|
||||
/* Reason codes. */
|
||||
# define OBJ_R_OID_EXISTS 102
|
||||
# define OBJ_R_UNKNOWN_NID 101
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2000-2018 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
|
||||
@@ -45,6 +45,7 @@
|
||||
# include <openssl/x509.h>
|
||||
# include <openssl/x509v3.h>
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/ocsperr.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -120,39 +121,25 @@ typedef struct ocsp_service_locator_st OCSP_SERVICELOC;
|
||||
# define d2i_OCSP_RESPONSE_bio(bp,p) ASN1_d2i_bio_of(OCSP_RESPONSE,OCSP_RESPONSE_new,d2i_OCSP_RESPONSE,bp,p)
|
||||
|
||||
# define PEM_read_bio_OCSP_REQUEST(bp,x,cb) (OCSP_REQUEST *)PEM_ASN1_read_bio( \
|
||||
(char *(*)())d2i_OCSP_REQUEST,PEM_STRING_OCSP_REQUEST,bp,(char **)x,cb,NULL)
|
||||
(char *(*)())d2i_OCSP_REQUEST,PEM_STRING_OCSP_REQUEST, \
|
||||
bp,(char **)(x),cb,NULL)
|
||||
|
||||
# define PEM_read_bio_OCSP_RESPONSE(bp,x,cb)(OCSP_RESPONSE *)PEM_ASN1_read_bio(\
|
||||
(char *(*)())d2i_OCSP_RESPONSE,PEM_STRING_OCSP_RESPONSE,bp,(char **)x,cb,NULL)
|
||||
(char *(*)())d2i_OCSP_RESPONSE,PEM_STRING_OCSP_RESPONSE, \
|
||||
bp,(char **)(x),cb,NULL)
|
||||
|
||||
# define PEM_write_bio_OCSP_REQUEST(bp,o) \
|
||||
PEM_ASN1_write_bio((int (*)())i2d_OCSP_REQUEST,PEM_STRING_OCSP_REQUEST,\
|
||||
bp,(char *)o, NULL,NULL,0,NULL,NULL)
|
||||
bp,(char *)(o), NULL,NULL,0,NULL,NULL)
|
||||
|
||||
# define PEM_write_bio_OCSP_RESPONSE(bp,o) \
|
||||
PEM_ASN1_write_bio((int (*)())i2d_OCSP_RESPONSE,PEM_STRING_OCSP_RESPONSE,\
|
||||
bp,(char *)o, NULL,NULL,0,NULL,NULL)
|
||||
bp,(char *)(o), NULL,NULL,0,NULL,NULL)
|
||||
|
||||
# define i2d_OCSP_RESPONSE_bio(bp,o) ASN1_i2d_bio_of(OCSP_RESPONSE,i2d_OCSP_RESPONSE,bp,o)
|
||||
|
||||
# define i2d_OCSP_REQUEST_bio(bp,o) ASN1_i2d_bio_of(OCSP_REQUEST,i2d_OCSP_REQUEST,bp,o)
|
||||
|
||||
# define OCSP_REQUEST_sign(o,pkey,md) \
|
||||
ASN1_item_sign(ASN1_ITEM_rptr(OCSP_REQINFO),\
|
||||
&o->optionalSignature->signatureAlgorithm,NULL,\
|
||||
o->optionalSignature->signature,&o->tbsRequest,pkey,md)
|
||||
|
||||
# define OCSP_BASICRESP_sign(o,pkey,md,d) \
|
||||
ASN1_item_sign(ASN1_ITEM_rptr(OCSP_RESPDATA),&o->signatureAlgorithm,NULL,\
|
||||
o->signature,&o->tbsResponseData,pkey,md)
|
||||
|
||||
# define OCSP_REQUEST_verify(a,r) ASN1_item_verify(ASN1_ITEM_rptr(OCSP_REQINFO),\
|
||||
&a->optionalSignature->signatureAlgorithm,\
|
||||
a->optionalSignature->signature,&a->tbsRequest,r)
|
||||
|
||||
# define OCSP_BASICRESP_verify(a,r,d) ASN1_item_verify(ASN1_ITEM_rptr(OCSP_RESPDATA),\
|
||||
&a->signatureAlgorithm,a->signature,&a->tbsResponseData,r)
|
||||
|
||||
# define ASN1_BIT_STRING_digest(data,type,md,len) \
|
||||
ASN1_item_digest(ASN1_ITEM_rptr(ASN1_BIT_STRING),type,data,md,len)
|
||||
|
||||
@@ -210,6 +197,10 @@ int OCSP_response_status(OCSP_RESPONSE *resp);
|
||||
OCSP_BASICRESP *OCSP_response_get1_basic(OCSP_RESPONSE *resp);
|
||||
|
||||
const ASN1_OCTET_STRING *OCSP_resp_get0_signature(const OCSP_BASICRESP *bs);
|
||||
const X509_ALGOR *OCSP_resp_get0_tbs_sigalg(const OCSP_BASICRESP *bs);
|
||||
const OCSP_RESPDATA *OCSP_resp_get0_respdata(const OCSP_BASICRESP *bs);
|
||||
int OCSP_resp_get0_signer(OCSP_BASICRESP *bs, X509 **signer,
|
||||
STACK_OF(X509) *extra_certs);
|
||||
|
||||
int OCSP_resp_count(OCSP_BASICRESP *bs);
|
||||
OCSP_SINGLERESP *OCSP_resp_get0(OCSP_BASICRESP *bs, int idx);
|
||||
@@ -218,6 +209,9 @@ const STACK_OF(X509) *OCSP_resp_get0_certs(const OCSP_BASICRESP *bs);
|
||||
int OCSP_resp_get0_id(const OCSP_BASICRESP *bs,
|
||||
const ASN1_OCTET_STRING **pid,
|
||||
const X509_NAME **pname);
|
||||
int OCSP_resp_get1_id(const OCSP_BASICRESP *bs,
|
||||
ASN1_OCTET_STRING **pid,
|
||||
X509_NAME **pname);
|
||||
|
||||
int OCSP_resp_find(OCSP_BASICRESP *bs, OCSP_CERTID *id, int last);
|
||||
int OCSP_single_get0_status(OCSP_SINGLERESP *single, int *reason,
|
||||
@@ -259,6 +253,9 @@ int OCSP_basic_add1_cert(OCSP_BASICRESP *resp, X509 *cert);
|
||||
int OCSP_basic_sign(OCSP_BASICRESP *brsp,
|
||||
X509 *signer, EVP_PKEY *key, const EVP_MD *dgst,
|
||||
STACK_OF(X509) *certs, unsigned long flags);
|
||||
int OCSP_basic_sign_ctx(OCSP_BASICRESP *brsp,
|
||||
X509 *signer, EVP_MD_CTX *ctx,
|
||||
STACK_OF(X509) *certs, unsigned long flags);
|
||||
int OCSP_RESPID_set_by_name(OCSP_RESPID *respid, X509 *cert);
|
||||
int OCSP_RESPID_set_by_key(OCSP_RESPID *respid, X509 *cert);
|
||||
int OCSP_RESPID_match(OCSP_RESPID *respid, X509 *cert);
|
||||
@@ -350,60 +347,6 @@ int OCSP_RESPONSE_print(BIO *bp, OCSP_RESPONSE *o, unsigned long flags);
|
||||
int OCSP_basic_verify(OCSP_BASICRESP *bs, STACK_OF(X509) *certs,
|
||||
X509_STORE *st, unsigned long flags);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_OCSP_strings(void);
|
||||
|
||||
/* Error codes for the OCSP functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define OCSP_F_D2I_OCSP_NONCE 102
|
||||
# define OCSP_F_OCSP_BASIC_ADD1_STATUS 103
|
||||
# define OCSP_F_OCSP_BASIC_SIGN 104
|
||||
# define OCSP_F_OCSP_BASIC_VERIFY 105
|
||||
# define OCSP_F_OCSP_CERT_ID_NEW 101
|
||||
# define OCSP_F_OCSP_CHECK_DELEGATED 106
|
||||
# define OCSP_F_OCSP_CHECK_IDS 107
|
||||
# define OCSP_F_OCSP_CHECK_ISSUER 108
|
||||
# define OCSP_F_OCSP_CHECK_VALIDITY 115
|
||||
# define OCSP_F_OCSP_MATCH_ISSUERID 109
|
||||
# define OCSP_F_OCSP_PARSE_URL 114
|
||||
# define OCSP_F_OCSP_REQUEST_SIGN 110
|
||||
# define OCSP_F_OCSP_REQUEST_VERIFY 116
|
||||
# define OCSP_F_OCSP_RESPONSE_GET1_BASIC 111
|
||||
# define OCSP_F_PARSE_HTTP_LINE1 118
|
||||
|
||||
/* Reason codes. */
|
||||
# define OCSP_R_CERTIFICATE_VERIFY_ERROR 101
|
||||
# define OCSP_R_DIGEST_ERR 102
|
||||
# define OCSP_R_ERROR_IN_NEXTUPDATE_FIELD 122
|
||||
# define OCSP_R_ERROR_IN_THISUPDATE_FIELD 123
|
||||
# define OCSP_R_ERROR_PARSING_URL 121
|
||||
# define OCSP_R_MISSING_OCSPSIGNING_USAGE 103
|
||||
# define OCSP_R_NEXTUPDATE_BEFORE_THISUPDATE 124
|
||||
# define OCSP_R_NOT_BASIC_RESPONSE 104
|
||||
# define OCSP_R_NO_CERTIFICATES_IN_CHAIN 105
|
||||
# define OCSP_R_NO_RESPONSE_DATA 108
|
||||
# define OCSP_R_NO_REVOKED_TIME 109
|
||||
# define OCSP_R_NO_SIGNER_KEY 130
|
||||
# define OCSP_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 110
|
||||
# define OCSP_R_REQUEST_NOT_SIGNED 128
|
||||
# define OCSP_R_RESPONSE_CONTAINS_NO_REVOCATION_DATA 111
|
||||
# define OCSP_R_ROOT_CA_NOT_TRUSTED 112
|
||||
# define OCSP_R_SERVER_RESPONSE_ERROR 114
|
||||
# define OCSP_R_SERVER_RESPONSE_PARSE_ERROR 115
|
||||
# define OCSP_R_SIGNATURE_FAILURE 117
|
||||
# define OCSP_R_SIGNER_CERTIFICATE_NOT_FOUND 118
|
||||
# define OCSP_R_STATUS_EXPIRED 125
|
||||
# define OCSP_R_STATUS_NOT_YET_VALID 126
|
||||
# define OCSP_R_STATUS_TOO_OLD 127
|
||||
# define OCSP_R_UNKNOWN_MESSAGE_DIGEST 119
|
||||
# define OCSP_R_UNKNOWN_NID 120
|
||||
# define OCSP_R_UNSUPPORTED_REQUESTORNAME_TYPE 129
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* WARNING: do not edit!
|
||||
* Generated by Makefile from include/openssl/opensslconf.h.in
|
||||
*
|
||||
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2016-2018 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
|
||||
@@ -10,6 +10,8 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#include <openssl/opensslv.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
@@ -31,12 +33,6 @@ extern "C" {
|
||||
#ifndef OPENSSL_NO_CAST
|
||||
# define OPENSSL_NO_CAST
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_COMP
|
||||
# define OPENSSL_NO_COMP
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_EC
|
||||
# define OPENSSL_NO_EC
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_IDEA
|
||||
# define OPENSSL_NO_IDEA
|
||||
#endif
|
||||
@@ -58,8 +54,8 @@ extern "C" {
|
||||
#ifndef OPENSSL_NO_SEED
|
||||
# define OPENSSL_NO_SEED
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_SRP
|
||||
# define OPENSSL_NO_SRP
|
||||
#ifndef OPENSSL_RAND_SEED_OS
|
||||
# define OPENSSL_RAND_SEED_OS
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_ASAN
|
||||
# define OPENSSL_NO_ASAN
|
||||
@@ -73,21 +69,21 @@ extern "C" {
|
||||
#ifndef OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
|
||||
# define OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_DEVCRYPTOENG
|
||||
# define OPENSSL_NO_DEVCRYPTOENG
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
|
||||
# define OPENSSL_NO_EC_NISTP_64_GCC_128
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_ECDH
|
||||
# define OPENSSL_NO_ECDH
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_ECDSA
|
||||
# define OPENSSL_NO_ECDSA
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_EGD
|
||||
# define OPENSSL_NO_EGD
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_ERR
|
||||
# define OPENSSL_NO_ERR
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_EXTERNAL_TESTS
|
||||
# define OPENSSL_NO_EXTERNAL_TESTS
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_FUZZ_AFL
|
||||
# define OPENSSL_NO_FUZZ_AFL
|
||||
#endif
|
||||
@@ -103,9 +99,6 @@ extern "C" {
|
||||
#ifndef OPENSSL_NO_MSAN
|
||||
# define OPENSSL_NO_MSAN
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_PSK
|
||||
# define OPENSSL_NO_PSK
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_SCTP
|
||||
# define OPENSSL_NO_SCTP
|
||||
#endif
|
||||
@@ -127,6 +120,9 @@ extern "C" {
|
||||
#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
|
||||
# define OPENSSL_NO_WEAK_SSL_CIPHERS
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_DYNAMIC_ENGINE
|
||||
# define OPENSSL_NO_DYNAMIC_ENGINE
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_AFALGENG
|
||||
# define OPENSSL_NO_AFALGENG
|
||||
#endif
|
||||
@@ -144,12 +140,14 @@ extern "C" {
|
||||
* still won't see them if the library has been built to disable deprecated
|
||||
* functions.
|
||||
*/
|
||||
#if defined(OPENSSL_NO_DEPRECATED)
|
||||
# define DECLARE_DEPRECATED(f)
|
||||
#elif __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
|
||||
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
|
||||
#else
|
||||
#ifndef DECLARE_DEPRECATED
|
||||
# define DECLARE_DEPRECATED(f) f;
|
||||
# ifdef __GNUC__
|
||||
# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
|
||||
# undef DECLARE_DEPRECATED
|
||||
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef OPENSSL_FILE
|
||||
@@ -171,6 +169,18 @@ extern "C" {
|
||||
# define OPENSSL_API_COMPAT OPENSSL_MIN_API
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Do not deprecate things to be deprecated in version 1.2.0 before the
|
||||
* OpenSSL version number matches.
|
||||
*/
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10200000L
|
||||
# define DEPRECATEDIN_1_2_0(f) f;
|
||||
#elif OPENSSL_API_COMPAT < 0x10200000L
|
||||
# define DEPRECATEDIN_1_2_0(f) DECLARE_DEPRECATED(f)
|
||||
#else
|
||||
# define DEPRECATEDIN_1_2_0(f)
|
||||
#endif
|
||||
|
||||
#if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
|
||||
#else
|
||||
@@ -189,8 +199,6 @@ extern "C" {
|
||||
# define DEPRECATEDIN_0_9_8(f)
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
/* Generate 80386 code? */
|
||||
#undef I386_ONLY
|
||||
|
||||
@@ -210,7 +218,7 @@ extern "C" {
|
||||
# define THIRTY_TWO_BIT
|
||||
#endif
|
||||
|
||||
#define RC4_INT unsigned char
|
||||
#define RC4_INT unsigned int
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* {- join("\n * ", @autowarntext) -}
|
||||
*
|
||||
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2016-2018 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
|
||||
@@ -9,6 +9,8 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#include <openssl/opensslv.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
@@ -30,7 +32,7 @@ extern "C" {
|
||||
}
|
||||
foreach (@{$config{openssl_api_defines}}) {
|
||||
(my $macro, my $value) = $_ =~ /^(.*?)=(.*?)$/;
|
||||
$OUT .= "#define OPENSSL_MIN_API $value\n";
|
||||
$OUT .= "#define $macro $value\n";
|
||||
}
|
||||
if (@{$config{openssl_algorithm_defines}}) {
|
||||
foreach (@{$config{openssl_algorithm_defines}}) {
|
||||
@@ -68,12 +70,14 @@ extern "C" {
|
||||
* still won't see them if the library has been built to disable deprecated
|
||||
* functions.
|
||||
*/
|
||||
#if defined(OPENSSL_NO_DEPRECATED)
|
||||
# define DECLARE_DEPRECATED(f)
|
||||
#elif __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
|
||||
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
|
||||
#else
|
||||
#ifndef DECLARE_DEPRECATED
|
||||
# define DECLARE_DEPRECATED(f) f;
|
||||
# ifdef __GNUC__
|
||||
# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
|
||||
# undef DECLARE_DEPRECATED
|
||||
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef OPENSSL_FILE
|
||||
@@ -95,6 +99,18 @@ extern "C" {
|
||||
# define OPENSSL_API_COMPAT OPENSSL_MIN_API
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Do not deprecate things to be deprecated in version 1.2.0 before the
|
||||
* OpenSSL version number matches.
|
||||
*/
|
||||
#if OPENSSL_VERSION_NUMBER < 0x10200000L
|
||||
# define DEPRECATEDIN_1_2_0(f) f;
|
||||
#elif OPENSSL_API_COMPAT < 0x10200000L
|
||||
# define DEPRECATEDIN_1_2_0(f) DECLARE_DEPRECATED(f)
|
||||
#else
|
||||
# define DEPRECATEDIN_1_2_0(f)
|
||||
#endif
|
||||
|
||||
#if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
|
||||
#else
|
||||
@@ -113,8 +129,6 @@ extern "C" {
|
||||
# define DEPRECATEDIN_0_9_8(f)
|
||||
#endif
|
||||
|
||||
{- $target{cpuid_obj} ne "mem_clr.o" ? "#define OPENSSL_CPUID_OBJ" : "" -}
|
||||
|
||||
/* Generate 80386 code? */
|
||||
{- $config{processor} eq "386" ? "#define" : "#undef" -} I386_ONLY
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1999-2018 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
|
||||
@@ -39,12 +39,8 @@ extern "C" {
|
||||
* (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for
|
||||
* major minor fix final patch/beta)
|
||||
*/
|
||||
# define OPENSSL_VERSION_NUMBER 0x1010006fL
|
||||
# ifdef OPENSSL_FIPS
|
||||
# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.0f-fips 25 May 2017"
|
||||
# else
|
||||
# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.0f 25 May 2017"
|
||||
# endif
|
||||
# define OPENSSL_VERSION_NUMBER 0x1010100fL
|
||||
# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.1 11 Sep 2018"
|
||||
|
||||
/*-
|
||||
* The macros below are to be used for shared library (.so, .dll, ...)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2001-2018 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
|
||||
@@ -114,6 +114,7 @@ typedef struct ec_key_st EC_KEY;
|
||||
typedef struct ec_key_method_st EC_KEY_METHOD;
|
||||
|
||||
typedef struct rand_meth_st RAND_METHOD;
|
||||
typedef struct rand_drbg_st RAND_DRBG;
|
||||
|
||||
typedef struct ssl_dane_st SSL_DANE;
|
||||
typedef struct x509_st X509;
|
||||
@@ -131,6 +132,8 @@ typedef struct x509_lookup_st X509_LOOKUP;
|
||||
typedef struct x509_lookup_method_st X509_LOOKUP_METHOD;
|
||||
typedef struct X509_VERIFY_PARAM_st X509_VERIFY_PARAM;
|
||||
|
||||
typedef struct x509_sig_info_st X509_SIG_INFO;
|
||||
|
||||
typedef struct pkcs8_priv_key_info_st PKCS8_PRIV_KEY_INFO;
|
||||
|
||||
typedef struct v3_ext_ctx X509V3_CTX;
|
||||
@@ -169,6 +172,9 @@ typedef struct ctlog_st CTLOG;
|
||||
typedef struct ctlog_store_st CTLOG_STORE;
|
||||
typedef struct ct_policy_eval_ctx_st CT_POLICY_EVAL_CTX;
|
||||
|
||||
typedef struct ossl_store_info_st OSSL_STORE_INFO;
|
||||
typedef struct ossl_store_search_st OSSL_STORE_SEARCH;
|
||||
|
||||
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L && \
|
||||
defined(INTMAX_MAX) && defined(UINTMAX_MAX)
|
||||
typedef intmax_t ossl_intmax_t;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -12,10 +12,10 @@
|
||||
|
||||
# include <openssl/e_os2.h>
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/stack.h>
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/evp.h>
|
||||
# include <openssl/x509.h>
|
||||
# include <openssl/pem2.h>
|
||||
# include <openssl/pemerr.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -54,56 +54,6 @@ extern "C" {
|
||||
# define PEM_TYPE_MIC_CLEAR 30
|
||||
# define PEM_TYPE_CLEAR 40
|
||||
|
||||
typedef struct pem_recip_st {
|
||||
char *name;
|
||||
X509_NAME *dn;
|
||||
int cipher;
|
||||
int key_enc;
|
||||
/* char iv[8]; unused and wrong size */
|
||||
} PEM_USER;
|
||||
|
||||
typedef struct pem_ctx_st {
|
||||
int type; /* what type of object */
|
||||
struct {
|
||||
int version;
|
||||
int mode;
|
||||
} proc_type;
|
||||
|
||||
char *domain;
|
||||
|
||||
struct {
|
||||
int cipher;
|
||||
/*-
|
||||
unused, and wrong size
|
||||
unsigned char iv[8]; */
|
||||
} DEK_info;
|
||||
|
||||
PEM_USER *originator;
|
||||
|
||||
int num_recipient;
|
||||
PEM_USER **recipient;
|
||||
|
||||
/*-
|
||||
XXX(ben): don#t think this is used!
|
||||
STACK *x509_chain; / * certificate chain */
|
||||
EVP_MD *md; /* signature type */
|
||||
|
||||
int md_enc; /* is the md encrypted or not? */
|
||||
int md_len; /* length of md_data */
|
||||
char *md_data; /* message digest, could be pkey encrypted */
|
||||
|
||||
EVP_CIPHER *dec; /* date encryption cipher */
|
||||
int key_len; /* key length */
|
||||
unsigned char *key; /* key */
|
||||
/*-
|
||||
unused, and wrong size
|
||||
unsigned char iv[8]; */
|
||||
|
||||
int data_enc; /* is the data encrypted */
|
||||
int data_len;
|
||||
unsigned char *data;
|
||||
} PEM_CTX;
|
||||
|
||||
/*
|
||||
* These macros make the PEM_read/PEM_write functions easier to maintain and
|
||||
* write. Now they are all implemented with either: IMPLEMENT_PEM_rw(...) or
|
||||
@@ -286,6 +236,14 @@ int PEM_do_header(EVP_CIPHER_INFO *cipher, unsigned char *data, long *len,
|
||||
|
||||
int PEM_read_bio(BIO *bp, char **name, char **header,
|
||||
unsigned char **data, long *len);
|
||||
# define PEM_FLAG_SECURE 0x1
|
||||
# define PEM_FLAG_EAY_COMPATIBLE 0x2
|
||||
# define PEM_FLAG_ONLY_B64 0x4
|
||||
int PEM_read_bio_ex(BIO *bp, char **name, char **header,
|
||||
unsigned char **data, long *len, unsigned int flags);
|
||||
int PEM_bytes_read_bio_secmem(unsigned char **pdata, long *plen, char **pnm,
|
||||
const char *name, BIO *bp, pem_password_cb *cb,
|
||||
void *u);
|
||||
int PEM_write_bio(BIO *bp, const char *name, const char *hdr,
|
||||
const unsigned char *data, long len);
|
||||
int PEM_bytes_read_bio(unsigned char **pdata, long *plen, char **pnm,
|
||||
@@ -322,7 +280,8 @@ int PEM_SignUpdate(EVP_MD_CTX *ctx, unsigned char *d, unsigned int cnt);
|
||||
int PEM_SignFinal(EVP_MD_CTX *ctx, unsigned char *sigret,
|
||||
unsigned int *siglen, EVP_PKEY *pkey);
|
||||
|
||||
int PEM_def_callback(char *buf, int num, int w, void *key);
|
||||
/* The default pem_password_cb that's used internally */
|
||||
int PEM_def_callback(char *buf, int num, int rwflag, void *userdata);
|
||||
void PEM_proc_type(char *buf, int type);
|
||||
void PEM_dek_info(char *buf, const char *type, int len, char *str);
|
||||
|
||||
@@ -413,88 +372,6 @@ int i2b_PVK_bio(BIO *out, EVP_PKEY *pk, int enclevel,
|
||||
# endif
|
||||
# endif
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_PEM_strings(void);
|
||||
|
||||
/* Error codes for the PEM functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define PEM_F_B2I_DSS 127
|
||||
# define PEM_F_B2I_PVK_BIO 128
|
||||
# define PEM_F_B2I_RSA 129
|
||||
# define PEM_F_CHECK_BITLEN_DSA 130
|
||||
# define PEM_F_CHECK_BITLEN_RSA 131
|
||||
# define PEM_F_D2I_PKCS8PRIVATEKEY_BIO 120
|
||||
# define PEM_F_D2I_PKCS8PRIVATEKEY_FP 121
|
||||
# define PEM_F_DO_B2I 132
|
||||
# define PEM_F_DO_B2I_BIO 133
|
||||
# define PEM_F_DO_BLOB_HEADER 134
|
||||
# define PEM_F_DO_PK8PKEY 126
|
||||
# define PEM_F_DO_PK8PKEY_FP 125
|
||||
# define PEM_F_DO_PVK_BODY 135
|
||||
# define PEM_F_DO_PVK_HEADER 136
|
||||
# define PEM_F_I2B_PVK 137
|
||||
# define PEM_F_I2B_PVK_BIO 138
|
||||
# define PEM_F_LOAD_IV 101
|
||||
# define PEM_F_PEM_ASN1_READ 102
|
||||
# define PEM_F_PEM_ASN1_READ_BIO 103
|
||||
# define PEM_F_PEM_ASN1_WRITE 104
|
||||
# define PEM_F_PEM_ASN1_WRITE_BIO 105
|
||||
# define PEM_F_PEM_DEF_CALLBACK 100
|
||||
# define PEM_F_PEM_DO_HEADER 106
|
||||
# define PEM_F_PEM_GET_EVP_CIPHER_INFO 107
|
||||
# define PEM_F_PEM_READ 108
|
||||
# define PEM_F_PEM_READ_BIO 109
|
||||
# define PEM_F_PEM_READ_BIO_DHPARAMS 141
|
||||
# define PEM_F_PEM_READ_BIO_PARAMETERS 140
|
||||
# define PEM_F_PEM_READ_BIO_PRIVATEKEY 123
|
||||
# define PEM_F_PEM_READ_DHPARAMS 142
|
||||
# define PEM_F_PEM_READ_PRIVATEKEY 124
|
||||
# define PEM_F_PEM_SIGNFINAL 112
|
||||
# define PEM_F_PEM_WRITE 113
|
||||
# define PEM_F_PEM_WRITE_BIO 114
|
||||
# define PEM_F_PEM_WRITE_PRIVATEKEY 139
|
||||
# define PEM_F_PEM_X509_INFO_READ 115
|
||||
# define PEM_F_PEM_X509_INFO_READ_BIO 116
|
||||
# define PEM_F_PEM_X509_INFO_WRITE_BIO 117
|
||||
|
||||
/* Reason codes. */
|
||||
# define PEM_R_BAD_BASE64_DECODE 100
|
||||
# define PEM_R_BAD_DECRYPT 101
|
||||
# define PEM_R_BAD_END_LINE 102
|
||||
# define PEM_R_BAD_IV_CHARS 103
|
||||
# define PEM_R_BAD_MAGIC_NUMBER 116
|
||||
# define PEM_R_BAD_PASSWORD_READ 104
|
||||
# define PEM_R_BAD_VERSION_NUMBER 117
|
||||
# define PEM_R_BIO_WRITE_FAILURE 118
|
||||
# define PEM_R_CIPHER_IS_NULL 127
|
||||
# define PEM_R_ERROR_CONVERTING_PRIVATE_KEY 115
|
||||
# define PEM_R_EXPECTING_PRIVATE_KEY_BLOB 119
|
||||
# define PEM_R_EXPECTING_PUBLIC_KEY_BLOB 120
|
||||
# define PEM_R_HEADER_TOO_LONG 128
|
||||
# define PEM_R_INCONSISTENT_HEADER 121
|
||||
# define PEM_R_KEYBLOB_HEADER_PARSE_ERROR 122
|
||||
# define PEM_R_KEYBLOB_TOO_SHORT 123
|
||||
# define PEM_R_MISSING_DEK_IV 129
|
||||
# define PEM_R_NOT_DEK_INFO 105
|
||||
# define PEM_R_NOT_ENCRYPTED 106
|
||||
# define PEM_R_NOT_PROC_TYPE 107
|
||||
# define PEM_R_NO_START_LINE 108
|
||||
# define PEM_R_PROBLEMS_GETTING_PASSWORD 109
|
||||
# define PEM_R_PVK_DATA_TOO_SHORT 124
|
||||
# define PEM_R_PVK_TOO_SHORT 125
|
||||
# define PEM_R_READ_KEY 111
|
||||
# define PEM_R_SHORT_HEADER 112
|
||||
# define PEM_R_UNEXPECTED_DEK_IV 130
|
||||
# define PEM_R_UNSUPPORTED_CIPHER 113
|
||||
# define PEM_R_UNSUPPORTED_ENCRYPTION 114
|
||||
# define PEM_R_UNSUPPORTED_KEY_COMPONENTS 126
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1999-2018 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
|
||||
@@ -7,14 +7,7 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef HEADER_PEM_H
|
||||
int ERR_load_PEM_strings(void);
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#ifndef HEADER_PEM2_H
|
||||
# define HEADER_PEM2_H
|
||||
# include <openssl/pemerr.h>
|
||||
#endif
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/x509.h>
|
||||
# include <openssl/pkcs12err.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -216,66 +217,6 @@ PKCS12 *d2i_PKCS12_fp(FILE *fp, PKCS12 **p12);
|
||||
# endif
|
||||
int PKCS12_newpass(PKCS12 *p12, const char *oldpass, const char *newpass);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_PKCS12_strings(void);
|
||||
|
||||
/* Error codes for the PKCS12 functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define PKCS12_F_PKCS12_CREATE 105
|
||||
# define PKCS12_F_PKCS12_GEN_MAC 107
|
||||
# define PKCS12_F_PKCS12_INIT 109
|
||||
# define PKCS12_F_PKCS12_ITEM_DECRYPT_D2I 106
|
||||
# define PKCS12_F_PKCS12_ITEM_I2D_ENCRYPT 108
|
||||
# define PKCS12_F_PKCS12_ITEM_PACK_SAFEBAG 117
|
||||
# define PKCS12_F_PKCS12_KEY_GEN_ASC 110
|
||||
# define PKCS12_F_PKCS12_KEY_GEN_UNI 111
|
||||
# define PKCS12_F_PKCS12_KEY_GEN_UTF8 116
|
||||
# define PKCS12_F_PKCS12_NEWPASS 128
|
||||
# define PKCS12_F_PKCS12_PACK_P7DATA 114
|
||||
# define PKCS12_F_PKCS12_PACK_P7ENCDATA 115
|
||||
# define PKCS12_F_PKCS12_PARSE 118
|
||||
# define PKCS12_F_PKCS12_PBE_CRYPT 119
|
||||
# define PKCS12_F_PKCS12_PBE_KEYIVGEN 120
|
||||
# define PKCS12_F_PKCS12_SAFEBAG_CREATE0_P8INF 112
|
||||
# define PKCS12_F_PKCS12_SAFEBAG_CREATE0_PKCS8 113
|
||||
# define PKCS12_F_PKCS12_SAFEBAG_CREATE_PKCS8_ENCRYPT 133
|
||||
# define PKCS12_F_PKCS12_SETUP_MAC 122
|
||||
# define PKCS12_F_PKCS12_SET_MAC 123
|
||||
# define PKCS12_F_PKCS12_UNPACK_AUTHSAFES 130
|
||||
# define PKCS12_F_PKCS12_UNPACK_P7DATA 131
|
||||
# define PKCS12_F_PKCS12_VERIFY_MAC 126
|
||||
# define PKCS12_F_PKCS8_ENCRYPT 125
|
||||
# define PKCS12_F_PKCS8_SET0_PBE 132
|
||||
|
||||
/* Reason codes. */
|
||||
# define PKCS12_R_CANT_PACK_STRUCTURE 100
|
||||
# define PKCS12_R_CONTENT_TYPE_NOT_DATA 121
|
||||
# define PKCS12_R_DECODE_ERROR 101
|
||||
# define PKCS12_R_ENCODE_ERROR 102
|
||||
# define PKCS12_R_ENCRYPT_ERROR 103
|
||||
# define PKCS12_R_ERROR_SETTING_ENCRYPTED_DATA_TYPE 120
|
||||
# define PKCS12_R_INVALID_NULL_ARGUMENT 104
|
||||
# define PKCS12_R_INVALID_NULL_PKCS12_POINTER 105
|
||||
# define PKCS12_R_IV_GEN_ERROR 106
|
||||
# define PKCS12_R_KEY_GEN_ERROR 107
|
||||
# define PKCS12_R_MAC_ABSENT 108
|
||||
# define PKCS12_R_MAC_GENERATION_ERROR 109
|
||||
# define PKCS12_R_MAC_SETUP_ERROR 110
|
||||
# define PKCS12_R_MAC_STRING_SET_ERROR 111
|
||||
# define PKCS12_R_MAC_VERIFY_FAILURE 113
|
||||
# define PKCS12_R_PARSE_ERROR 114
|
||||
# define PKCS12_R_PKCS12_ALGOR_CIPHERINIT_ERROR 115
|
||||
# define PKCS12_R_PKCS12_CIPHERFINAL_ERROR 116
|
||||
# define PKCS12_R_PKCS12_PBE_CRYPT_ERROR 117
|
||||
# define PKCS12_R_UNKNOWN_DIGEST_ALGORITHM 118
|
||||
# define PKCS12_R_UNSUPPORTED_PKCS12_MODE 119
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
# include <openssl/symhacks.h>
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/pkcs7err.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -312,92 +313,6 @@ PKCS7 *SMIME_read_PKCS7(BIO *bio, BIO **bcont);
|
||||
|
||||
BIO *BIO_new_PKCS7(BIO *out, PKCS7 *p7);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_PKCS7_strings(void);
|
||||
|
||||
/* Error codes for the PKCS7 functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define PKCS7_F_DO_PKCS7_SIGNED_ATTRIB 136
|
||||
# define PKCS7_F_PKCS7_ADD0_ATTRIB_SIGNING_TIME 135
|
||||
# define PKCS7_F_PKCS7_ADD_ATTRIB_SMIMECAP 118
|
||||
# define PKCS7_F_PKCS7_ADD_CERTIFICATE 100
|
||||
# define PKCS7_F_PKCS7_ADD_CRL 101
|
||||
# define PKCS7_F_PKCS7_ADD_RECIPIENT_INFO 102
|
||||
# define PKCS7_F_PKCS7_ADD_SIGNATURE 131
|
||||
# define PKCS7_F_PKCS7_ADD_SIGNER 103
|
||||
# define PKCS7_F_PKCS7_BIO_ADD_DIGEST 125
|
||||
# define PKCS7_F_PKCS7_COPY_EXISTING_DIGEST 138
|
||||
# define PKCS7_F_PKCS7_CTRL 104
|
||||
# define PKCS7_F_PKCS7_DATADECODE 112
|
||||
# define PKCS7_F_PKCS7_DATAFINAL 128
|
||||
# define PKCS7_F_PKCS7_DATAINIT 105
|
||||
# define PKCS7_F_PKCS7_DATAVERIFY 107
|
||||
# define PKCS7_F_PKCS7_DECRYPT 114
|
||||
# define PKCS7_F_PKCS7_DECRYPT_RINFO 133
|
||||
# define PKCS7_F_PKCS7_ENCODE_RINFO 132
|
||||
# define PKCS7_F_PKCS7_ENCRYPT 115
|
||||
# define PKCS7_F_PKCS7_FINAL 134
|
||||
# define PKCS7_F_PKCS7_FIND_DIGEST 127
|
||||
# define PKCS7_F_PKCS7_GET0_SIGNERS 124
|
||||
# define PKCS7_F_PKCS7_RECIP_INFO_SET 130
|
||||
# define PKCS7_F_PKCS7_SET_CIPHER 108
|
||||
# define PKCS7_F_PKCS7_SET_CONTENT 109
|
||||
# define PKCS7_F_PKCS7_SET_DIGEST 126
|
||||
# define PKCS7_F_PKCS7_SET_TYPE 110
|
||||
# define PKCS7_F_PKCS7_SIGN 116
|
||||
# define PKCS7_F_PKCS7_SIGNATUREVERIFY 113
|
||||
# define PKCS7_F_PKCS7_SIGNER_INFO_SET 129
|
||||
# define PKCS7_F_PKCS7_SIGNER_INFO_SIGN 139
|
||||
# define PKCS7_F_PKCS7_SIGN_ADD_SIGNER 137
|
||||
# define PKCS7_F_PKCS7_SIMPLE_SMIMECAP 119
|
||||
# define PKCS7_F_PKCS7_VERIFY 117
|
||||
|
||||
/* Reason codes. */
|
||||
# define PKCS7_R_CERTIFICATE_VERIFY_ERROR 117
|
||||
# define PKCS7_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER 144
|
||||
# define PKCS7_R_CIPHER_NOT_INITIALIZED 116
|
||||
# define PKCS7_R_CONTENT_AND_DATA_PRESENT 118
|
||||
# define PKCS7_R_CTRL_ERROR 152
|
||||
# define PKCS7_R_DECRYPT_ERROR 119
|
||||
# define PKCS7_R_DIGEST_FAILURE 101
|
||||
# define PKCS7_R_ENCRYPTION_CTRL_FAILURE 149
|
||||
# define PKCS7_R_ENCRYPTION_NOT_SUPPORTED_FOR_THIS_KEY_TYPE 150
|
||||
# define PKCS7_R_ERROR_ADDING_RECIPIENT 120
|
||||
# define PKCS7_R_ERROR_SETTING_CIPHER 121
|
||||
# define PKCS7_R_INVALID_NULL_POINTER 143
|
||||
# define PKCS7_R_INVALID_SIGNED_DATA_TYPE 155
|
||||
# define PKCS7_R_NO_CONTENT 122
|
||||
# define PKCS7_R_NO_DEFAULT_DIGEST 151
|
||||
# define PKCS7_R_NO_MATCHING_DIGEST_TYPE_FOUND 154
|
||||
# define PKCS7_R_NO_RECIPIENT_MATCHES_CERTIFICATE 115
|
||||
# define PKCS7_R_NO_SIGNATURES_ON_DATA 123
|
||||
# define PKCS7_R_NO_SIGNERS 142
|
||||
# define PKCS7_R_OPERATION_NOT_SUPPORTED_ON_THIS_TYPE 104
|
||||
# define PKCS7_R_PKCS7_ADD_SIGNATURE_ERROR 124
|
||||
# define PKCS7_R_PKCS7_ADD_SIGNER_ERROR 153
|
||||
# define PKCS7_R_PKCS7_DATASIGN 145
|
||||
# define PKCS7_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 127
|
||||
# define PKCS7_R_SIGNATURE_FAILURE 105
|
||||
# define PKCS7_R_SIGNER_CERTIFICATE_NOT_FOUND 128
|
||||
# define PKCS7_R_SIGNING_CTRL_FAILURE 147
|
||||
# define PKCS7_R_SIGNING_NOT_SUPPORTED_FOR_THIS_KEY_TYPE 148
|
||||
# define PKCS7_R_SMIME_TEXT_ERROR 129
|
||||
# define PKCS7_R_UNABLE_TO_FIND_CERTIFICATE 106
|
||||
# define PKCS7_R_UNABLE_TO_FIND_MEM_BIO 107
|
||||
# define PKCS7_R_UNABLE_TO_FIND_MESSAGE_DIGEST 108
|
||||
# define PKCS7_R_UNKNOWN_DIGEST_TYPE 109
|
||||
# define PKCS7_R_UNKNOWN_OPERATION 110
|
||||
# define PKCS7_R_UNSUPPORTED_CIPHER_TYPE 111
|
||||
# define PKCS7_R_UNSUPPORTED_CONTENT_TYPE 112
|
||||
# define PKCS7_R_WRONG_CONTENT_TYPE 113
|
||||
# define PKCS7_R_WRONG_PKCS7_TYPE 114
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -13,52 +13,54 @@
|
||||
# include <stdlib.h>
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/e_os2.h>
|
||||
# include <openssl/randerr.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* Already defined in ossl_typ.h */
|
||||
/* typedef struct rand_meth_st RAND_METHOD; */
|
||||
|
||||
struct rand_meth_st {
|
||||
int (*seed) (const void *buf, int num);
|
||||
int (*bytes) (unsigned char *buf, int num);
|
||||
void (*cleanup) (void);
|
||||
int (*add) (const void *buf, int num, double entropy);
|
||||
int (*add) (const void *buf, int num, double randomness);
|
||||
int (*pseudorand) (unsigned char *buf, int num);
|
||||
int (*status) (void);
|
||||
};
|
||||
|
||||
# ifdef BN_DEBUG
|
||||
extern int rand_predictable;
|
||||
# endif
|
||||
|
||||
int RAND_set_rand_method(const RAND_METHOD *meth);
|
||||
const RAND_METHOD *RAND_get_rand_method(void);
|
||||
# ifndef OPENSSL_NO_ENGINE
|
||||
int RAND_set_rand_engine(ENGINE *engine);
|
||||
# endif
|
||||
|
||||
RAND_METHOD *RAND_OpenSSL(void);
|
||||
|
||||
# if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# define RAND_cleanup() while(0) continue
|
||||
# endif
|
||||
int RAND_bytes(unsigned char *buf, int num);
|
||||
int RAND_priv_bytes(unsigned char *buf, int num);
|
||||
DEPRECATEDIN_1_1_0(int RAND_pseudo_bytes(unsigned char *buf, int num))
|
||||
|
||||
void RAND_seed(const void *buf, int num);
|
||||
void RAND_keep_random_devices_open(int keep);
|
||||
|
||||
# if defined(__ANDROID__) && defined(__NDK_FPABI__)
|
||||
__NDK_FPABI__ /* __attribute__((pcs("aapcs"))) on ARM */
|
||||
# endif
|
||||
void RAND_add(const void *buf, int num, double entropy);
|
||||
void RAND_add(const void *buf, int num, double randomness);
|
||||
int RAND_load_file(const char *file, long max_bytes);
|
||||
int RAND_write_file(const char *file);
|
||||
const char *RAND_file_name(char *file, size_t num);
|
||||
int RAND_status(void);
|
||||
|
||||
# ifndef OPENSSL_NO_EGD
|
||||
int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes);
|
||||
int RAND_egd(const char *path);
|
||||
int RAND_egd_bytes(const char *path, int bytes);
|
||||
# endif
|
||||
|
||||
int RAND_poll(void);
|
||||
|
||||
# if defined(_WIN32) && (defined(BASETYPES) || defined(_WINDEF_H))
|
||||
@@ -67,23 +69,9 @@ DEPRECATEDIN_1_1_0(void RAND_screen(void))
|
||||
DEPRECATEDIN_1_1_0(int RAND_event(UINT, WPARAM, LPARAM))
|
||||
# endif
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_RAND_strings(void);
|
||||
|
||||
/* Error codes for the RAND functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define RAND_F_RAND_BYTES 100
|
||||
|
||||
/* Reason codes. */
|
||||
# define RAND_R_PRNG_NOT_SEEDED 100
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -20,6 +20,7 @@
|
||||
# if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# include <openssl/bn.h>
|
||||
# endif
|
||||
# include <openssl/rsaerr.h>
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
@@ -44,6 +45,12 @@ extern "C" {
|
||||
# define RSA_3 0x3L
|
||||
# define RSA_F4 0x10001L
|
||||
|
||||
/* based on RFC 8017 appendix A.1.2 */
|
||||
# define RSA_ASN1_VERSION_DEFAULT 0
|
||||
# define RSA_ASN1_VERSION_MULTI 1
|
||||
|
||||
# define RSA_DEFAULT_PRIME_NUM 2
|
||||
|
||||
# define RSA_METHOD_FLAG_NO_CHECK 0x0001/* don't check pub/private
|
||||
* match */
|
||||
|
||||
@@ -86,58 +93,75 @@ extern "C" {
|
||||
# endif
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_padding(ctx, pad) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, -1, EVP_PKEY_CTRL_RSA_PADDING, \
|
||||
pad, NULL)
|
||||
RSA_pkey_ctx_ctrl(ctx, -1, EVP_PKEY_CTRL_RSA_PADDING, pad, NULL)
|
||||
|
||||
# define EVP_PKEY_CTX_get_rsa_padding(ctx, ppad) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, -1, \
|
||||
EVP_PKEY_CTRL_GET_RSA_PADDING, 0, ppad)
|
||||
RSA_pkey_ctx_ctrl(ctx, -1, EVP_PKEY_CTRL_GET_RSA_PADDING, 0, ppad)
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_pss_saltlen(ctx, len) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, \
|
||||
(EVP_PKEY_OP_SIGN|EVP_PKEY_OP_VERIFY), \
|
||||
EVP_PKEY_CTRL_RSA_PSS_SALTLEN, \
|
||||
len, NULL)
|
||||
RSA_pkey_ctx_ctrl(ctx, (EVP_PKEY_OP_SIGN|EVP_PKEY_OP_VERIFY), \
|
||||
EVP_PKEY_CTRL_RSA_PSS_SALTLEN, len, NULL)
|
||||
/* Salt length matches digest */
|
||||
# define RSA_PSS_SALTLEN_DIGEST -1
|
||||
/* Verify only: auto detect salt length */
|
||||
# define RSA_PSS_SALTLEN_AUTO -2
|
||||
/* Set salt length to maximum possible */
|
||||
# define RSA_PSS_SALTLEN_MAX -3
|
||||
/* Old compatible max salt length for sign only */
|
||||
# define RSA_PSS_SALTLEN_MAX_SIGN -2
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen(ctx, len) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA_PSS, EVP_PKEY_OP_KEYGEN, \
|
||||
EVP_PKEY_CTRL_RSA_PSS_SALTLEN, len, NULL)
|
||||
|
||||
# define EVP_PKEY_CTX_get_rsa_pss_saltlen(ctx, plen) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, \
|
||||
(EVP_PKEY_OP_SIGN|EVP_PKEY_OP_VERIFY), \
|
||||
EVP_PKEY_CTRL_GET_RSA_PSS_SALTLEN, \
|
||||
0, plen)
|
||||
RSA_pkey_ctx_ctrl(ctx, (EVP_PKEY_OP_SIGN|EVP_PKEY_OP_VERIFY), \
|
||||
EVP_PKEY_CTRL_GET_RSA_PSS_SALTLEN, 0, plen)
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_keygen_bits(ctx, bits) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_KEYGEN, \
|
||||
RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_KEYGEN, \
|
||||
EVP_PKEY_CTRL_RSA_KEYGEN_BITS, bits, NULL)
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_keygen_pubexp(ctx, pubexp) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_KEYGEN, \
|
||||
RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_KEYGEN, \
|
||||
EVP_PKEY_CTRL_RSA_KEYGEN_PUBEXP, 0, pubexp)
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_keygen_primes(ctx, primes) \
|
||||
RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_KEYGEN, \
|
||||
EVP_PKEY_CTRL_RSA_KEYGEN_PRIMES, primes, NULL)
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_mgf1_md(ctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, \
|
||||
EVP_PKEY_OP_TYPE_SIG | EVP_PKEY_OP_TYPE_CRYPT, \
|
||||
EVP_PKEY_CTRL_RSA_MGF1_MD, 0, (void *)md)
|
||||
RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_TYPE_SIG | EVP_PKEY_OP_TYPE_CRYPT, \
|
||||
EVP_PKEY_CTRL_RSA_MGF1_MD, 0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md(ctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA_PSS, EVP_PKEY_OP_KEYGEN, \
|
||||
EVP_PKEY_CTRL_RSA_MGF1_MD, 0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_oaep_md(ctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \
|
||||
EVP_PKEY_CTRL_RSA_OAEP_MD, 0, (void *)md)
|
||||
EVP_PKEY_CTRL_RSA_OAEP_MD, 0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTX_get_rsa_mgf1_md(ctx, pmd) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, \
|
||||
EVP_PKEY_OP_TYPE_SIG | EVP_PKEY_OP_TYPE_CRYPT, \
|
||||
EVP_PKEY_CTRL_GET_RSA_MGF1_MD, 0, (void *)pmd)
|
||||
RSA_pkey_ctx_ctrl(ctx, EVP_PKEY_OP_TYPE_SIG | EVP_PKEY_OP_TYPE_CRYPT, \
|
||||
EVP_PKEY_CTRL_GET_RSA_MGF1_MD, 0, (void *)(pmd))
|
||||
|
||||
# define EVP_PKEY_CTX_get_rsa_oaep_md(ctx, pmd) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \
|
||||
EVP_PKEY_CTRL_GET_RSA_OAEP_MD, 0, (void *)pmd)
|
||||
EVP_PKEY_CTRL_GET_RSA_OAEP_MD, 0, (void *)(pmd))
|
||||
|
||||
# define EVP_PKEY_CTX_set0_rsa_oaep_label(ctx, l, llen) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \
|
||||
EVP_PKEY_CTRL_RSA_OAEP_LABEL, llen, (void *)l)
|
||||
EVP_PKEY_CTRL_RSA_OAEP_LABEL, llen, (void *)(l))
|
||||
|
||||
# define EVP_PKEY_CTX_get0_rsa_oaep_label(ctx, l) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA, EVP_PKEY_OP_TYPE_CRYPT, \
|
||||
EVP_PKEY_CTRL_GET_RSA_OAEP_LABEL, 0, (void *)l)
|
||||
EVP_PKEY_CTRL_GET_RSA_OAEP_LABEL, 0, (void *)(l))
|
||||
|
||||
# define EVP_PKEY_CTX_set_rsa_pss_keygen_md(ctx, md) \
|
||||
EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_RSA_PSS, \
|
||||
EVP_PKEY_OP_TYPE_KEYGEN, EVP_PKEY_CTRL_MD, \
|
||||
0, (void *)(md))
|
||||
|
||||
# define EVP_PKEY_CTRL_RSA_PADDING (EVP_PKEY_ALG_CTRL + 1)
|
||||
# define EVP_PKEY_CTRL_RSA_PSS_SALTLEN (EVP_PKEY_ALG_CTRL + 2)
|
||||
@@ -156,6 +180,8 @@ extern "C" {
|
||||
# define EVP_PKEY_CTRL_GET_RSA_OAEP_MD (EVP_PKEY_ALG_CTRL + 11)
|
||||
# define EVP_PKEY_CTRL_GET_RSA_OAEP_LABEL (EVP_PKEY_ALG_CTRL + 12)
|
||||
|
||||
# define EVP_PKEY_CTRL_RSA_KEYGEN_PRIMES (EVP_PKEY_ALG_CTRL + 13)
|
||||
|
||||
# define RSA_PKCS1_PADDING 1
|
||||
# define RSA_SSLV23_PADDING 2
|
||||
# define RSA_NO_PADDING 3
|
||||
@@ -178,15 +204,30 @@ int RSA_security_bits(const RSA *rsa);
|
||||
int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d);
|
||||
int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q);
|
||||
int RSA_set0_crt_params(RSA *r,BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp);
|
||||
int RSA_set0_multi_prime_params(RSA *r, BIGNUM *primes[], BIGNUM *exps[],
|
||||
BIGNUM *coeffs[], int pnum);
|
||||
void RSA_get0_key(const RSA *r,
|
||||
const BIGNUM **n, const BIGNUM **e, const BIGNUM **d);
|
||||
void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q);
|
||||
int RSA_get_multi_prime_extra_count(const RSA *r);
|
||||
int RSA_get0_multi_prime_factors(const RSA *r, const BIGNUM *primes[]);
|
||||
void RSA_get0_crt_params(const RSA *r,
|
||||
const BIGNUM **dmp1, const BIGNUM **dmq1,
|
||||
const BIGNUM **iqmp);
|
||||
int RSA_get0_multi_prime_crt_params(const RSA *r, const BIGNUM *exps[],
|
||||
const BIGNUM *coeffs[]);
|
||||
const BIGNUM *RSA_get0_n(const RSA *d);
|
||||
const BIGNUM *RSA_get0_e(const RSA *d);
|
||||
const BIGNUM *RSA_get0_d(const RSA *d);
|
||||
const BIGNUM *RSA_get0_p(const RSA *d);
|
||||
const BIGNUM *RSA_get0_q(const RSA *d);
|
||||
const BIGNUM *RSA_get0_dmp1(const RSA *r);
|
||||
const BIGNUM *RSA_get0_dmq1(const RSA *r);
|
||||
const BIGNUM *RSA_get0_iqmp(const RSA *r);
|
||||
void RSA_clear_flags(RSA *r, int flags);
|
||||
int RSA_test_flags(const RSA *r, int flags);
|
||||
void RSA_set_flags(RSA *r, int flags);
|
||||
int RSA_get_version(RSA *r);
|
||||
ENGINE *RSA_get0_engine(const RSA *r);
|
||||
|
||||
/* Deprecated version */
|
||||
@@ -196,6 +237,9 @@ DEPRECATEDIN_0_9_8(RSA *RSA_generate_key(int bits, unsigned long e, void
|
||||
|
||||
/* New version */
|
||||
int RSA_generate_key_ex(RSA *rsa, int bits, BIGNUM *e, BN_GENCB *cb);
|
||||
/* Multi-prime version */
|
||||
int RSA_generate_multi_prime_key(RSA *rsa, int bits, int primes,
|
||||
BIGNUM *e, BN_GENCB *cb);
|
||||
|
||||
int RSA_X931_derive_ex(RSA *rsa, BIGNUM *p1, BIGNUM *p2, BIGNUM *q1,
|
||||
BIGNUM *q2, const BIGNUM *Xp1, const BIGNUM *Xp2,
|
||||
@@ -223,13 +267,14 @@ int RSA_flags(const RSA *r);
|
||||
|
||||
void RSA_set_default_method(const RSA_METHOD *meth);
|
||||
const RSA_METHOD *RSA_get_default_method(void);
|
||||
const RSA_METHOD *RSA_null_method(void);
|
||||
const RSA_METHOD *RSA_get_method(const RSA *rsa);
|
||||
int RSA_set_method(RSA *rsa, const RSA_METHOD *meth);
|
||||
|
||||
/* these are the actual RSA functions */
|
||||
const RSA_METHOD *RSA_PKCS1_OpenSSL(void);
|
||||
|
||||
const RSA_METHOD *RSA_null_method(void);
|
||||
int RSA_pkey_ctx_ctrl(EVP_PKEY_CTX *ctx, int optype, int cmd, int p1, void *p2);
|
||||
|
||||
DECLARE_ASN1_ENCODE_FUNCTIONS_const(RSA, RSAPublicKey)
|
||||
DECLARE_ASN1_ENCODE_FUNCTIONS_const(RSA, RSAPrivateKey)
|
||||
@@ -239,6 +284,8 @@ typedef struct rsa_pss_params_st {
|
||||
X509_ALGOR *maskGenAlgorithm;
|
||||
ASN1_INTEGER *saltLength;
|
||||
ASN1_INTEGER *trailerField;
|
||||
/* Decoded hash algorithm from maskGenAlgorithm */
|
||||
X509_ALGOR *maskHash;
|
||||
} RSA_PSS_PARAMS;
|
||||
|
||||
DECLARE_ASN1_FUNCTIONS(RSA_PSS_PARAMS)
|
||||
@@ -247,6 +294,8 @@ typedef struct rsa_oaep_params_st {
|
||||
X509_ALGOR *hashFunc;
|
||||
X509_ALGOR *maskGenFunc;
|
||||
X509_ALGOR *pSourceFunc;
|
||||
/* Decoded hash algorithm from maskGenFunc */
|
||||
X509_ALGOR *maskHash;
|
||||
} RSA_OAEP_PARAMS;
|
||||
|
||||
DECLARE_ASN1_FUNCTIONS(RSA_OAEP_PARAMS)
|
||||
@@ -374,7 +423,7 @@ void RSA_meth_free(RSA_METHOD *meth);
|
||||
RSA_METHOD *RSA_meth_dup(const RSA_METHOD *meth);
|
||||
const char *RSA_meth_get0_name(const RSA_METHOD *meth);
|
||||
int RSA_meth_set1_name(RSA_METHOD *meth, const char *name);
|
||||
int RSA_meth_get_flags(RSA_METHOD *meth);
|
||||
int RSA_meth_get_flags(const RSA_METHOD *meth);
|
||||
int RSA_meth_set_flags(RSA_METHOD *meth, int flags);
|
||||
void *RSA_meth_get0_app_data(const RSA_METHOD *meth);
|
||||
int RSA_meth_set0_app_data(RSA_METHOD *meth, void *app_data);
|
||||
@@ -449,139 +498,12 @@ int (*RSA_meth_get_keygen(const RSA_METHOD *meth))
|
||||
int RSA_meth_set_keygen(RSA_METHOD *rsa,
|
||||
int (*keygen) (RSA *rsa, int bits, BIGNUM *e,
|
||||
BN_GENCB *cb));
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_RSA_strings(void);
|
||||
|
||||
/* Error codes for the RSA functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define RSA_F_CHECK_PADDING_MD 140
|
||||
# define RSA_F_ENCODE_PKCS1 146
|
||||
# define RSA_F_INT_RSA_VERIFY 145
|
||||
# define RSA_F_OLD_RSA_PRIV_DECODE 147
|
||||
# define RSA_F_PKEY_RSA_CTRL 143
|
||||
# define RSA_F_PKEY_RSA_CTRL_STR 144
|
||||
# define RSA_F_PKEY_RSA_SIGN 142
|
||||
# define RSA_F_PKEY_RSA_VERIFY 149
|
||||
# define RSA_F_PKEY_RSA_VERIFYRECOVER 141
|
||||
# define RSA_F_RSA_ALGOR_TO_MD 156
|
||||
# define RSA_F_RSA_BUILTIN_KEYGEN 129
|
||||
# define RSA_F_RSA_CHECK_KEY 123
|
||||
# define RSA_F_RSA_CHECK_KEY_EX 160
|
||||
# define RSA_F_RSA_CMS_DECRYPT 159
|
||||
# define RSA_F_RSA_ITEM_VERIFY 148
|
||||
# define RSA_F_RSA_METH_DUP 161
|
||||
# define RSA_F_RSA_METH_NEW 162
|
||||
# define RSA_F_RSA_METH_SET1_NAME 163
|
||||
# define RSA_F_RSA_MGF1_TO_MD 157
|
||||
# define RSA_F_RSA_NEW_METHOD 106
|
||||
# define RSA_F_RSA_NULL 124
|
||||
# define RSA_F_RSA_NULL_PRIVATE_DECRYPT 132
|
||||
# define RSA_F_RSA_NULL_PRIVATE_ENCRYPT 133
|
||||
# define RSA_F_RSA_NULL_PUBLIC_DECRYPT 134
|
||||
# define RSA_F_RSA_NULL_PUBLIC_ENCRYPT 135
|
||||
# define RSA_F_RSA_OSSL_PRIVATE_DECRYPT 101
|
||||
# define RSA_F_RSA_OSSL_PRIVATE_ENCRYPT 102
|
||||
# define RSA_F_RSA_OSSL_PUBLIC_DECRYPT 103
|
||||
# define RSA_F_RSA_OSSL_PUBLIC_ENCRYPT 104
|
||||
# define RSA_F_RSA_PADDING_ADD_NONE 107
|
||||
# define RSA_F_RSA_PADDING_ADD_PKCS1_OAEP 121
|
||||
# define RSA_F_RSA_PADDING_ADD_PKCS1_OAEP_MGF1 154
|
||||
# define RSA_F_RSA_PADDING_ADD_PKCS1_PSS 125
|
||||
# define RSA_F_RSA_PADDING_ADD_PKCS1_PSS_MGF1 152
|
||||
# define RSA_F_RSA_PADDING_ADD_PKCS1_TYPE_1 108
|
||||
# define RSA_F_RSA_PADDING_ADD_PKCS1_TYPE_2 109
|
||||
# define RSA_F_RSA_PADDING_ADD_SSLV23 110
|
||||
# define RSA_F_RSA_PADDING_ADD_X931 127
|
||||
# define RSA_F_RSA_PADDING_CHECK_NONE 111
|
||||
# define RSA_F_RSA_PADDING_CHECK_PKCS1_OAEP 122
|
||||
# define RSA_F_RSA_PADDING_CHECK_PKCS1_OAEP_MGF1 153
|
||||
# define RSA_F_RSA_PADDING_CHECK_PKCS1_TYPE_1 112
|
||||
# define RSA_F_RSA_PADDING_CHECK_PKCS1_TYPE_2 113
|
||||
# define RSA_F_RSA_PADDING_CHECK_SSLV23 114
|
||||
# define RSA_F_RSA_PADDING_CHECK_X931 128
|
||||
# define RSA_F_RSA_PRINT 115
|
||||
# define RSA_F_RSA_PRINT_FP 116
|
||||
# define RSA_F_RSA_PRIV_ENCODE 138
|
||||
# define RSA_F_RSA_PSS_TO_CTX 155
|
||||
# define RSA_F_RSA_PUB_DECODE 139
|
||||
# define RSA_F_RSA_SETUP_BLINDING 136
|
||||
# define RSA_F_RSA_SIGN 117
|
||||
# define RSA_F_RSA_SIGN_ASN1_OCTET_STRING 118
|
||||
# define RSA_F_RSA_VERIFY 119
|
||||
# define RSA_F_RSA_VERIFY_ASN1_OCTET_STRING 120
|
||||
# define RSA_F_RSA_VERIFY_PKCS1_PSS_MGF1 126
|
||||
|
||||
/* Reason codes. */
|
||||
# define RSA_R_ALGORITHM_MISMATCH 100
|
||||
# define RSA_R_BAD_E_VALUE 101
|
||||
# define RSA_R_BAD_FIXED_HEADER_DECRYPT 102
|
||||
# define RSA_R_BAD_PAD_BYTE_COUNT 103
|
||||
# define RSA_R_BAD_SIGNATURE 104
|
||||
# define RSA_R_BLOCK_TYPE_IS_NOT_01 106
|
||||
# define RSA_R_BLOCK_TYPE_IS_NOT_02 107
|
||||
# define RSA_R_DATA_GREATER_THAN_MOD_LEN 108
|
||||
# define RSA_R_DATA_TOO_LARGE 109
|
||||
# define RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 110
|
||||
# define RSA_R_DATA_TOO_LARGE_FOR_MODULUS 132
|
||||
# define RSA_R_DATA_TOO_SMALL 111
|
||||
# define RSA_R_DATA_TOO_SMALL_FOR_KEY_SIZE 122
|
||||
# define RSA_R_DIGEST_DOES_NOT_MATCH 158
|
||||
# define RSA_R_DIGEST_TOO_BIG_FOR_RSA_KEY 112
|
||||
# define RSA_R_DMP1_NOT_CONGRUENT_TO_D 124
|
||||
# define RSA_R_DMQ1_NOT_CONGRUENT_TO_D 125
|
||||
# define RSA_R_D_E_NOT_CONGRUENT_TO_1 123
|
||||
# define RSA_R_FIRST_OCTET_INVALID 133
|
||||
# define RSA_R_ILLEGAL_OR_UNSUPPORTED_PADDING_MODE 144
|
||||
# define RSA_R_INVALID_DIGEST 157
|
||||
# define RSA_R_INVALID_DIGEST_LENGTH 143
|
||||
# define RSA_R_INVALID_HEADER 137
|
||||
# define RSA_R_INVALID_LABEL 160
|
||||
# define RSA_R_INVALID_MESSAGE_LENGTH 131
|
||||
# define RSA_R_INVALID_MGF1_MD 156
|
||||
# define RSA_R_INVALID_OAEP_PARAMETERS 161
|
||||
# define RSA_R_INVALID_PADDING 138
|
||||
# define RSA_R_INVALID_PADDING_MODE 141
|
||||
# define RSA_R_INVALID_PSS_PARAMETERS 149
|
||||
# define RSA_R_INVALID_PSS_SALTLEN 146
|
||||
# define RSA_R_INVALID_SALT_LENGTH 150
|
||||
# define RSA_R_INVALID_TRAILER 139
|
||||
# define RSA_R_INVALID_X931_DIGEST 142
|
||||
# define RSA_R_IQMP_NOT_INVERSE_OF_Q 126
|
||||
# define RSA_R_KEY_SIZE_TOO_SMALL 120
|
||||
# define RSA_R_LAST_OCTET_INVALID 134
|
||||
# define RSA_R_MODULUS_TOO_LARGE 105
|
||||
# define RSA_R_NO_PUBLIC_EXPONENT 140
|
||||
# define RSA_R_NULL_BEFORE_BLOCK_MISSING 113
|
||||
# define RSA_R_N_DOES_NOT_EQUAL_P_Q 127
|
||||
# define RSA_R_OAEP_DECODING_ERROR 121
|
||||
# define RSA_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE 148
|
||||
# define RSA_R_PADDING_CHECK_FAILED 114
|
||||
# define RSA_R_PKCS_DECODING_ERROR 159
|
||||
# define RSA_R_P_NOT_PRIME 128
|
||||
# define RSA_R_Q_NOT_PRIME 129
|
||||
# define RSA_R_RSA_OPERATIONS_NOT_SUPPORTED 130
|
||||
# define RSA_R_SLEN_CHECK_FAILED 136
|
||||
# define RSA_R_SLEN_RECOVERY_FAILED 135
|
||||
# define RSA_R_SSLV3_ROLLBACK_ATTACK 115
|
||||
# define RSA_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD 116
|
||||
# define RSA_R_UNKNOWN_ALGORITHM_TYPE 117
|
||||
# define RSA_R_UNKNOWN_DIGEST 166
|
||||
# define RSA_R_UNKNOWN_MASK_DIGEST 151
|
||||
# define RSA_R_UNKNOWN_PADDING_TYPE 118
|
||||
# define RSA_R_UNSUPPORTED_ENCRYPTION_TYPE 162
|
||||
# define RSA_R_UNSUPPORTED_LABEL_SOURCE 163
|
||||
# define RSA_R_UNSUPPORTED_MASK_ALGORITHM 153
|
||||
# define RSA_R_UNSUPPORTED_MASK_PARAMETER 154
|
||||
# define RSA_R_UNSUPPORTED_SIGNATURE_TYPE 155
|
||||
# define RSA_R_VALUE_MISSING 147
|
||||
# define RSA_R_WRONG_SIGNATURE_LENGTH 119
|
||||
int (*RSA_meth_get_multi_prime_keygen(const RSA_METHOD *meth))
|
||||
(RSA *rsa, int bits, int primes, BIGNUM *e, BN_GENCB *cb);
|
||||
int RSA_meth_set_multi_prime_keygen(RSA_METHOD *meth,
|
||||
int (*keygen) (RSA *rsa, int bits,
|
||||
int primes, BIGNUM *e,
|
||||
BN_GENCB *cb));
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1999-2017 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
|
||||
@@ -40,6 +40,14 @@ extern "C" {
|
||||
{ \
|
||||
return (STACK_OF(t1) *)OPENSSL_sk_new_null(); \
|
||||
} \
|
||||
static ossl_inline STACK_OF(t1) *sk_##t1##_new_reserve(sk_##t1##_compfunc compare, int n) \
|
||||
{ \
|
||||
return (STACK_OF(t1) *)OPENSSL_sk_new_reserve((OPENSSL_sk_compfunc)compare, n); \
|
||||
} \
|
||||
static ossl_inline int sk_##t1##_reserve(STACK_OF(t1) *sk, int n) \
|
||||
{ \
|
||||
return OPENSSL_sk_reserve((OPENSSL_STACK *)sk, n); \
|
||||
} \
|
||||
static ossl_inline void sk_##t1##_free(STACK_OF(t1) *sk) \
|
||||
{ \
|
||||
OPENSSL_sk_free((OPENSSL_STACK *)sk); \
|
||||
|
||||
@@ -52,9 +52,7 @@ extern "C" {
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# if !defined(NO_SYS_TYPES_H)
|
||||
# include <sys/types.h>
|
||||
# endif
|
||||
|
||||
# define SEED_BLOCK_SIZE 16
|
||||
# define SEED_KEY_LENGTH 16
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
/*
|
||||
* Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2004-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2004, EdelKey Project. 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
|
||||
*
|
||||
* Originally written by Christophe Renou and Peter Sylvester,
|
||||
* for the EdelKey project.
|
||||
*/
|
||||
|
||||
#ifndef HEADER_SRP_H
|
||||
|
||||
@@ -36,7 +36,7 @@ extern "C" {
|
||||
# ifndef OPENSSL_NO_SRTP
|
||||
|
||||
__owur int SSL_CTX_set_tlsext_use_srtp(SSL_CTX *ctx, const char *profiles);
|
||||
__owur int SSL_set_tlsext_use_srtp(SSL *ctx, const char *profiles);
|
||||
__owur int SSL_set_tlsext_use_srtp(SSL *ssl, const char *profiles);
|
||||
|
||||
__owur STACK_OF(SRTP_PROTECTION_PROFILE) *SSL_get_srtp_profiles(SSL *ssl);
|
||||
__owur SRTP_PROTECTION_PROFILE *SSL_get_selected_srtp_profile(SSL *s);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. 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
|
||||
@@ -7,12 +8,6 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
|
||||
* ECC cipher suite support in OpenSSL originally developed by
|
||||
* SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project.
|
||||
*/
|
||||
|
||||
#ifndef HEADER_SSL3_H
|
||||
# define HEADER_SSL3_H
|
||||
|
||||
@@ -74,6 +69,18 @@ extern "C" {
|
||||
# define SSL3_CK_ADH_DES_64_CBC_SHA 0x0300001A
|
||||
# define SSL3_CK_ADH_DES_192_CBC_SHA 0x0300001B
|
||||
|
||||
/* a bundle of RFC standard cipher names, generated from ssl3_ciphers[] */
|
||||
# define SSL3_RFC_RSA_NULL_MD5 "TLS_RSA_WITH_NULL_MD5"
|
||||
# define SSL3_RFC_RSA_NULL_SHA "TLS_RSA_WITH_NULL_SHA"
|
||||
# define SSL3_RFC_RSA_DES_192_CBC3_SHA "TLS_RSA_WITH_3DES_EDE_CBC_SHA"
|
||||
# define SSL3_RFC_DHE_DSS_DES_192_CBC3_SHA "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA"
|
||||
# define SSL3_RFC_DHE_RSA_DES_192_CBC3_SHA "TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA"
|
||||
# define SSL3_RFC_ADH_DES_192_CBC_SHA "TLS_DH_anon_WITH_3DES_EDE_CBC_SHA"
|
||||
# define SSL3_RFC_RSA_IDEA_128_SHA "TLS_RSA_WITH_IDEA_CBC_SHA"
|
||||
# define SSL3_RFC_RSA_RC4_128_MD5 "TLS_RSA_WITH_RC4_128_MD5"
|
||||
# define SSL3_RFC_RSA_RC4_128_SHA "TLS_RSA_WITH_RC4_128_SHA"
|
||||
# define SSL3_RFC_ADH_RC4_128_MD5 "TLS_DH_anon_WITH_RC4_128_MD5"
|
||||
|
||||
# define SSL3_TXT_RSA_NULL_MD5 "NULL-MD5"
|
||||
# define SSL3_TXT_RSA_NULL_SHA "NULL-SHA"
|
||||
# define SSL3_TXT_RSA_RC4_40_MD5 "EXP-RC4-MD5"
|
||||
@@ -171,6 +178,7 @@ extern "C" {
|
||||
* of padding bytes (256) plus the mac size.
|
||||
*/
|
||||
# define SSL3_RT_MAX_ENCRYPTED_OVERHEAD (256 + SSL3_RT_MAX_MD_SIZE)
|
||||
# define SSL3_RT_MAX_TLS13_ENCRYPTED_OVERHEAD 256
|
||||
|
||||
/*
|
||||
* OpenSSL currently only uses a padding length of at most one block so the
|
||||
@@ -190,6 +198,8 @@ extern "C" {
|
||||
# endif
|
||||
# define SSL3_RT_MAX_ENCRYPTED_LENGTH \
|
||||
(SSL3_RT_MAX_ENCRYPTED_OVERHEAD+SSL3_RT_MAX_COMPRESSED_LENGTH)
|
||||
# define SSL3_RT_MAX_TLS13_ENCRYPTED_LENGTH \
|
||||
(SSL3_RT_MAX_PLAIN_LENGTH + SSL3_RT_MAX_TLS13_ENCRYPTED_OVERHEAD)
|
||||
# define SSL3_RT_MAX_PACKET_SIZE \
|
||||
(SSL3_RT_MAX_ENCRYPTED_LENGTH+SSL3_RT_HEADER_LENGTH)
|
||||
|
||||
@@ -220,8 +230,9 @@ extern "C" {
|
||||
# define TLS1_RT_CRYPTO_IV (TLS1_RT_CRYPTO | 0x7)
|
||||
# define TLS1_RT_CRYPTO_FIXED_IV (TLS1_RT_CRYPTO | 0x8)
|
||||
|
||||
/* Pseudo content type for SSL/TLS header info */
|
||||
/* Pseudo content types for SSL/TLS header info */
|
||||
# define SSL3_RT_HEADER 0x100
|
||||
# define SSL3_RT_INNER_CONTENT_TYPE 0x101
|
||||
|
||||
# define SSL3_AL_WARNING 1
|
||||
# define SSL3_AL_FATAL 2
|
||||
@@ -252,10 +263,17 @@ extern "C" {
|
||||
# define SSL3_CT_FORTEZZA_DMS 20
|
||||
/*
|
||||
* SSL3_CT_NUMBER is used to size arrays and it must be large enough to
|
||||
* contain all of the cert types defined either for SSLv3 and TLSv1.
|
||||
* contain all of the cert types defined for *either* SSLv3 and TLSv1.
|
||||
*/
|
||||
# define SSL3_CT_NUMBER 9
|
||||
# define SSL3_CT_NUMBER 10
|
||||
|
||||
# if defined(TLS_CT_NUMBER)
|
||||
# if TLS_CT_NUMBER != SSL3_CT_NUMBER
|
||||
# error "SSL/TLS CT_NUMBER values do not match"
|
||||
# endif
|
||||
# endif
|
||||
|
||||
/* No longer used as of OpenSSL 1.1.1 */
|
||||
# define SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS 0x0001
|
||||
|
||||
/* Removed from OpenSSL 1.1.0 */
|
||||
@@ -272,10 +290,14 @@ extern "C" {
|
||||
|
||||
# define TLS1_FLAGS_ENCRYPT_THEN_MAC_WRITE 0x0400
|
||||
|
||||
# define TLS1_FLAGS_STATELESS 0x0800
|
||||
|
||||
# define SSL3_MT_HELLO_REQUEST 0
|
||||
# define SSL3_MT_CLIENT_HELLO 1
|
||||
# define SSL3_MT_SERVER_HELLO 2
|
||||
# define SSL3_MT_NEWSESSION_TICKET 4
|
||||
# define SSL3_MT_END_OF_EARLY_DATA 5
|
||||
# define SSL3_MT_ENCRYPTED_EXTENSIONS 8
|
||||
# define SSL3_MT_CERTIFICATE 11
|
||||
# define SSL3_MT_SERVER_KEY_EXCHANGE 12
|
||||
# define SSL3_MT_CERTIFICATE_REQUEST 13
|
||||
@@ -283,10 +305,14 @@ extern "C" {
|
||||
# define SSL3_MT_CERTIFICATE_VERIFY 15
|
||||
# define SSL3_MT_CLIENT_KEY_EXCHANGE 16
|
||||
# define SSL3_MT_FINISHED 20
|
||||
# define SSL3_MT_CERTIFICATE_URL 21
|
||||
# define SSL3_MT_CERTIFICATE_STATUS 22
|
||||
# define SSL3_MT_SUPPLEMENTAL_DATA 23
|
||||
# define SSL3_MT_KEY_UPDATE 24
|
||||
# ifndef OPENSSL_NO_NEXTPROTONEG
|
||||
# define SSL3_MT_NEXT_PROTO 67
|
||||
# endif
|
||||
# define SSL3_MT_MESSAGE_HASH 254
|
||||
# define DTLS1_MT_HELLO_VERIFY_REQUEST 3
|
||||
|
||||
/* Dummy message type for handling CCS like a normal handshake message */
|
||||
@@ -295,10 +321,13 @@ extern "C" {
|
||||
# define SSL3_MT_CCS 1
|
||||
|
||||
/* These are used when changing over to a new cipher */
|
||||
# define SSL3_CC_READ 0x01
|
||||
# define SSL3_CC_WRITE 0x02
|
||||
# define SSL3_CC_CLIENT 0x10
|
||||
# define SSL3_CC_SERVER 0x20
|
||||
# define SSL3_CC_READ 0x001
|
||||
# define SSL3_CC_WRITE 0x002
|
||||
# define SSL3_CC_CLIENT 0x010
|
||||
# define SSL3_CC_SERVER 0x020
|
||||
# define SSL3_CC_EARLY 0x040
|
||||
# define SSL3_CC_HANDSHAKE 0x080
|
||||
# define SSL3_CC_APPLICATION 0x100
|
||||
# define SSL3_CHANGE_CIPHER_CLIENT_WRITE (SSL3_CC_CLIENT|SSL3_CC_WRITE)
|
||||
# define SSL3_CHANGE_CIPHER_SERVER_READ (SSL3_CC_SERVER|SSL3_CC_READ)
|
||||
# define SSL3_CHANGE_CIPHER_CLIENT_READ (SSL3_CC_CLIENT|SSL3_CC_READ)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2017 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
|
||||
@@ -27,9 +27,13 @@ void *OPENSSL_sk_set(OPENSSL_STACK *st, int i, const void *data);
|
||||
|
||||
OPENSSL_STACK *OPENSSL_sk_new(OPENSSL_sk_compfunc cmp);
|
||||
OPENSSL_STACK *OPENSSL_sk_new_null(void);
|
||||
OPENSSL_STACK *OPENSSL_sk_new_reserve(OPENSSL_sk_compfunc c, int n);
|
||||
int OPENSSL_sk_reserve(OPENSSL_STACK *st, int n);
|
||||
void OPENSSL_sk_free(OPENSSL_STACK *);
|
||||
void OPENSSL_sk_pop_free(OPENSSL_STACK *st, void (*func) (void *));
|
||||
OPENSSL_STACK *OPENSSL_sk_deep_copy(const OPENSSL_STACK *, OPENSSL_sk_copyfunc c, OPENSSL_sk_freefunc f);
|
||||
OPENSSL_STACK *OPENSSL_sk_deep_copy(const OPENSSL_STACK *,
|
||||
OPENSSL_sk_copyfunc c,
|
||||
OPENSSL_sk_freefunc f);
|
||||
int OPENSSL_sk_insert(OPENSSL_STACK *sk, const void *data, int where);
|
||||
void *OPENSSL_sk_delete(OPENSSL_STACK *st, int loc);
|
||||
void *OPENSSL_sk_delete_ptr(OPENSSL_STACK *st, const void *p);
|
||||
@@ -40,7 +44,8 @@ int OPENSSL_sk_unshift(OPENSSL_STACK *st, const void *data);
|
||||
void *OPENSSL_sk_shift(OPENSSL_STACK *st);
|
||||
void *OPENSSL_sk_pop(OPENSSL_STACK *st);
|
||||
void OPENSSL_sk_zero(OPENSSL_STACK *st);
|
||||
OPENSSL_sk_compfunc OPENSSL_sk_set_cmp_func(OPENSSL_STACK *sk, OPENSSL_sk_compfunc cmp);
|
||||
OPENSSL_sk_compfunc OPENSSL_sk_set_cmp_func(OPENSSL_STACK *sk,
|
||||
OPENSSL_sk_compfunc cmp);
|
||||
OPENSSL_STACK *OPENSSL_sk_dup(const OPENSSL_STACK *st);
|
||||
void OPENSSL_sk_sort(OPENSSL_STACK *st);
|
||||
int OPENSSL_sk_is_sorted(const OPENSSL_STACK *st);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
|
||||
* Copyright 2005 Nokia. 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
|
||||
@@ -7,46 +9,6 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
|
||||
*
|
||||
* Portions of the attached software ("Contribution") are developed by
|
||||
* SUN MICROSYSTEMS, INC., and are contributed to the OpenSSL project.
|
||||
*
|
||||
* The Contribution is licensed pursuant to the OpenSSL open source
|
||||
* license provided above.
|
||||
*
|
||||
* ECC cipher suite support in OpenSSL originally written by
|
||||
* Vipul Gupta and Sumit Gupta of Sun Microsystems Laboratories.
|
||||
*
|
||||
*/
|
||||
/* ====================================================================
|
||||
* Copyright 2005 Nokia. All rights reserved.
|
||||
*
|
||||
* The portions of the attached software ("Contribution") is developed by
|
||||
* Nokia Corporation and is licensed pursuant to the OpenSSL open source
|
||||
* license.
|
||||
*
|
||||
* The Contribution, originally written by Mika Kousa and Pasi Eronen of
|
||||
* Nokia Corporation, consists of the "PSK" (Pre-Shared Key) ciphersuites
|
||||
* support (see RFC 4279) to OpenSSL.
|
||||
*
|
||||
* No patent licenses or other rights except those expressly stated in
|
||||
* the OpenSSL open source license shall be deemed granted or received
|
||||
* expressly, by implication, estoppel, or otherwise.
|
||||
*
|
||||
* No assurances are provided by Nokia that the Contribution does not
|
||||
* infringe the patent or other intellectual property rights of any third
|
||||
* party or that the license provides you with all the necessary rights
|
||||
* to make use of the Contribution.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IN
|
||||
* ADDITION TO THE DISCLAIMERS INCLUDED IN THE LICENSE, NOKIA
|
||||
* SPECIFICALLY DISCLAIMS ANY LIABILITY FOR CLAIMS BROUGHT BY YOU OR ANY
|
||||
* OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS OR
|
||||
* OTHERWISE.
|
||||
*/
|
||||
|
||||
#ifndef HEADER_TLS1_H
|
||||
# define HEADER_TLS1_H
|
||||
|
||||
@@ -65,7 +27,8 @@ extern "C" {
|
||||
# define TLS1_VERSION 0x0301
|
||||
# define TLS1_1_VERSION 0x0302
|
||||
# define TLS1_2_VERSION 0x0303
|
||||
# define TLS_MAX_VERSION TLS1_2_VERSION
|
||||
# define TLS1_3_VERSION 0x0304
|
||||
# define TLS_MAX_VERSION TLS1_3_VERSION
|
||||
|
||||
/* Special value for method supporting multiple versions */
|
||||
# define TLS_ANY_VERSION 0x10000
|
||||
@@ -98,6 +61,9 @@ extern "C" {
|
||||
# define TLS1_AD_INAPPROPRIATE_FALLBACK 86/* fatal */
|
||||
# define TLS1_AD_USER_CANCELLED 90
|
||||
# define TLS1_AD_NO_RENEGOTIATION 100
|
||||
/* TLSv1.3 alerts */
|
||||
# define TLS13_AD_MISSING_EXTENSION 109 /* fatal */
|
||||
# define TLS13_AD_CERTIFICATE_REQUIRED 116 /* fatal */
|
||||
/* codes 110-114 are from RFC3546 */
|
||||
# define TLS1_AD_UNSUPPORTED_EXTENSION 110
|
||||
# define TLS1_AD_CERTIFICATE_UNOBTAINABLE 111
|
||||
@@ -123,9 +89,15 @@ extern "C" {
|
||||
# define TLSEXT_TYPE_cert_type 9
|
||||
|
||||
/* ExtensionType values from RFC4492 */
|
||||
# define TLSEXT_TYPE_elliptic_curves 10
|
||||
/*
|
||||
* Prior to TLSv1.3 the supported_groups extension was known as
|
||||
* elliptic_curves
|
||||
*/
|
||||
# define TLSEXT_TYPE_supported_groups 10
|
||||
# define TLSEXT_TYPE_elliptic_curves TLSEXT_TYPE_supported_groups
|
||||
# define TLSEXT_TYPE_ec_point_formats 11
|
||||
|
||||
|
||||
/* ExtensionType value from RFC5054 */
|
||||
# define TLSEXT_TYPE_srp 12
|
||||
|
||||
@@ -162,6 +134,17 @@ extern "C" {
|
||||
/* ExtensionType value from RFC4507 */
|
||||
# define TLSEXT_TYPE_session_ticket 35
|
||||
|
||||
/* As defined for TLS1.3 */
|
||||
# define TLSEXT_TYPE_psk 41
|
||||
# define TLSEXT_TYPE_early_data 42
|
||||
# define TLSEXT_TYPE_supported_versions 43
|
||||
# define TLSEXT_TYPE_cookie 44
|
||||
# define TLSEXT_TYPE_psk_kex_modes 45
|
||||
# define TLSEXT_TYPE_certificate_authorities 47
|
||||
# define TLSEXT_TYPE_post_handshake_auth 49
|
||||
# define TLSEXT_TYPE_signature_algorithms_cert 50
|
||||
# define TLSEXT_TYPE_key_share 51
|
||||
|
||||
/* Temporary extension type */
|
||||
# define TLSEXT_TYPE_renegotiate 0xff01
|
||||
|
||||
@@ -217,6 +200,17 @@ extern "C" {
|
||||
# define TLSEXT_curve_P_256 23
|
||||
# define TLSEXT_curve_P_384 24
|
||||
|
||||
/* OpenSSL value to disable maximum fragment length extension */
|
||||
# define TLSEXT_max_fragment_length_DISABLED 0
|
||||
/* Allowed values for max fragment length extension */
|
||||
# define TLSEXT_max_fragment_length_512 1
|
||||
# define TLSEXT_max_fragment_length_1024 2
|
||||
# define TLSEXT_max_fragment_length_2048 3
|
||||
# define TLSEXT_max_fragment_length_4096 4
|
||||
|
||||
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);
|
||||
|
||||
# define TLSEXT_MAXLEN_host_name 255
|
||||
|
||||
__owur const char *SSL_get_servername(const SSL *s, const int type);
|
||||
@@ -226,12 +220,27 @@ __owur int SSL_get_servername_type(const SSL *s);
|
||||
* as specified in RFC 5705. It writes |olen| bytes to |out| given a label and
|
||||
* optional context. (Since a zero length context is allowed, the |use_context|
|
||||
* flag controls whether a context is included.) It returns 1 on success and
|
||||
* zero otherwise.
|
||||
* 0 or -1 otherwise.
|
||||
*/
|
||||
__owur int SSL_export_keying_material(SSL *s, unsigned char *out, size_t olen,
|
||||
const char *label, size_t llen,
|
||||
const unsigned char *p, size_t plen,
|
||||
int use_context);
|
||||
const unsigned char *context,
|
||||
size_t contextlen, int use_context);
|
||||
|
||||
/*
|
||||
* SSL_export_keying_material_early exports a value derived from the
|
||||
* early exporter master secret, as specified in
|
||||
* https://tools.ietf.org/html/draft-ietf-tls-tls13-23. It writes
|
||||
* |olen| bytes to |out| given a label and optional context. It
|
||||
* returns 1 on success and 0 otherwise.
|
||||
*/
|
||||
__owur int SSL_export_keying_material_early(SSL *s, unsigned char *out,
|
||||
size_t olen, const char *label,
|
||||
size_t llen,
|
||||
const unsigned char *context,
|
||||
size_t contextlen);
|
||||
|
||||
int SSL_get_peer_signature_type_nid(const SSL *s, int *pnid);
|
||||
|
||||
int SSL_get_sigalgs(SSL *s, int idx,
|
||||
int *psign, int *phash, int *psignandhash,
|
||||
@@ -244,13 +253,15 @@ int SSL_get_shared_sigalgs(SSL *s, int idx,
|
||||
__owur int SSL_check_chain(SSL *s, X509 *x, EVP_PKEY *pk, STACK_OF(X509) *chain);
|
||||
|
||||
# define SSL_set_tlsext_host_name(s,name) \
|
||||
SSL_ctrl(s,SSL_CTRL_SET_TLSEXT_HOSTNAME,TLSEXT_NAMETYPE_host_name,(char *)name)
|
||||
SSL_ctrl(s,SSL_CTRL_SET_TLSEXT_HOSTNAME,TLSEXT_NAMETYPE_host_name,\
|
||||
(void *)name)
|
||||
|
||||
# define SSL_set_tlsext_debug_callback(ssl, cb) \
|
||||
SSL_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_CB,(void (*)(void))cb)
|
||||
SSL_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_CB,\
|
||||
(void (*)(void))cb)
|
||||
|
||||
# define SSL_set_tlsext_debug_arg(ssl, arg) \
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_ARG,0, (void *)arg)
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_DEBUG_ARG,0,arg)
|
||||
|
||||
# define SSL_get_tlsext_status_type(ssl) \
|
||||
SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE,0,NULL)
|
||||
@@ -259,25 +270,26 @@ SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE,0, NULL)
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE,type,NULL)
|
||||
|
||||
# define SSL_get_tlsext_status_exts(ssl, arg) \
|
||||
SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_EXTS,0, (void *)arg)
|
||||
SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_EXTS,0,arg)
|
||||
|
||||
# define SSL_set_tlsext_status_exts(ssl, arg) \
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_EXTS,0, (void *)arg)
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_EXTS,0,arg)
|
||||
|
||||
# define SSL_get_tlsext_status_ids(ssl, arg) \
|
||||
SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_IDS,0, (void *)arg)
|
||||
SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_IDS,0,arg)
|
||||
|
||||
# define SSL_set_tlsext_status_ids(ssl, arg) \
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_IDS,0, (void *)arg)
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_IDS,0,arg)
|
||||
|
||||
# define SSL_get_tlsext_status_ocsp_resp(ssl, arg) \
|
||||
SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_OCSP_RESP,0, (void *)arg)
|
||||
SSL_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_OCSP_RESP,0,arg)
|
||||
|
||||
# define SSL_set_tlsext_status_ocsp_resp(ssl, arg, arglen) \
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_OCSP_RESP,arglen, (void *)arg)
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_OCSP_RESP,arglen,arg)
|
||||
|
||||
# define SSL_CTX_set_tlsext_servername_callback(ctx, cb) \
|
||||
SSL_CTX_callback_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_CB,(void (*)(void))cb)
|
||||
SSL_CTX_callback_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_CB,\
|
||||
(void (*)(void))cb)
|
||||
|
||||
# define SSL_TLSEXT_ERR_OK 0
|
||||
# define SSL_TLSEXT_ERR_ALERT_WARNING 1
|
||||
@@ -285,22 +297,23 @@ SSL_CTX_callback_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_CB,(void (*)(void))cb)
|
||||
# define SSL_TLSEXT_ERR_NOACK 3
|
||||
|
||||
# define SSL_CTX_set_tlsext_servername_arg(ctx, arg) \
|
||||
SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG,0, (void *)arg)
|
||||
SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TLSEXT_SERVERNAME_ARG,0,arg)
|
||||
|
||||
# define SSL_CTX_get_tlsext_ticket_keys(ctx, keys, keylen) \
|
||||
SSL_CTX_ctrl((ctx),SSL_CTRL_GET_TLSEXT_TICKET_KEYS,(keylen),(keys))
|
||||
SSL_CTX_ctrl(ctx,SSL_CTRL_GET_TLSEXT_TICKET_KEYS,keylen,keys)
|
||||
# define SSL_CTX_set_tlsext_ticket_keys(ctx, keys, keylen) \
|
||||
SSL_CTX_ctrl((ctx),SSL_CTRL_SET_TLSEXT_TICKET_KEYS,(keylen),(keys))
|
||||
SSL_CTX_ctrl(ctx,SSL_CTRL_SET_TLSEXT_TICKET_KEYS,keylen,keys)
|
||||
|
||||
# define SSL_CTX_get_tlsext_status_cb(ssl, cb) \
|
||||
SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB,0, (void (**)(void))cb)
|
||||
SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB,0,(void *)cb)
|
||||
# define SSL_CTX_set_tlsext_status_cb(ssl, cb) \
|
||||
SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB,(void (*)(void))cb)
|
||||
SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB,\
|
||||
(void (*)(void))cb)
|
||||
|
||||
# define SSL_CTX_get_tlsext_status_arg(ssl, arg) \
|
||||
SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB_ARG,0, (void *)arg
|
||||
SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_CB_ARG,0,arg)
|
||||
# define SSL_CTX_set_tlsext_status_arg(ssl, arg) \
|
||||
SSL_CTX_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB_ARG,0, (void *)arg)
|
||||
SSL_CTX_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB_ARG,0,arg)
|
||||
|
||||
# define SSL_CTX_set_tlsext_status_type(ssl, type) \
|
||||
SSL_CTX_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_TYPE,type,NULL)
|
||||
@@ -309,16 +322,17 @@ SSL_CTX_ctrl(ssl,SSL_CTRL_SET_TLSEXT_STATUS_REQ_CB_ARG,0, (void *)arg)
|
||||
SSL_CTX_ctrl(ssl,SSL_CTRL_GET_TLSEXT_STATUS_REQ_TYPE,0,NULL)
|
||||
|
||||
# define SSL_CTX_set_tlsext_ticket_key_cb(ssl, cb) \
|
||||
SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,\
|
||||
(void (*)(void))cb)
|
||||
|
||||
# ifndef OPENSSL_NO_HEARTBEATS
|
||||
# define SSL_DTLSEXT_HB_ENABLED 0x01
|
||||
# define SSL_DTLSEXT_HB_DONT_SEND_REQUESTS 0x02
|
||||
# define SSL_DTLSEXT_HB_DONT_RECV_REQUESTS 0x04
|
||||
# define SSL_get_dtlsext_heartbeat_pending(ssl) \
|
||||
SSL_ctrl((ssl),SSL_CTRL_GET_DTLS_EXT_HEARTBEAT_PENDING,0,NULL)
|
||||
SSL_ctrl(ssl,SSL_CTRL_GET_DTLS_EXT_HEARTBEAT_PENDING,0,NULL)
|
||||
# define SSL_set_dtlsext_heartbeat_no_requests(ssl, arg) \
|
||||
SSL_ctrl((ssl),SSL_CTRL_SET_DTLS_EXT_HEARTBEAT_NO_REQUESTS,arg,NULL)
|
||||
SSL_ctrl(ssl,SSL_CTRL_SET_DTLS_EXT_HEARTBEAT_NO_REQUESTS,arg,NULL)
|
||||
|
||||
# if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# define SSL_CTRL_TLS_EXT_SEND_HEARTBEAT \
|
||||
@@ -345,12 +359,10 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_CK_PSK_WITH_3DES_EDE_CBC_SHA 0x0300008B
|
||||
# define TLS1_CK_PSK_WITH_AES_128_CBC_SHA 0x0300008C
|
||||
# define TLS1_CK_PSK_WITH_AES_256_CBC_SHA 0x0300008D
|
||||
|
||||
# define TLS1_CK_DHE_PSK_WITH_RC4_128_SHA 0x0300008E
|
||||
# define TLS1_CK_DHE_PSK_WITH_3DES_EDE_CBC_SHA 0x0300008F
|
||||
# define TLS1_CK_DHE_PSK_WITH_AES_128_CBC_SHA 0x03000090
|
||||
# define TLS1_CK_DHE_PSK_WITH_AES_256_CBC_SHA 0x03000091
|
||||
|
||||
# define TLS1_CK_RSA_PSK_WITH_RC4_128_SHA 0x03000092
|
||||
# define TLS1_CK_RSA_PSK_WITH_3DES_EDE_CBC_SHA 0x03000093
|
||||
# define TLS1_CK_RSA_PSK_WITH_AES_128_CBC_SHA 0x03000094
|
||||
@@ -363,17 +375,14 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_CK_DHE_PSK_WITH_AES_256_GCM_SHA384 0x030000AB
|
||||
# define TLS1_CK_RSA_PSK_WITH_AES_128_GCM_SHA256 0x030000AC
|
||||
# define TLS1_CK_RSA_PSK_WITH_AES_256_GCM_SHA384 0x030000AD
|
||||
|
||||
# define TLS1_CK_PSK_WITH_AES_128_CBC_SHA256 0x030000AE
|
||||
# define TLS1_CK_PSK_WITH_AES_256_CBC_SHA384 0x030000AF
|
||||
# define TLS1_CK_PSK_WITH_NULL_SHA256 0x030000B0
|
||||
# define TLS1_CK_PSK_WITH_NULL_SHA384 0x030000B1
|
||||
|
||||
# define TLS1_CK_DHE_PSK_WITH_AES_128_CBC_SHA256 0x030000B2
|
||||
# define TLS1_CK_DHE_PSK_WITH_AES_256_CBC_SHA384 0x030000B3
|
||||
# define TLS1_CK_DHE_PSK_WITH_NULL_SHA256 0x030000B4
|
||||
# define TLS1_CK_DHE_PSK_WITH_NULL_SHA384 0x030000B5
|
||||
|
||||
# define TLS1_CK_RSA_PSK_WITH_AES_128_CBC_SHA256 0x030000B6
|
||||
# define TLS1_CK_RSA_PSK_WITH_AES_256_CBC_SHA384 0x030000B7
|
||||
# define TLS1_CK_RSA_PSK_WITH_NULL_SHA256 0x030000B8
|
||||
@@ -391,7 +400,6 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_CK_DHE_DSS_WITH_AES_128_SHA 0x03000032
|
||||
# define TLS1_CK_DHE_RSA_WITH_AES_128_SHA 0x03000033
|
||||
# define TLS1_CK_ADH_WITH_AES_128_SHA 0x03000034
|
||||
|
||||
# define TLS1_CK_RSA_WITH_AES_256_SHA 0x03000035
|
||||
# define TLS1_CK_DH_DSS_WITH_AES_256_SHA 0x03000036
|
||||
# define TLS1_CK_DH_RSA_WITH_AES_256_SHA 0x03000037
|
||||
@@ -536,7 +544,6 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_CK_SRP_SHA_DSS_WITH_AES_256_CBC_SHA 0x0300C022
|
||||
|
||||
/* ECDH HMAC based ciphersuites from RFC5289 */
|
||||
|
||||
# define TLS1_CK_ECDHE_ECDSA_WITH_AES_128_SHA256 0x0300C023
|
||||
# define TLS1_CK_ECDHE_ECDSA_WITH_AES_256_SHA384 0x0300C024
|
||||
# define TLS1_CK_ECDH_ECDSA_WITH_AES_128_SHA256 0x0300C025
|
||||
@@ -566,7 +573,6 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_CK_ECDHE_PSK_WITH_AES_256_CBC_SHA384 0x0300C038
|
||||
|
||||
/* NULL PSK ciphersuites from RFC4785 */
|
||||
|
||||
# define TLS1_CK_ECDHE_PSK_WITH_NULL_SHA 0x0300C039
|
||||
# define TLS1_CK_ECDHE_PSK_WITH_NULL_SHA256 0x0300C03A
|
||||
# define TLS1_CK_ECDHE_PSK_WITH_NULL_SHA384 0x0300C03B
|
||||
@@ -599,6 +605,233 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_CK_DHE_PSK_WITH_CHACHA20_POLY1305 0x0300CCAD
|
||||
# define TLS1_CK_RSA_PSK_WITH_CHACHA20_POLY1305 0x0300CCAE
|
||||
|
||||
/* TLS v1.3 ciphersuites */
|
||||
# define TLS1_3_CK_AES_128_GCM_SHA256 0x03001301
|
||||
# define TLS1_3_CK_AES_256_GCM_SHA384 0x03001302
|
||||
# define TLS1_3_CK_CHACHA20_POLY1305_SHA256 0x03001303
|
||||
# define TLS1_3_CK_AES_128_CCM_SHA256 0x03001304
|
||||
# define TLS1_3_CK_AES_128_CCM_8_SHA256 0x03001305
|
||||
|
||||
/* Aria ciphersuites from RFC6209 */
|
||||
# define TLS1_CK_RSA_WITH_ARIA_128_GCM_SHA256 0x0300C050
|
||||
# define TLS1_CK_RSA_WITH_ARIA_256_GCM_SHA384 0x0300C051
|
||||
# define TLS1_CK_DHE_RSA_WITH_ARIA_128_GCM_SHA256 0x0300C052
|
||||
# define TLS1_CK_DHE_RSA_WITH_ARIA_256_GCM_SHA384 0x0300C053
|
||||
# define TLS1_CK_DH_RSA_WITH_ARIA_128_GCM_SHA256 0x0300C054
|
||||
# define TLS1_CK_DH_RSA_WITH_ARIA_256_GCM_SHA384 0x0300C055
|
||||
# define TLS1_CK_DHE_DSS_WITH_ARIA_128_GCM_SHA256 0x0300C056
|
||||
# define TLS1_CK_DHE_DSS_WITH_ARIA_256_GCM_SHA384 0x0300C057
|
||||
# define TLS1_CK_DH_DSS_WITH_ARIA_128_GCM_SHA256 0x0300C058
|
||||
# define TLS1_CK_DH_DSS_WITH_ARIA_256_GCM_SHA384 0x0300C059
|
||||
# define TLS1_CK_DH_anon_WITH_ARIA_128_GCM_SHA256 0x0300C05A
|
||||
# define TLS1_CK_DH_anon_WITH_ARIA_256_GCM_SHA384 0x0300C05B
|
||||
# define TLS1_CK_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256 0x0300C05C
|
||||
# define TLS1_CK_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384 0x0300C05D
|
||||
# define TLS1_CK_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256 0x0300C05E
|
||||
# define TLS1_CK_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384 0x0300C05F
|
||||
# define TLS1_CK_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256 0x0300C060
|
||||
# define TLS1_CK_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384 0x0300C061
|
||||
# define TLS1_CK_ECDH_RSA_WITH_ARIA_128_GCM_SHA256 0x0300C062
|
||||
# define TLS1_CK_ECDH_RSA_WITH_ARIA_256_GCM_SHA384 0x0300C063
|
||||
# define TLS1_CK_PSK_WITH_ARIA_128_GCM_SHA256 0x0300C06A
|
||||
# define TLS1_CK_PSK_WITH_ARIA_256_GCM_SHA384 0x0300C06B
|
||||
# define TLS1_CK_DHE_PSK_WITH_ARIA_128_GCM_SHA256 0x0300C06C
|
||||
# define TLS1_CK_DHE_PSK_WITH_ARIA_256_GCM_SHA384 0x0300C06D
|
||||
# define TLS1_CK_RSA_PSK_WITH_ARIA_128_GCM_SHA256 0x0300C06E
|
||||
# define TLS1_CK_RSA_PSK_WITH_ARIA_256_GCM_SHA384 0x0300C06F
|
||||
|
||||
/* a bundle of RFC standard cipher names, generated from ssl3_ciphers[] */
|
||||
# define TLS1_RFC_RSA_WITH_AES_128_SHA "TLS_RSA_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_AES_128_SHA "TLS_DHE_DSS_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_128_SHA "TLS_DHE_RSA_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_ADH_WITH_AES_128_SHA "TLS_DH_anon_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_RSA_WITH_AES_256_SHA "TLS_RSA_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_AES_256_SHA "TLS_DHE_DSS_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_256_SHA "TLS_DHE_RSA_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_ADH_WITH_AES_256_SHA "TLS_DH_anon_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_RSA_WITH_NULL_SHA256 "TLS_RSA_WITH_NULL_SHA256"
|
||||
# define TLS1_RFC_RSA_WITH_AES_128_SHA256 "TLS_RSA_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_RSA_WITH_AES_256_SHA256 "TLS_RSA_WITH_AES_256_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_AES_128_SHA256 "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_128_SHA256 "TLS_DHE_RSA_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_AES_256_SHA256 "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_256_SHA256 "TLS_DHE_RSA_WITH_AES_256_CBC_SHA256"
|
||||
# define TLS1_RFC_ADH_WITH_AES_128_SHA256 "TLS_DH_anon_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_ADH_WITH_AES_256_SHA256 "TLS_DH_anon_WITH_AES_256_CBC_SHA256"
|
||||
# define TLS1_RFC_RSA_WITH_AES_128_GCM_SHA256 "TLS_RSA_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_RSA_WITH_AES_256_GCM_SHA384 "TLS_RSA_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_128_GCM_SHA256 "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_256_GCM_SHA384 "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_AES_128_GCM_SHA256 "TLS_DHE_DSS_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_AES_256_GCM_SHA384 "TLS_DHE_DSS_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_ADH_WITH_AES_128_GCM_SHA256 "TLS_DH_anon_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_ADH_WITH_AES_256_GCM_SHA384 "TLS_DH_anon_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_RSA_WITH_AES_128_CCM "TLS_RSA_WITH_AES_128_CCM"
|
||||
# define TLS1_RFC_RSA_WITH_AES_256_CCM "TLS_RSA_WITH_AES_256_CCM"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_128_CCM "TLS_DHE_RSA_WITH_AES_128_CCM"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_256_CCM "TLS_DHE_RSA_WITH_AES_256_CCM"
|
||||
# define TLS1_RFC_RSA_WITH_AES_128_CCM_8 "TLS_RSA_WITH_AES_128_CCM_8"
|
||||
# define TLS1_RFC_RSA_WITH_AES_256_CCM_8 "TLS_RSA_WITH_AES_256_CCM_8"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_128_CCM_8 "TLS_DHE_RSA_WITH_AES_128_CCM_8"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_AES_256_CCM_8 "TLS_DHE_RSA_WITH_AES_256_CCM_8"
|
||||
# define TLS1_RFC_PSK_WITH_AES_128_CCM "TLS_PSK_WITH_AES_128_CCM"
|
||||
# define TLS1_RFC_PSK_WITH_AES_256_CCM "TLS_PSK_WITH_AES_256_CCM"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_128_CCM "TLS_DHE_PSK_WITH_AES_128_CCM"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_256_CCM "TLS_DHE_PSK_WITH_AES_256_CCM"
|
||||
# define TLS1_RFC_PSK_WITH_AES_128_CCM_8 "TLS_PSK_WITH_AES_128_CCM_8"
|
||||
# define TLS1_RFC_PSK_WITH_AES_256_CCM_8 "TLS_PSK_WITH_AES_256_CCM_8"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_128_CCM_8 "TLS_PSK_DHE_WITH_AES_128_CCM_8"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_256_CCM_8 "TLS_PSK_DHE_WITH_AES_256_CCM_8"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_128_CCM "TLS_ECDHE_ECDSA_WITH_AES_128_CCM"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_256_CCM "TLS_ECDHE_ECDSA_WITH_AES_256_CCM"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_128_CCM_8 "TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_256_CCM_8 "TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8"
|
||||
# define TLS1_3_RFC_AES_128_GCM_SHA256 "TLS_AES_128_GCM_SHA256"
|
||||
# define TLS1_3_RFC_AES_256_GCM_SHA384 "TLS_AES_256_GCM_SHA384"
|
||||
# define TLS1_3_RFC_CHACHA20_POLY1305_SHA256 "TLS_CHACHA20_POLY1305_SHA256"
|
||||
# define TLS1_3_RFC_AES_128_CCM_SHA256 "TLS_AES_128_CCM_SHA256"
|
||||
# define TLS1_3_RFC_AES_128_CCM_8_SHA256 "TLS_AES_128_CCM_8_SHA256"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_NULL_SHA "TLS_ECDHE_ECDSA_WITH_NULL_SHA"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_DES_192_CBC3_SHA "TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_128_CBC_SHA "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_256_CBC_SHA "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_NULL_SHA "TLS_ECDHE_RSA_WITH_NULL_SHA"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_DES_192_CBC3_SHA "TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_AES_128_CBC_SHA "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_AES_256_CBC_SHA "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_ECDH_anon_WITH_NULL_SHA "TLS_ECDH_anon_WITH_NULL_SHA"
|
||||
# define TLS1_RFC_ECDH_anon_WITH_DES_192_CBC3_SHA "TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_ECDH_anon_WITH_AES_128_CBC_SHA "TLS_ECDH_anon_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_ECDH_anon_WITH_AES_256_CBC_SHA "TLS_ECDH_anon_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_128_SHA256 "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_256_SHA384 "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_AES_128_SHA256 "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_AES_256_SHA384 "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_AES_128_GCM_SHA256 "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_AES_256_GCM_SHA384 "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_PSK_WITH_NULL_SHA "TLS_PSK_WITH_NULL_SHA"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_NULL_SHA "TLS_DHE_PSK_WITH_NULL_SHA"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_NULL_SHA "TLS_RSA_PSK_WITH_NULL_SHA"
|
||||
# define TLS1_RFC_PSK_WITH_3DES_EDE_CBC_SHA "TLS_PSK_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_PSK_WITH_AES_128_CBC_SHA "TLS_PSK_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_PSK_WITH_AES_256_CBC_SHA "TLS_PSK_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_3DES_EDE_CBC_SHA "TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_128_CBC_SHA "TLS_DHE_PSK_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_256_CBC_SHA "TLS_DHE_PSK_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_3DES_EDE_CBC_SHA "TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_AES_128_CBC_SHA "TLS_RSA_PSK_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_AES_256_CBC_SHA "TLS_RSA_PSK_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_PSK_WITH_AES_128_GCM_SHA256 "TLS_PSK_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_PSK_WITH_AES_256_GCM_SHA384 "TLS_PSK_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_128_GCM_SHA256 "TLS_DHE_PSK_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_256_GCM_SHA384 "TLS_DHE_PSK_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_AES_128_GCM_SHA256 "TLS_RSA_PSK_WITH_AES_128_GCM_SHA256"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_AES_256_GCM_SHA384 "TLS_RSA_PSK_WITH_AES_256_GCM_SHA384"
|
||||
# define TLS1_RFC_PSK_WITH_AES_128_CBC_SHA256 "TLS_PSK_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_PSK_WITH_AES_256_CBC_SHA384 "TLS_PSK_WITH_AES_256_CBC_SHA384"
|
||||
# define TLS1_RFC_PSK_WITH_NULL_SHA256 "TLS_PSK_WITH_NULL_SHA256"
|
||||
# define TLS1_RFC_PSK_WITH_NULL_SHA384 "TLS_PSK_WITH_NULL_SHA384"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_128_CBC_SHA256 "TLS_DHE_PSK_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_AES_256_CBC_SHA384 "TLS_DHE_PSK_WITH_AES_256_CBC_SHA384"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_NULL_SHA256 "TLS_DHE_PSK_WITH_NULL_SHA256"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_NULL_SHA384 "TLS_DHE_PSK_WITH_NULL_SHA384"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_AES_128_CBC_SHA256 "TLS_RSA_PSK_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_AES_256_CBC_SHA384 "TLS_RSA_PSK_WITH_AES_256_CBC_SHA384"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_NULL_SHA256 "TLS_RSA_PSK_WITH_NULL_SHA256"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_NULL_SHA384 "TLS_RSA_PSK_WITH_NULL_SHA384"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA "TLS_ECDHE_PSK_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_AES_128_CBC_SHA "TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_AES_256_CBC_SHA "TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_AES_128_CBC_SHA256 "TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_AES_256_CBC_SHA384 "TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA384"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_NULL_SHA "TLS_ECDHE_PSK_WITH_NULL_SHA"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_NULL_SHA256 "TLS_ECDHE_PSK_WITH_NULL_SHA256"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_NULL_SHA384 "TLS_ECDHE_PSK_WITH_NULL_SHA384"
|
||||
# define TLS1_RFC_SRP_SHA_WITH_3DES_EDE_CBC_SHA "TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA "TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA "TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA"
|
||||
# define TLS1_RFC_SRP_SHA_WITH_AES_128_CBC_SHA "TLS_SRP_SHA_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_SRP_SHA_RSA_WITH_AES_128_CBC_SHA "TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_SRP_SHA_DSS_WITH_AES_128_CBC_SHA "TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA"
|
||||
# define TLS1_RFC_SRP_SHA_WITH_AES_256_CBC_SHA "TLS_SRP_SHA_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_SRP_SHA_RSA_WITH_AES_256_CBC_SHA "TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_SRP_SHA_DSS_WITH_AES_256_CBC_SHA "TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_CHACHA20_POLY1305 "TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_CHACHA20_POLY1305 "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_CHACHA20_POLY1305 "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256"
|
||||
# define TLS1_RFC_PSK_WITH_CHACHA20_POLY1305 "TLS_PSK_WITH_CHACHA20_POLY1305_SHA256"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_CHACHA20_POLY1305 "TLS_ECDHE_PSK_WITH_CHACHA20_POLY1305_SHA256"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_CHACHA20_POLY1305 "TLS_DHE_PSK_WITH_CHACHA20_POLY1305_SHA256"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_CHACHA20_POLY1305 "TLS_RSA_PSK_WITH_CHACHA20_POLY1305_SHA256"
|
||||
# define TLS1_RFC_RSA_WITH_CAMELLIA_128_CBC_SHA256 "TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256 "TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 "TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_ADH_WITH_CAMELLIA_128_CBC_SHA256 "TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_RSA_WITH_CAMELLIA_256_CBC_SHA256 "TLS_RSA_WITH_CAMELLIA_256_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256 "TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256 "TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA256"
|
||||
# define TLS1_RFC_ADH_WITH_CAMELLIA_256_CBC_SHA256 "TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256"
|
||||
# define TLS1_RFC_RSA_WITH_CAMELLIA_256_CBC_SHA "TLS_RSA_WITH_CAMELLIA_256_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA "TLS_DHE_DSS_WITH_CAMELLIA_256_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA "TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA"
|
||||
# define TLS1_RFC_ADH_WITH_CAMELLIA_256_CBC_SHA "TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA"
|
||||
# define TLS1_RFC_RSA_WITH_CAMELLIA_128_CBC_SHA "TLS_RSA_WITH_CAMELLIA_128_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA "TLS_DHE_DSS_WITH_CAMELLIA_128_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA "TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA"
|
||||
# define TLS1_RFC_ADH_WITH_CAMELLIA_128_CBC_SHA "TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256 "TLS_ECDHE_ECDSA_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384 "TLS_ECDHE_ECDSA_WITH_CAMELLIA_256_CBC_SHA384"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256 "TLS_ECDHE_RSA_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384 "TLS_ECDHE_RSA_WITH_CAMELLIA_256_CBC_SHA384"
|
||||
# define TLS1_RFC_PSK_WITH_CAMELLIA_128_CBC_SHA256 "TLS_PSK_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_PSK_WITH_CAMELLIA_256_CBC_SHA384 "TLS_PSK_WITH_CAMELLIA_256_CBC_SHA384"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 "TLS_DHE_PSK_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 "TLS_DHE_PSK_WITH_CAMELLIA_256_CBC_SHA384"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256 "TLS_RSA_PSK_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384 "TLS_RSA_PSK_WITH_CAMELLIA_256_CBC_SHA384"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256 "TLS_ECDHE_PSK_WITH_CAMELLIA_128_CBC_SHA256"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384 "TLS_ECDHE_PSK_WITH_CAMELLIA_256_CBC_SHA384"
|
||||
# define TLS1_RFC_RSA_WITH_SEED_SHA "TLS_RSA_WITH_SEED_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_SEED_SHA "TLS_DHE_DSS_WITH_SEED_CBC_SHA"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_SEED_SHA "TLS_DHE_RSA_WITH_SEED_CBC_SHA"
|
||||
# define TLS1_RFC_ADH_WITH_SEED_SHA "TLS_DH_anon_WITH_SEED_CBC_SHA"
|
||||
# define TLS1_RFC_ECDHE_PSK_WITH_RC4_128_SHA "TLS_ECDHE_PSK_WITH_RC4_128_SHA"
|
||||
# define TLS1_RFC_ECDH_anon_WITH_RC4_128_SHA "TLS_ECDH_anon_WITH_RC4_128_SHA"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_RC4_128_SHA "TLS_ECDHE_ECDSA_WITH_RC4_128_SHA"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_RC4_128_SHA "TLS_ECDHE_RSA_WITH_RC4_128_SHA"
|
||||
# define TLS1_RFC_PSK_WITH_RC4_128_SHA "TLS_PSK_WITH_RC4_128_SHA"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_RC4_128_SHA "TLS_RSA_PSK_WITH_RC4_128_SHA"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_RC4_128_SHA "TLS_DHE_PSK_WITH_RC4_128_SHA"
|
||||
# define TLS1_RFC_RSA_WITH_ARIA_128_GCM_SHA256 "TLS_RSA_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_RSA_WITH_ARIA_256_GCM_SHA384 "TLS_RSA_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_ARIA_128_GCM_SHA256 "TLS_DHE_RSA_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DHE_RSA_WITH_ARIA_256_GCM_SHA384 "TLS_DHE_RSA_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DH_RSA_WITH_ARIA_128_GCM_SHA256 "TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DH_RSA_WITH_ARIA_256_GCM_SHA384 "TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_ARIA_128_GCM_SHA256 "TLS_DHE_DSS_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DHE_DSS_WITH_ARIA_256_GCM_SHA384 "TLS_DHE_DSS_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DH_DSS_WITH_ARIA_128_GCM_SHA256 "TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DH_DSS_WITH_ARIA_256_GCM_SHA384 "TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DH_anon_WITH_ARIA_128_GCM_SHA256 "TLS_DH_anon_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DH_anon_WITH_ARIA_256_GCM_SHA384 "TLS_DH_anon_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256 "TLS_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384 "TLS_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256 "TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384 "TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256 "TLS_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384 "TLS_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_ECDH_RSA_WITH_ARIA_128_GCM_SHA256 "TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_ECDH_RSA_WITH_ARIA_256_GCM_SHA384 "TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_PSK_WITH_ARIA_128_GCM_SHA256 "TLS_PSK_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_PSK_WITH_ARIA_256_GCM_SHA384 "TLS_PSK_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_ARIA_128_GCM_SHA256 "TLS_DHE_PSK_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_DHE_PSK_WITH_ARIA_256_GCM_SHA384 "TLS_DHE_PSK_WITH_ARIA_256_GCM_SHA384"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_ARIA_128_GCM_SHA256 "TLS_RSA_PSK_WITH_ARIA_128_GCM_SHA256"
|
||||
# define TLS1_RFC_RSA_PSK_WITH_ARIA_256_GCM_SHA384 "TLS_RSA_PSK_WITH_ARIA_256_GCM_SHA384"
|
||||
|
||||
|
||||
/*
|
||||
* XXX Backward compatibility alert: Older versions of OpenSSL gave some DHE
|
||||
* ciphers names with "EDH" instead of "DHE". Going forward, we should be
|
||||
@@ -783,7 +1016,6 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_TXT_ADH_WITH_AES_256_GCM_SHA384 "ADH-AES256-GCM-SHA384"
|
||||
|
||||
/* CCM ciphersuites from RFC6655 */
|
||||
|
||||
# define TLS1_TXT_RSA_WITH_AES_128_CCM "AES128-CCM"
|
||||
# define TLS1_TXT_RSA_WITH_AES_256_CCM "AES256-CCM"
|
||||
# define TLS1_TXT_DHE_RSA_WITH_AES_128_CCM "DHE-RSA-AES128-CCM"
|
||||
@@ -805,14 +1037,12 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_TXT_DHE_PSK_WITH_AES_256_CCM_8 "DHE-PSK-AES256-CCM8"
|
||||
|
||||
/* CCM ciphersuites from RFC7251 */
|
||||
|
||||
# define TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_CCM "ECDHE-ECDSA-AES128-CCM"
|
||||
# define TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_CCM "ECDHE-ECDSA-AES256-CCM"
|
||||
# define TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_CCM_8 "ECDHE-ECDSA-AES128-CCM8"
|
||||
# define TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_CCM_8 "ECDHE-ECDSA-AES256-CCM8"
|
||||
|
||||
/* ECDH HMAC based ciphersuites from RFC5289 */
|
||||
|
||||
# define TLS1_TXT_ECDHE_ECDSA_WITH_AES_128_SHA256 "ECDHE-ECDSA-AES128-SHA256"
|
||||
# define TLS1_TXT_ECDHE_ECDSA_WITH_AES_256_SHA384 "ECDHE-ECDSA-AES256-SHA384"
|
||||
# define TLS1_TXT_ECDH_ECDSA_WITH_AES_128_SHA256 "ECDH-ECDSA-AES128-SHA256"
|
||||
@@ -868,6 +1098,34 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
# define TLS1_TXT_DHE_PSK_WITH_CHACHA20_POLY1305 "DHE-PSK-CHACHA20-POLY1305"
|
||||
# define TLS1_TXT_RSA_PSK_WITH_CHACHA20_POLY1305 "RSA-PSK-CHACHA20-POLY1305"
|
||||
|
||||
/* Aria ciphersuites from RFC6209 */
|
||||
# define TLS1_TXT_RSA_WITH_ARIA_128_GCM_SHA256 "ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_RSA_WITH_ARIA_256_GCM_SHA384 "ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_DHE_RSA_WITH_ARIA_128_GCM_SHA256 "DHE-RSA-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_DHE_RSA_WITH_ARIA_256_GCM_SHA384 "DHE-RSA-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_DH_RSA_WITH_ARIA_128_GCM_SHA256 "DH-RSA-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_DH_RSA_WITH_ARIA_256_GCM_SHA384 "DH-RSA-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_DHE_DSS_WITH_ARIA_128_GCM_SHA256 "DHE-DSS-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_DHE_DSS_WITH_ARIA_256_GCM_SHA384 "DHE-DSS-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_DH_DSS_WITH_ARIA_128_GCM_SHA256 "DH-DSS-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_DH_DSS_WITH_ARIA_256_GCM_SHA384 "DH-DSS-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_DH_anon_WITH_ARIA_128_GCM_SHA256 "ADH-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_DH_anon_WITH_ARIA_256_GCM_SHA384 "ADH-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_ECDHE_ECDSA_WITH_ARIA_128_GCM_SHA256 "ECDHE-ECDSA-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_ECDHE_ECDSA_WITH_ARIA_256_GCM_SHA384 "ECDHE-ECDSA-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256 "ECDH-ECDSA-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384 "ECDH-ECDSA-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_ECDHE_RSA_WITH_ARIA_128_GCM_SHA256 "ECDHE-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_ECDHE_RSA_WITH_ARIA_256_GCM_SHA384 "ECDHE-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_ECDH_RSA_WITH_ARIA_128_GCM_SHA256 "ECDH-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_ECDH_RSA_WITH_ARIA_256_GCM_SHA384 "ECDH-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_PSK_WITH_ARIA_128_GCM_SHA256 "PSK-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_PSK_WITH_ARIA_256_GCM_SHA384 "PSK-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_DHE_PSK_WITH_ARIA_128_GCM_SHA256 "DHE-PSK-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_DHE_PSK_WITH_ARIA_256_GCM_SHA384 "DHE-PSK-ARIA256-GCM-SHA384"
|
||||
# define TLS1_TXT_RSA_PSK_WITH_ARIA_128_GCM_SHA256 "RSA-PSK-ARIA128-GCM-SHA256"
|
||||
# define TLS1_TXT_RSA_PSK_WITH_ARIA_256_GCM_SHA384 "RSA-PSK-ARIA256-GCM-SHA384"
|
||||
|
||||
# define TLS_CT_RSA_SIGN 1
|
||||
# define TLS_CT_DSS_SIGN 2
|
||||
# define TLS_CT_RSA_FIXED_DH 3
|
||||
@@ -883,7 +1141,13 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb)
|
||||
* when correcting this number, correct also SSL3_CT_NUMBER in ssl3.h (see
|
||||
* comment there)
|
||||
*/
|
||||
# define TLS_CT_NUMBER 9
|
||||
# define TLS_CT_NUMBER 10
|
||||
|
||||
# if defined(SSL3_CT_NUMBER)
|
||||
# if TLS_CT_NUMBER != SSL3_CT_NUMBER
|
||||
# error "SSL/TLS CT_NUMBER values do not match"
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# define TLS1_FINISH_MAC_LENGTH 12
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2006-2018 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
|
||||
@@ -17,12 +17,12 @@
|
||||
# include <openssl/buffer.h>
|
||||
# include <openssl/evp.h>
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/stack.h>
|
||||
# include <openssl/asn1.h>
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/rsa.h>
|
||||
# include <openssl/dsa.h>
|
||||
# include <openssl/dh.h>
|
||||
# include <openssl/tserr.h>
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
# endif
|
||||
@@ -61,6 +61,11 @@ typedef struct ESS_signing_cert ESS_SIGNING_CERT;
|
||||
|
||||
DEFINE_STACK_OF(ESS_CERT_ID)
|
||||
|
||||
typedef struct ESS_cert_id_v2_st ESS_CERT_ID_V2;
|
||||
typedef struct ESS_signing_cert_v2_st ESS_SIGNING_CERT_V2;
|
||||
|
||||
DEFINE_STACK_OF(ESS_CERT_ID_V2)
|
||||
|
||||
typedef struct TS_resp_st TS_RESP;
|
||||
|
||||
TS_REQ *TS_REQ_new(void);
|
||||
@@ -156,6 +161,21 @@ ESS_SIGNING_CERT *d2i_ESS_SIGNING_CERT(ESS_SIGNING_CERT **a,
|
||||
const unsigned char **pp, long length);
|
||||
ESS_SIGNING_CERT *ESS_SIGNING_CERT_dup(ESS_SIGNING_CERT *a);
|
||||
|
||||
ESS_CERT_ID_V2 *ESS_CERT_ID_V2_new(void);
|
||||
void ESS_CERT_ID_V2_free(ESS_CERT_ID_V2 *a);
|
||||
int i2d_ESS_CERT_ID_V2(const ESS_CERT_ID_V2 *a, unsigned char **pp);
|
||||
ESS_CERT_ID_V2 *d2i_ESS_CERT_ID_V2(ESS_CERT_ID_V2 **a,
|
||||
const unsigned char **pp, long length);
|
||||
ESS_CERT_ID_V2 *ESS_CERT_ID_V2_dup(ESS_CERT_ID_V2 *a);
|
||||
|
||||
ESS_SIGNING_CERT_V2 *ESS_SIGNING_CERT_V2_new(void);
|
||||
void ESS_SIGNING_CERT_V2_free(ESS_SIGNING_CERT_V2 *a);
|
||||
int i2d_ESS_SIGNING_CERT_V2(const ESS_SIGNING_CERT_V2 *a, unsigned char **pp);
|
||||
ESS_SIGNING_CERT_V2 *d2i_ESS_SIGNING_CERT_V2(ESS_SIGNING_CERT_V2 **a,
|
||||
const unsigned char **pp,
|
||||
long length);
|
||||
ESS_SIGNING_CERT_V2 *ESS_SIGNING_CERT_V2_dup(ESS_SIGNING_CERT_V2 *a);
|
||||
|
||||
int TS_REQ_set_version(TS_REQ *a, long version);
|
||||
long TS_REQ_get_version(const TS_REQ *a);
|
||||
|
||||
@@ -316,6 +336,7 @@ int TS_RESP_CTX_set_signer_key(TS_RESP_CTX *ctx, EVP_PKEY *key);
|
||||
|
||||
int TS_RESP_CTX_set_signer_digest(TS_RESP_CTX *ctx,
|
||||
const EVP_MD *signer_digest);
|
||||
int TS_RESP_CTX_set_ess_cert_id_digest(TS_RESP_CTX *ctx, const EVP_MD *md);
|
||||
|
||||
/* This parameter must be set. */
|
||||
int TS_RESP_CTX_set_def_policy(TS_RESP_CTX *ctx, const ASN1_OBJECT *def_policy);
|
||||
@@ -528,113 +549,8 @@ int TS_CONF_set_ordering(CONF *conf, const char *section, TS_RESP_CTX *ctx);
|
||||
int TS_CONF_set_tsa_name(CONF *conf, const char *section, TS_RESP_CTX *ctx);
|
||||
int TS_CONF_set_ess_cert_id_chain(CONF *conf, const char *section,
|
||||
TS_RESP_CTX *ctx);
|
||||
|
||||
/* -------------------------------------------------- */
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_TS_strings(void);
|
||||
|
||||
/* Error codes for the TS functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define TS_F_DEF_SERIAL_CB 110
|
||||
# define TS_F_DEF_TIME_CB 111
|
||||
# define TS_F_ESS_ADD_SIGNING_CERT 112
|
||||
# define TS_F_ESS_CERT_ID_NEW_INIT 113
|
||||
# define TS_F_ESS_SIGNING_CERT_NEW_INIT 114
|
||||
# define TS_F_INT_TS_RESP_VERIFY_TOKEN 149
|
||||
# define TS_F_PKCS7_TO_TS_TST_INFO 148
|
||||
# define TS_F_TS_ACCURACY_SET_MICROS 115
|
||||
# define TS_F_TS_ACCURACY_SET_MILLIS 116
|
||||
# define TS_F_TS_ACCURACY_SET_SECONDS 117
|
||||
# define TS_F_TS_CHECK_IMPRINTS 100
|
||||
# define TS_F_TS_CHECK_NONCES 101
|
||||
# define TS_F_TS_CHECK_POLICY 102
|
||||
# define TS_F_TS_CHECK_SIGNING_CERTS 103
|
||||
# define TS_F_TS_CHECK_STATUS_INFO 104
|
||||
# define TS_F_TS_COMPUTE_IMPRINT 145
|
||||
# define TS_F_TS_CONF_INVALID 151
|
||||
# define TS_F_TS_CONF_LOAD_CERT 153
|
||||
# define TS_F_TS_CONF_LOAD_CERTS 154
|
||||
# define TS_F_TS_CONF_LOAD_KEY 155
|
||||
# define TS_F_TS_CONF_LOOKUP_FAIL 152
|
||||
# define TS_F_TS_CONF_SET_DEFAULT_ENGINE 146
|
||||
# define TS_F_TS_GET_STATUS_TEXT 105
|
||||
# define TS_F_TS_MSG_IMPRINT_SET_ALGO 118
|
||||
# define TS_F_TS_REQ_SET_MSG_IMPRINT 119
|
||||
# define TS_F_TS_REQ_SET_NONCE 120
|
||||
# define TS_F_TS_REQ_SET_POLICY_ID 121
|
||||
# define TS_F_TS_RESP_CREATE_RESPONSE 122
|
||||
# define TS_F_TS_RESP_CREATE_TST_INFO 123
|
||||
# define TS_F_TS_RESP_CTX_ADD_FAILURE_INFO 124
|
||||
# define TS_F_TS_RESP_CTX_ADD_MD 125
|
||||
# define TS_F_TS_RESP_CTX_ADD_POLICY 126
|
||||
# define TS_F_TS_RESP_CTX_NEW 127
|
||||
# define TS_F_TS_RESP_CTX_SET_ACCURACY 128
|
||||
# define TS_F_TS_RESP_CTX_SET_CERTS 129
|
||||
# define TS_F_TS_RESP_CTX_SET_DEF_POLICY 130
|
||||
# define TS_F_TS_RESP_CTX_SET_SIGNER_CERT 131
|
||||
# define TS_F_TS_RESP_CTX_SET_STATUS_INFO 132
|
||||
# define TS_F_TS_RESP_GET_POLICY 133
|
||||
# define TS_F_TS_RESP_SET_GENTIME_WITH_PRECISION 134
|
||||
# define TS_F_TS_RESP_SET_STATUS_INFO 135
|
||||
# define TS_F_TS_RESP_SET_TST_INFO 150
|
||||
# define TS_F_TS_RESP_SIGN 136
|
||||
# define TS_F_TS_RESP_VERIFY_SIGNATURE 106
|
||||
# define TS_F_TS_TST_INFO_SET_ACCURACY 137
|
||||
# define TS_F_TS_TST_INFO_SET_MSG_IMPRINT 138
|
||||
# define TS_F_TS_TST_INFO_SET_NONCE 139
|
||||
# define TS_F_TS_TST_INFO_SET_POLICY_ID 140
|
||||
# define TS_F_TS_TST_INFO_SET_SERIAL 141
|
||||
# define TS_F_TS_TST_INFO_SET_TIME 142
|
||||
# define TS_F_TS_TST_INFO_SET_TSA 143
|
||||
# define TS_F_TS_VERIFY 108
|
||||
# define TS_F_TS_VERIFY_CERT 109
|
||||
# define TS_F_TS_VERIFY_CTX_NEW 144
|
||||
|
||||
/* Reason codes. */
|
||||
# define TS_R_BAD_PKCS7_TYPE 132
|
||||
# define TS_R_BAD_TYPE 133
|
||||
# define TS_R_CANNOT_LOAD_CERT 137
|
||||
# define TS_R_CANNOT_LOAD_KEY 138
|
||||
# define TS_R_CERTIFICATE_VERIFY_ERROR 100
|
||||
# define TS_R_COULD_NOT_SET_ENGINE 127
|
||||
# define TS_R_COULD_NOT_SET_TIME 115
|
||||
# define TS_R_DETACHED_CONTENT 134
|
||||
# define TS_R_ESS_ADD_SIGNING_CERT_ERROR 116
|
||||
# define TS_R_ESS_SIGNING_CERTIFICATE_ERROR 101
|
||||
# define TS_R_INVALID_NULL_POINTER 102
|
||||
# define TS_R_INVALID_SIGNER_CERTIFICATE_PURPOSE 117
|
||||
# define TS_R_MESSAGE_IMPRINT_MISMATCH 103
|
||||
# define TS_R_NONCE_MISMATCH 104
|
||||
# define TS_R_NONCE_NOT_RETURNED 105
|
||||
# define TS_R_NO_CONTENT 106
|
||||
# define TS_R_NO_TIME_STAMP_TOKEN 107
|
||||
# define TS_R_PKCS7_ADD_SIGNATURE_ERROR 118
|
||||
# define TS_R_PKCS7_ADD_SIGNED_ATTR_ERROR 119
|
||||
# define TS_R_PKCS7_TO_TS_TST_INFO_FAILED 129
|
||||
# define TS_R_POLICY_MISMATCH 108
|
||||
# define TS_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE 120
|
||||
# define TS_R_RESPONSE_SETUP_ERROR 121
|
||||
# define TS_R_SIGNATURE_FAILURE 109
|
||||
# define TS_R_THERE_MUST_BE_ONE_SIGNER 110
|
||||
# define TS_R_TIME_SYSCALL_ERROR 122
|
||||
# define TS_R_TOKEN_NOT_PRESENT 130
|
||||
# define TS_R_TOKEN_PRESENT 131
|
||||
# define TS_R_TSA_NAME_MISMATCH 111
|
||||
# define TS_R_TSA_UNTRUSTED 112
|
||||
# define TS_R_TST_INFO_SETUP_ERROR 123
|
||||
# define TS_R_TS_DATASIGN 124
|
||||
# define TS_R_UNACCEPTABLE_POLICY 125
|
||||
# define TS_R_UNSUPPORTED_MD_ALGORITHM 126
|
||||
# define TS_R_UNSUPPORTED_VERSION 113
|
||||
# define TS_R_VAR_BAD_VALUE 135
|
||||
# define TS_R_VAR_LOOKUP_FAILURE 136
|
||||
# define TS_R_WRONG_CONTENT_TYPE 114
|
||||
int TS_CONF_set_ess_cert_id_digest(CONF *conf, const char *section,
|
||||
TS_RESP_CTX *ctx);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2017 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
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
# include <openssl/opensslconf.h>
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/stack.h>
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/lhash.h>
|
||||
|
||||
# define DB_ERROR_OK 0
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 2001-2018 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
|
||||
@@ -12,13 +12,20 @@
|
||||
|
||||
# include <openssl/opensslconf.h>
|
||||
|
||||
# ifndef OPENSSL_NO_UI
|
||||
|
||||
# if OPENSSL_API_COMPAT < 0x10100000L
|
||||
# include <openssl/crypto.h>
|
||||
# endif
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/pem.h>
|
||||
# include <openssl/ossl_typ.h>
|
||||
# include <openssl/uierr.h>
|
||||
|
||||
/* For compatibility reasons, the macro OPENSSL_NO_UI is currently retained */
|
||||
# if OPENSSL_API_COMPAT < 0x10200000L
|
||||
# ifdef OPENSSL_NO_UI_CONSOLE
|
||||
# define OPENSSL_NO_UI
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -157,17 +164,24 @@ char *UI_construct_prompt(UI *ui_method,
|
||||
* methods may not, however.
|
||||
*/
|
||||
void *UI_add_user_data(UI *ui, void *user_data);
|
||||
/*
|
||||
* Alternatively, this function is used to duplicate the user data.
|
||||
* This uses the duplicator method function. The destroy function will
|
||||
* be used to free the user data in this case.
|
||||
*/
|
||||
int UI_dup_user_data(UI *ui, void *user_data);
|
||||
/* We need a user data retrieving function as well. */
|
||||
void *UI_get0_user_data(UI *ui);
|
||||
|
||||
/* Return the result associated with a prompt given with the index i. */
|
||||
const char *UI_get0_result(UI *ui, int i);
|
||||
int UI_get_result_length(UI *ui, int i);
|
||||
|
||||
/* When all strings have been added, process the whole thing. */
|
||||
int UI_process(UI *ui);
|
||||
|
||||
/*
|
||||
* Give a user interface parametrised control commands. This can be used to
|
||||
* Give a user interface parameterised control commands. This can be used to
|
||||
* send down an integer, a data pointer or a function pointer, as well as be
|
||||
* used to get information from a UI.
|
||||
*/
|
||||
@@ -202,9 +216,19 @@ const UI_METHOD *UI_get_default_method(void);
|
||||
const UI_METHOD *UI_get_method(UI *ui);
|
||||
const UI_METHOD *UI_set_method(UI *ui, const UI_METHOD *meth);
|
||||
|
||||
# ifndef OPENSSL_NO_UI_CONSOLE
|
||||
|
||||
/* The method with all the built-in thingies */
|
||||
UI_METHOD *UI_OpenSSL(void);
|
||||
|
||||
# endif
|
||||
|
||||
/*
|
||||
* NULL method. Literally does nothing, but may serve as a placeholder
|
||||
* to avoid internal default.
|
||||
*/
|
||||
const UI_METHOD *UI_null(void);
|
||||
|
||||
/* ---------- For method writers ---------- */
|
||||
/*-
|
||||
A method contains a number of functions that implement the low level
|
||||
@@ -278,20 +302,26 @@ int UI_method_set_flusher(UI_METHOD *method, int (*flusher) (UI *ui));
|
||||
int UI_method_set_reader(UI_METHOD *method,
|
||||
int (*reader) (UI *ui, UI_STRING *uis));
|
||||
int UI_method_set_closer(UI_METHOD *method, int (*closer) (UI *ui));
|
||||
int UI_method_set_data_duplicator(UI_METHOD *method,
|
||||
void *(*duplicator) (UI *ui, void *ui_data),
|
||||
void (*destructor)(UI *ui, void *ui_data));
|
||||
int UI_method_set_prompt_constructor(UI_METHOD *method,
|
||||
char *(*prompt_constructor) (UI *ui,
|
||||
const char
|
||||
*object_desc,
|
||||
const char
|
||||
*object_name));
|
||||
int (*UI_method_get_opener(UI_METHOD *method)) (UI *);
|
||||
int (*UI_method_get_writer(UI_METHOD *method)) (UI *, UI_STRING *);
|
||||
int (*UI_method_get_flusher(UI_METHOD *method)) (UI *);
|
||||
int (*UI_method_get_reader(UI_METHOD *method)) (UI *, UI_STRING *);
|
||||
int (*UI_method_get_closer(UI_METHOD *method)) (UI *);
|
||||
char *(*UI_method_get_prompt_constructor(UI_METHOD *method)) (UI *,
|
||||
const char *,
|
||||
const char *);
|
||||
int UI_method_set_ex_data(UI_METHOD *method, int idx, void *data);
|
||||
int (*UI_method_get_opener(const UI_METHOD *method)) (UI *);
|
||||
int (*UI_method_get_writer(const UI_METHOD *method)) (UI *, UI_STRING *);
|
||||
int (*UI_method_get_flusher(const UI_METHOD *method)) (UI *);
|
||||
int (*UI_method_get_reader(const UI_METHOD *method)) (UI *, UI_STRING *);
|
||||
int (*UI_method_get_closer(const UI_METHOD *method)) (UI *);
|
||||
char *(*UI_method_get_prompt_constructor(const UI_METHOD *method))
|
||||
(UI *, const char *, const char *);
|
||||
void *(*UI_method_get_data_duplicator(const UI_METHOD *method)) (UI *, void *);
|
||||
void (*UI_method_get_data_destructor(const UI_METHOD *method)) (UI *, void *);
|
||||
const void *UI_method_get_ex_data(const UI_METHOD *method, int idx);
|
||||
|
||||
/*
|
||||
* The following functions are helpers for method writers to access relevant
|
||||
@@ -311,6 +341,7 @@ const char *UI_get0_output_string(UI_STRING *uis);
|
||||
const char *UI_get0_action_string(UI_STRING *uis);
|
||||
/* Return the result of a prompt */
|
||||
const char *UI_get0_result_string(UI_STRING *uis);
|
||||
int UI_get_result_string_length(UI_STRING *uis);
|
||||
/*
|
||||
* Return the string to test the result against. Only useful with verifies.
|
||||
*/
|
||||
@@ -321,58 +352,17 @@ int UI_get_result_minsize(UI_STRING *uis);
|
||||
int UI_get_result_maxsize(UI_STRING *uis);
|
||||
/* Set the result of a UI_STRING. */
|
||||
int UI_set_result(UI *ui, UI_STRING *uis, const char *result);
|
||||
int UI_set_result_ex(UI *ui, UI_STRING *uis, const char *result, int len);
|
||||
|
||||
/* A couple of popular utility functions */
|
||||
int UI_UTIL_read_pw_string(char *buf, int length, const char *prompt,
|
||||
int verify);
|
||||
int UI_UTIL_read_pw(char *buf, char *buff, int size, const char *prompt,
|
||||
int verify);
|
||||
UI_METHOD *UI_UTIL_wrap_read_pem_callback(pem_password_cb *cb, int rwflag);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_UI_strings(void);
|
||||
|
||||
/* Error codes for the UI functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define UI_F_CLOSE_CONSOLE 115
|
||||
# define UI_F_ECHO_CONSOLE 116
|
||||
# define UI_F_GENERAL_ALLOCATE_BOOLEAN 108
|
||||
# define UI_F_GENERAL_ALLOCATE_PROMPT 109
|
||||
# define UI_F_NOECHO_CONSOLE 117
|
||||
# define UI_F_OPEN_CONSOLE 114
|
||||
# define UI_F_UI_CREATE_METHOD 112
|
||||
# define UI_F_UI_CTRL 111
|
||||
# define UI_F_UI_DUP_ERROR_STRING 101
|
||||
# define UI_F_UI_DUP_INFO_STRING 102
|
||||
# define UI_F_UI_DUP_INPUT_BOOLEAN 110
|
||||
# define UI_F_UI_DUP_INPUT_STRING 103
|
||||
# define UI_F_UI_DUP_VERIFY_STRING 106
|
||||
# define UI_F_UI_GET0_RESULT 107
|
||||
# define UI_F_UI_NEW_METHOD 104
|
||||
# define UI_F_UI_PROCESS 113
|
||||
# define UI_F_UI_SET_RESULT 105
|
||||
|
||||
/* Reason codes. */
|
||||
# define UI_R_COMMON_OK_AND_CANCEL_CHARACTERS 104
|
||||
# define UI_R_INDEX_TOO_LARGE 102
|
||||
# define UI_R_INDEX_TOO_SMALL 103
|
||||
# define UI_R_NO_RESULT_BUFFER 105
|
||||
# define UI_R_PROCESSING_ERROR 107
|
||||
# define UI_R_RESULT_TOO_LARGE 100
|
||||
# define UI_R_RESULT_TOO_SMALL 101
|
||||
# define UI_R_SYSASSIGN_ERROR 109
|
||||
# define UI_R_SYSDASSGN_ERROR 110
|
||||
# define UI_R_SYSQIOW_ERROR 111
|
||||
# define UI_R_UNKNOWN_CONTROL_COMMAND 106
|
||||
# define UI_R_UNKNOWN_TTYGET_ERRNO_VALUE 108
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright (c) 2002, Oracle and/or its affiliates. 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
|
||||
@@ -7,12 +8,6 @@
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2002 Sun Microsystems, Inc. ALL RIGHTS RESERVED.
|
||||
* ECDH support in OpenSSL originally developed by
|
||||
* SUN MICROSYSTEMS, INC., and contributed to the OpenSSL project.
|
||||
*/
|
||||
|
||||
#ifndef HEADER_X509_H
|
||||
# define HEADER_X509_H
|
||||
|
||||
@@ -22,7 +17,6 @@
|
||||
# include <openssl/buffer.h>
|
||||
# include <openssl/evp.h>
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/stack.h>
|
||||
# include <openssl/asn1.h>
|
||||
# include <openssl/safestack.h>
|
||||
# include <openssl/ec.h>
|
||||
@@ -34,11 +28,19 @@
|
||||
# endif
|
||||
|
||||
# include <openssl/sha.h>
|
||||
# include <openssl/x509err.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
/* Flags for X509_get_signature_info() */
|
||||
/* Signature info is valid */
|
||||
# define X509_SIG_INFO_VALID 0x1
|
||||
/* Signature is suitable for TLS use */
|
||||
# define X509_SIG_INFO_TLS 0x2
|
||||
|
||||
# define X509_FILETYPE_PEM 1
|
||||
# define X509_FILETYPE_ASN1 2
|
||||
# define X509_FILETYPE_DEFAULT 3
|
||||
@@ -252,9 +254,8 @@ typedef struct X509_info_st {
|
||||
DEFINE_STACK_OF(X509_INFO)
|
||||
|
||||
/*
|
||||
* The next 2 structures and their 8 routines were sent to me by Pat Richard
|
||||
* <patr@x509.com> and are used to manipulate Netscapes spki structures -
|
||||
* useful if you are writing a CA web page
|
||||
* The next 2 structures and their 8 routines are used to manipulate Netscape's
|
||||
* spki structures - useful if you are writing a CA web page
|
||||
*/
|
||||
typedef struct Netscape_spkac_st {
|
||||
X509_PUBKEY *pubkey;
|
||||
@@ -302,6 +303,16 @@ typedef struct PBKDF2PARAM_st {
|
||||
X509_ALGOR *prf;
|
||||
} PBKDF2PARAM;
|
||||
|
||||
#ifndef OPENSSL_NO_SCRYPT
|
||||
typedef struct SCRYPT_PARAMS_st {
|
||||
ASN1_OCTET_STRING *salt;
|
||||
ASN1_INTEGER *costParameter;
|
||||
ASN1_INTEGER *blockSize;
|
||||
ASN1_INTEGER *parallelizationParameter;
|
||||
ASN1_INTEGER *keyLength;
|
||||
} SCRYPT_PARAMS;
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
@@ -549,6 +560,14 @@ X509 *d2i_X509_AUX(X509 **a, const unsigned char **pp, long length);
|
||||
|
||||
int i2d_re_X509_tbs(X509 *x, unsigned char **pp);
|
||||
|
||||
int X509_SIG_INFO_get(const X509_SIG_INFO *siginf, int *mdnid, int *pknid,
|
||||
int *secbits, uint32_t *flags);
|
||||
void X509_SIG_INFO_set(X509_SIG_INFO *siginf, int mdnid, int pknid,
|
||||
int secbits, uint32_t flags);
|
||||
|
||||
int X509_get_signature_info(X509 *x, int *mdnid, int *pknid, int *secbits,
|
||||
uint32_t *flags);
|
||||
|
||||
void X509_get0_signature(const ASN1_BIT_STRING **psig,
|
||||
const X509_ALGOR **palg, const X509 *x);
|
||||
int X509_get_signature_nid(const X509 *x);
|
||||
@@ -641,7 +660,7 @@ int X509_get_signature_type(const X509 *x);
|
||||
|
||||
/*
|
||||
* This one is only used so that a binary form can output, as in
|
||||
* i2d_X509_NAME(X509_get_X509_PUBKEY(x), &buf)
|
||||
* i2d_X509_PUBKEY(X509_get_X509_PUBKEY(x), &buf)
|
||||
*/
|
||||
X509_PUBKEY *X509_get_X509_PUBKEY(const X509 *x);
|
||||
const STACK_OF(X509_EXTENSION) *X509_get0_extensions(const X509 *x);
|
||||
@@ -773,6 +792,7 @@ int X509_print_ex(BIO *bp, X509 *x, unsigned long nmflag,
|
||||
unsigned long cflag);
|
||||
int X509_print(BIO *bp, X509 *x);
|
||||
int X509_ocspid_print(BIO *bp, X509 *x);
|
||||
int X509_CRL_print_ex(BIO *out, X509_CRL *x, unsigned long nmflag);
|
||||
int X509_CRL_print(BIO *bp, X509_CRL *x);
|
||||
int X509_REQ_print_ex(BIO *bp, X509_REQ *x, unsigned long nmflag,
|
||||
unsigned long cflag);
|
||||
@@ -959,6 +979,9 @@ X509 *X509_find_by_subject(STACK_OF(X509) *sk, X509_NAME *name);
|
||||
DECLARE_ASN1_FUNCTIONS(PBEPARAM)
|
||||
DECLARE_ASN1_FUNCTIONS(PBE2PARAM)
|
||||
DECLARE_ASN1_FUNCTIONS(PBKDF2PARAM)
|
||||
#ifndef OPENSSL_NO_SCRYPT
|
||||
DECLARE_ASN1_FUNCTIONS(SCRYPT_PARAMS)
|
||||
#endif
|
||||
|
||||
int PKCS5_pbe_set0_algor(X509_ALGOR *algor, int alg, int iter,
|
||||
const unsigned char *salt, int saltlen);
|
||||
@@ -1018,105 +1041,6 @@ int X509_TRUST_get_flags(const X509_TRUST *xp);
|
||||
char *X509_TRUST_get0_name(const X509_TRUST *xp);
|
||||
int X509_TRUST_get_trust(const X509_TRUST *xp);
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
*/
|
||||
|
||||
int ERR_load_X509_strings(void);
|
||||
|
||||
/* Error codes for the X509 functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define X509_F_ADD_CERT_DIR 100
|
||||
# define X509_F_BUILD_CHAIN 106
|
||||
# define X509_F_BY_FILE_CTRL 101
|
||||
# define X509_F_CHECK_NAME_CONSTRAINTS 149
|
||||
# define X509_F_CHECK_POLICY 145
|
||||
# define X509_F_DANE_I2D 107
|
||||
# define X509_F_DIR_CTRL 102
|
||||
# define X509_F_GET_CERT_BY_SUBJECT 103
|
||||
# define X509_F_NETSCAPE_SPKI_B64_DECODE 129
|
||||
# define X509_F_NETSCAPE_SPKI_B64_ENCODE 130
|
||||
# define X509_F_X509AT_ADD1_ATTR 135
|
||||
# define X509_F_X509V3_ADD_EXT 104
|
||||
# define X509_F_X509_ATTRIBUTE_CREATE_BY_NID 136
|
||||
# define X509_F_X509_ATTRIBUTE_CREATE_BY_OBJ 137
|
||||
# define X509_F_X509_ATTRIBUTE_CREATE_BY_TXT 140
|
||||
# define X509_F_X509_ATTRIBUTE_GET0_DATA 139
|
||||
# define X509_F_X509_ATTRIBUTE_SET1_DATA 138
|
||||
# define X509_F_X509_CHECK_PRIVATE_KEY 128
|
||||
# define X509_F_X509_CRL_DIFF 105
|
||||
# define X509_F_X509_CRL_PRINT_FP 147
|
||||
# define X509_F_X509_EXTENSION_CREATE_BY_NID 108
|
||||
# define X509_F_X509_EXTENSION_CREATE_BY_OBJ 109
|
||||
# define X509_F_X509_GET_PUBKEY_PARAMETERS 110
|
||||
# define X509_F_X509_LOAD_CERT_CRL_FILE 132
|
||||
# define X509_F_X509_LOAD_CERT_FILE 111
|
||||
# define X509_F_X509_LOAD_CRL_FILE 112
|
||||
# define X509_F_X509_NAME_ADD_ENTRY 113
|
||||
# define X509_F_X509_NAME_ENTRY_CREATE_BY_NID 114
|
||||
# define X509_F_X509_NAME_ENTRY_CREATE_BY_TXT 131
|
||||
# define X509_F_X509_NAME_ENTRY_SET_OBJECT 115
|
||||
# define X509_F_X509_NAME_ONELINE 116
|
||||
# define X509_F_X509_NAME_PRINT 117
|
||||
# define X509_F_X509_OBJECT_NEW 150
|
||||
# define X509_F_X509_PRINT_EX_FP 118
|
||||
# define X509_F_X509_PUBKEY_DECODE 148
|
||||
# define X509_F_X509_PUBKEY_GET0 119
|
||||
# define X509_F_X509_PUBKEY_SET 120
|
||||
# define X509_F_X509_REQ_CHECK_PRIVATE_KEY 144
|
||||
# define X509_F_X509_REQ_PRINT_EX 121
|
||||
# define X509_F_X509_REQ_PRINT_FP 122
|
||||
# define X509_F_X509_REQ_TO_X509 123
|
||||
# define X509_F_X509_STORE_ADD_CERT 124
|
||||
# define X509_F_X509_STORE_ADD_CRL 125
|
||||
# define X509_F_X509_STORE_CTX_GET1_ISSUER 146
|
||||
# define X509_F_X509_STORE_CTX_INIT 143
|
||||
# define X509_F_X509_STORE_CTX_NEW 142
|
||||
# define X509_F_X509_STORE_CTX_PURPOSE_INHERIT 134
|
||||
# define X509_F_X509_TO_X509_REQ 126
|
||||
# define X509_F_X509_TRUST_ADD 133
|
||||
# define X509_F_X509_TRUST_SET 141
|
||||
# define X509_F_X509_VERIFY_CERT 127
|
||||
|
||||
/* Reason codes. */
|
||||
# define X509_R_AKID_MISMATCH 110
|
||||
# define X509_R_BAD_SELECTOR 133
|
||||
# define X509_R_BAD_X509_FILETYPE 100
|
||||
# define X509_R_BASE64_DECODE_ERROR 118
|
||||
# define X509_R_CANT_CHECK_DH_KEY 114
|
||||
# define X509_R_CERT_ALREADY_IN_HASH_TABLE 101
|
||||
# define X509_R_CRL_ALREADY_DELTA 127
|
||||
# define X509_R_CRL_VERIFY_FAILURE 131
|
||||
# define X509_R_IDP_MISMATCH 128
|
||||
# define X509_R_INVALID_DIRECTORY 113
|
||||
# define X509_R_INVALID_FIELD_NAME 119
|
||||
# define X509_R_INVALID_TRUST 123
|
||||
# define X509_R_ISSUER_MISMATCH 129
|
||||
# define X509_R_KEY_TYPE_MISMATCH 115
|
||||
# define X509_R_KEY_VALUES_MISMATCH 116
|
||||
# define X509_R_LOADING_CERT_DIR 103
|
||||
# define X509_R_LOADING_DEFAULTS 104
|
||||
# define X509_R_METHOD_NOT_SUPPORTED 124
|
||||
# define X509_R_NAME_TOO_LONG 134
|
||||
# define X509_R_NEWER_CRL_NOT_NEWER 132
|
||||
# define X509_R_NO_CERT_SET_FOR_US_TO_VERIFY 105
|
||||
# define X509_R_NO_CRL_NUMBER 130
|
||||
# define X509_R_PUBLIC_KEY_DECODE_ERROR 125
|
||||
# define X509_R_PUBLIC_KEY_ENCODE_ERROR 126
|
||||
# define X509_R_SHOULD_RETRY 106
|
||||
# define X509_R_UNABLE_TO_FIND_PARAMETERS_IN_CHAIN 107
|
||||
# define X509_R_UNABLE_TO_GET_CERTS_PUBLIC_KEY 108
|
||||
# define X509_R_UNKNOWN_KEY_TYPE 117
|
||||
# define X509_R_UNKNOWN_NID 109
|
||||
# define X509_R_UNKNOWN_PURPOSE_ID 121
|
||||
# define X509_R_UNKNOWN_TRUST_ID 120
|
||||
# define X509_R_UNSUPPORTED_ALGORITHM 111
|
||||
# define X509_R_WRONG_LOOKUP_TYPE 112
|
||||
# define X509_R_WRONG_TYPE 122
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
# endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1995-2018 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
|
||||
@@ -180,6 +180,10 @@ void X509_STORE_CTX_set_depth(X509_STORE_CTX *ctx, int depth);
|
||||
# define X509_V_ERR_NO_VALID_SCTS 71
|
||||
|
||||
# define X509_V_ERR_PROXY_SUBJECT_NAME_VIOLATION 72
|
||||
/* OCSP status errors */
|
||||
# define X509_V_ERR_OCSP_VERIFY_NEEDED 73 /* Need OCSP verification */
|
||||
# define X509_V_ERR_OCSP_VERIFY_FAILED 74 /* Couldn't verify cert through OCSP */
|
||||
# define X509_V_ERR_OCSP_CERT_UNKNOWN 75 /* Certificate wasn't recognized by the OCSP responder */
|
||||
|
||||
/* Certificate verify flags */
|
||||
|
||||
@@ -257,7 +261,9 @@ X509_OBJECT *X509_OBJECT_new(void);
|
||||
void X509_OBJECT_free(X509_OBJECT *a);
|
||||
X509_LOOKUP_TYPE X509_OBJECT_get_type(const X509_OBJECT *a);
|
||||
X509 *X509_OBJECT_get0_X509(const X509_OBJECT *a);
|
||||
int X509_OBJECT_set1_X509(X509_OBJECT *a, X509 *obj);
|
||||
X509_CRL *X509_OBJECT_get0_X509_CRL(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);
|
||||
@@ -364,6 +370,76 @@ X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void);
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_file(void);
|
||||
|
||||
typedef int (*X509_LOOKUP_ctrl_fn)(X509_LOOKUP *ctx, int cmd, const char *argc,
|
||||
long argl, char **ret);
|
||||
typedef int (*X509_LOOKUP_get_by_subject_fn)(X509_LOOKUP *ctx,
|
||||
X509_LOOKUP_TYPE type,
|
||||
X509_NAME *name,
|
||||
X509_OBJECT *ret);
|
||||
typedef int (*X509_LOOKUP_get_by_issuer_serial_fn)(X509_LOOKUP *ctx,
|
||||
X509_LOOKUP_TYPE type,
|
||||
X509_NAME *name,
|
||||
ASN1_INTEGER *serial,
|
||||
X509_OBJECT *ret);
|
||||
typedef int (*X509_LOOKUP_get_by_fingerprint_fn)(X509_LOOKUP *ctx,
|
||||
X509_LOOKUP_TYPE type,
|
||||
const unsigned char* bytes,
|
||||
int len,
|
||||
X509_OBJECT *ret);
|
||||
typedef int (*X509_LOOKUP_get_by_alias_fn)(X509_LOOKUP *ctx,
|
||||
X509_LOOKUP_TYPE type,
|
||||
const char *str,
|
||||
int len,
|
||||
X509_OBJECT *ret);
|
||||
|
||||
X509_LOOKUP_METHOD *X509_LOOKUP_meth_new(const char *name);
|
||||
void X509_LOOKUP_meth_free(X509_LOOKUP_METHOD *method);
|
||||
|
||||
int X509_LOOKUP_meth_set_new_item(X509_LOOKUP_METHOD *method,
|
||||
int (*new_item) (X509_LOOKUP *ctx));
|
||||
int (*X509_LOOKUP_meth_get_new_item(const X509_LOOKUP_METHOD* method))
|
||||
(X509_LOOKUP *ctx);
|
||||
|
||||
int X509_LOOKUP_meth_set_free(X509_LOOKUP_METHOD *method,
|
||||
void (*free_fn) (X509_LOOKUP *ctx));
|
||||
void (*X509_LOOKUP_meth_get_free(const X509_LOOKUP_METHOD* method))
|
||||
(X509_LOOKUP *ctx);
|
||||
|
||||
int X509_LOOKUP_meth_set_init(X509_LOOKUP_METHOD *method,
|
||||
int (*init) (X509_LOOKUP *ctx));
|
||||
int (*X509_LOOKUP_meth_get_init(const X509_LOOKUP_METHOD* method))
|
||||
(X509_LOOKUP *ctx);
|
||||
|
||||
int X509_LOOKUP_meth_set_shutdown(X509_LOOKUP_METHOD *method,
|
||||
int (*shutdown) (X509_LOOKUP *ctx));
|
||||
int (*X509_LOOKUP_meth_get_shutdown(const X509_LOOKUP_METHOD* method))
|
||||
(X509_LOOKUP *ctx);
|
||||
|
||||
int X509_LOOKUP_meth_set_ctrl(X509_LOOKUP_METHOD *method,
|
||||
X509_LOOKUP_ctrl_fn ctrl_fn);
|
||||
X509_LOOKUP_ctrl_fn X509_LOOKUP_meth_get_ctrl(const X509_LOOKUP_METHOD *method);
|
||||
|
||||
int X509_LOOKUP_meth_set_get_by_subject(X509_LOOKUP_METHOD *method,
|
||||
X509_LOOKUP_get_by_subject_fn fn);
|
||||
X509_LOOKUP_get_by_subject_fn X509_LOOKUP_meth_get_get_by_subject(
|
||||
const X509_LOOKUP_METHOD *method);
|
||||
|
||||
int X509_LOOKUP_meth_set_get_by_issuer_serial(X509_LOOKUP_METHOD *method,
|
||||
X509_LOOKUP_get_by_issuer_serial_fn fn);
|
||||
X509_LOOKUP_get_by_issuer_serial_fn X509_LOOKUP_meth_get_get_by_issuer_serial(
|
||||
const X509_LOOKUP_METHOD *method);
|
||||
|
||||
int X509_LOOKUP_meth_set_get_by_fingerprint(X509_LOOKUP_METHOD *method,
|
||||
X509_LOOKUP_get_by_fingerprint_fn fn);
|
||||
X509_LOOKUP_get_by_fingerprint_fn X509_LOOKUP_meth_get_get_by_fingerprint(
|
||||
const X509_LOOKUP_METHOD *method);
|
||||
|
||||
int X509_LOOKUP_meth_set_get_by_alias(X509_LOOKUP_METHOD *method,
|
||||
X509_LOOKUP_get_by_alias_fn fn);
|
||||
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);
|
||||
|
||||
@@ -393,6 +469,9 @@ int X509_LOOKUP_by_fingerprint(X509_LOOKUP *ctx, X509_LOOKUP_TYPE type,
|
||||
X509_OBJECT *ret);
|
||||
int X509_LOOKUP_by_alias(X509_LOOKUP *ctx, X509_LOOKUP_TYPE type,
|
||||
const char *str, int len, X509_OBJECT *ret);
|
||||
int X509_LOOKUP_set_method_data(X509_LOOKUP *ctx, void *data);
|
||||
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_locations(X509_STORE *ctx,
|
||||
@@ -475,6 +554,7 @@ int X509_VERIFY_PARAM_add1_host(X509_VERIFY_PARAM *param,
|
||||
const char *name, size_t namelen);
|
||||
void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param,
|
||||
unsigned int flags);
|
||||
unsigned int X509_VERIFY_PARAM_get_hostflags(const X509_VERIFY_PARAM *param);
|
||||
char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *);
|
||||
void X509_VERIFY_PARAM_move_peername(X509_VERIFY_PARAM *, X509_VERIFY_PARAM *);
|
||||
int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved.
|
||||
* Copyright 1999-2018 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
|
||||
@@ -13,6 +13,7 @@
|
||||
# include <openssl/bio.h>
|
||||
# include <openssl/x509.h>
|
||||
# include <openssl/conf.h>
|
||||
# include <openssl/x509v3err.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -319,8 +320,9 @@ struct ISSUING_DIST_POINT_st {
|
||||
/* onlysomereasons present */
|
||||
# define IDP_REASONS 0x40
|
||||
|
||||
# define X509V3_conf_err(val) ERR_add_error_data(6, "section:", val->section, \
|
||||
",name:", val->name, ",value:", val->value);
|
||||
# define X509V3_conf_err(val) ERR_add_error_data(6, \
|
||||
"section:", (val)->section, \
|
||||
",name:", (val)->name, ",value:", (val)->value)
|
||||
|
||||
# define X509V3_set_ctx_test(ctx) \
|
||||
X509V3_set_ctx(ctx, NULL, NULL, NULL, NULL, CTX_TEST)
|
||||
@@ -658,6 +660,7 @@ uint32_t X509_get_extension_flags(X509 *x);
|
||||
uint32_t X509_get_key_usage(X509 *x);
|
||||
uint32_t X509_get_extended_key_usage(X509 *x);
|
||||
const ASN1_OCTET_STRING *X509_get0_subject_key_id(X509 *x);
|
||||
const ASN1_OCTET_STRING *X509_get0_authority_key_id(X509 *x);
|
||||
|
||||
int X509_PURPOSE_get_count(void);
|
||||
X509_PURPOSE *X509_PURPOSE_get0(int idx);
|
||||
@@ -861,144 +864,70 @@ int X509v3_addr_validate_resource_set(STACK_OF(X509) *chain,
|
||||
|
||||
#endif /* OPENSSL_NO_RFC3779 */
|
||||
|
||||
/* BEGIN ERROR CODES */
|
||||
DEFINE_STACK_OF(ASN1_STRING)
|
||||
|
||||
/*
|
||||
* The following lines are auto generated by the script mkerr.pl. Any changes
|
||||
* made after this point may be overwritten when the script is next run.
|
||||
* Admission Syntax
|
||||
*/
|
||||
typedef struct NamingAuthority_st NAMING_AUTHORITY;
|
||||
typedef struct ProfessionInfo_st PROFESSION_INFO;
|
||||
typedef struct Admissions_st ADMISSIONS;
|
||||
typedef struct AdmissionSyntax_st ADMISSION_SYNTAX;
|
||||
DECLARE_ASN1_FUNCTIONS(NAMING_AUTHORITY)
|
||||
DECLARE_ASN1_FUNCTIONS(PROFESSION_INFO)
|
||||
DECLARE_ASN1_FUNCTIONS(ADMISSIONS)
|
||||
DECLARE_ASN1_FUNCTIONS(ADMISSION_SYNTAX)
|
||||
DEFINE_STACK_OF(ADMISSIONS)
|
||||
DEFINE_STACK_OF(PROFESSION_INFO)
|
||||
typedef STACK_OF(PROFESSION_INFO) PROFESSION_INFOS;
|
||||
|
||||
int ERR_load_X509V3_strings(void);
|
||||
const ASN1_OBJECT *NAMING_AUTHORITY_get0_authorityId(
|
||||
const NAMING_AUTHORITY *n);
|
||||
const ASN1_IA5STRING *NAMING_AUTHORITY_get0_authorityURL(
|
||||
const NAMING_AUTHORITY *n);
|
||||
const ASN1_STRING *NAMING_AUTHORITY_get0_authorityText(
|
||||
const NAMING_AUTHORITY *n);
|
||||
void NAMING_AUTHORITY_set0_authorityId(NAMING_AUTHORITY *n,
|
||||
ASN1_OBJECT* namingAuthorityId);
|
||||
void NAMING_AUTHORITY_set0_authorityURL(NAMING_AUTHORITY *n,
|
||||
ASN1_IA5STRING* namingAuthorityUrl);
|
||||
void NAMING_AUTHORITY_set0_authorityText(NAMING_AUTHORITY *n,
|
||||
ASN1_STRING* namingAuthorityText);
|
||||
|
||||
/* Error codes for the X509V3 functions. */
|
||||
|
||||
/* Function codes. */
|
||||
# define X509V3_F_A2I_GENERAL_NAME 164
|
||||
# define X509V3_F_ADDR_VALIDATE_PATH_INTERNAL 166
|
||||
# define X509V3_F_ASIDENTIFIERCHOICE_CANONIZE 161
|
||||
# define X509V3_F_ASIDENTIFIERCHOICE_IS_CANONICAL 162
|
||||
# define X509V3_F_COPY_EMAIL 122
|
||||
# define X509V3_F_COPY_ISSUER 123
|
||||
# define X509V3_F_DO_DIRNAME 144
|
||||
# define X509V3_F_DO_EXT_I2D 135
|
||||
# define X509V3_F_DO_EXT_NCONF 151
|
||||
# define X509V3_F_GNAMES_FROM_SECTNAME 156
|
||||
# define X509V3_F_I2S_ASN1_ENUMERATED 121
|
||||
# define X509V3_F_I2S_ASN1_IA5STRING 149
|
||||
# define X509V3_F_I2S_ASN1_INTEGER 120
|
||||
# define X509V3_F_I2V_AUTHORITY_INFO_ACCESS 138
|
||||
# define X509V3_F_NOTICE_SECTION 132
|
||||
# define X509V3_F_NREF_NOS 133
|
||||
# define X509V3_F_POLICY_SECTION 131
|
||||
# define X509V3_F_PROCESS_PCI_VALUE 150
|
||||
# define X509V3_F_R2I_CERTPOL 130
|
||||
# define X509V3_F_R2I_PCI 155
|
||||
# define X509V3_F_S2I_ASN1_IA5STRING 100
|
||||
# define X509V3_F_S2I_ASN1_INTEGER 108
|
||||
# define X509V3_F_S2I_ASN1_OCTET_STRING 112
|
||||
# define X509V3_F_S2I_SKEY_ID 115
|
||||
# define X509V3_F_SET_DIST_POINT_NAME 158
|
||||
# define X509V3_F_SXNET_ADD_ID_ASC 125
|
||||
# define X509V3_F_SXNET_ADD_ID_INTEGER 126
|
||||
# define X509V3_F_SXNET_ADD_ID_ULONG 127
|
||||
# define X509V3_F_SXNET_GET_ID_ASC 128
|
||||
# define X509V3_F_SXNET_GET_ID_ULONG 129
|
||||
# define X509V3_F_V2I_ASIDENTIFIERS 163
|
||||
# define X509V3_F_V2I_ASN1_BIT_STRING 101
|
||||
# define X509V3_F_V2I_AUTHORITY_INFO_ACCESS 139
|
||||
# define X509V3_F_V2I_AUTHORITY_KEYID 119
|
||||
# define X509V3_F_V2I_BASIC_CONSTRAINTS 102
|
||||
# define X509V3_F_V2I_CRLD 134
|
||||
# define X509V3_F_V2I_EXTENDED_KEY_USAGE 103
|
||||
# define X509V3_F_V2I_GENERAL_NAMES 118
|
||||
# define X509V3_F_V2I_GENERAL_NAME_EX 117
|
||||
# define X509V3_F_V2I_IDP 157
|
||||
# define X509V3_F_V2I_IPADDRBLOCKS 159
|
||||
# define X509V3_F_V2I_ISSUER_ALT 153
|
||||
# define X509V3_F_V2I_NAME_CONSTRAINTS 147
|
||||
# define X509V3_F_V2I_POLICY_CONSTRAINTS 146
|
||||
# define X509V3_F_V2I_POLICY_MAPPINGS 145
|
||||
# define X509V3_F_V2I_SUBJECT_ALT 154
|
||||
# define X509V3_F_V2I_TLS_FEATURE 165
|
||||
# define X509V3_F_V3_GENERIC_EXTENSION 116
|
||||
# define X509V3_F_X509V3_ADD1_I2D 140
|
||||
# define X509V3_F_X509V3_ADD_VALUE 105
|
||||
# define X509V3_F_X509V3_EXT_ADD 104
|
||||
# define X509V3_F_X509V3_EXT_ADD_ALIAS 106
|
||||
# define X509V3_F_X509V3_EXT_I2D 136
|
||||
# define X509V3_F_X509V3_EXT_NCONF 152
|
||||
# define X509V3_F_X509V3_GET_SECTION 142
|
||||
# define X509V3_F_X509V3_GET_STRING 143
|
||||
# define X509V3_F_X509V3_GET_VALUE_BOOL 110
|
||||
# define X509V3_F_X509V3_PARSE_LIST 109
|
||||
# define X509V3_F_X509_PURPOSE_ADD 137
|
||||
# define X509V3_F_X509_PURPOSE_SET 141
|
||||
|
||||
/* Reason codes. */
|
||||
# define X509V3_R_BAD_IP_ADDRESS 118
|
||||
# define X509V3_R_BAD_OBJECT 119
|
||||
# define X509V3_R_BN_DEC2BN_ERROR 100
|
||||
# define X509V3_R_BN_TO_ASN1_INTEGER_ERROR 101
|
||||
# define X509V3_R_DIRNAME_ERROR 149
|
||||
# define X509V3_R_DISTPOINT_ALREADY_SET 160
|
||||
# define X509V3_R_DUPLICATE_ZONE_ID 133
|
||||
# define X509V3_R_ERROR_CONVERTING_ZONE 131
|
||||
# define X509V3_R_ERROR_CREATING_EXTENSION 144
|
||||
# define X509V3_R_ERROR_IN_EXTENSION 128
|
||||
# define X509V3_R_EXPECTED_A_SECTION_NAME 137
|
||||
# define X509V3_R_EXTENSION_EXISTS 145
|
||||
# define X509V3_R_EXTENSION_NAME_ERROR 115
|
||||
# define X509V3_R_EXTENSION_NOT_FOUND 102
|
||||
# define X509V3_R_EXTENSION_SETTING_NOT_SUPPORTED 103
|
||||
# define X509V3_R_EXTENSION_VALUE_ERROR 116
|
||||
# define X509V3_R_ILLEGAL_EMPTY_EXTENSION 151
|
||||
# define X509V3_R_INCORRECT_POLICY_SYNTAX_TAG 152
|
||||
# define X509V3_R_INVALID_ASNUMBER 162
|
||||
# define X509V3_R_INVALID_ASRANGE 163
|
||||
# define X509V3_R_INVALID_BOOLEAN_STRING 104
|
||||
# define X509V3_R_INVALID_EXTENSION_STRING 105
|
||||
# define X509V3_R_INVALID_INHERITANCE 165
|
||||
# define X509V3_R_INVALID_IPADDRESS 166
|
||||
# define X509V3_R_INVALID_MULTIPLE_RDNS 161
|
||||
# define X509V3_R_INVALID_NAME 106
|
||||
# define X509V3_R_INVALID_NULL_ARGUMENT 107
|
||||
# define X509V3_R_INVALID_NULL_NAME 108
|
||||
# define X509V3_R_INVALID_NULL_VALUE 109
|
||||
# define X509V3_R_INVALID_NUMBER 140
|
||||
# define X509V3_R_INVALID_NUMBERS 141
|
||||
# define X509V3_R_INVALID_OBJECT_IDENTIFIER 110
|
||||
# define X509V3_R_INVALID_OPTION 138
|
||||
# define X509V3_R_INVALID_POLICY_IDENTIFIER 134
|
||||
# define X509V3_R_INVALID_PROXY_POLICY_SETTING 153
|
||||
# define X509V3_R_INVALID_PURPOSE 146
|
||||
# define X509V3_R_INVALID_SAFI 164
|
||||
# define X509V3_R_INVALID_SECTION 135
|
||||
# define X509V3_R_INVALID_SYNTAX 143
|
||||
# define X509V3_R_ISSUER_DECODE_ERROR 126
|
||||
# define X509V3_R_MISSING_VALUE 124
|
||||
# define X509V3_R_NEED_ORGANIZATION_AND_NUMBERS 142
|
||||
# define X509V3_R_NO_CONFIG_DATABASE 136
|
||||
# define X509V3_R_NO_ISSUER_CERTIFICATE 121
|
||||
# define X509V3_R_NO_ISSUER_DETAILS 127
|
||||
# define X509V3_R_NO_POLICY_IDENTIFIER 139
|
||||
# define X509V3_R_NO_PROXY_CERT_POLICY_LANGUAGE_DEFINED 154
|
||||
# define X509V3_R_NO_PUBLIC_KEY 114
|
||||
# define X509V3_R_NO_SUBJECT_DETAILS 125
|
||||
# define X509V3_R_OPERATION_NOT_DEFINED 148
|
||||
# define X509V3_R_OTHERNAME_ERROR 147
|
||||
# define X509V3_R_POLICY_LANGUAGE_ALREADY_DEFINED 155
|
||||
# define X509V3_R_POLICY_PATH_LENGTH 156
|
||||
# define X509V3_R_POLICY_PATH_LENGTH_ALREADY_DEFINED 157
|
||||
# define X509V3_R_POLICY_WHEN_PROXY_LANGUAGE_REQUIRES_NO_POLICY 159
|
||||
# define X509V3_R_SECTION_NOT_FOUND 150
|
||||
# define X509V3_R_UNABLE_TO_GET_ISSUER_DETAILS 122
|
||||
# define X509V3_R_UNABLE_TO_GET_ISSUER_KEYID 123
|
||||
# define X509V3_R_UNKNOWN_BIT_STRING_ARGUMENT 111
|
||||
# define X509V3_R_UNKNOWN_EXTENSION 129
|
||||
# define X509V3_R_UNKNOWN_EXTENSION_NAME 130
|
||||
# define X509V3_R_UNKNOWN_OPTION 120
|
||||
# define X509V3_R_UNSUPPORTED_OPTION 117
|
||||
# define X509V3_R_UNSUPPORTED_TYPE 167
|
||||
# define X509V3_R_USER_TOO_LONG 132
|
||||
const GENERAL_NAME *ADMISSION_SYNTAX_get0_admissionAuthority(
|
||||
const ADMISSION_SYNTAX *as);
|
||||
void ADMISSION_SYNTAX_set0_admissionAuthority(
|
||||
ADMISSION_SYNTAX *as, GENERAL_NAME *aa);
|
||||
const STACK_OF(ADMISSIONS) *ADMISSION_SYNTAX_get0_contentsOfAdmissions(
|
||||
const ADMISSION_SYNTAX *as);
|
||||
void ADMISSION_SYNTAX_set0_contentsOfAdmissions(
|
||||
ADMISSION_SYNTAX *as, STACK_OF(ADMISSIONS) *a);
|
||||
const GENERAL_NAME *ADMISSIONS_get0_admissionAuthority(const ADMISSIONS *a);
|
||||
void ADMISSIONS_set0_admissionAuthority(ADMISSIONS *a, GENERAL_NAME *aa);
|
||||
const NAMING_AUTHORITY *ADMISSIONS_get0_namingAuthority(const ADMISSIONS *a);
|
||||
void ADMISSIONS_set0_namingAuthority(ADMISSIONS *a, NAMING_AUTHORITY *na);
|
||||
const PROFESSION_INFOS *ADMISSIONS_get0_professionInfos(const ADMISSIONS *a);
|
||||
void ADMISSIONS_set0_professionInfos(ADMISSIONS *a, PROFESSION_INFOS *pi);
|
||||
const ASN1_OCTET_STRING *PROFESSION_INFO_get0_addProfessionInfo(
|
||||
const PROFESSION_INFO *pi);
|
||||
void PROFESSION_INFO_set0_addProfessionInfo(
|
||||
PROFESSION_INFO *pi, ASN1_OCTET_STRING *aos);
|
||||
const NAMING_AUTHORITY *PROFESSION_INFO_get0_namingAuthority(
|
||||
const PROFESSION_INFO *pi);
|
||||
void PROFESSION_INFO_set0_namingAuthority(
|
||||
PROFESSION_INFO *pi, NAMING_AUTHORITY *na);
|
||||
const STACK_OF(ASN1_STRING) *PROFESSION_INFO_get0_professionItems(
|
||||
const PROFESSION_INFO *pi);
|
||||
void PROFESSION_INFO_set0_professionItems(
|
||||
PROFESSION_INFO *pi, STACK_OF(ASN1_STRING) *as);
|
||||
const STACK_OF(ASN1_OBJECT) *PROFESSION_INFO_get0_professionOIDs(
|
||||
const PROFESSION_INFO *pi);
|
||||
void PROFESSION_INFO_set0_professionOIDs(
|
||||
PROFESSION_INFO *pi, STACK_OF(ASN1_OBJECT) *po);
|
||||
const ASN1_PRINTABLESTRING *PROFESSION_INFO_get0_registrationNumber(
|
||||
const PROFESSION_INFO *pi);
|
||||
void PROFESSION_INFO_set0_registrationNumber(
|
||||
PROFESSION_INFO *pi, ASN1_PRINTABLESTRING *rn);
|
||||
|
||||
# ifdef __cplusplus
|
||||
}
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,6 @@
|
||||
./openssl-arm
|
||||
./openssl-arm2
|
||||
./openssl-armhf
|
||||
./openssl-mips
|
||||
./openssl-mipsel
|
||||
./openssl-pogo
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -11,6 +11,6 @@ make depend
|
||||
sed 's/ -O3 / -Os /g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/arm
|
||||
make -j 8
|
||||
cp *.a ../linux/arm
|
||||
cd ..
|
||||
|
||||
@@ -11,6 +11,6 @@ make depend
|
||||
sed 's/ -O3 / -Os /g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/arm2
|
||||
make -j 8
|
||||
cp *.a ../linux/arm2
|
||||
cd ..
|
||||
|
||||
@@ -11,6 +11,6 @@ make depend
|
||||
sed 's/ -O3 / -Os /g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/mips
|
||||
make -j 8
|
||||
cp *.a ../linux/mips
|
||||
cd ..
|
||||
|
||||
@@ -15,6 +15,6 @@ mv t Makefile
|
||||
sed 's/SHARED_LDFLAGS=/SHARED_LDFLAGS=-EL/g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/mipsel
|
||||
make -j 8
|
||||
cp *.a ../linux/mipsel
|
||||
cd ..
|
||||
|
||||
@@ -11,6 +11,6 @@ make depend
|
||||
sed 's/ -O3 / -Os /g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/pogo
|
||||
make -j 8
|
||||
cp *.a ../linux/pogo
|
||||
cd ..
|
||||
|
||||
@@ -13,6 +13,6 @@ make depend
|
||||
sed 's/ -O3 / -Os -m32 /g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/poky
|
||||
make -j 8
|
||||
cp *.a ../linux/poky
|
||||
cd ..
|
||||
|
||||
@@ -13,6 +13,6 @@ make depend
|
||||
sed 's/ -O3 / -Os /g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/poky64
|
||||
make -j 8
|
||||
cp *.a ../linux/poky64
|
||||
cd ..
|
||||
|
||||
@@ -7,6 +7,6 @@ make depend
|
||||
sed 's/ -O3 / -O3 /g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/x86-64
|
||||
make -j 8
|
||||
cp *.a ../linux/x86-64
|
||||
cd ..
|
||||
|
||||
@@ -8,6 +8,6 @@ make depend
|
||||
sed 's/ -O3 / -O3 -m32 /g' Makefile > t
|
||||
rm Makefile
|
||||
mv t Makefile
|
||||
make
|
||||
cp *.a ../openssl-static/x86
|
||||
make -j 8
|
||||
cp *.a ../linux/x86
|
||||
cd ..
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,3 +1 @@
|
||||
openssl-1.1.0f.tar.gz in use
|
||||
|
||||
Xen need to be compiled
|
||||
openssl-1.1.1.tar.gz in use on everything here.
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user