1
0
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:
Bruce Momjian
1999-05-10 15:27:19 +00:00
parent d6e33c8b07
commit 86dacdb74c
4 changed files with 31 additions and 15 deletions

View File

@@ -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