Skip to content

Commit

Permalink
qubespolicy: allow spaces in action arguments
Browse files Browse the repository at this point in the history
This is natural to write space after coma.
  • Loading branch information
marmarek committed Jul 4, 2017
1 parent 291a338 commit a937bb1
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 4 deletions.
4 changes: 2 additions & 2 deletions qubespolicy/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,11 +121,11 @@ def __init__(self, line, filename=None, lineno=None):
self.filename = filename

try:
self.source, self.target, self.full_action = line.split()
self.source, self.target, self.full_action = line.split(maxsplit=2)
except ValueError:
raise PolicySyntaxError(filename, lineno, 'wrong number of fields')

(action, *params) = self.full_action.split(',')
(action, *params) = self.full_action.replace(' ', '').split(',')
try:
self.action = Action[action]
except KeyError:
Expand Down
5 changes: 3 additions & 2 deletions qubespolicy/tests/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,15 +155,16 @@ def test_020_line_simple(self):
self.assertIsNone(line.default_target)

def test_021_line_simple(self):
# also check spaces in action field
line = qubespolicy.PolicyRule(
'$tag:tag1 $type:AppVM ask,target=test-vm2,user=user',
'$tag:tag1 $type:AppVM ask, target=test-vm2, user=user',
'filename', 12)
self.assertEqual(line.filename, 'filename')
self.assertEqual(line.lineno, 12)
self.assertEqual(line.action, qubespolicy.Action.ask)
self.assertEqual(line.source, '$tag:tag1')
self.assertEqual(line.target, '$type:AppVM')
self.assertEqual(line.full_action, 'ask,target=test-vm2,user=user')
self.assertEqual(line.full_action, 'ask, target=test-vm2, user=user')
self.assertEqual(line.override_target, 'test-vm2')
self.assertEqual(line.override_user, 'user')
self.assertIsNone(line.default_target)
Expand Down

0 comments on commit a937bb1

Please sign in to comment.