aboutsummaryrefslogtreecommitdiff
path: root/Tools
diff options
context:
space:
mode:
Diffstat (limited to 'Tools')
-rwxr-xr-xTools/portbuild/scripts/buildproxy5
1 files changed, 5 insertions, 0 deletions
diff --git a/Tools/portbuild/scripts/buildproxy b/Tools/portbuild/scripts/buildproxy
index fae88ab870b7..93c524e541e0 100755
--- a/Tools/portbuild/scripts/buildproxy
+++ b/Tools/portbuild/scripts/buildproxy
@@ -9,6 +9,8 @@ from freebsd import *
SOCKET='/tmp/.build'
+valid_cmds = ['create', 'clone', 'portsupdate', 'srcupdate', 'destroy']
+
def validate(uid, arch):
if uid == 0:
return True
@@ -32,6 +34,9 @@ def process(cmd, sockfile):
except:
return (254, "Internal error")
+ if cmd[1] not in valid_cmds:
+ return (254, "Permission denied")
+
for i in cmd:
for j in i:
if not j.isalnum() and not j in "-_.":