libpq: If ALPN is not used, make PQsslAttribute(conn, "alpn") == ""
The documentation says that PQsslAttribute(conn, "alpn") returns an empty string if ALPN is not used, but the code actually returned NULL. Fix the code to match the documentation. Reported-by: Michael Paquier Discussion: https://www.postgresql.org/message-id/ZideNHji0G4gxmc3@paquier.xyz
This commit is contained in:
parent
592a228372
commit
3c18409265
|
@ -3896,7 +3896,7 @@ printSSLInfo(void)
|
||||||
protocol ? protocol : _("unknown"),
|
protocol ? protocol : _("unknown"),
|
||||||
cipher ? cipher : _("unknown"),
|
cipher ? cipher : _("unknown"),
|
||||||
(compression && strcmp(compression, "off") != 0) ? _("on") : _("off"),
|
(compression && strcmp(compression, "off") != 0) ? _("on") : _("off"),
|
||||||
alpn ? alpn : _("none"));
|
(alpn && alpn[0] != '\0') ? alpn : _("none"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -1837,7 +1837,7 @@ PQsslAttribute(PGconn *conn, const char *attribute_name)
|
||||||
|
|
||||||
SSL_get0_alpn_selected(conn->ssl, &data, &len);
|
SSL_get0_alpn_selected(conn->ssl, &data, &len);
|
||||||
if (data == NULL || len == 0 || len > sizeof(alpn_str) - 1)
|
if (data == NULL || len == 0 || len > sizeof(alpn_str) - 1)
|
||||||
return NULL;
|
return "";
|
||||||
memcpy(alpn_str, data, len);
|
memcpy(alpn_str, data, len);
|
||||||
alpn_str[len] = 0;
|
alpn_str[len] = 0;
|
||||||
return alpn_str;
|
return alpn_str;
|
||||||
|
|
Loading…
Reference in New Issue