diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2003-12-20 18:25:02 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2003-12-20 18:25:02 +0000 |
commit | 7133152c5b604ed7b1e4e3f80df7109401bed8d5 (patch) | |
tree | c0c1b4aeb947efa5579afbb0ee23af0378f384f6 /src/interfaces/libpq/fe-auth.c | |
parent | 46b5820dc00a271f1711ba451fb460b0725e9a6e (diff) | |
download | postgresql-7133152c5b604ed7b1e4e3f80df7109401bed8d5.tar.gz postgresql-7133152c5b604ed7b1e4e3f80df7109401bed8d5.zip |
Fix broken IDENT support for FreeBSD (appears to have been broken by
ill-considered conditional logic in getpeereid patch of 3-Dec-2002).
Per bug #1021.
Diffstat (limited to 'src/interfaces/libpq/fe-auth.c')
-rw-r--r-- | src/interfaces/libpq/fe-auth.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/interfaces/libpq/fe-auth.c b/src/interfaces/libpq/fe-auth.c index 40e1ef90b46..80a89782ddd 100644 --- a/src/interfaces/libpq/fe-auth.c +++ b/src/interfaces/libpq/fe-auth.c @@ -10,7 +10,7 @@ * exceed INITIAL_EXPBUFFER_SIZE (currently 256 bytes). * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-auth.c,v 1.84.2.1 2003/11/26 15:54:59 petere Exp $ + * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-auth.c,v 1.84.2.2 2003/12/20 18:25:02 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -447,12 +447,19 @@ pg_krb5_sendauth(char *PQerrormsg, int sock, const char *hostname) } #endif /* KRB5 */ +/* + * Respond to AUTH_REQ_SCM_CREDS challenge. + * + * Note: the backend will not use this challenge if HAVE_GETPEEREID + * or SO_PEERCRED is defined, so we don't bother to compile any code + * in that case, even if the facility is available. + */ static int pg_local_sendauth(char *PQerrormsg, PGconn *conn) { -#if defined(HAVE_STRUCT_CMSGCRED) || defined(HAVE_STRUCT_FCRED) || \ - (defined(HAVE_STRUCT_SOCKCRED) && defined(LOCAL_CREDS)) && \ - !defined(HAVE_GETPEEREID) && !defined(SO_PEERCRED) +#if !defined(HAVE_GETPEEREID) && !defined(SO_PEERCRED) && \ + (defined(HAVE_STRUCT_CMSGCRED) || defined(HAVE_STRUCT_FCRED) || \ + (defined(HAVE_STRUCT_SOCKCRED) && defined(LOCAL_CREDS))) char buf; struct iovec iov; struct msghdr msg; |