Fix list of SSL error codes for older OpenSSL versions.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 27 Jun 2020 17:26:17 +0000 (13:26 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 27 Jun 2020 17:26:17 +0000 (13:26 -0400)
Apparently 1.0.1 lacks SSL_R_VERSION_TOO_HIGH and
SSL_R_VERSION_TOO_LOW.  Per buildfarm.

src/backend/libpq/be-secure-openssl.c
src/interfaces/libpq/fe-secure-openssl.c

index d1cf455ab442268e823f97387e6fea23024bbc49..8b21ff4065c54c181d4854869a363d0a2fa3c85b 100644 (file)
@@ -474,11 +474,13 @@ aloop:
                    case SSL_R_UNKNOWN_PROTOCOL:
                    case SSL_R_UNKNOWN_SSL_VERSION:
                    case SSL_R_UNSUPPORTED_SSL_VERSION:
-                   case SSL_R_VERSION_TOO_HIGH:
-                   case SSL_R_VERSION_TOO_LOW:
                    case SSL_R_WRONG_SSL_VERSION:
                    case SSL_R_WRONG_VERSION_NUMBER:
                    case SSL_R_TLSV1_ALERT_PROTOCOL_VERSION:
+#ifdef SSL_R_VERSION_TOO_HIGH
+                   case SSL_R_VERSION_TOO_HIGH:
+                   case SSL_R_VERSION_TOO_LOW:
+#endif
                        give_proto_hint = true;
                        break;
                    default:
index b5b2006b75ded8a1e406d0127bebaa5720f5c2f6..d609a38bbe03063be2131e5cf2f5fa2f649af486 100644 (file)
@@ -1326,11 +1326,13 @@ open_client_SSL(PGconn *conn)
                        case SSL_R_UNKNOWN_PROTOCOL:
                        case SSL_R_UNKNOWN_SSL_VERSION:
                        case SSL_R_UNSUPPORTED_SSL_VERSION:
-                       case SSL_R_VERSION_TOO_HIGH:
-                       case SSL_R_VERSION_TOO_LOW:
                        case SSL_R_WRONG_SSL_VERSION:
                        case SSL_R_WRONG_VERSION_NUMBER:
                        case SSL_R_TLSV1_ALERT_PROTOCOL_VERSION:
+#ifdef SSL_R_VERSION_TOO_HIGH
+                       case SSL_R_VERSION_TOO_HIGH:
+                       case SSL_R_VERSION_TOO_LOW:
+#endif
                            appendPQExpBuffer(&conn->errorMessage,
                                              libpq_gettext("This may indicate that the server does not support any SSL protocol version between %s and %s.\n"),
                                              conn->ssl_min_protocol_version ?