summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortb <>2024-08-31 09:26:18 +0000
committertb <>2024-08-31 09:26:18 +0000
commitfa06106840d12417b65b1d797ece2e162f6ca2f7 (patch)
tree2d0e6a77bd6951db3389273540c9f34d62df1eb7
parente47979e7652d27e7b364efb7a46ac39336b4cf87 (diff)
downloadopenbsd-fa06106840d12417b65b1d797ece2e162f6ca2f7.tar.gz
openbsd-fa06106840d12417b65b1d797ece2e162f6ca2f7.tar.bz2
openbsd-fa06106840d12417b65b1d797ece2e162f6ca2f7.zip
Unexport some conf layers unused outside of libcrypto
imodules are called imodules because they contain Information about modules that have been Initialized. Which one of these two I it is is anyone's best guess. Why anything outside of libcrypto would ever possibly care will also remain a mystery. Remove the old way of adding a conf module, user data, stop allowing to set a method (it's opaque now, remember?) and drop a couple bits more from the public api interface. ok beck jsing
-rw-r--r--src/lib/libcrypto/Symbols.list16
-rw-r--r--src/lib/libcrypto/asn1/asn1_gen.c3
-rw-r--r--src/lib/libcrypto/asn1/asn_moid.c3
-rw-r--r--src/lib/libcrypto/conf/conf.h18
-rw-r--r--src/lib/libcrypto/conf/conf_lib.c22
-rw-r--r--src/lib/libcrypto/conf/conf_local.h18
-rw-r--r--src/lib/libcrypto/conf/conf_mod.c13
-rw-r--r--src/lib/libcrypto/ct/ct_log.c4
-rw-r--r--src/lib/libcrypto/hidden/openssl/conf.h14
-rw-r--r--src/lib/libcrypto/x509/x509_utl.c4
10 files changed, 31 insertions, 84 deletions
diff --git a/src/lib/libcrypto/Symbols.list b/src/lib/libcrypto/Symbols.list
index 3385b631e7..20abe2588f 100644
--- a/src/lib/libcrypto/Symbols.list
+++ b/src/lib/libcrypto/Symbols.list
@@ -594,27 +594,12 @@ CONF_get1_default_config_file
594CONF_get_number 594CONF_get_number
595CONF_get_section 595CONF_get_section
596CONF_get_string 596CONF_get_string
597CONF_imodule_get_flags
598CONF_imodule_get_module
599CONF_imodule_get_name
600CONF_imodule_get_usr_data
601CONF_imodule_get_value
602CONF_imodule_set_flags
603CONF_imodule_set_usr_data
604CONF_load 597CONF_load
605CONF_load_bio
606CONF_load_fp
607CONF_module_add
608CONF_module_get_usr_data
609CONF_module_set_usr_data
610CONF_modules_finish 598CONF_modules_finish
611CONF_modules_free 599CONF_modules_free
612CONF_modules_load 600CONF_modules_load
613CONF_modules_load_file 601CONF_modules_load_file
614CONF_modules_unload 602CONF_modules_unload
615CONF_parse_list
616CONF_set_default_method
617CONF_set_nconf
618CRL_DIST_POINTS_free 603CRL_DIST_POINTS_free
619CRL_DIST_POINTS_it 604CRL_DIST_POINTS_it
620CRL_DIST_POINTS_new 605CRL_DIST_POINTS_new
@@ -1510,7 +1495,6 @@ NCONF_get_section
1510NCONF_get_string 1495NCONF_get_string
1511NCONF_load 1496NCONF_load
1512NCONF_load_bio 1497NCONF_load_bio
1513NCONF_load_fp
1514NCONF_new 1498NCONF_new
1515NETSCAPE_SPKAC_free 1499NETSCAPE_SPKAC_free
1516NETSCAPE_SPKAC_it 1500NETSCAPE_SPKAC_it
diff --git a/src/lib/libcrypto/asn1/asn1_gen.c b/src/lib/libcrypto/asn1/asn1_gen.c
index c7eafd7267..4b8d7051ab 100644
--- a/src/lib/libcrypto/asn1/asn1_gen.c
+++ b/src/lib/libcrypto/asn1/asn1_gen.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: asn1_gen.c,v 1.22 2024/05/17 02:57:26 tb Exp $ */ 1/* $OpenBSD: asn1_gen.c,v 1.23 2024/08/31 09:26:18 tb Exp $ */
2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL 2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
3 * project 2002. 3 * project 2002.
4 */ 4 */
@@ -63,6 +63,7 @@
63#include <openssl/x509v3.h> 63#include <openssl/x509v3.h>
64 64
65#include "asn1_local.h" 65#include "asn1_local.h"
66#include "conf_local.h"
66 67
67#define ASN1_GEN_FLAG 0x10000 68#define ASN1_GEN_FLAG 0x10000
68#define ASN1_GEN_FLAG_IMP (ASN1_GEN_FLAG|1) 69#define ASN1_GEN_FLAG_IMP (ASN1_GEN_FLAG|1)
diff --git a/src/lib/libcrypto/asn1/asn_moid.c b/src/lib/libcrypto/asn1/asn_moid.c
index 6874980463..e3c7d09446 100644
--- a/src/lib/libcrypto/asn1/asn_moid.c
+++ b/src/lib/libcrypto/asn1/asn_moid.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: asn_moid.c,v 1.17 2024/03/02 09:02:04 tb Exp $ */ 1/* $OpenBSD: asn_moid.c,v 1.18 2024/08/31 09:26:18 tb Exp $ */
2/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL 2/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL
3 * project 2001. 3 * project 2001.
4 */ 4 */
@@ -66,6 +66,7 @@
66#include <openssl/x509.h> 66#include <openssl/x509.h>
67 67
68#include "asn1_local.h" 68#include "asn1_local.h"
69#include "conf_local.h"
69 70
70/* Simple ASN1 OID module: add all objects in a given section */ 71/* Simple ASN1 OID module: add all objects in a given section */
71 72
diff --git a/src/lib/libcrypto/conf/conf.h b/src/lib/libcrypto/conf/conf.h
index 5129a259b3..feccaafb05 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.18 2024/08/31 09:21:44 tb Exp $ */ 1/* $OpenBSD: conf.h,v 1.19 2024/08/31 09:26:18 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 *
@@ -138,7 +138,6 @@ void NCONF_free(CONF *conf);
138void NCONF_free_data(CONF *conf); 138void NCONF_free_data(CONF *conf);
139 139
140int NCONF_load(CONF *conf, const char *file, long *eline); 140int NCONF_load(CONF *conf, const char *file, long *eline);
141int NCONF_load_fp(CONF *conf, FILE *fp, long *eline);
142int NCONF_load_bio(CONF *conf, BIO *bp, long *eline); 141int NCONF_load_bio(CONF *conf, BIO *bp, long *eline);
143STACK_OF(CONF_VALUE) *NCONF_get_section(const CONF *conf, const char *section); 142STACK_OF(CONF_VALUE) *NCONF_get_section(const CONF *conf, const char *section);
144char *NCONF_get_string(const CONF *conf, const char *group, const char *name); 143char *NCONF_get_string(const CONF *conf, const char *group, const char *name);
@@ -156,24 +155,9 @@ int CONF_modules_load_file(const char *filename, const char *appname,
156void CONF_modules_unload(int all); 155void CONF_modules_unload(int all);
157void CONF_modules_finish(void); 156void CONF_modules_finish(void);
158void CONF_modules_free(void); 157void CONF_modules_free(void);
159int CONF_module_add(const char *name, conf_init_func *ifunc,
160 conf_finish_func *ffunc);
161
162const char *CONF_imodule_get_name(const CONF_IMODULE *md);
163const char *CONF_imodule_get_value(const CONF_IMODULE *md);
164void *CONF_imodule_get_usr_data(const CONF_IMODULE *md);
165void CONF_imodule_set_usr_data(CONF_IMODULE *md, void *usr_data);
166CONF_MODULE *CONF_imodule_get_module(const CONF_IMODULE *md);
167unsigned long CONF_imodule_get_flags(const CONF_IMODULE *md);
168void CONF_imodule_set_flags(CONF_IMODULE *md, unsigned long flags);
169void *CONF_module_get_usr_data(CONF_MODULE *pmod);
170void CONF_module_set_usr_data(CONF_MODULE *pmod, void *usr_data);
171 158
172char *CONF_get1_default_config_file(void); 159char *CONF_get1_default_config_file(void);
173 160
174int CONF_parse_list(const char *list, int sep, int nospc,
175 int (*list_cb)(const char *elem, int len, void *usr), void *arg);
176
177void OPENSSL_load_builtin_modules(void); 161void OPENSSL_load_builtin_modules(void);
178 162
179void ERR_load_CONF_strings(void); 163void ERR_load_CONF_strings(void);
diff --git a/src/lib/libcrypto/conf/conf_lib.c b/src/lib/libcrypto/conf/conf_lib.c
index fca7486de3..abeea5588f 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.19 2024/08/31 09:21:44 tb Exp $ */ 1/* $OpenBSD: conf_lib.c,v 1.20 2024/08/31 09:26:18 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,7 +77,6 @@ CONF_set_nconf(CONF *conf, LHASH_OF(CONF_VALUE) *hash)
77 default_CONF_method->init(conf); 77 default_CONF_method->init(conf);
78 conf->data = hash; 78 conf->data = hash;
79} 79}
80LCRYPTO_ALIAS(CONF_set_nconf);
81 80
82/* The following section contains the "CONF classic" functions, 81/* The following section contains the "CONF classic" functions,
83 rewritten in terms of the new CONF interface. */ 82 rewritten in terms of the new CONF interface. */
@@ -88,7 +87,6 @@ CONF_set_default_method(CONF_METHOD *meth)
88 default_CONF_method = meth; 87 default_CONF_method = meth;
89 return 1; 88 return 1;
90} 89}
91LCRYPTO_ALIAS(CONF_set_default_method);
92 90
93LHASH_OF(CONF_VALUE) * 91LHASH_OF(CONF_VALUE) *
94CONF_load(LHASH_OF(CONF_VALUE) *conf, const char *file, long *eline) 92CONF_load(LHASH_OF(CONF_VALUE) *conf, const char *file, long *eline)
@@ -123,7 +121,6 @@ CONF_load_fp(LHASH_OF(CONF_VALUE) *conf, FILE *fp, long *eline)
123 BIO_free(btmp); 121 BIO_free(btmp);
124 return ltmp; 122 return ltmp;
125} 123}
126LCRYPTO_ALIAS(CONF_load_fp);
127 124
128LHASH_OF(CONF_VALUE) * 125LHASH_OF(CONF_VALUE) *
129CONF_load_bio(LHASH_OF(CONF_VALUE) *conf, BIO *bp, long *eline) 126CONF_load_bio(LHASH_OF(CONF_VALUE) *conf, BIO *bp, long *eline)
@@ -138,7 +135,6 @@ CONF_load_bio(LHASH_OF(CONF_VALUE) *conf, BIO *bp, long *eline)
138 return ctmp.data; 135 return ctmp.data;
139 return NULL; 136 return NULL;
140} 137}
141LCRYPTO_ALIAS(CONF_load_bio);
142 138
143STACK_OF(CONF_VALUE) * 139STACK_OF(CONF_VALUE) *
144CONF_get_section(LHASH_OF(CONF_VALUE) *conf, const char *section) 140CONF_get_section(LHASH_OF(CONF_VALUE) *conf, const char *section)
@@ -255,22 +251,6 @@ NCONF_load(CONF *conf, const char *file, long *eline)
255LCRYPTO_ALIAS(NCONF_load); 251LCRYPTO_ALIAS(NCONF_load);
256 252
257int 253int
258NCONF_load_fp(CONF *conf, FILE *fp, long *eline)
259{
260 BIO *btmp;
261 int ret;
262
263 if (!(btmp = BIO_new_fp(fp, BIO_NOCLOSE))) {
264 CONFerror(ERR_R_BUF_LIB);
265 return 0;
266 }
267 ret = NCONF_load_bio(conf, btmp, eline);
268 BIO_free(btmp);
269 return ret;
270}
271LCRYPTO_ALIAS(NCONF_load_fp);
272
273int
274NCONF_load_bio(CONF *conf, BIO *bp, long *eline) 254NCONF_load_bio(CONF *conf, BIO *bp, long *eline)
275{ 255{
276 if (conf == NULL) { 256 if (conf == NULL) {
diff --git a/src/lib/libcrypto/conf/conf_local.h b/src/lib/libcrypto/conf/conf_local.h
index dec0d3c0c1..cf5941ed50 100644
--- a/src/lib/libcrypto/conf/conf_local.h
+++ b/src/lib/libcrypto/conf/conf_local.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: conf_local.h,v 1.1 2024/08/31 09:21:44 tb Exp $ */ 1/* $OpenBSD: conf_local.h,v 1.2 2024/08/31 09:26:18 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 *
@@ -74,6 +74,22 @@ struct conf_method_st {
74 int (*load)(CONF *conf, const char *name, long *eline); 74 int (*load)(CONF *conf, const char *name, long *eline);
75}; 75};
76 76
77int CONF_module_add(const char *name, conf_init_func *ifunc,
78 conf_finish_func *ffunc);
79
80const char *CONF_imodule_get_name(const CONF_IMODULE *md);
81const char *CONF_imodule_get_value(const CONF_IMODULE *md);
82void *CONF_imodule_get_usr_data(const CONF_IMODULE *md);
83void CONF_imodule_set_usr_data(CONF_IMODULE *md, void *usr_data);
84CONF_MODULE *CONF_imodule_get_module(const CONF_IMODULE *md);
85unsigned long CONF_imodule_get_flags(const CONF_IMODULE *md);
86void CONF_imodule_set_flags(CONF_IMODULE *md, unsigned long flags);
87void *CONF_module_get_usr_data(CONF_MODULE *pmod);
88void CONF_module_set_usr_data(CONF_MODULE *pmod, void *usr_data);
89
90int CONF_parse_list(const char *list, int sep, int nospc,
91 int (*list_cb)(const char *elem, int len, void *usr), void *arg);
92
77__END_HIDDEN_DECLS 93__END_HIDDEN_DECLS
78 94
79#endif /* HEADER_CONF_LOCAL_H */ 95#endif /* HEADER_CONF_LOCAL_H */
diff --git a/src/lib/libcrypto/conf/conf_mod.c b/src/lib/libcrypto/conf/conf_mod.c
index 4bde9eb376..3477bc71b1 100644
--- a/src/lib/libcrypto/conf/conf_mod.c
+++ b/src/lib/libcrypto/conf/conf_mod.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: conf_mod.c,v 1.38 2024/04/09 13:56:30 beck Exp $ */ 1/* $OpenBSD: conf_mod.c,v 1.39 2024/08/31 09:26:18 tb Exp $ */
2/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL 2/* Written by Stephen Henson (steve@openssl.org) for the OpenSSL
3 * project 2001. 3 * project 2001.
4 */ 4 */
@@ -413,7 +413,6 @@ CONF_module_add(const char *name, conf_init_func *ifunc, conf_finish_func *ffunc
413{ 413{
414 return module_add(name, ifunc, ffunc); 414 return module_add(name, ifunc, ffunc);
415} 415}
416LCRYPTO_ALIAS(CONF_module_add);
417 416
418void 417void
419CONF_modules_free(void) 418CONF_modules_free(void)
@@ -430,63 +429,54 @@ CONF_imodule_get_name(const CONF_IMODULE *imod)
430{ 429{
431 return imod->name; 430 return imod->name;
432} 431}
433LCRYPTO_ALIAS(CONF_imodule_get_name);
434 432
435const char * 433const char *
436CONF_imodule_get_value(const CONF_IMODULE *imod) 434CONF_imodule_get_value(const CONF_IMODULE *imod)
437{ 435{
438 return imod->value; 436 return imod->value;
439} 437}
440LCRYPTO_ALIAS(CONF_imodule_get_value);
441 438
442void * 439void *
443CONF_imodule_get_usr_data(const CONF_IMODULE *imod) 440CONF_imodule_get_usr_data(const CONF_IMODULE *imod)
444{ 441{
445 return imod->usr_data; 442 return imod->usr_data;
446} 443}
447LCRYPTO_ALIAS(CONF_imodule_get_usr_data);
448 444
449void 445void
450CONF_imodule_set_usr_data(CONF_IMODULE *imod, void *usr_data) 446CONF_imodule_set_usr_data(CONF_IMODULE *imod, void *usr_data)
451{ 447{
452 imod->usr_data = usr_data; 448 imod->usr_data = usr_data;
453} 449}
454LCRYPTO_ALIAS(CONF_imodule_set_usr_data);
455 450
456CONF_MODULE * 451CONF_MODULE *
457CONF_imodule_get_module(const CONF_IMODULE *imod) 452CONF_imodule_get_module(const CONF_IMODULE *imod)
458{ 453{
459 return imod->mod; 454 return imod->mod;
460} 455}
461LCRYPTO_ALIAS(CONF_imodule_get_module);
462 456
463unsigned long 457unsigned long
464CONF_imodule_get_flags(const CONF_IMODULE *imod) 458CONF_imodule_get_flags(const CONF_IMODULE *imod)
465{ 459{
466 return imod->flags; 460 return imod->flags;
467} 461}
468LCRYPTO_ALIAS(CONF_imodule_get_flags);
469 462
470void 463void
471CONF_imodule_set_flags(CONF_IMODULE *imod, unsigned long flags) 464CONF_imodule_set_flags(CONF_IMODULE *imod, unsigned long flags)
472{ 465{
473 imod->flags = flags; 466 imod->flags = flags;
474} 467}
475LCRYPTO_ALIAS(CONF_imodule_set_flags);
476 468
477void * 469void *
478CONF_module_get_usr_data(CONF_MODULE *mod) 470CONF_module_get_usr_data(CONF_MODULE *mod)
479{ 471{
480 return mod->usr_data; 472 return mod->usr_data;
481} 473}
482LCRYPTO_ALIAS(CONF_module_get_usr_data);
483 474
484void 475void
485CONF_module_set_usr_data(CONF_MODULE *mod, void *usr_data) 476CONF_module_set_usr_data(CONF_MODULE *mod, void *usr_data)
486{ 477{
487 mod->usr_data = usr_data; 478 mod->usr_data = usr_data;
488} 479}
489LCRYPTO_ALIAS(CONF_module_set_usr_data);
490 480
491/* Return default config file name */ 481/* Return default config file name */
492 482
@@ -547,4 +537,3 @@ CONF_parse_list(const char *list_, int sep, int nospc,
547 lstart = p + 1; 537 lstart = p + 1;
548 } 538 }
549} 539}
550LCRYPTO_ALIAS(CONF_parse_list);
diff --git a/src/lib/libcrypto/ct/ct_log.c b/src/lib/libcrypto/ct/ct_log.c
index eb503a3816..514246ff4f 100644
--- a/src/lib/libcrypto/ct/ct_log.c
+++ b/src/lib/libcrypto/ct/ct_log.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ct_log.c,v 1.6 2023/07/08 07:22:58 beck Exp $ */ 1/* $OpenBSD: ct_log.c,v 1.7 2024/08/31 09:26:18 tb Exp $ */
2/* Author: Adam Eijdenberg <adam.eijdenberg@gmail.com>. */ 2/* Author: Adam Eijdenberg <adam.eijdenberg@gmail.com>. */
3/* ==================================================================== 3/* ====================================================================
4 * Copyright (c) 1998-2016 The OpenSSL Project. All rights reserved. 4 * Copyright (c) 1998-2016 The OpenSSL Project. All rights reserved.
@@ -67,6 +67,8 @@
67#include <openssl/evp.h> 67#include <openssl/evp.h>
68#include <openssl/safestack.h> 68#include <openssl/safestack.h>
69 69
70#include "conf_local.h"
71
70#include "cryptlib.h" 72#include "cryptlib.h"
71 73
72 74
diff --git a/src/lib/libcrypto/hidden/openssl/conf.h b/src/lib/libcrypto/hidden/openssl/conf.h
index 9d073303ca..b4fb6e9045 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.2 2024/08/31 09:18:00 tb Exp $ */ 1/* $OpenBSD: conf.h,v 1.3 2024/08/31 09:26:18 tb Exp $ */
2/* 2/*
3 * Copyright (c) 2024 Bob Beck <beck@openbsd.org> 3 * Copyright (c) 2024 Bob Beck <beck@openbsd.org>
4 * 4 *
@@ -42,7 +42,6 @@ LCRYPTO_USED(NCONF_WIN32);
42LCRYPTO_USED(NCONF_free); 42LCRYPTO_USED(NCONF_free);
43LCRYPTO_USED(NCONF_free_data); 43LCRYPTO_USED(NCONF_free_data);
44LCRYPTO_USED(NCONF_load); 44LCRYPTO_USED(NCONF_load);
45LCRYPTO_USED(NCONF_load_fp);
46LCRYPTO_USED(NCONF_load_bio); 45LCRYPTO_USED(NCONF_load_bio);
47LCRYPTO_USED(NCONF_get_section); 46LCRYPTO_USED(NCONF_get_section);
48LCRYPTO_USED(NCONF_get_string); 47LCRYPTO_USED(NCONF_get_string);
@@ -52,18 +51,7 @@ LCRYPTO_USED(CONF_modules_load_file);
52LCRYPTO_USED(CONF_modules_unload); 51LCRYPTO_USED(CONF_modules_unload);
53LCRYPTO_USED(CONF_modules_finish); 52LCRYPTO_USED(CONF_modules_finish);
54LCRYPTO_USED(CONF_modules_free); 53LCRYPTO_USED(CONF_modules_free);
55LCRYPTO_USED(CONF_module_add);
56LCRYPTO_USED(CONF_imodule_get_name);
57LCRYPTO_USED(CONF_imodule_get_value);
58LCRYPTO_USED(CONF_imodule_get_usr_data);
59LCRYPTO_USED(CONF_imodule_set_usr_data);
60LCRYPTO_USED(CONF_imodule_get_module);
61LCRYPTO_USED(CONF_imodule_get_flags);
62LCRYPTO_USED(CONF_imodule_set_flags);
63LCRYPTO_USED(CONF_module_get_usr_data);
64LCRYPTO_USED(CONF_module_set_usr_data);
65LCRYPTO_USED(CONF_get1_default_config_file); 54LCRYPTO_USED(CONF_get1_default_config_file);
66LCRYPTO_USED(CONF_parse_list);
67LCRYPTO_USED(OPENSSL_load_builtin_modules); 55LCRYPTO_USED(OPENSSL_load_builtin_modules);
68LCRYPTO_USED(ERR_load_CONF_strings); 56LCRYPTO_USED(ERR_load_CONF_strings);
69 57
diff --git a/src/lib/libcrypto/x509/x509_utl.c b/src/lib/libcrypto/x509/x509_utl.c
index 422e89989a..e0e5a67386 100644
--- a/src/lib/libcrypto/x509/x509_utl.c
+++ b/src/lib/libcrypto/x509/x509_utl.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: x509_utl.c,v 1.19 2024/07/08 06:57:37 jca Exp $ */ 1/* $OpenBSD: x509_utl.c,v 1.20 2024/08/31 09:26:18 tb Exp $ */
2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL 2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
3 * project. 3 * project.
4 */ 4 */
@@ -67,6 +67,8 @@
67#include <openssl/err.h> 67#include <openssl/err.h>
68#include <openssl/x509v3.h> 68#include <openssl/x509v3.h>
69 69
70#include "conf_local.h"
71
70#include "bytestring.h" 72#include "bytestring.h"
71 73
72static char *bn_to_string(const BIGNUM *bn); 74static char *bn_to_string(const BIGNUM *bn);