BUG #14690: Client GSSAPI / Kerberos auth crash

From: gdutton(at)inf(dot)ed(dot)ac(dot)uk
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #14690: Client GSSAPI / Kerberos auth crash
Date: 2017-06-05 13:09:54
Message-ID: 20170605130954.1438.90535@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 14690
Logged by: Graham Dutton
Email address: gdutton(at)inf(dot)ed(dot)ac(dot)uk
PostgreSQL version: 10beta1
Operating system: Linux x86_64 (SL7.3)
Description:

Any attempt to use the PostgreSQL 10beta1 client library (whether via psql,
PGDG-provided psycopg2-2.7 or anything else using libpq) with valid Kerberos
ticket to 9.5/9.6 servers fails.

Taking "psql -h <server> <database>" as a test:
Expected behaviour: (same as 9.6 client) successful connection to the
server.
Actual behaviour: "*** Error in `psql': free(): invalid pointer:
0x00007f9d0e105fbc ***" reported on terminal, program aborts.

Note that connecting with an expired ticket "succeeds" insofar as it
presents the appropriate failure message. The trust, md5 auth types appear
to function normally.

Running through GDB I see:

#5 0x00007ffff7b9f553 in pg_GSS_continue (conn=conn(at)entry=0x6907f0,
payloadlen=payloadlen(at)entry=0) at fe-auth.c:152

which appears to be an invalid attempt at free() after the second GSS
"step":

free(ginbuf.value);

I see that this code has changed a little since 9.6; this free() doesn't
exist in the previous codebase. I hope it's a simple error, but I haven't
traced the code sufficiently to determine why this comes to pass.

The rest of the error message available at:
https://gist.github.com/anonymous/b2158398a741322343e2c9fbeca8e734

The rest of the gdb backtrace available at:
https://gist.github.com/anonymous/4995e09fb17e7592abc2f460df5bb08f

I haven't attempted a 10beta1 server-to-server connection but it presumably
bears investigation if GSSAPI code has been similarly reorganised.

Cheers

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2017-06-05 14:01:45 Re: BUG #14688: Wrong results in LIKE operation on JSON Type
Previous Message wangchuanting 2017-06-05 11:32:17 Re: BUG #14680: startup process on standby encounter a deadlock of TwoPhaseStateLock when redo 2PC xlog