]> granicus.if.org Git - postgresql/commitdiff
Dept. of third thoughts: in fact, libpq should support SCM_CREDS challenge
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 20 Dec 2003 18:46:02 +0000 (18:46 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 20 Dec 2003 18:46:02 +0000 (18:46 +0000)
even when HAVE_GETPEEREID is defined, else it will be unable to connect to
pre-7.4 backends that are using IDENT authentication.

src/interfaces/libpq/fe-auth.c

index 80a89782ddd836ac61bc6f3498a097ed38f1b071..a6a769697a78c1b10c990e8b5100c7812825e328 100644 (file)
@@ -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.2 2003/12/20 18:25:02 tgl Exp $
+ *       $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-auth.c,v 1.84.2.3 2003/12/20 18:46:02 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -450,16 +450,15 @@ pg_krb5_sendauth(char *PQerrormsg, int sock, const char *hostname)
 /*
  * 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.
+ * Note: current backends will not use this challenge if HAVE_GETPEEREID
+ * or SO_PEERCRED is defined, but pre-7.4 backends might, so compile the
+ * code anyway.
  */
 static int
 pg_local_sendauth(char *PQerrormsg, PGconn *conn)
 {
-#if !defined(HAVE_GETPEEREID) && !defined(SO_PEERCRED) && \
-       (defined(HAVE_STRUCT_CMSGCRED) || defined(HAVE_STRUCT_FCRED) || \
-        (defined(HAVE_STRUCT_SOCKCRED) && defined(LOCAL_CREDS)))
+#if defined(HAVE_STRUCT_CMSGCRED) || defined(HAVE_STRUCT_FCRED) || \
+       (defined(HAVE_STRUCT_SOCKCRED) && defined(LOCAL_CREDS))
        char            buf;
        struct iovec iov;
        struct msghdr msg;