From 0b080627976d1392d1bc0cfa75b6bab5204c1200 Mon Sep 17 00:00:00 2001 From: Pekka Helenius Date: Fri, 22 May 2020 08:13:55 +0300 Subject: [PATCH] Agent: check that command(s) are supplied in agent XML element --- tools/pamusb-agent | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/tools/pamusb-agent b/tools/pamusb-agent index 0de5041..0502eeb 100755 --- a/tools/pamusb-agent +++ b/tools/pamusb-agent @@ -220,10 +220,11 @@ def userDeviceThread(user): 'locking down user "%s"...' % (deviceName, userName)) for l in events['lock']: - for cmd in l['cmd']: + if len(l['cmd']) != 0: + for cmd in l['cmd']: - logger.info('Running "%s"' % cmd) - subprocess.run(cmd.split(), env=l['env'], preexec_fn=runAs(uid, gid)) + logger.info('Running "%s"' % cmd) + subprocess.run(cmd.split(), env=l['env'], preexec_fn=runAs(uid, gid)) logger.info('Locked.') return @@ -238,10 +239,11 @@ def userDeviceThread(user): 'Unlocking user "%s"...' % userName) for l in events['unlock']: - for cmd in l['cmd']: + if len(l['cmd']) != 0: + for cmd in l['cmd']: - logger.info('Running "%s"' % cmd) - subprocess.run(cmd.split(), env=l['env'], preexec_fn=runAs(uid, gid)) + logger.info('Running "%s"' % cmd) + subprocess.run(cmd.split(), env=l['env'], preexec_fn=runAs(uid, gid)) logger.info('Unlocked.') return