aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2005-06-30 10:02:22 +0000
committerPeter Eisentraut <peter_e@gmx.net>2005-06-30 10:02:22 +0000
commit7a30b1fb966fb14852ebe6bea35d801792f2cc61 (patch)
treeaa8dd615f4acc7c7fc84f7c9f37112b3fe77431e /src
parent117fde2d1745c64c514db697b126350f7acf61a6 (diff)
downloadpostgresql-7a30b1fb966fb14852ebe6bea35d801792f2cc61.tar.gz
postgresql-7a30b1fb966fb14852ebe6bea35d801792f2cc61.zip
Issue fatal error if no TCP/IP sockets could be created
Diffstat (limited to 'src')
-rw-r--r--src/backend/postmaster/postmaster.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c
index c1ac2ed5977..d14f6db1630 100644
--- a/src/backend/postmaster/postmaster.c
+++ b/src/backend/postmaster/postmaster.c
@@ -37,7 +37,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/postmaster/postmaster.c,v 1.456 2005/06/29 22:51:55 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/postmaster/postmaster.c,v 1.457 2005/06/30 10:02:22 petere Exp $
*
* NOTES
*
@@ -711,6 +711,7 @@ PostmasterMain(int argc, char *argv[])
char *rawstring;
List *elemlist;
ListCell *l;
+ int success = 0;
/* Need a modifiable copy of ListenAddresses */
rawstring = pstrdup(ListenAddresses);
@@ -738,12 +739,18 @@ PostmasterMain(int argc, char *argv[])
(unsigned short) PostPortNumber,
UnixSocketDir,
ListenSocket, MAXLISTEN);
- if (status != STATUS_OK)
+ if (status == STATUS_OK)
+ success++;
+ else
ereport(WARNING,
(errmsg("could not create listen socket for \"%s\"",
curhost)));
}
+ if (!success && list_length(elemlist))
+ ereport(FATAL,
+ (errmsg("could not create any TCP/IP sockets")));
+
list_free(elemlist);
pfree(rawstring);
}