From: Phil Thompson
authorMarc G. Fournier
Thu, 29 Jan 1998 03:24:36 +0000 (03:24 +0000)
committerMarc G. Fournier
Thu, 29 Jan 1998 03:24:36 +0000 (03:24 +0000)
Attached is the patch to fix the warning messages from my code.  I also
fixed one which wasn't my code.  Apart from the usual warnings about the
bison/yacc generated code I only have one other warning message.  This
is in gramm.y around line 2234.  I wasn't sure of the fix.

I've also replaced all the calls to free() in gramm.y to calls to
pfree().  Without these I was getting backend crashes with GRANT.  This
might already have been fixed.

src/backend/libpq/auth.c
src/backend/utils/cache/lsyscache.c
src/backend/utils/init/postinit.c
src/interfaces/libpq/fe-auth.c
src/interfaces/libpq/fe-auth.h
src/interfaces/libpq/fe-connect.c
src/interfaces/libpq/fe-connect.h

index 58c60112e1c6623458c65aeebf2af467726f7a43..b0891e4c5f2b99aa90baee644c3385947ae25e9b 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.23 1998/01/27 03:24:54 scrappy Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.24 1998/01/29 03:23:05 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -390,9 +390,6 @@ void auth_failed(Port *port)
  */
 void be_recvauth(Port *port)
 {
-   AuthRequest areq;
-   void (*auth_handler)();
-
    /*
     * Get the authentication method to use for this frontend/database
     * combination.
@@ -400,70 +397,76 @@ void be_recvauth(Port *port)
 
    if (hba_getauthmethod(&port->raddr, port->database, port->auth_arg,
                &port->auth_method) != STATUS_OK)
-   {
        PacketSendError(&port->pktInfo, "Missing or mis-configured pg_hba.conf file");
-       return;
-   }
 
-   /* Handle old style authentication. */
-
-   if (PG_PROTOCOL_MAJOR(port->proto) == 0)
+   else if (PG_PROTOCOL_MAJOR(port->proto) == 0)
    {
+       /* Handle old style authentication. */
+
        if (old_be_recvauth(port) != STATUS_OK)
            auth_failed(port);
-
-       return;
    }
-
-   /* Handle new style authentication. */
-
-   switch (port->auth_method)
+   else
    {
-   case uaReject:
-       auth_failed(port);
-       return;
-   case uaKrb4:
-       areq = AUTH_REQ_KRB4;
-       auth_handler = handle_krb4_auth;
-       break;
+       AuthRequest areq;
+       void (*auth_handler)();
 
-   case uaKrb5:
-       areq = AUTH_REQ_KRB5;
-       auth_handler = handle_krb5_auth;
-       break;
+       /* Keep the compiler quiet. */
 
-   case uaTrust:
        areq = AUTH_REQ_OK;
-       auth_handler = handle_done_auth;
-       break;
 
-   case uaIdent:
-       if (authident(&port->raddr.in, &port->laddr.in, port->user,
-               port->auth_arg) != STATUS_OK)
+       /* Handle new style authentication. */
+
+       auth_handler = NULL;
+
+       switch (port->auth_method)
        {
-           auth_failed(port);
-           return;
-       }
+       case uaReject:
+           break;
+       case uaKrb4:
+           areq = AUTH_REQ_KRB4;
+           auth_handler = handle_krb4_auth;
+           break;
 
-       areq = AUTH_REQ_OK;
-       auth_handler = handle_done_auth;
-       break;
+       case uaKrb5:
+           areq = AUTH_REQ_KRB5;
+           auth_handler = handle_krb5_auth;
+           break;
 
-   case uaPassword:
-       areq = AUTH_REQ_PASSWORD;
-       auth_handler = handle_password_auth;
-       break;
+       case uaTrust:
+           areq = AUTH_REQ_OK;
+           auth_handler = handle_done_auth;
+           break;
 
-   case uaCrypt:
-       areq = AUTH_REQ_CRYPT;
-       auth_handler = handle_password_auth;
-       break;
-   }
+       case uaIdent:
+           if (authident(&port->raddr.in, &port->laddr.in,
+               port->user, port->auth_arg) == STATUS_OK)
+           {
+               areq = AUTH_REQ_OK;
+               auth_handler = handle_done_auth;
+           }
+
+           break;
 
-   /* Tell the frontend what we want next. */
+       case uaPassword:
+           areq = AUTH_REQ_PASSWORD;
+           auth_handler = handle_password_auth;
+           break;
 
-   sendAuthRequest(port, areq, auth_handler);
+       case uaCrypt:
+           areq = AUTH_REQ_CRYPT;
+           auth_handler = handle_password_auth;
+           break;
+       }
+
+       /* Tell the frontend what we want next. */
+
+       if (auth_handler != NULL)
+           sendAuthRequest(port, areq, auth_handler);
+       else
+           auth_failed(port);
+   }
 }
  
 
