pgsql: > I've now tested this patch at home w/ 8.2HEAD and it seems to

Started by Bruce Momjianover 20 years ago2 messagescomitters
Jump to latest
#1Bruce Momjian
bruce@momjian.us

Log Message:
-----------

I've now tested this patch at home w/ 8.2HEAD and it seems to fix the
bug. I plan on testing it under 8.1.2 at work tommorow with
mod_auth_krb5, etc, and expect it'll work there. Assuming all goes
well and unless someone objects I'll forward the patch to -patches.
It'd be great to have this fixed as it'll allow us to use Kerberos to
authenticate to phppgadmin and other web-based tools which use
Postgres.

While playing with this patch under 8.1.2 at home I discovered a
mistake in how I manually applied one of the hunks to fe-auth.c.
Basically, the base code had changed and so the patch needed to be
modified slightly. This is because the code no longer either has a
freeable pointer under 'name' or has 'name' as NULL.

The attached patch correctly frees the string from pg_krb5_authname
(where it had been strdup'd) if and only if pg_krb5_authname returned
a string (as opposed to falling through and having name be set using
name = pw->name;). Also added a comment to this effect.
Please review.

Stephen Frost (sfrost@snowman.net) wrote:

Modified Files:
--------------
pgsql/src/interfaces/libpq:
fe-auth.c (r1.110 -> r1.111)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/interfaces/libpq/fe-auth.c.diff?r1=1.110&r2=1.111)

#2Bruce Momjian
bruce@momjian.us
In reply to: Bruce Momjian (#1)
Re: pgsql: > I've now tested this patch at home w/ 8.2HEAD

Patch backed out, needs review, is in queue now.

---------------------------------------------------------------------------

Bruce Momjian wrote:

Log Message:
-----------

I've now tested this patch at home w/ 8.2HEAD and it seems to fix the
bug. I plan on testing it under 8.1.2 at work tommorow with
mod_auth_krb5, etc, and expect it'll work there. Assuming all goes
well and unless someone objects I'll forward the patch to -patches.
It'd be great to have this fixed as it'll allow us to use Kerberos to
authenticate to phppgadmin and other web-based tools which use
Postgres.

While playing with this patch under 8.1.2 at home I discovered a
mistake in how I manually applied one of the hunks to fe-auth.c.
Basically, the base code had changed and so the patch needed to be
modified slightly. This is because the code no longer either has a
freeable pointer under 'name' or has 'name' as NULL.

The attached patch correctly frees the string from pg_krb5_authname
(where it had been strdup'd) if and only if pg_krb5_authname returned
a string (as opposed to falling through and having name be set using
name = pw->name;). Also added a comment to this effect.
Please review.

Stephen Frost (sfrost@snowman.net) wrote:

Modified Files:
--------------
pgsql/src/interfaces/libpq:
fe-auth.c (r1.110 -> r1.111)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/interfaces/libpq/fe-auth.c.diff?r1=1.110&r2=1.111)

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

http://archives.postgresql.org

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073