summaryrefslogtreecommitdiff
path: root/src/interfaces/libpq++/pgenv.cc
diff options
context:
space:
mode:
authorBruce Momjian1999-05-10 15:27:19 +0000
committerBruce Momjian1999-05-10 15:27:19 +0000
commit86dacdb74c20d8af6ec900b7cd163df031ab90e4 (patch)
tree5b71bf3eda1c45edcdca8a1c3d5be5178f863674 /src/interfaces/libpq++/pgenv.cc
parentd6e33c8b07aeef995d7d4d200d6667383ec849ba (diff)
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
Diffstat (limited to 'src/interfaces/libpq++/pgenv.cc')
-rw-r--r--src/interfaces/libpq++/pgenv.cc18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/interfaces/libpq++/pgenv.cc b/src/interfaces/libpq++/pgenv.cc
index 451a4f3fde3..b7edbd12fe0 100644
--- a/src/interfaces/libpq++/pgenv.cc
+++ b/src/interfaces/libpq++/pgenv.cc
@@ -14,7 +14,7 @@
* Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/pgenv.cc,v 1.3 1997/02/13 10:00:33 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/pgenv.cc,v 1.4 1999/05/10 15:27:19 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -66,3 +66,19 @@ string PgEnv::getenv(const char* name)
char* env = ::getenv(name);
return (env ? env : "");
}
+
+
+// Extract the PgEnv contents into a form suitable for PQconnectdb
+// which happens to be readable, hence choice of <<
+ostream& operator << (ostream &s, const PgEnv& a)
+{
+ s<<' '; // surround with whitespace, just in case
+ if(a.pgHost.length() !=0)s<<" host=" <<a.pgHost;
+ if(a.pgPort.length() !=0)s<<" port=" <<a.pgPort;
+ // deprecated: if(a.pgAuth.length()!=0)s<<" authtype="<<a.pgAuth;
+ if(a.pgOption.length()!=0)s<<" options="<<a.pgOption;
+ if(a.pgTty.length() !=0)s<<" tty=" <<a.pgTty;
+ s<<' ';
+
+ return s;
+}