mirror of
https://github.com/postgres/postgres.git
synced 2025-11-01 21:31:19 +03:00
libpq++ uses fe_setauthsvc which is deprecated and results in an error
on connection. This patch changes it to use PQconnectdb rather than
{fe_setauthsvc,PQsetdb}. This still isn't the complete solution, as
there
is no provision for user,password in class PgEnv, but it does get rid of
the error message. Tested with gcc version egcs-2.91.60 19981201
(egcs-1.1.1 release) under NetBSD-1.3K/i386.
Cheers,
Patrick Welche
This commit is contained in:
@@ -10,13 +10,14 @@
|
||||
* Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/pgconnection.cc,v 1.2 1997/02/13 10:00:27 scrappy Exp $
|
||||
* $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/pgconnection.cc,v 1.3 1999/05/10 15:27:18 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <strstream>
|
||||
#include "pgconnection.h"
|
||||
|
||||
extern "C" {
|
||||
@@ -88,21 +89,18 @@ ConnStatusType PgConnection::Connect(const char* dbName)
|
||||
PQtrace(pgConn, debug);
|
||||
#endif
|
||||
|
||||
// Set Host Authentication service
|
||||
char errorMessage[ERROR_MSG_LENGTH];
|
||||
memset(errorMessage, 0, sizeof(errorMessage));
|
||||
fe_setauthsvc(pgEnv.Auth(), errorMessage);
|
||||
|
||||
// Connect to the database
|
||||
pgConn = PQsetdb(pgEnv.Host(), pgEnv.Port(), pgEnv.Option(), pgEnv.TTY(), dbName);
|
||||
ostrstream conninfo;
|
||||
conninfo << "dbname="<<dbName;
|
||||
conninfo << pgEnv;
|
||||
pgConn=PQconnectdb(conninfo.str());
|
||||
conninfo.freeze(0);
|
||||
|
||||
// Return the connection status
|
||||
if (errorMessage) {
|
||||
SetErrorMessage( errorMessage );
|
||||
return CONNECTION_BAD;
|
||||
if(ConnectionBad()) {
|
||||
SetErrorMessage( PQerrorMessage(pgConn) );
|
||||
}
|
||||
else
|
||||
return Status();
|
||||
|
||||
return Status();
|
||||
}
|
||||
|
||||
// PgConnection::status -- return connection or result status
|
||||
|
||||
Reference in New Issue
Block a user