summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortb <>2024-10-09 08:00:29 +0000
committertb <>2024-10-09 08:00:29 +0000
commitd5c2fbdd1baf24c551438cdb0ba8191eb07349ac (patch)
tree384f8a9d7fdac7ecb0c5f588091a7bd40833c55f /src
parent783ed0d8a88accb3c12a042a1139528aa7d568ce (diff)
downloadopenbsd-d5c2fbdd1baf24c551438cdb0ba8191eb07349ac.tar.gz
openbsd-d5c2fbdd1baf24c551438cdb0ba8191eb07349ac.tar.bz2
openbsd-d5c2fbdd1baf24c551438cdb0ba8191eb07349ac.zip
Add missing alert errors and error strings
For every TLS alert there needs a corresponding error with error code having an offset of SSL_AD_REASON_OFFSET (aka 1000), otherwise the error stack fails to set the reason correctly. ok beck
Diffstat (limited to 'src')
-rw-r--r--src/lib/libssl/ssl.h6
-rw-r--r--src/lib/libssl/ssl_err.c6
2 files changed, 10 insertions, 2 deletions
diff --git a/src/lib/libssl/ssl.h b/src/lib/libssl/ssl.h
index 789a52b169..41d34d9d5e 100644
--- a/src/lib/libssl/ssl.h
+++ b/src/lib/libssl/ssl.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl.h,v 1.242 2024/08/31 10:51:48 tb Exp $ */ 1/* $OpenBSD: ssl.h,v 1.243 2024/10/09 08:00:29 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 *
@@ -2239,7 +2239,10 @@ void ERR_load_SSL_strings(void);
2239#define SSL_R_SSL_SESSION_ID_HAS_BAD_LENGTH 303 2239#define SSL_R_SSL_SESSION_ID_HAS_BAD_LENGTH 303
2240#define SSL_R_SSL_SESSION_ID_IS_DIFFERENT 231 2240#define SSL_R_SSL_SESSION_ID_IS_DIFFERENT 231
2241#define SSL_R_SSL_SESSION_ID_TOO_LONG 408 2241#define SSL_R_SSL_SESSION_ID_TOO_LONG 408
2242#define SSL_R_TLSV13_ALERT_MISSING_EXTENSION 1109
2243#define SSL_R_TLSV13_ALERT_CERTIFICATE_REQUIRED 1116
2242#define SSL_R_TLSV1_ALERT_ACCESS_DENIED 1049 2244#define SSL_R_TLSV1_ALERT_ACCESS_DENIED 1049
2245#define SSL_R_TLSV1_ALERT_NO_APPLICATION_PROTOCOL 1120
2243#define SSL_R_TLSV1_ALERT_DECODE_ERROR 1050 2246#define SSL_R_TLSV1_ALERT_DECODE_ERROR 1050
2244#define SSL_R_TLSV1_ALERT_DECRYPTION_FAILED 1021 2247#define SSL_R_TLSV1_ALERT_DECRYPTION_FAILED 1021
2245#define SSL_R_TLSV1_ALERT_DECRYPT_ERROR 1051 2248#define SSL_R_TLSV1_ALERT_DECRYPT_ERROR 1051
@@ -2251,6 +2254,7 @@ void ERR_load_SSL_strings(void);
2251#define SSL_R_TLSV1_ALERT_PROTOCOL_VERSION 1070 2254#define SSL_R_TLSV1_ALERT_PROTOCOL_VERSION 1070
2252#define SSL_R_TLSV1_ALERT_RECORD_OVERFLOW 1022 2255#define SSL_R_TLSV1_ALERT_RECORD_OVERFLOW 1022
2253#define SSL_R_TLSV1_ALERT_UNKNOWN_CA 1048 2256#define SSL_R_TLSV1_ALERT_UNKNOWN_CA 1048
2257#define SSL_R_TLSV1_ALERT_UNKNOWN_PSK_IDENTITY 1115
2254#define SSL_R_TLSV1_ALERT_USER_CANCELLED 1090 2258#define SSL_R_TLSV1_ALERT_USER_CANCELLED 1090
2255#define SSL_R_TLSV1_BAD_CERTIFICATE_HASH_VALUE 1114 2259#define SSL_R_TLSV1_BAD_CERTIFICATE_HASH_VALUE 1114
2256#define SSL_R_TLSV1_BAD_CERTIFICATE_STATUS_RESPONSE 1113 2260#define SSL_R_TLSV1_BAD_CERTIFICATE_STATUS_RESPONSE 1113
diff --git a/src/lib/libssl/ssl_err.c b/src/lib/libssl/ssl_err.c
index e0fb1a2bf4..eac2d9e61f 100644
--- a/src/lib/libssl/ssl_err.c
+++ b/src/lib/libssl/ssl_err.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_err.c,v 1.52 2024/09/09 07:40:03 tb Exp $ */ 1/* $OpenBSD: ssl_err.c,v 1.53 2024/10/09 08:00:29 tb Exp $ */
2/* ==================================================================== 2/* ====================================================================
3 * Copyright (c) 1999-2011 The OpenSSL Project. All rights reserved. 3 * Copyright (c) 1999-2011 The OpenSSL Project. All rights reserved.
4 * 4 *
@@ -392,6 +392,8 @@ static const ERR_STRING_DATA SSL_str_reasons[] = {
392 {ERR_REASON(SSL_R_SSL_SESSION_ID_HAS_BAD_LENGTH), "ssl session id has bad length"}, 392 {ERR_REASON(SSL_R_SSL_SESSION_ID_HAS_BAD_LENGTH), "ssl session id has bad length"},
393 {ERR_REASON(SSL_R_SSL_SESSION_ID_IS_DIFFERENT), "ssl session id is different"}, 393 {ERR_REASON(SSL_R_SSL_SESSION_ID_IS_DIFFERENT), "ssl session id is different"},
394 {ERR_REASON(SSL_R_SSL_SESSION_ID_TOO_LONG), "ssl session id is too long"}, 394 {ERR_REASON(SSL_R_SSL_SESSION_ID_TOO_LONG), "ssl session id is too long"},
395 {ERR_REASON(SSL_R_TLSV13_ALERT_CERTIFICATE_REQUIRED), "tlsv13 alert certificate required"},
396 {ERR_REASON(SSL_R_TLSV13_ALERT_MISSING_EXTENSION), "tlsv13 alert missing extension"},
395 {ERR_REASON(SSL_R_TLSV1_ALERT_ACCESS_DENIED), "tlsv1 alert access denied"}, 397 {ERR_REASON(SSL_R_TLSV1_ALERT_ACCESS_DENIED), "tlsv1 alert access denied"},
396 {ERR_REASON(SSL_R_TLSV1_ALERT_DECODE_ERROR), "tlsv1 alert decode error"}, 398 {ERR_REASON(SSL_R_TLSV1_ALERT_DECODE_ERROR), "tlsv1 alert decode error"},
397 {ERR_REASON(SSL_R_TLSV1_ALERT_DECRYPTION_FAILED), "tlsv1 alert decryption failed"}, 399 {ERR_REASON(SSL_R_TLSV1_ALERT_DECRYPTION_FAILED), "tlsv1 alert decryption failed"},
@@ -400,10 +402,12 @@ static const ERR_STRING_DATA SSL_str_reasons[] = {
400 {ERR_REASON(SSL_R_TLSV1_ALERT_INAPPROPRIATE_FALLBACK), "tlsv1 alert inappropriate fallback"}, 402 {ERR_REASON(SSL_R_TLSV1_ALERT_INAPPROPRIATE_FALLBACK), "tlsv1 alert inappropriate fallback"},
401 {ERR_REASON(SSL_R_TLSV1_ALERT_INSUFFICIENT_SECURITY), "tlsv1 alert insufficient security"}, 403 {ERR_REASON(SSL_R_TLSV1_ALERT_INSUFFICIENT_SECURITY), "tlsv1 alert insufficient security"},
402 {ERR_REASON(SSL_R_TLSV1_ALERT_INTERNAL_ERROR), "tlsv1 alert internal error"}, 404 {ERR_REASON(SSL_R_TLSV1_ALERT_INTERNAL_ERROR), "tlsv1 alert internal error"},
405 {ERR_REASON(SSL_R_TLSV1_ALERT_NO_APPLICATION_PROTOCOL), "tlsv1 alert no application protocol"},
403 {ERR_REASON(SSL_R_TLSV1_ALERT_NO_RENEGOTIATION), "tlsv1 alert no renegotiation"}, 406 {ERR_REASON(SSL_R_TLSV1_ALERT_NO_RENEGOTIATION), "tlsv1 alert no renegotiation"},
404 {ERR_REASON(SSL_R_TLSV1_ALERT_PROTOCOL_VERSION), "tlsv1 alert protocol version"}, 407 {ERR_REASON(SSL_R_TLSV1_ALERT_PROTOCOL_VERSION), "tlsv1 alert protocol version"},
405 {ERR_REASON(SSL_R_TLSV1_ALERT_RECORD_OVERFLOW), "tlsv1 alert record overflow"}, 408 {ERR_REASON(SSL_R_TLSV1_ALERT_RECORD_OVERFLOW), "tlsv1 alert record overflow"},
406 {ERR_REASON(SSL_R_TLSV1_ALERT_UNKNOWN_CA), "tlsv1 alert unknown ca"}, 409 {ERR_REASON(SSL_R_TLSV1_ALERT_UNKNOWN_CA), "tlsv1 alert unknown ca"},
410 {ERR_REASON(SSL_R_TLSV1_ALERT_UNKNOWN_PSK_IDENTITY), "tlsv1 alert unknown psk_identity"},
407 {ERR_REASON(SSL_R_TLSV1_ALERT_USER_CANCELLED), "tlsv1 alert user cancelled"}, 411 {ERR_REASON(SSL_R_TLSV1_ALERT_USER_CANCELLED), "tlsv1 alert user cancelled"},
408 {ERR_REASON(SSL_R_TLSV1_BAD_CERTIFICATE_HASH_VALUE), "tlsv1 bad certificate hash value"}, 412 {ERR_REASON(SSL_R_TLSV1_BAD_CERTIFICATE_HASH_VALUE), "tlsv1 bad certificate hash value"},
409 {ERR_REASON(SSL_R_TLSV1_BAD_CERTIFICATE_STATUS_RESPONSE), "tlsv1 bad certificate status response"}, 413 {ERR_REASON(SSL_R_TLSV1_BAD_CERTIFICATE_STATUS_RESPONSE), "tlsv1 bad certificate status response"},