*
*
* 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 $
*
*-------------------------------------------------------------------------
*/
*/
void be_recvauth(Port *port)
{
- AuthRequest areq;
- void (*auth_handler)();
-
/*
* Get the authentication method to use for this frontend/database
* combination.
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);
+ }
}
*
*
* 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.
0, 0))
return att_tup.atttypmod;
else
- return NULL;
+ return -1;
}
/* ---------- INDEX CACHE ---------- */
*
*
* 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
#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);
*
*
* 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 $
*
*-------------------------------------------------------------------------
*/
*/
int
fe_sendauth(AuthRequest areq, PGconn *conn, const char *hostname,
- const char *password, const char *PQerrormsg)
+ const char *password, char *PQerrormsg)
{
switch (areq)
{
*
* 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 $
*
*-------------------------------------------------------------------------
*/
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 */
*
*
* 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 $
*
*-------------------------------------------------------------------------
*/
* 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. */
*
* 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 $
*
*-------------------------------------------------------------------------
*/
*----------------------------------------------------------------
*/
-int packetSend(PGconn *conn, char *buf, size_t len);
+int packetSend(PGconn *conn, const char *buf, size_t len);
#endif /* FE_CONNECT_H */