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,