From a0cc9f3cb9e46178b1d6d995802b54deaffd69f3 Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Tue, 22 Jul 2003 20:29:13 +0000
Subject: [PATCH] Add GUC parameter to control rendezvous name.

---
 doc/src/sgml/runtime.sgml                     | 12 ++++++++-
 src/backend/postmaster/postmaster.c           | 26 ++++++++++---------
 src/backend/utils/misc/guc.c                  | 11 +++++++-
 src/backend/utils/misc/postgresql.conf.sample |  1 +
 src/include/tcop/tcopprot.h                   |  3 ++-
 5 files changed, 38 insertions(+), 15 deletions(-)

diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index 39057f0652b..bab8d2751d4 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -1,5 +1,5 @@
 <!--
-$Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.193 2003/07/14 20:00:22 tgl Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.194 2003/07/22 20:29:13 momjian Exp $
 -->
 
 <Chapter Id="runtime">
@@ -732,6 +732,16 @@ SET ENABLE_SEQSCAN TO OFF;
       </listitem>
      </varlistentry>
      
+     <varlistentry>
+      <term><varname>RENDEZVOUS_NAME</varname> (<type>string</type>)</term>
+      <listitem>
+       <para>
+        Specifies the Rendezvous broadcast name.  By default, the
+        computer name is used, specified as ''.
+       </para>
+      </listitem>
+     </varlistentry>
+     
      </variablelist>
      </sect3>
      <sect3 id="runtime-config-connection-security">
diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c
index ec98fc6f538..614c76e64ee 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.334 2003/07/22 19:00:10 tgl Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.335 2003/07/22 20:29:13 momjian Exp $
  *
  * NOTES
  *
@@ -210,6 +210,8 @@ bool		LogSourcePort;
 bool		Log_connections = false;
 bool		Db_user_namespace = false;
 
+char		*rendezvous_name;
+
 /* For FNCTL_NONBLOCK */
 #if defined(WIN32) || defined(__BEOS__)
 long ioctlsocket_ret;
@@ -771,17 +773,17 @@ PostmasterMain(int argc, char *argv[])
 					"socket.");
 			}
 		}
-#ifdef USE_RENDEZVOUS                    
-                if (service_name != NULL)
-                {
-                        DNSServiceRegistrationCreate(NULL,	/* default to hostname */
-                                                     "_postgresql._tcp.",
-                                                     "",
-                                                     htonl(PostPortNumber),
-                                                     "",
-                                                     (DNSServiceRegistrationReply)reg_reply,
-                                                     NULL);
-                }
+#ifdef USE_RENDEZVOUS					 
+				if (rendezvous_name != NULL)
+				{
+						DNSServiceRegistrationCreate(rendezvous_name,
+													 "_postgresql._tcp.",
+													 "",
+													 htonl(PostPortNumber),
+													 "",
+													 (DNSServiceRegistrationReply)reg_reply,
+													 NULL);
+				}
 #endif
 	}
 
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 8138c46918d..3a3d64b256b 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -10,7 +10,7 @@
  * Written by Peter Eisentraut <peter_e@gmx.net>.
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v 1.137 2003/07/15 19:19:56 tgl Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v 1.138 2003/07/22 20:29:13 momjian Exp $
  *
  *--------------------------------------------------------------------
  */
@@ -1299,6 +1299,15 @@ static struct config_string ConfigureNamesString[] =
 		PG_KRB_SRVTAB, NULL, NULL
 	},
 
+	{
+		{"rendezvous_name", PGC_POSTMASTER, CONN_AUTH_SETTINGS,
+			gettext_noop("The Rendezvous broadcast service name"),
+			NULL
+		},
+		&rendezvous_name,
+		"", NULL, NULL
+	},
+
 	/* See main.c about why defaults for LC_foo are not all alike */
 
 	{
diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample
index b3c1ad7f5b8..584e24f4287 100644
--- a/src/backend/utils/misc/postgresql.conf.sample
+++ b/src/backend/utils/misc/postgresql.conf.sample
@@ -38,6 +38,7 @@
 #unix_socket_group = ''
 #unix_socket_permissions = 0777	# octal
 #virtual_host = ''
+#rendezvous_name = ''		# defaults to the computer name
 
 # - Security & Authentication -
 
diff --git a/src/include/tcop/tcopprot.h b/src/include/tcop/tcopprot.h
index b5e171e1d36..ee2e4391fb5 100644
--- a/src/include/tcop/tcopprot.h
+++ b/src/include/tcop/tcopprot.h
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Id: tcopprot.h,v 1.57 2003/05/05 00:44:56 tgl Exp $
+ * $Id: tcopprot.h,v 1.58 2003/07/22 20:29:13 momjian Exp $
  *
  * OLD COMMENTS
  *	  This file was created so that other c files could get the two
@@ -32,6 +32,7 @@ extern CommandDest whereToSendOutput;
 extern bool log_hostname;
 extern bool LogSourcePort;
 extern DLLIMPORT const char *debug_query_string;
+extern char *rendezvous_name;
 
 #ifndef BOOTSTRAP_INCLUDE
 
-- 
GitLab