diff options
| -rw-r--r-- | src/lib/libcrypto/Symbols.list | 5 | ||||
| -rw-r--r-- | src/lib/libcrypto/conf/conf.h | 15 | ||||
| -rw-r--r-- | src/lib/libcrypto/conf/conf_lib.c | 126 | ||||
| -rw-r--r-- | src/lib/libcrypto/hidden/openssl/conf.h | 10 |
4 files changed, 3 insertions, 153 deletions
diff --git a/src/lib/libcrypto/Symbols.list b/src/lib/libcrypto/Symbols.list index 290850eebc..d76ab68db6 100644 --- a/src/lib/libcrypto/Symbols.list +++ b/src/lib/libcrypto/Symbols.list | |||
| @@ -589,12 +589,7 @@ CMS_unsigned_get_attr_by_OBJ | |||
| 589 | CMS_unsigned_get_attr_count | 589 | CMS_unsigned_get_attr_count |
| 590 | CMS_verify | 590 | CMS_verify |
| 591 | CMS_verify_receipt | 591 | CMS_verify_receipt |
| 592 | CONF_free | ||
| 593 | CONF_get1_default_config_file | 592 | CONF_get1_default_config_file |
| 594 | CONF_get_number | ||
| 595 | CONF_get_section | ||
| 596 | CONF_get_string | ||
| 597 | CONF_load | ||
| 598 | CONF_modules_finish | 593 | CONF_modules_finish |
| 599 | CONF_modules_free | 594 | CONF_modules_free |
| 600 | CONF_modules_load | 595 | CONF_modules_load |
diff --git a/src/lib/libcrypto/conf/conf.h b/src/lib/libcrypto/conf/conf.h index 28b5f9d583..5796ee29ac 100644 --- a/src/lib/libcrypto/conf/conf.h +++ b/src/lib/libcrypto/conf/conf.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: conf.h,v 1.24 2024/08/31 09:44:00 tb Exp $ */ | 1 | /* $OpenBSD: conf.h,v 1.25 2024/08/31 09:50:52 tb Exp $ */ |
| 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
| 3 | * All rights reserved. | 3 | * All rights reserved. |
| 4 | * | 4 | * |
| @@ -104,20 +104,7 @@ typedef void conf_finish_func(CONF_IMODULE *md); | |||
| 104 | #define CONF_MFLAGS_IGNORE_MISSING_FILE 0x10 | 104 | #define CONF_MFLAGS_IGNORE_MISSING_FILE 0x10 |
| 105 | #define CONF_MFLAGS_DEFAULT_SECTION 0x20 | 105 | #define CONF_MFLAGS_DEFAULT_SECTION 0x20 |
| 106 | 106 | ||
| 107 | int CONF_set_default_method(CONF_METHOD *meth); | ||
| 108 | void CONF_set_nconf(CONF *conf, LHASH_OF(CONF_VALUE) *hash); | 107 | void CONF_set_nconf(CONF *conf, LHASH_OF(CONF_VALUE) *hash); |
| 109 | LHASH_OF(CONF_VALUE) *CONF_load(LHASH_OF(CONF_VALUE) *conf, const char *file, | ||
| 110 | long *eline); | ||
| 111 | LHASH_OF(CONF_VALUE) *CONF_load_fp(LHASH_OF(CONF_VALUE) *conf, FILE *fp, | ||
| 112 | long *eline); | ||
| 113 | LHASH_OF(CONF_VALUE) *CONF_load_bio(LHASH_OF(CONF_VALUE) *conf, BIO *bp, long *eline); | ||
| 114 | STACK_OF(CONF_VALUE) *CONF_get_section(LHASH_OF(CONF_VALUE) *conf, | ||
| 115 | const char *section); | ||
| 116 | char *CONF_get_string(LHASH_OF(CONF_VALUE) *conf, const char *group, | ||
| 117 | const char *name); | ||
| 118 | long CONF_get_number(LHASH_OF(CONF_VALUE) *conf, const char *group, | ||
| 119 | const char *name); | ||
| 120 | void CONF_free(LHASH_OF(CONF_VALUE) *conf); | ||
| 121 | 108 | ||
| 122 | void OPENSSL_config(const char *config_name); | 109 | void OPENSSL_config(const char *config_name); |
| 123 | void OPENSSL_no_config(void); | 110 | void OPENSSL_no_config(void); |
diff --git a/src/lib/libcrypto/conf/conf_lib.c b/src/lib/libcrypto/conf/conf_lib.c index 4440cfe6fd..7d426d56b2 100644 --- a/src/lib/libcrypto/conf/conf_lib.c +++ b/src/lib/libcrypto/conf/conf_lib.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: conf_lib.c,v 1.23 2024/08/31 09:41:53 tb Exp $ */ | 1 | /* $OpenBSD: conf_lib.c,v 1.24 2024/08/31 09:50:52 tb Exp $ */ |
| 2 | /* Written by Richard Levitte (richard@levitte.org) for the OpenSSL | 2 | /* Written by Richard Levitte (richard@levitte.org) for the OpenSSL |
| 3 | * project 2000. | 3 | * project 2000. |
| 4 | */ | 4 | */ |
| @@ -77,130 +77,6 @@ CONF_set_nconf(CONF *conf, LHASH_OF(CONF_VALUE) *hash) | |||
| 77 | conf->data = hash; | 77 | conf->data = hash; |
| 78 | } | 78 | } |
| 79 | 79 | ||
| 80 | /* The following section contains the "CONF classic" functions, | ||
| 81 | rewritten in terms of the new CONF interface. */ | ||
| 82 | |||
| 83 | int | ||
| 84 | CONF_set_default_method(CONF_METHOD *meth) | ||
| 85 | { | ||
| 86 | default_CONF_method = meth; | ||
| 87 | return 1; | ||
| 88 | } | ||
| 89 | |||
| 90 | LHASH_OF(CONF_VALUE) * | ||
| 91 | CONF_load(LHASH_OF(CONF_VALUE) *conf, const char *file, long *eline) | ||
| 92 | { | ||
| 93 | LHASH_OF(CONF_VALUE) *ltmp; | ||
| 94 | BIO *in = NULL; | ||
| 95 | |||
| 96 | in = BIO_new_file(file, "rb"); | ||
| 97 | if (in == NULL) { | ||
| 98 | CONFerror(ERR_R_SYS_LIB); | ||
| 99 | return NULL; | ||
| 100 | } | ||
| 101 | |||
| 102 | ltmp = CONF_load_bio(conf, in, eline); | ||
| 103 | BIO_free(in); | ||
| 104 | |||
| 105 | return ltmp; | ||
| 106 | } | ||
| 107 | LCRYPTO_ALIAS(CONF_load); | ||
| 108 | |||
| 109 | LHASH_OF(CONF_VALUE) * | ||
| 110 | CONF_load_fp(LHASH_OF(CONF_VALUE) *conf, FILE *fp, long *eline) | ||
| 111 | { | ||
| 112 | BIO *btmp; | ||
| 113 | LHASH_OF(CONF_VALUE) *ltmp; | ||
| 114 | |||
| 115 | if (!(btmp = BIO_new_fp(fp, BIO_NOCLOSE))) { | ||
| 116 | CONFerror(ERR_R_BUF_LIB); | ||
| 117 | return NULL; | ||
| 118 | } | ||
| 119 | ltmp = CONF_load_bio(conf, btmp, eline); | ||
| 120 | BIO_free(btmp); | ||
| 121 | return ltmp; | ||
| 122 | } | ||
| 123 | |||
| 124 | LHASH_OF(CONF_VALUE) * | ||
| 125 | CONF_load_bio(LHASH_OF(CONF_VALUE) *conf, BIO *bp, long *eline) | ||
| 126 | { | ||
| 127 | CONF ctmp; | ||
| 128 | int ret; | ||
| 129 | |||
| 130 | CONF_set_nconf(&ctmp, conf); | ||
| 131 | |||
| 132 | ret = NCONF_load_bio(&ctmp, bp, eline); | ||
| 133 | if (ret) | ||
| 134 | return ctmp.data; | ||
| 135 | return NULL; | ||
| 136 | } | ||
| 137 | |||
| 138 | STACK_OF(CONF_VALUE) * | ||
| 139 | CONF_get_section(LHASH_OF(CONF_VALUE) *conf, const char *section) | ||
| 140 | { | ||
| 141 | if (conf == NULL) { | ||
| 142 | return NULL; | ||
| 143 | } else { | ||
| 144 | CONF ctmp; | ||
| 145 | CONF_set_nconf(&ctmp, conf); | ||
| 146 | return NCONF_get_section(&ctmp, section); | ||
| 147 | } | ||
| 148 | } | ||
| 149 | LCRYPTO_ALIAS(CONF_get_section); | ||
| 150 | |||
| 151 | char * | ||
| 152 | CONF_get_string(LHASH_OF(CONF_VALUE) *conf, const char *group, | ||
| 153 | const char *name) | ||
| 154 | { | ||
| 155 | if (conf == NULL) { | ||
| 156 | return NCONF_get_string(NULL, group, name); | ||
| 157 | } else { | ||
| 158 | CONF ctmp; | ||
| 159 | CONF_set_nconf(&ctmp, conf); | ||
| 160 | return NCONF_get_string(&ctmp, group, name); | ||
| 161 | } | ||
| 162 | } | ||
| 163 | LCRYPTO_ALIAS(CONF_get_string); | ||
| 164 | |||
| 165 | long | ||
| 166 | CONF_get_number(LHASH_OF(CONF_VALUE) *conf, const char *group, | ||
| 167 | const char *name) | ||
| 168 | { | ||
| 169 | int status; | ||
| 170 | long result = 0; | ||
| 171 | |||
| 172 | if (conf == NULL) { | ||
| 173 | status = NCONF_get_number_e(NULL, group, name, &result); | ||
| 174 | } else { | ||
| 175 | CONF ctmp; | ||
| 176 | CONF_set_nconf(&ctmp, conf); | ||
| 177 | status = NCONF_get_number_e(&ctmp, group, name, &result); | ||
| 178 | } | ||
| 179 | |||
| 180 | if (status == 0) { | ||
| 181 | /* This function does not believe in errors... */ | ||
| 182 | ERR_clear_error(); | ||
| 183 | } | ||
| 184 | return result; | ||
| 185 | } | ||
| 186 | LCRYPTO_ALIAS(CONF_get_number); | ||
| 187 | |||
| 188 | void | ||
| 189 | CONF_free(LHASH_OF(CONF_VALUE) *conf) | ||
| 190 | { | ||
| 191 | CONF ctmp; | ||
| 192 | |||
| 193 | CONF_set_nconf(&ctmp, conf); | ||
| 194 | ctmp.meth->destroy_data(&ctmp); | ||
| 195 | } | ||
| 196 | LCRYPTO_ALIAS(CONF_free); | ||
| 197 | |||
| 198 | /* The following section contains the "New CONF" functions. They are | ||
| 199 | completely centralised around a new CONF structure that may contain | ||
| 200 | basically anything, but at least a method pointer and a table of data. | ||
| 201 | These functions are also written in terms of the bridge functions used | ||
| 202 | by the "CONF classic" functions, for consistency. */ | ||
| 203 | |||
| 204 | CONF * | 80 | CONF * |
| 205 | NCONF_new(const CONF_METHOD *meth) | 81 | NCONF_new(const CONF_METHOD *meth) |
| 206 | { | 82 | { |
diff --git a/src/lib/libcrypto/hidden/openssl/conf.h b/src/lib/libcrypto/hidden/openssl/conf.h index 346fba1c4b..adb9b38548 100644 --- a/src/lib/libcrypto/hidden/openssl/conf.h +++ b/src/lib/libcrypto/hidden/openssl/conf.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: conf.h,v 1.6 2024/08/31 09:44:00 tb Exp $ */ | 1 | /* $OpenBSD: conf.h,v 1.7 2024/08/31 09:50:52 tb Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Copyright (c) 2024 Bob Beck <beck@openbsd.org> | 3 | * Copyright (c) 2024 Bob Beck <beck@openbsd.org> |
| 4 | * | 4 | * |
| @@ -25,15 +25,7 @@ | |||
| 25 | #endif | 25 | #endif |
| 26 | #include "crypto_namespace.h" | 26 | #include "crypto_namespace.h" |
| 27 | 27 | ||
| 28 | LCRYPTO_USED(CONF_set_default_method); | ||
| 29 | LCRYPTO_USED(CONF_set_nconf); | 28 | LCRYPTO_USED(CONF_set_nconf); |
| 30 | LCRYPTO_USED(CONF_load); | ||
| 31 | LCRYPTO_USED(CONF_load_fp); | ||
| 32 | LCRYPTO_USED(CONF_load_bio); | ||
| 33 | LCRYPTO_USED(CONF_get_section); | ||
| 34 | LCRYPTO_USED(CONF_get_string); | ||
| 35 | LCRYPTO_USED(CONF_get_number); | ||
| 36 | LCRYPTO_USED(CONF_free); | ||
| 37 | LCRYPTO_USED(OPENSSL_config); | 29 | LCRYPTO_USED(OPENSSL_config); |
| 38 | LCRYPTO_USED(OPENSSL_no_config); | 30 | LCRYPTO_USED(OPENSSL_no_config); |
| 39 | LCRYPTO_USED(NCONF_new); | 31 | LCRYPTO_USED(NCONF_new); |
