summaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorBruce Momjian2003-06-11 06:56:07 +0000
committerBruce Momjian2003-06-11 06:56:07 +0000
commit65fb311a97a0d5bc4f02d24616ad9f41a2b16f4a (patch)
treee152b9eac686c06b7281e29464324cd9eb2cb3cb /src/backend
parent1ca0b6d047a96a69800a0e00f3e61f148beed1db (diff)
Add Rendezvous support to postmaster, from Chris Campbell
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/postmaster/postmaster.c29
1 files changed, 28 insertions, 1 deletions
diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c
index ef4266be53c..5b16d06a994 100644
--- a/src/backend/postmaster/postmaster.c
+++ b/src/backend/postmaster/postmaster.c
@@ -37,7 +37,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.331 2003/05/28 19:36:28 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.332 2003/06/11 06:56:06 momjian Exp $
*
* NOTES
*
@@ -85,6 +85,10 @@
#include <getopt.h>
#endif
+#ifdef USE_RENDEZVOUS
+#include <DNSServiceDiscovery/DNSServiceDiscovery.h>
+#endif
+
#include "catalog/pg_database.h"
#include "commands/async.h"
#include "lib/dllist.h"
@@ -366,6 +370,17 @@ checkDataDir(const char *checkdir)
}
+#ifdef USE_RENDEZVOUS
+
+/* reg_reply -- empty callback function for DNSServiceRegistrationCreate() */
+static void
+reg_reply(DNSServiceRegistrationReplyErrorType errorCode, void *context)
+{
+
+}
+
+#endif
+
int
PostmasterMain(int argc, char *argv[])
{
@@ -724,6 +739,18 @@ PostmasterMain(int argc, char *argv[])
elog(LOG, "IPv4 socket created");
}
#endif
+#ifdef USE_RENDEZVOUS
+ if (service_name != NULL)
+ {
+ DNSServiceRegistrationCreate(NULL, /* default to hostname */
+ "_postgresql._tcp.",
+ "",
+ htonl(PostPortNumber),
+ "",
+ (DNSServiceRegistrationReply)reg_reply,
+ NULL);
+ }
+#endif
}
#ifdef HAVE_UNIX_SOCKETS