Skip to content

Commit 4dd78be

Browse files
committed
tls/openssl: fix compilation with older openssl
Not all error codes are present in older versions of openssl.
1 parent 8c076ac commit 4dd78be

1 file changed

Lines changed: 12 additions & 2 deletions

File tree

src/tls_openssl.c

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,19 @@ const char *tls_errors[] = {
8181
TLS_ERROR_FIELD(SSL_ERROR_ZERO_RETURN),
8282
TLS_ERROR_FIELD(SSL_ERROR_WANT_CONNECT),
8383
TLS_ERROR_FIELD(SSL_ERROR_WANT_ACCEPT),
84+
#if OPENSSL_VERSION_NUMBER >= 0x10100000L
8485
TLS_ERROR_FIELD(SSL_ERROR_WANT_ASYNC),
8586
TLS_ERROR_FIELD(SSL_ERROR_WANT_ASYNC_JOB),
87+
#endif
88+
#if OPENSSL_VERSION_NUMBER >= 0x10101000L
8689
TLS_ERROR_FIELD(SSL_ERROR_WANT_CLIENT_HELLO_CB),
90+
#endif
8791
};
8892
const char *cert_errors[] = {
8993
TLS_ERROR_FIELD(X509_V_OK),
94+
#if OPENSSL_VERSION_NUMBER >= 0x10002000L
9095
TLS_ERROR_FIELD(X509_V_ERR_UNSPECIFIED),
96+
#endif
9197
TLS_ERROR_FIELD(X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT),
9298
TLS_ERROR_FIELD(X509_V_ERR_UNABLE_TO_GET_CRL),
9399
TLS_ERROR_FIELD(X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE),
@@ -130,18 +136,18 @@ const char *cert_errors[] = {
130136
TLS_ERROR_FIELD(X509_V_ERR_INVALID_EXTENSION),
131137
TLS_ERROR_FIELD(X509_V_ERR_INVALID_POLICY_EXTENSION),
132138
TLS_ERROR_FIELD(X509_V_ERR_NO_EXPLICIT_POLICY),
139+
TLS_ERROR_FIELD(X509_V_ERR_APPLICATION_VERIFICATION),
140+
#if OPENSSL_VERSION_NUMBER >= 0x10002000L
133141
TLS_ERROR_FIELD(X509_V_ERR_DIFFERENT_CRL_SCOPE),
134142
TLS_ERROR_FIELD(X509_V_ERR_UNSUPPORTED_EXTENSION_FEATURE),
135143
TLS_ERROR_FIELD(X509_V_ERR_UNNESTED_RESOURCE),
136144
TLS_ERROR_FIELD(X509_V_ERR_PERMITTED_VIOLATION),
137145
TLS_ERROR_FIELD(X509_V_ERR_EXCLUDED_VIOLATION),
138146
TLS_ERROR_FIELD(X509_V_ERR_SUBTREE_MINMAX),
139-
TLS_ERROR_FIELD(X509_V_ERR_APPLICATION_VERIFICATION),
140147
TLS_ERROR_FIELD(X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE),
141148
TLS_ERROR_FIELD(X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX),
142149
TLS_ERROR_FIELD(X509_V_ERR_UNSUPPORTED_NAME_SYNTAX),
143150
TLS_ERROR_FIELD(X509_V_ERR_CRL_PATH_VALIDATION_ERROR),
144-
TLS_ERROR_FIELD(X509_V_ERR_PATH_LOOP),
145151
TLS_ERROR_FIELD(X509_V_ERR_SUITE_B_INVALID_VERSION),
146152
TLS_ERROR_FIELD(X509_V_ERR_SUITE_B_INVALID_ALGORITHM),
147153
TLS_ERROR_FIELD(X509_V_ERR_SUITE_B_INVALID_CURVE),
@@ -151,6 +157,9 @@ const char *cert_errors[] = {
151157
TLS_ERROR_FIELD(X509_V_ERR_HOSTNAME_MISMATCH),
152158
TLS_ERROR_FIELD(X509_V_ERR_EMAIL_MISMATCH),
153159
TLS_ERROR_FIELD(X509_V_ERR_IP_ADDRESS_MISMATCH),
160+
#endif
161+
#if OPENSSL_VERSION_NUMBER >= 0x10100000L
162+
TLS_ERROR_FIELD(X509_V_ERR_PATH_LOOP),
154163
TLS_ERROR_FIELD(X509_V_ERR_DANE_NO_MATCH),
155164
TLS_ERROR_FIELD(X509_V_ERR_EE_KEY_TOO_SMALL),
156165
TLS_ERROR_FIELD(X509_V_ERR_CA_KEY_TOO_SMALL),
@@ -162,6 +171,7 @@ const char *cert_errors[] = {
162171
TLS_ERROR_FIELD(X509_V_ERR_OCSP_VERIFY_NEEDED),
163172
TLS_ERROR_FIELD(X509_V_ERR_OCSP_VERIFY_FAILED),
164173
TLS_ERROR_FIELD(X509_V_ERR_OCSP_CERT_UNKNOWN),
174+
#endif
165175
};
166176
#undef TLS_ERROR_FIELD
167177

0 commit comments

Comments
 (0)