summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2015-07-01 13:13:54 +0200
committerMarkus Armbruster <armbru@redhat.com>2015-09-04 15:47:13 +0200
commit1cf47a15f18312436c7fa2d97be5fbe6df0292f5 (patch)
treec44cc2b9ad9c98fd635f934d24e41ff0e0e49031 /scripts
parent016a335bd8ca624f43adbb08fa1698c29ec52a1a (diff)
qapi: Reject -p arguments that break qapi-event.py
qapi-event.py breaks when you ask for a funny prefix like '@'. Protect it. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/qapi.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/scripts/qapi.py b/scripts/qapi.py
index ba11c54a92..bc3f4d3164 100644
--- a/scripts/qapi.py
+++ b/scripts/qapi.py
@@ -1003,6 +1003,12 @@ def parse_command_line(extra_options = "", extra_long_options = []):
for oa in opts:
o, a = oa
if o in ("-p", "--prefix"):
+ match = re.match('([A-Za-z_.-][A-Za-z0-9_.-]*)?', a)
+ if match.end() != len(a):
+ print >>sys.stderr, \
+ "%s: 'funny character '%s' in argument of --prefix" \
+ % (sys.argv[0], a[match.end()])
+ sys.exit(1)
prefix = a
elif o in ("-o", "--output-dir"):
output_dir = a + "/"