From 1ab682d2c43277c49122d4f36e10ea0bd048ee84 Mon Sep 17 00:00:00 2001
From: "Leigh B. Stoller" <stoller@flux.utah.edu>
Date: Mon, 1 Nov 2004 16:15:31 +0000
Subject: [PATCH] Add export (to /etc/exports file) of /share read-only to
 CONTROL_NETWORK.

---
 install/ops-install.in | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/install/ops-install.in b/install/ops-install.in
index 1d996603bf..378d13360e 100644
--- a/install/ops-install.in
+++ b/install/ops-install.in
@@ -34,6 +34,10 @@ my $BOSSNODE_IP = '@BOSSNODE_IP@';
 my $USERNODE_IP = '@USERNODE_IP@';
 my $LOGFACIL    = '@TBLOGFACIL@';
 
+# For /share export below.
+my $CONTROL_NETWORK = "@CONTROL_NETWORK@";
+my $CONTROL_NETMASK = "@CONTROL_NETMASK@";
+
 #
 # Allow this to work if the library is left in the source directory
 #
@@ -338,6 +342,17 @@ Phase "exports", "Setting up exports", sub {
 		join(" ",@{$filesystems{$key}}) . "\t$BOSSNODE -maproot=root";
 	}
 
+	#
+	# /share is special. We want to export that to the control network
+	# read-only (it is exported to boss r/w, above).
+	#
+	my ($a,$b,$c,$d) = ($CONTROL_NETWORK =~ /^(\d*)\.(\d*)\.(\d*)\.(\d*)/);
+	my $realdir = `realpath /share`;
+	chomp($realdir);
+	push(@exports_lines,
+	     "$realdir\t-network ${a}.${b}.${c} -mask $CONTROL_NETMASK ".
+	     "-maproot=root -ro");
+
 	#
 	# Put them in exports.head, and copy that to /etc/exports
 	#
-- 
GitLab