diff options
Diffstat (limited to 'src/lib/libcrypto/err')
| -rw-r--r-- | src/lib/libcrypto/err/err.c | 34 | ||||
| -rw-r--r-- | src/lib/libcrypto/err/err.h | 79 | ||||
| -rw-r--r-- | src/lib/libcrypto/err/err_local.h | 30 |
3 files changed, 47 insertions, 96 deletions
diff --git a/src/lib/libcrypto/err/err.c b/src/lib/libcrypto/err/err.c index 25fbb03875..a60769fc2a 100644 --- a/src/lib/libcrypto/err/err.c +++ b/src/lib/libcrypto/err/err.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: err.c,v 1.75 2024/11/02 12:46:36 tb Exp $ */ | 1 | /* $OpenBSD: err.c,v 1.78 2025/06/10 08:53:37 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 | * |
| @@ -484,33 +484,27 @@ err_build_SYS_str_reasons(void) | |||
| 484 | { | 484 | { |
| 485 | /* malloc cannot be used here, use static storage instead */ | 485 | /* malloc cannot be used here, use static storage instead */ |
| 486 | static char strerror_tab[NUM_SYS_STR_REASONS][LEN_SYS_STR_REASON]; | 486 | static char strerror_tab[NUM_SYS_STR_REASONS][LEN_SYS_STR_REASON]; |
| 487 | const char *errstr; | ||
| 487 | int save_errno; | 488 | int save_errno; |
| 488 | int i; | 489 | int i; |
| 489 | 490 | ||
| 490 | /* strerror(3) will set errno to EINVAL when i is an unknown errno. */ | 491 | /* strerror(3) will set errno to EINVAL when i is an unknown errno. */ |
| 491 | save_errno = errno; | 492 | save_errno = errno; |
| 492 | for (i = 1; i <= NUM_SYS_STR_REASONS; i++) { | 493 | for (i = 0; i < NUM_SYS_STR_REASONS; i++) { |
| 493 | ERR_STRING_DATA *str = &SYS_str_reasons[i - 1]; | 494 | ERR_STRING_DATA *str = &SYS_str_reasons[i]; |
| 494 | 495 | ||
| 495 | str->error = (unsigned long)i; | 496 | str->error = i + 1; |
| 496 | if (str->string == NULL) { | 497 | str->string = "unknown"; |
| 497 | char (*dest)[LEN_SYS_STR_REASON] = | 498 | |
| 498 | &(strerror_tab[i - 1]); | 499 | if ((errstr = strerror((int)str->error)) != NULL) { |
| 499 | const char *src = strerror(i); | 500 | strlcpy(strerror_tab[i], errstr, sizeof(strerror_tab[i])); |
| 500 | if (src != NULL) { | 501 | str->string = strerror_tab[i]; |
| 501 | strlcpy(*dest, src, sizeof *dest); | ||
| 502 | str->string = *dest; | ||
| 503 | } | ||
| 504 | } | 502 | } |
| 505 | if (str->string == NULL) | ||
| 506 | str->string = "unknown"; | ||
| 507 | } | 503 | } |
| 508 | errno = save_errno; | 504 | errno = save_errno; |
| 509 | 505 | ||
| 510 | /* | 506 | SYS_str_reasons[NUM_SYS_STR_REASONS].error = 0; |
| 511 | * Now we still have SYS_str_reasons[NUM_SYS_STR_REASONS] = {0, NULL}, | 507 | SYS_str_reasons[NUM_SYS_STR_REASONS].string = NULL; |
| 512 | * as required by ERR_load_strings. | ||
| 513 | */ | ||
| 514 | } | 508 | } |
| 515 | #endif | 509 | #endif |
| 516 | 510 | ||
| @@ -830,7 +824,7 @@ err_clear_last_constant_time(int clear) | |||
| 830 | 824 | ||
| 831 | es = ERR_get_state(); | 825 | es = ERR_get_state(); |
| 832 | if (es == NULL) | 826 | if (es == NULL) |
| 833 | return; | 827 | return; |
| 834 | 828 | ||
| 835 | top = es->top; | 829 | top = es->top; |
| 836 | 830 | ||
diff --git a/src/lib/libcrypto/err/err.h b/src/lib/libcrypto/err/err.h index fe6c34dd0a..093db4316e 100644 --- a/src/lib/libcrypto/err/err.h +++ b/src/lib/libcrypto/err/err.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: err.h,v 1.36 2025/03/09 15:12:18 tb Exp $ */ | 1 | /* $OpenBSD: err.h,v 1.38 2025/05/10 06:17:09 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 | * |
| @@ -192,80 +192,9 @@ extern "C" { | |||
| 192 | #define ERR_LIB_USER 128 | 192 | #define ERR_LIB_USER 128 |
| 193 | 193 | ||
| 194 | #ifndef LIBRESSL_INTERNAL | 194 | #ifndef LIBRESSL_INTERNAL |
| 195 | #define SYSerr(f,r) ERR_PUT_error(ERR_LIB_SYS,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | 195 | #define PEMerr(f,r) ERR_PUT_error(ERR_LIB_PEM,(f),(r),OPENSSL_FILE,OPENSSL_LINE) |
| 196 | #define BNerr(f,r) ERR_PUT_error(ERR_LIB_BN,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | 196 | #define RSAerr(f,r) ERR_PUT_error(ERR_LIB_RSA,(f),(r),OPENSSL_FILE,OPENSSL_LINE) |
| 197 | #define RSAerr(f,r) ERR_PUT_error(ERR_LIB_RSA,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | 197 | #define SSLerr(f,r) ERR_PUT_error(ERR_LIB_SSL,(f),(r),OPENSSL_FILE,OPENSSL_LINE) |
| 198 | #define DHerr(f,r) ERR_PUT_error(ERR_LIB_DH,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 199 | #define EVPerr(f,r) ERR_PUT_error(ERR_LIB_EVP,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 200 | #define BUFerr(f,r) ERR_PUT_error(ERR_LIB_BUF,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 201 | #define OBJerr(f,r) ERR_PUT_error(ERR_LIB_OBJ,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 202 | #define PEMerr(f,r) ERR_PUT_error(ERR_LIB_PEM,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 203 | #define DSAerr(f,r) ERR_PUT_error(ERR_LIB_DSA,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 204 | #define X509err(f,r) ERR_PUT_error(ERR_LIB_X509,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 205 | #define ASN1err(f,r) ERR_PUT_error(ERR_LIB_ASN1,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 206 | #define CONFerr(f,r) ERR_PUT_error(ERR_LIB_CONF,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 207 | #define CRYPTOerr(f,r) ERR_PUT_error(ERR_LIB_CRYPTO,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 208 | #define ECerr(f,r) ERR_PUT_error(ERR_LIB_EC,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 209 | #define BIOerr(f,r) ERR_PUT_error(ERR_LIB_BIO,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 210 | #define PKCS7err(f,r) ERR_PUT_error(ERR_LIB_PKCS7,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 211 | #define X509V3err(f,r) ERR_PUT_error(ERR_LIB_X509V3,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 212 | #define PKCS12err(f,r) ERR_PUT_error(ERR_LIB_PKCS12,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 213 | #define RANDerr(f,r) ERR_PUT_error(ERR_LIB_RAND,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 214 | #define DSOerr(f,r) ERR_PUT_error(ERR_LIB_DSO,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 215 | #define ENGINEerr(f,r) ERR_PUT_error(ERR_LIB_ENGINE,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 216 | #define OCSPerr(f,r) ERR_PUT_error(ERR_LIB_OCSP,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 217 | #define UIerr(f,r) ERR_PUT_error(ERR_LIB_UI,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 218 | #define COMPerr(f,r) ERR_PUT_error(ERR_LIB_COMP,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 219 | #define ECDSAerr(f,r) ERR_PUT_error(ERR_LIB_ECDSA,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 220 | #define ECDHerr(f,r) ERR_PUT_error(ERR_LIB_ECDH,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 221 | #define STOREerr(f,r) ERR_PUT_error(ERR_LIB_STORE,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 222 | #define FIPSerr(f,r) ERR_PUT_error(ERR_LIB_FIPS,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 223 | #define CMSerr(f,r) ERR_PUT_error(ERR_LIB_CMS,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 224 | #define TSerr(f,r) ERR_PUT_error(ERR_LIB_TS,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 225 | #define HMACerr(f,r) ERR_PUT_error(ERR_LIB_HMAC,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 226 | #define JPAKEerr(f,r) ERR_PUT_error(ERR_LIB_JPAKE,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 227 | #define GOSTerr(f,r) ERR_PUT_error(ERR_LIB_GOST,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 228 | #define SSLerr(f,r) ERR_PUT_error(ERR_LIB_SSL,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 229 | #define CTerr(f, r) ERR_PUT_error(ERR_LIB_CT,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 230 | #define KDFerr(f, r) ERR_PUT_error(ERR_LIB_KDF,(f),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 231 | #endif | ||
| 232 | |||
| 233 | #ifdef LIBRESSL_INTERNAL | ||
| 234 | #define SYSerror(r) ERR_PUT_error(ERR_LIB_SYS,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 235 | #define BNerror(r) ERR_PUT_error(ERR_LIB_BN,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 236 | #define RSAerror(r) ERR_PUT_error(ERR_LIB_RSA,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 237 | #define DHerror(r) ERR_PUT_error(ERR_LIB_DH,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 238 | #define EVPerror(r) ERR_PUT_error(ERR_LIB_EVP,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 239 | #define BUFerror(r) ERR_PUT_error(ERR_LIB_BUF,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 240 | #define OBJerror(r) ERR_PUT_error(ERR_LIB_OBJ,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 241 | #define PEMerror(r) ERR_PUT_error(ERR_LIB_PEM,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 242 | #define DSAerror(r) ERR_PUT_error(ERR_LIB_DSA,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 243 | #define X509error(r) ERR_PUT_error(ERR_LIB_X509,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 244 | #define ASN1error(r) ERR_PUT_error(ERR_LIB_ASN1,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 245 | #define CONFerror(r) ERR_PUT_error(ERR_LIB_CONF,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 246 | #define CRYPTOerror(r) ERR_PUT_error(ERR_LIB_CRYPTO,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 247 | #define ECerror(r) ERR_PUT_error(ERR_LIB_EC,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 248 | #define BIOerror(r) ERR_PUT_error(ERR_LIB_BIO,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 249 | #define PKCS7error(r) ERR_PUT_error(ERR_LIB_PKCS7,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 250 | #define X509V3error(r) ERR_PUT_error(ERR_LIB_X509V3,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 251 | #define PKCS12error(r) ERR_PUT_error(ERR_LIB_PKCS12,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 252 | #define RANDerror(r) ERR_PUT_error(ERR_LIB_RAND,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 253 | #define DSOerror(r) ERR_PUT_error(ERR_LIB_DSO,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 254 | #define ENGINEerror(r) ERR_PUT_error(ERR_LIB_ENGINE,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 255 | #define OCSPerror(r) ERR_PUT_error(ERR_LIB_OCSP,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 256 | #define UIerror(r) ERR_PUT_error(ERR_LIB_UI,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 257 | #define COMPerror(r) ERR_PUT_error(ERR_LIB_COMP,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 258 | #define ECDSAerror(r) ERR_PUT_error(ERR_LIB_ECDSA,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 259 | #define ECDHerror(r) ERR_PUT_error(ERR_LIB_ECDH,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 260 | #define STOREerror(r) ERR_PUT_error(ERR_LIB_STORE,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 261 | #define FIPSerror(r) ERR_PUT_error(ERR_LIB_FIPS,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 262 | #define CMSerror(r) ERR_PUT_error(ERR_LIB_CMS,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 263 | #define TSerror(r) ERR_PUT_error(ERR_LIB_TS,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 264 | #define HMACerror(r) ERR_PUT_error(ERR_LIB_HMAC,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 265 | #define JPAKEerror(r) ERR_PUT_error(ERR_LIB_JPAKE,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 266 | #define GOSTerror(r) ERR_PUT_error(ERR_LIB_GOST,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 267 | #define CTerror(r) ERR_PUT_error(ERR_LIB_CT,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 268 | #define KDFerror(r) ERR_PUT_error(ERR_LIB_KDF,(0xfff),(r),OPENSSL_FILE,OPENSSL_LINE) | ||
| 269 | #endif | 198 | #endif |
| 270 | 199 | ||
| 271 | #define ERR_PACK(l,f,r) (((((unsigned long)l)&0xffL)<<24L)| \ | 200 | #define ERR_PACK(l,f,r) (((((unsigned long)l)&0xffL)<<24L)| \ |
diff --git a/src/lib/libcrypto/err/err_local.h b/src/lib/libcrypto/err/err_local.h index d091b979cc..87cd40f4a8 100644 --- a/src/lib/libcrypto/err/err_local.h +++ b/src/lib/libcrypto/err/err_local.h | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: err_local.h,v 1.1 2024/06/24 06:43:22 tb Exp $ */ | 1 | /* $OpenBSD: err_local.h,v 1.5 2025/05/10 06:45:46 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 | * |
| @@ -118,6 +118,34 @@ __BEGIN_HIDDEN_DECLS | |||
| 118 | 118 | ||
| 119 | void ERR_load_const_strings(const ERR_STRING_DATA *str); | 119 | void ERR_load_const_strings(const ERR_STRING_DATA *str); |
| 120 | 120 | ||
| 121 | #define ERR_PUT_ERROR(l, r) ERR_PUT_error((l), 0xfff, (r), OPENSSL_FILE, OPENSSL_LINE) | ||
| 122 | |||
| 123 | #define ASN1error(r) ERR_PUT_ERROR(ERR_LIB_ASN1, (r)) | ||
| 124 | #define BIOerror(r) ERR_PUT_ERROR(ERR_LIB_BIO, (r)) | ||
| 125 | #define BNerror(r) ERR_PUT_ERROR(ERR_LIB_BN, (r)) | ||
| 126 | #define BUFerror(r) ERR_PUT_ERROR(ERR_LIB_BUF, (r)) | ||
| 127 | #define CMSerror(r) ERR_PUT_ERROR(ERR_LIB_CMS, (r)) | ||
| 128 | #define CONFerror(r) ERR_PUT_ERROR(ERR_LIB_CONF, (r)) | ||
| 129 | #define CRYPTOerror(r) ERR_PUT_ERROR(ERR_LIB_CRYPTO, (r)) | ||
| 130 | #define CTerror(r) ERR_PUT_ERROR(ERR_LIB_CT, (r)) | ||
| 131 | #define DHerror(r) ERR_PUT_ERROR(ERR_LIB_DH, (r)) | ||
| 132 | #define DSAerror(r) ERR_PUT_ERROR(ERR_LIB_DSA, (r)) | ||
| 133 | #define ECerror(r) ERR_PUT_ERROR(ERR_LIB_EC, (r)) | ||
| 134 | #define EVPerror(r) ERR_PUT_ERROR(ERR_LIB_EVP, (r)) | ||
| 135 | #define KDFerror(r) ERR_PUT_ERROR(ERR_LIB_KDF, (r)) | ||
| 136 | #define OBJerror(r) ERR_PUT_ERROR(ERR_LIB_OBJ, (r)) | ||
| 137 | #define OCSPerror(r) ERR_PUT_ERROR(ERR_LIB_OCSP, (r)) | ||
| 138 | #define PEMerror(r) ERR_PUT_ERROR(ERR_LIB_PEM, (r)) | ||
| 139 | #define PKCS12error(r) ERR_PUT_ERROR(ERR_LIB_PKCS12, (r)) | ||
| 140 | #define PKCS7error(r) ERR_PUT_ERROR(ERR_LIB_PKCS7, (r)) | ||
| 141 | #define RANDerror(r) ERR_PUT_ERROR(ERR_LIB_RAND, (r)) | ||
| 142 | #define RSAerror(r) ERR_PUT_ERROR(ERR_LIB_RSA, (r)) | ||
| 143 | #define SYSerror(r) ERR_PUT_ERROR(ERR_LIB_SYS, (r)) | ||
| 144 | #define TSerror(r) ERR_PUT_ERROR(ERR_LIB_TS, (r)) | ||
| 145 | #define UIerror(r) ERR_PUT_ERROR(ERR_LIB_UI, (r)) | ||
| 146 | #define X509V3error(r) ERR_PUT_ERROR(ERR_LIB_X509V3, (r)) | ||
| 147 | #define X509error(r) ERR_PUT_ERROR(ERR_LIB_X509, (r)) | ||
| 148 | |||
| 121 | __END_HIDDEN_DECLS | 149 | __END_HIDDEN_DECLS |
| 122 | 150 | ||
| 123 | #endif /* HEADER_ERR_LOCAL_H */ | 151 | #endif /* HEADER_ERR_LOCAL_H */ |