index 2a37ad0fe7b842e963712c3582bfec20bb52c41e..8b0a7784a791892590ea7d2a6de952fe3c282e42 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/utils/cache/lsyscache.c,v 1.10 1998/01/20 05:04:32 momjian Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/utils/cache/lsyscache.c,v 1.11 1998/01/29 03:23:09 scrappy Exp $
  *
  * NOTES
  *   Eventually, the index information should go through here, too.
@@ -173,7 +173,7 @@ get_atttypmod(Oid relid, AttrNumber attnum)
                             0, 0))
        return att_tup.atttypmod;
    else
-       return NULL;
+       return -1;
 }
 
 /*             ---------- INDEX CACHE ----------                        */
index 7a7e071946772a88ca3f41c89e2fb4293e7489d2..e3ec4131be448a6bd543179692a4314f769d2faf 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/backend/utils/init/postinit.c,v 1.21 1997/12/20 00:10:47 scrappy Exp $
+ *   $Header: /cvsroot/pgsql/src/backend/utils/init/postinit.c,v 1.22 1998/01/29 03:23:28 scrappy Exp $
  *
  * NOTES
  *     InitPostgres() is the function called from PostgresMain
@@ -66,7 +66,7 @@
 #include "catalog/catname.h"
 #include "catalog/pg_database.h"
 
-#include "libpq/libpq-be.h"
+#include "libpq/libpq.h"
 
 static void VerifySystemDatabase(void);
 static void VerifyMyDatabase(void);
index 7f25afcb38eb24ec2b8cd8f4de9c975441cdeafd..7f77589a6b91ee9de39f79920d729225a52a8054 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-auth.c,v 1.13 1998/01/26 01:42:25 scrappy Exp $
+ *   $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-auth.c,v 1.14 1998/01/29 03:24:03 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -477,7 +477,7 @@ pg_password_sendauth(PGconn *conn, const char *password, AuthRequest areq)
  */
 int
 fe_sendauth(AuthRequest areq, PGconn *conn, const char *hostname,
-         const char *password, const char *PQerrormsg)
+         const char *password, char *PQerrormsg)
 {
    switch (areq)
    {
index e4676fcd97ba815748bf6549103e6962980fb1ac..ebbca5dfb3e56b6de61a98bff2fe5313ababf3d0 100644 (file)
@@ -6,7 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: fe-auth.h,v 1.7 1998/01/26 01:42:26 scrappy Exp $
+ * $Id: fe-auth.h,v 1.8 1998/01/29 03:24:21 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -33,7 +33,7 @@
 
 extern int
 fe_sendauth(AuthRequest areq, PGconn *conn, const char *hostname,
-           const char *password, const char *PQerromsg);
+           const char *password, char *PQerromsg);
 extern void fe_setauthsvc(const char *name, char *PQerrormsg);
 
 #define PG_KRB4_VERSION "PGVER4.1"     /* at most KRB_SENDAUTH_VLEN chars */
index 3ac229c5a82d32a7c701e3261055c266f0d38021..bc7d3b3b200e64e0c650623f96beb92027a31fb3 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.60 1998/01/28 03:42:27 scrappy Exp $
+ *   $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.61 1998/01/29 03:24:30 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -808,9 +808,7 @@ PQreset(PGconn *conn)
  * SIDE_EFFECTS: may block.
 */
 int
-packetSend(PGconn *conn,
-          char *buf,
-          size_t len)
+packetSend(PGconn *conn, const char *buf, size_t len)
 {
    /* Send the total packet size. */
 
index 999ae05dac443aadbba9b4b780aab6a339a30cc1..53c9d8e2881d56249762461ca4358d04a8dc34ba 100644 (file)
@@ -6,7 +6,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: fe-connect.h,v 1.6 1998/01/26 01:42:30 scrappy Exp $
+ * $Id: fe-connect.h,v 1.7 1998/01/29 03:24:36 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -23,6 +23,6 @@
  *----------------------------------------------------------------
  */
 
-int packetSend(PGconn *conn, char *buf, size_t len);
+int packetSend(PGconn *conn, const char *buf, size_t len);
 
 #endif                         /* FE_CONNECT_H */