summaryrefslogtreecommitdiffstats
path: root/lib/puppet/server/fileserver.rb
diff options
context:
space:
mode:
authorluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2005-08-29 23:24:23 +0000
committerluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2005-08-29 23:24:23 +0000
commit7f274a4c53a676ab471a823b4d281d7708edf70d (patch)
tree150dcfd6a9ae62e3a5309bcc279e12d5b4cb55f6 /lib/puppet/server/fileserver.rb
parent8a99636cb9f048bfbbd8b956a15ec84ae68d34f0 (diff)
downloadpuppet-7f274a4c53a676ab471a823b4d281d7708edf70d.tar.gz
puppet-7f274a4c53a676ab471a823b4d281d7708edf70d.tar.xz
puppet-7f274a4c53a676ab471a823b4d281d7708edf70d.zip
catching a potential security problem -- requiring that "path" always be set for a fileserver mount
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@608 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib/puppet/server/fileserver.rb')
-rwxr-xr-xlib/puppet/server/fileserver.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/puppet/server/fileserver.rb b/lib/puppet/server/fileserver.rb
index 6eec3503d..aa513d68c 100755
--- a/lib/puppet/server/fileserver.rb
+++ b/lib/puppet/server/fileserver.rb
@@ -189,6 +189,12 @@ class Server
when /^\s*$/: next # skip blank lines
when /\[(\w+)\]/:
name = $1
+ if mount
+ unless mount.path
+ raise Puppet::Error, "Mount %s has no path specified" %
+ mount.name
+ end
+ end
if @mounts.include?(name)
raise FileServerError, "%s is already mounted at %s" %
[@mounts[name], name]
@@ -330,6 +336,10 @@ class Server
unless @mounts.include?(mount)
raise FileServerError, "%s not mounted" % mount
end
+
+ unless @mounts[mount].path
+ raise FileServerError, "Mount %s does not have a path set" % mount
+ end
else
raise FileServerError, "Invalid path '%s'" % dir
end