aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2000-11-13 23:37:54 +0000
committerBruce Momjian <bruce@momjian.us>2000-11-13 23:37:54 +0000
commitebd61ac03ff50ab69cdb8fc6330f5dca4551ce92 (patch)
tree0840f28d018043c4ac4b43572f6c511fb480e076 /src
parentd63a762f799b08c28190ad3ae5ab4061aa83e762 (diff)
downloadpostgresql-ebd61ac03ff50ab69cdb8fc6330f5dca4551ce92.tar.gz
postgresql-ebd61ac03ff50ab69cdb8fc6330f5dca4551ce92.zip
Remove -k unix socketpath option from client side, allow hostname with
leading slash to behave as a unix socket path.
Diffstat (limited to 'src')
-rw-r--r--src/backend/postmaster/postmaster.c6
-rw-r--r--src/bin/pg_dump/pg_backup.h4
-rw-r--r--src/bin/pg_dump/pg_backup_archiver.c5
-rw-r--r--src/bin/pg_dump/pg_backup_archiver.h1
-rw-r--r--src/bin/pg_dump/pg_backup_db.c10
-rw-r--r--src/bin/pg_dump/pg_dump.c13
-rw-r--r--src/bin/pg_dump/pg_restore.c9
-rw-r--r--src/bin/psql/command.c5
-rw-r--r--src/bin/psql/common.c4
-rw-r--r--src/bin/psql/help.c12
-rw-r--r--src/bin/psql/prompt.c7
-rw-r--r--src/bin/psql/startup.c13
-rw-r--r--src/bin/scripts/createdb12
-rw-r--r--src/bin/scripts/createlang.sh12
-rw-r--r--src/bin/scripts/createuser12
-rw-r--r--src/bin/scripts/dropdb12
-rw-r--r--src/bin/scripts/droplang12
-rw-r--r--src/bin/scripts/dropuser12
-rw-r--r--src/bin/scripts/vacuumdb12
-rw-r--r--src/interfaces/libpq/fe-connect.c49
-rw-r--r--src/interfaces/libpq/libpq-int.h6
21 files changed, 67 insertions, 161 deletions
diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c
index c6b645b15ba..b9d49730138 100644
--- a/src/backend/postmaster/postmaster.c
+++ b/src/backend/postmaster/postmaster.c
@@ -11,7 +11,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.183 2000/11/13 15:18:11 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.184 2000/11/13 23:37:52 momjian Exp $
*
* NOTES
*
@@ -1334,8 +1334,8 @@ get_host_port(void)
{
char msg[1024];
snprintf(msg, sizeof(msg),
- "FATAL: get_host_port: gethostbyname(%s) failed: %s\n",
- HostName, hstrerror(h_errno));
+ "FATAL: get_host_port: gethostbyname(%s) failed\n",
+ HostName);
fputs(msg, stderr);
pqdebug("%s", msg);
exit(1);
diff --git a/src/bin/pg_dump/pg_backup.h b/src/bin/pg_dump/pg_backup.h
index ffe071a6655..8fceb26c8e2 100644
--- a/src/bin/pg_dump/pg_backup.h
+++ b/src/bin/pg_dump/pg_backup.h
@@ -99,9 +99,8 @@ typedef struct _restoreOptions {
int useDB;
char *dbname;
- char *pghost;
char *pgport;
- char *pgunixsocket;
+ char *pghost;
int ignoreVersion;
int requirePassword;
@@ -123,7 +122,6 @@ PGconn* ConnectDatabase(Archive *AH,
const char* dbname,
const char* pghost,
const char* pgport,
- const char* pgunixsocket,
const int reqPwd,
const int ignoreVersion);
diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c
index 085a2eb3297..d8a969b41e0 100644
--- a/src/bin/pg_dump/pg_backup_archiver.c
+++ b/src/bin/pg_dump/pg_backup_archiver.c
@@ -131,9 +131,8 @@ void RestoreArchive(Archive* AHX, RestoreOptions *ropt)
if (AH->version < K_VERS_1_3)
die_horribly(AH, "Direct database connections are not supported in pre-1.3 archives");
- ConnectDatabase(AHX, ropt->dbname, ropt->pghost, ropt->pgport,
- ropt->pgunixsocket, ropt->requirePassword,
- ropt->ignoreVersion);
+ ConnectDatabase(AHX, ropt->dbname, ropt->pghost, ropt->pgport,
+ ropt->requirePassword, ropt->ignoreVersion);
/*
* If no superuser was specified then see if the current user will do...
diff --git a/src/bin/pg_dump/pg_backup_archiver.h b/src/bin/pg_dump/pg_backup_archiver.h
index a938f5e3395..2c7291e6c69 100644
--- a/src/bin/pg_dump/pg_backup_archiver.h
+++ b/src/bin/pg_dump/pg_backup_archiver.h
@@ -187,7 +187,6 @@ typedef struct _archiveHandle {
char *archdbname; /* DB name *read* from archive */
char *pghost;
char *pgport;
- char *pgunixsocket;
PGconn *connection;
PGconn *blobConnection; /* Connection for BLOB xref */
int txActive; /* Flag set if TX active on connection */
diff --git a/src/bin/pg_dump/pg_backup_db.c b/src/bin/pg_dump/pg_backup_db.c
index 082edd58241..72189eb29fb 100644
--- a/src/bin/pg_dump/pg_backup_db.c
+++ b/src/bin/pg_dump/pg_backup_db.c
@@ -273,7 +273,6 @@ PGconn* ConnectDatabase(Archive *AHX,
const char* dbname,
const char* pghost,
const char* pgport,
- const char* pgunixsocket,
const int reqPwd,
const int ignoreVersion)
{
@@ -308,15 +307,6 @@ PGconn* ConnectDatabase(Archive *AHX,
else
AH->pgport = NULL;
- if (pgunixsocket != NULL)
- {
- AH->pgport = strdup(pgunixsocket);
- sprintf(tmp_string, "unixsocket=%s ", AH->pgunixsocket);
- strcat(connect_string, tmp_string);
- }
- else
- AH->pgunixsocket = NULL;
-
sprintf(tmp_string, "dbname=%s ", AH->dbname);
strcat(connect_string, tmp_string);
diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c
index 738425a3ebe..a7c1ca9e8a4 100644
--- a/src/bin/pg_dump/pg_dump.c
+++ b/src/bin/pg_dump/pg_dump.c
@@ -22,7 +22,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.178 2000/11/13 15:18:13 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.179 2000/11/13 23:37:52 momjian Exp $
*
* Modifications - 6/10/96 - dave@bensoft.com - version 1.13.dhb
*
@@ -200,7 +200,6 @@ help(const char *progname)
" -F, --format {c|f|p} output file format (custom, files, plain text)\n"
" -h, --host <hostname> server host name\n"
" -i, --ignore-version proceed when database version != pg_dump version\n"
- " -k, --unixsocket <path> server Unix-domain socket name\n"
" -n, --no-quotes suppress most quotes around identifiers\n"
" -N, --quotes enable most quotes around identifiers\n"
" -o, --oids dump object ids (oids)\n"
@@ -227,7 +226,6 @@ help(const char *progname)
" -F {c|f|p} output file format (custom, files, plain text)\n"
" -h <hostname> server host name\n"
" -i proceed when database version != pg_dump version\n"
- " -k <path> server Unix-domain socket name\n"
" -n suppress most quotes around identifiers\n"
" -N enable most quotes around identifiers\n"
" -o dump object ids (oids)\n"
@@ -631,7 +629,6 @@ main(int argc, char **argv)
const char *dbname = NULL;
const char *pghost = NULL;
const char *pgport = NULL;
- const char *pgunixsocket = NULL;
char *tablename = NULL;
bool oids = false;
TableInfo *tblinfo;
@@ -661,7 +658,6 @@ main(int argc, char **argv)
{"attribute-inserts", no_argument, NULL, 'D'},
{"host", required_argument, NULL, 'h'},
{"ignore-version", no_argument, NULL, 'i'},
- {"unixsocket", required_argument, NULL, 'k'},
{"no-reconnect", no_argument, NULL, 'R'},
{"no-quotes", no_argument, NULL, 'n'},
{"quotes", no_argument, NULL, 'N'},
@@ -756,10 +752,6 @@ main(int argc, char **argv)
ignore_version = true;
break;
- case 'k': /* server Unix-domain socket */
- pgunixsocket = optarg;
- break;
-
case 'n': /* Do not force double-quotes on
* identifiers */
force_quotes = false;
@@ -956,8 +948,7 @@ main(int argc, char **argv)
dbname = argv[optind];
/* Open the database using the Archiver, so it knows about it. Errors mean death */
- g_conn = ConnectDatabase(g_fout, dbname, pghost, pgport, pgunixsocket,
- use_password, ignore_version);
+ g_conn = ConnectDatabase(g_fout, dbname, pghost, pgport, use_password, ignore_version);
/*
* Start serializable transaction to dump consistent data
diff --git a/src/bin/pg_dump/pg_restore.c b/src/bin/pg_dump/pg_restore.c
index cafb7e9df60..458482ed511 100644
--- a/src/bin/pg_dump/pg_restore.c
+++ b/src/bin/pg_dump/pg_restore.c
@@ -101,7 +101,6 @@ struct option cmdopts[] = {
{ "ignore-version", 0, NULL, 'i'},
{ "index", 2, NULL, 'I'},
{ "list", 0, NULL, 'l'},
- { "unixsocket", 1, NULL, 'k' },
{ "no-acl", 0, NULL, 'x' },
{ "no-owner", 0, NULL, 'O'},
{ "no-reconnect", 0, NULL, 'R' },
@@ -133,9 +132,9 @@ int main(int argc, char **argv)
progname = *argv;
#ifdef HAVE_GETOPT_LONG
- while ((c = getopt_long(argc, argv, "acCd:f:F:h:i:k:lNoOp:P:rRsS:t:T:uU:vx", cmdopts, NULL)) != EOF)
+ while ((c = getopt_long(argc, argv, "acCd:f:F:h:i:lNoOp:P:rRsS:t:T:uU:vx", cmdopts, NULL)) != EOF)
#else
- while ((c = getopt(argc, argv, "acCd:f:F:h:i:k:lNoOp:P:rRsS:t:T:uU:vx")) != -1)
+ while ((c = getopt(argc, argv, "acCd:f:F:h:i:lNoOp:P:rRsS:t:T:uU:vx")) != -1)
#endif
{
switch (c)
@@ -171,10 +170,6 @@ int main(int argc, char **argv)
case 'i':
opts->ignoreVersion = 1;
break;
- case 'k':
- if (strlen(optarg) != 0)
- opts->pgunixsocket = strdup(optarg);
- break;
case 'N':
opts->origOrder = 1;
break;
diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c
index 65c05a4ac91..0d3a1f3a899 100644
--- a/src/bin/psql/command.c
+++ b/src/bin/psql/command.c
@@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/command.c,v 1.37 2000/11/13 15:18:14 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/command.c,v 1.38 2000/11/13 23:37:53 momjian Exp $
*/
#include "postgres.h"
#include "command.h"
@@ -1202,7 +1202,6 @@ do_connect(const char *new_dbname, const char *new_user)
SetVariable(pset.vars, "USER", NULL);
SetVariable(pset.vars, "HOST", NULL);
SetVariable(pset.vars, "PORT", NULL);
- SetVariable(pset.vars, "UNIXSOCKET", NULL);
SetVariable(pset.vars, "ENCODING", NULL);
/* If dbname is "" then use old name, else new one (even if NULL) */
@@ -1232,7 +1231,6 @@ do_connect(const char *new_dbname, const char *new_user)
do
{
need_pass = false;
- /* FIXME use PQconnectdb to support passing the Unix socket */
pset.db = PQsetdbLogin(PQhost(oldconn), PQport(oldconn),
NULL, NULL, dbparam, userparam, pwparam);
@@ -1309,7 +1307,6 @@ do_connect(const char *new_dbname, const char *new_user)
SetVariable(pset.vars, "USER", PQuser(pset.db));
SetVariable(pset.vars, "HOST", PQhost(pset.db));
SetVariable(pset.vars, "PORT", PQport(pset.db));
- SetVariable(pset.vars, "UNIXSOCKET", PQunixsocket(pset.db));
SetVariable(pset.vars, "ENCODING", pg_encoding_to_char(pset.encoding));
pset.issuper = test_superuser(PQuser(pset.db));
diff --git a/src/bin/psql/common.c b/src/bin/psql/common.c
index da0542df593..658854fc08a 100644
--- a/src/bin/psql/common.c
+++ b/src/bin/psql/common.c
@@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/common.c,v 1.24 2000/11/13 15:18:14 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/common.c,v 1.25 2000/11/13 23:37:53 momjian Exp $
*/
#include "postgres.h"
#include "common.h"
@@ -329,7 +329,6 @@ PSQLexec(const char *query)
SetVariable(pset.vars, "DBNAME", NULL);
SetVariable(pset.vars, "HOST", NULL);
SetVariable(pset.vars, "PORT", NULL);
- SetVariable(pset.vars, "UNIXSOCKET", NULL);
SetVariable(pset.vars, "USER", NULL);
SetVariable(pset.vars, "ENCODING", NULL);
return NULL;
@@ -509,7 +508,6 @@ SendQuery(const char *query)
SetVariable(pset.vars, "DBNAME", NULL);
SetVariable(pset.vars, "HOST", NULL);
SetVariable(pset.vars, "PORT", NULL);
- SetVariable(pset.vars, "UNIXSOCKET", NULL);
SetVariable(pset.vars, "USER", NULL);
SetVariable(pset.vars, "ENCODING", NULL);
return false;
diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c
index b9ee9caa67a..21bcdcafa78 100644
--- a/src/bin/psql/help.c
+++ b/src/bin/psql/help.c
@@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/help.c,v 1.33 2000/11/13 15:18:14 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/help.c,v 1.34 2000/11/13 23:37:53 momjian Exp $
*/
#include "postgres.h"
#include "help.h"
@@ -103,16 +103,6 @@ usage(void)
puts(")");
puts(" -H HTML table output mode (-P format=html)");
-
- /* Display default Unix-domain socket */
- env = getenv("PGUNIXSOCKET");
- printf(" -k <path> Specify Unix domain socket name (default: ");
- if (env)
- fputs(env, stdout);
- else
- fputs("computed from the port", stdout);
- puts(")");
-
puts(" -l List available databases, then exit");
puts(" -n Disable readline");
puts(" -o <filename> Send query output to filename (or |pipe)");
diff --git a/src/bin/psql/prompt.c b/src/bin/psql/prompt.c
index d29bc12ddb9..4788c2ce128 100644
--- a/src/bin/psql/prompt.c
+++ b/src/bin/psql/prompt.c
@@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/prompt.c,v 1.14 2000/11/13 15:18:14 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/prompt.c,v 1.15 2000/11/13 23:37:53 momjian Exp $
*/
#include "postgres.h"
#include "prompt.h"
@@ -190,11 +190,6 @@ get_prompt(promptStatus_t status)
if (pset.db && PQport(pset.db))
strncpy(buf, PQport(pset.db), MAX_PROMPT_SIZE);
break;
- /* DB server Unix-domain socket */
- case '<':
- if (pset.db && PQunixsocket(pset.db))
- strncpy(buf, PQunixsocket(pset.db), MAX_PROMPT_SIZE);
- break;
/* DB server user name */
case 'n':
if (pset.db)
diff --git a/src/bin/psql/startup.c b/src/bin/psql/startup.c
index 9b0e60f0a35..46e476a2ae0 100644
--- a/src/bin/psql/startup.c
+++ b/src/bin/psql/startup.c
@@ -3,7 +3,7 @@
*
* Copyright 2000 by PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/startup.c,v 1.38 2000/11/13 15:18:14 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/startup.c,v 1.39 2000/11/13 23:37:53 momjian Exp $
*/
#include "postgres.h"
@@ -65,7 +65,6 @@ struct adhoc_opts
char *dbname;
char *host;
char *port;
- char *unixsocket;
char *username;
enum _actions action;
char *action_string;
@@ -162,7 +161,6 @@ main(int argc, char *argv[])
do
{
need_pass = false;
- /* FIXME use PQconnectdb to allow setting the unix socket */
pset.db = PQsetdbLogin(options.host, options.port, NULL, NULL,
options.action == ACT_LIST_DB ? "template1" : options.dbname,
username, password);
@@ -208,7 +206,6 @@ main(int argc, char *argv[])
SetVariable(pset.vars, "USER", PQuser(pset.db));
SetVariable(pset.vars, "HOST", PQhost(pset.db));
SetVariable(pset.vars, "PORT", PQport(pset.db));
- SetVariable(pset.vars, "UNIXSOCKET", PQunixsocket(pset.db));
SetVariable(pset.vars, "ENCODING", pg_encoding_to_char(pset.encoding));
#ifndef WIN32
@@ -323,7 +320,6 @@ parse_psql_options(int argc, char *argv[], struct adhoc_opts * options)
{"field-separator", required_argument, NULL, 'F'},
{"host", required_argument, NULL, 'h'},
{"html", no_argument, NULL, 'H'},
- {"unixsocket", required_argument, NULL, 'k'},
{"list", no_argument, NULL, 'l'},
{"no-readline", no_argument, NULL, 'n'},
{"output", required_argument, NULL, 'o'},
@@ -357,14 +353,14 @@ parse_psql_options(int argc, char *argv[], struct adhoc_opts * options)
memset(options, 0, sizeof *options);
#ifdef HAVE_GETOPT_LONG
- while ((c = getopt_long(argc, argv, "aAc:d:eEf:F:lh:Hk:no:p:P:qRsStT:uU:v:VWxX?", long_options, &optindex)) != -1)
+ while ((c = getopt_long(argc, argv, "aAc:d:eEf:F:lh:Hno:p:P:qRsStT:uU:v:VWxX?", long_options, &optindex)) != -1)
#else /* not HAVE_GETOPT_LONG */
/*
* Be sure to leave the '-' in here, so we can catch accidental long
* options.
*/
- while ((c = getopt(argc, argv, "aAc:d:eEf:F:lh:Hk:no:p:P:qRsStT:uU:v:VWxX?-")) != -1)
+ while ((c = getopt(argc, argv, "aAc:d:eEf:F:lh:Hno:p:P:qRsStT:uU:v:VWxX?-")) != -1)
#endif /* not HAVE_GETOPT_LONG */
{
switch (c)
@@ -410,9 +406,6 @@ parse_psql_options(int argc, char *argv[], struct adhoc_opts * options)
case 'l':
options->action = ACT_LIST_DB;
break;
- case 'k':
- options->unixsocket = optarg;
- break;
case 'n':
options->no_readline = true;
break;
diff --git a/src/bin/scripts/createdb b/src/bin/scripts/createdb
index 213913ba890..e506af5885c 100644
--- a/src/bin/scripts/createdb
+++ b/src/bin/scripts/createdb
@@ -11,7 +11,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createdb,v 1.10 2000/11/13 15:18:14 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createdb,v 1.11 2000/11/13 23:37:53 momjian Exp $
#
#-------------------------------------------------------------------------
@@ -50,15 +50,6 @@ do
--port=*)
PSQLOPT="$PSQLOPT -p "`echo $1 | sed 's/^--port=//'`
;;
- --unixsocket|-k)
- PSQLOPT="$PSQLOPT -k $2"
- shift;;
- -k*)
- PSQLOPT="$PSQLOPT $1"
- ;;
- --unixsocket=*)
- PSQLOPT="$PSQLOPT -k "`echo $1 | sed 's/^--unixsocket=//'`
- ;;
--username|-U)
PSQLOPT="$PSQLOPT -U $2"
shift;;
@@ -123,7 +114,6 @@ if [ "$usage" ]; then
echo " -E, --encoding=ENCODING Multibyte encoding for the database"
echo " -h, --host=HOSTNAME Database server host"
echo " -p, --port=PORT Database server port"
- echo " -k, --unixsocket=PATH Database server Unix-domain socket name"
echo " -U, --username=USERNAME Username to connect as"
echo " -W, --password Prompt for password"
echo " -e, --echo Show the query being sent to the backend"
diff --git a/src/bin/scripts/createlang.sh b/src/bin/scripts/createlang.sh
index c22dcba652f..3fc0a1b02fa 100644
--- a/src/bin/scripts/createlang.sh
+++ b/src/bin/scripts/createlang.sh
@@ -8,7 +8,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createlang.sh,v 1.18 2000/11/13 15:18:14 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createlang.sh,v 1.19 2000/11/13 23:37:53 momjian Exp $
#
#-------------------------------------------------------------------------
@@ -65,15 +65,6 @@ do
--port=*)
PSQLOPT="$PSQLOPT -p "`echo $1 | sed 's/^--port=//'`
;;
- --unixsocket|-k)
- PSQLOPT="$PSQLOPT -k $2"
- shift;;
- -k*)
- PSQLOPT="$PSQLOPT $1"
- ;;
- --unixsocket=*)
- PSQLOPT="$PSQLOPT -k "`echo $1 | sed 's/^--unixsocket=//'`
- ;;
--username|-U)
PSQLOPT="$PSQLOPT -U $2"
shift;;
@@ -135,7 +126,6 @@ if [ "$usage" ]; then
echo "Options:"
echo " -h, --host=HOSTNAME Database server host"
echo " -p, --port=PORT Database server port"
- echo " -k, --unixsocket=PATH Database server Unix-domain socket name"
echo " -U, --username=USERNAME Username to connect as"
echo " -W, --password Prompt for password"
echo " -d, --dbname=DBNAME Database to install language in"
diff --git a/src/bin/scripts/createuser b/src/bin/scripts/createuser
index 198e4b81cfa..e3859eb2a75 100644
--- a/src/bin/scripts/createuser
+++ b/src/bin/scripts/createuser
@@ -8,7 +8,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createuser,v 1.13 2000/11/13 15:18:14 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createuser,v 1.14 2000/11/13 23:37:53 momjian Exp $
#
# Note - this should NOT be setuid.
#
@@ -63,15 +63,6 @@ do
--port=*)
PSQLOPT="$PSQLOPT -p "`echo $1 | sed 's/^--port=//'`
;;
- --unixsocket|-k)
- PSQLOPT="$PSQLOPT -k $2"
- shift;;
- -k*)
- PSQLOPT="$PSQLOPT $1"
- ;;
- --unixsocket=*)
- PSQLOPT="$PSQLOPT -k "`echo $1 | sed 's/^--unixsocket=//'`
- ;;
# Note: These two specify the user to connect as (like in psql),
# not the user you're creating.
--username|-U)
@@ -144,7 +135,6 @@ if [ "$usage" ]; then
echo " -P, --pwprompt Assign a password to new user"
echo " -h, --host=HOSTNAME Database server host"
echo " -p, --port=PORT Database server port"
- echo " -k, --unixsocket=PATH Database server Unix-domain socket name"
echo " -U, --username=USERNAME Username to connect as (not the one to create)"
echo " -W, --password Prompt for password to connect"
echo " -e, --echo Show the query being sent to the backend"
diff --git a/src/bin/scripts/dropdb b/src/bin/scripts/dropdb
index 586b62ac7f7..35bb08a71af 100644
--- a/src/bin/scripts/dropdb
+++ b/src/bin/scripts/dropdb
@@ -10,7 +10,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/dropdb,v 1.8 2000/11/13 15:18:14 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/dropdb,v 1.9 2000/11/13 23:37:53 momjian Exp $
#
#-------------------------------------------------------------------------
@@ -59,15 +59,6 @@ do
--port=*)
PSQLOPT="$PSQLOPT -p "`echo $1 | sed 's/^--port=//'`
;;
- --unixsocket|-k)
- PSQLOPT="$PSQLOPT -k $2"
- shift;;
- -k*)
- PSQLOPT="$PSQLOPT $1"
- ;;
- --unixsocket=*)
- PSQLOPT="$PSQLOPT -k "`echo $1 | sed 's/^--unixsocket=//'`
- ;;
--username|-U)
PSQLOPT="$PSQLOPT -U $2"
shift;;
@@ -112,7 +103,6 @@ if [ "$usage" ]; then
echo "Options:"
echo " -h, --host=HOSTNAME Database server host"
echo " -p, --port=PORT Database server port"
- echo " -k, --unixsocket=PATH Database server Unix-domain socket name"
echo " -U, --username=USERNAME Username to connect as"
echo " -W, --password Prompt for password"
echo " -i, --interactive Prompt before deleting anything"
diff --git a/src/bin/scripts/droplang b/src/bin/scripts/droplang
index 46856e4241d..023ae4fc996 100644
--- a/src/bin/scripts/droplang
+++ b/src/bin/scripts/droplang
@@ -8,7 +8,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/droplang,v 1.9 2000/11/13 15:18:14 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/droplang,v 1.10 2000/11/13 23:37:53 momjian Exp $
#
#-------------------------------------------------------------------------
@@ -65,15 +65,6 @@ do
--port=*)
PSQLOPT="$PSQLOPT -p "`echo $1 | sed 's/^--port=//'`
;;
- --unixsocket|-k)
- PSQLOPT="$PSQLOPT -k $2"
- shift;;
- -k*)
- PSQLOPT="$PSQLOPT $1"
- ;;
- --unixsocket=*)
- PSQLOPT="$PSQLOPT -k "`echo $1 | sed 's/^--unixsocket=//'`
- ;;
--username|-U)
PSQLOPT="$PSQLOPT -U $2"
shift;;
@@ -122,7 +113,6 @@ if [ "$usage" ]; then
echo "Options:"
echo " -h, --host=HOSTNAME Database server host"
echo " -p, --port=PORT Database server port"
- echo " -k, --unixsocket=PATH Database server Unix-domain socket name"
echo " -U, --username=USERNAME Username to connect as"
echo " -W, --password Prompt for password"
echo " -d, --dbname=DBNAME Database to remove language from"
diff --git a/src/bin/scripts/dropuser b/src/bin/scripts/dropuser
index 4aa858124b2..e7be5dc867a 100644
--- a/src/bin/scripts/dropuser
+++ b/src/bin/scripts/dropuser
@@ -8,7 +8,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/dropuser,v 1.8 2000/11/13 15:18:14 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/dropuser,v 1.9 2000/11/13 23:37:53 momjian Exp $
#
# Note - this should NOT be setuid.
#
@@ -59,15 +59,6 @@ do
--port=*)
PSQLOPT="$PSQLOPT -p "`echo $1 | sed 's/^--port=//'`
;;
- --unixsocket|-k)
- PSQLOPT="$PSQLOPT -k $2"
- shift;;
- -k*)
- PSQLOPT="$PSQLOPT $1"
- ;;
- --unixsocket=*)
- PSQLOPT="$PSQLOPT -k "`echo $1 | sed 's/^--unixsocket=//'`
- ;;
# Note: These two specify the user to connect as (like in psql),
# not the user you're dropping.
--username|-U)
@@ -114,7 +105,6 @@ if [ "$usage" ]; then
echo "Options:"
echo " -h, --host=HOSTNAME Database server host"
echo " -p, --port=PORT Database server port"
- echo " -k, --unixsocket=PATH Database server Unix-domain socket name"
echo " -U, --username=USERNAME Username to connect as (not the one to drop)"
echo " -W, --password Prompt for password to connect"
echo " -i, --interactive Prompt before deleting anything"
diff --git a/src/bin/scripts/vacuumdb b/src/bin/scripts/vacuumdb
index fb1db8bfe67..0981f31e72c 100644
--- a/src/bin/scripts/vacuumdb
+++ b/src/bin/scripts/vacuumdb
@@ -11,7 +11,7 @@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/vacuumdb,v 1.11 2000/11/13 15:18:14 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/vacuumdb,v 1.12 2000/11/13 23:37:53 momjian Exp $
#
#-------------------------------------------------------------------------
@@ -52,15 +52,6 @@ do
--port=*)
PSQLOPT="$PSQLOPT -p "`echo $1 | sed 's/^--port=//'`
;;
- --unixsocket|-k)
- PSQLOPT="$PSQLOPT -k $2"
- shift;;
- -k*)
- PSQLOPT="$PSQLOPT $1"
- ;;
- --unixsocket=*)
- PSQLOPT="$PSQLOPT -k "`echo $1 | sed 's/^--unixsocket=//'`
- ;;
--username|-U)
PSQLOPT="$PSQLOPT -U $2"
shift;;
@@ -130,7 +121,6 @@ if [ "$usage" ]; then
echo "Options:"
echo " -h, --host=HOSTNAME Database server host"
echo " -p, --port=PORT Database server port"
- echo " -k, --unixsocket=PATH Database server Unix-domain socket name"
echo " -U, --username=USERNAME Username to connect as"
echo " -W, --password Prompt for password"
echo " -d, --dbname=DBNAME Database to vacuum"
diff --git a/src/interfaces/libpq/fe-connect.c b/src/interfaces/libpq/fe-connect.c
index b0447285d48..9c720c12a1c 100644
--- a/src/interfaces/libpq/fe-connect.c
+++ b/src/interfaces/libpq/fe-connect.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.145 2000/11/13 15:18:15 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.146 2000/11/13 23:37:53 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -332,6 +332,25 @@ PQconnectStart(const char *conninfo)
PQconninfoFree(connOptions);
/* ----------
+ * Allow unix socket specification in the host name
+ * ----------
+ */
+ if (conn->pghost && conn->pghost[0] == '/')
+ {
+ if (conn->pgunixsocket)
+ free(conn->pgunixsocket);
+ conn->pgunixsocket = conn->pghost;
+ conn->pghost = NULL;
+ }
+ if (conn->pghostaddr && conn->pghostaddr[0] == '/')
+ {
+ if (conn->pgunixsocket)
+ free(conn->pgunixsocket);
+ conn->pgunixsocket = conn->pghostaddr;
+ conn->pghostaddr = NULL;
+ }
+
+ /* ----------
* Connect to the database
* ----------
*/
@@ -443,13 +462,25 @@ PQsetdbLogin(const char *pghost, const char *pgport, const char *pgoptions,
else
conn->pgport = strdup(pgport);
-#if FIX_ME
- /* we need to modify the function to accept a unix socket path */
- if (pgunixsocket)
- conn->pgunixsocket = strdup(pgunixsocket);
- else if ((tmp = getenv("PGUNIXSOCKET")) != NULL)
- conn->pgunixsocket = strdup(tmp);
-#endif
+ /* ----------
+ * We don't allow unix socket path as a function parameter.
+ * This allows unix socket specification in the host name.
+ * ----------
+ */
+ if (conn->pghost && conn->pghost[0] == '/')
+ {
+ if (conn->pgunixsocket)
+ free(conn->pgunixsocket);
+ conn->pgunixsocket = conn->pghost;
+ conn->pghost = NULL;
+ }
+ if (conn->pghostaddr && conn->pghostaddr[0] == '/')
+ {
+ if (conn->pgunixsocket)
+ free(conn->pgunixsocket);
+ conn->pgunixsocket = conn->pghostaddr;
+ conn->pghostaddr = NULL;
+ }
if (pgtty == NULL)
{
@@ -778,7 +809,7 @@ connectDBStart(PGconn *conn)
{
printfPQExpBuffer(&conn->errorMessage,
"connectDBStart() -- "
- "invalid host address: %s\n", conn->pghostaddr);
+ "invalid host address: %s\n", conn->pghostaddr);
goto connect_errReturn;
}
diff --git a/src/interfaces/libpq/libpq-int.h b/src/interfaces/libpq/libpq-int.h
index a7c6acb9524..5c1cb86ffe2 100644
--- a/src/interfaces/libpq/libpq-int.h
+++ b/src/interfaces/libpq/libpq-int.h
@@ -12,7 +12,7 @@
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: libpq-int.h,v 1.28 2000/11/13 15:18:15 momjian Exp $
+ * $Id: libpq-int.h,v 1.29 2000/11/13 23:37:54 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -203,8 +203,8 @@ struct pg_conn
* numbers-and-dots notation. Takes
* precedence over above. */
char *pgport; /* the server's communication port */
- char *pgunixsocket; /* the Unix-domain socket that the server is listening on;
- * if NULL, uses a default constructed from pgport */
+ char *pgunixsocket; /* the Unix-domain socket that the server is listening on;
+ * if NULL, uses a default constructed from pgport */
char *pgtty; /* tty on which the backend messages is
* displayed (NOT ACTUALLY USED???) */
char *pgoptions; /* options to start the backend with */