Fix dispsize for libpq connection parameters channel_binding and gssencmode
authorMichael Paquier <michael@paquier.xyz>
Wed, 29 Jan 2020 06:08:19 +0000 (15:08 +0900)
committerMichael Paquier <michael@paquier.xyz>
Wed, 29 Jan 2020 06:08:19 +0000 (15:08 +0900)
channel_binding's longest allowed value is not "7", it is actually "8".
gssencmode also got that wrong.

A similar mistake has been fixed as of f4051e3.

Backpatch down to v12, where gssencmode has been introduced.

Reviewed-by: Daniel Gustafsson
Discussion: https://postgr.es/m/20200128053633.GD1552@paquier.xyz
Backpatch-through: 12

src/interfaces/libpq/fe-connect.c

index 8498f32f8d47c951919926e43f46a37f6d306565..c57dee4e27abdf87193af8e820f3c3f38aa29995 100644 (file)
@@ -215,7 +215,7 @@ static const internalPQconninfoOption PQconninfoOptions[] = {
    offsetof(struct pg_conn, pgpassfile)},
 
    {"channel_binding", "PGCHANNELBINDING", NULL, NULL,
-       "Channel-Binding", "", 7,   /* sizeof("require") */
+       "Channel-Binding", "", 8,   /* sizeof("require") == 8 */
    offsetof(struct pg_conn, channel_binding)},
 
    {"connect_timeout", "PGCONNECT_TIMEOUT", NULL, NULL,
@@ -333,7 +333,7 @@ static const internalPQconninfoOption PQconninfoOptions[] = {
     * support.
     */
    {"gssencmode", "PGGSSENCMODE", DefaultGSSMode, NULL,
-       "GSSENC-Mode", "", 7,   /* sizeof("disable") == 7 */
+       "GSSENC-Mode", "", 8,   /* sizeof("disable") == 8 */
    offsetof(struct pg_conn, gssencmode)},
 
    /* Kerberos and GSSAPI authentication support specifying the service name */
@@ -342,7 +342,7 @@ static const internalPQconninfoOption PQconninfoOptions[] = {
    offsetof(struct pg_conn, krbsrvname)},
 
    {"gsslib", "PGGSSLIB", NULL, NULL,
-       "GSS-library", "", 7,   /* sizeof("gssapi") = 7 */
+       "GSS-library", "", 7,   /* sizeof("gssapi") == 7 */
    offsetof(struct pg_conn, gsslib)},
 
    {"replication", NULL, NULL, NULL,