diff options
Diffstat (limited to 'contrib/fjdisplay.py')
-rwxr-xr-x | contrib/fjdisplay.py | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/contrib/fjdisplay.py b/contrib/fjdisplay.py index 3f409545f..7b2db549a 100755 --- a/contrib/fjdisplay.py +++ b/contrib/fjdisplay.py | |||
@@ -8,23 +8,25 @@ usage = """fjdisplay.py name-of-firejail | |||
8 | returns the display in the form of ':NNN' | 8 | returns the display in the form of ':NNN' |
9 | """ | 9 | """ |
10 | 10 | ||
11 | |||
11 | def getfirejails(): | 12 | def getfirejails(): |
12 | output = subprocess.check_output(['firemon','--x11']) | 13 | output = subprocess.check_output(['firemon', '--x11']) |
13 | firejails = {} | 14 | firejails = {} |
14 | name = '' | 15 | name = '' |
15 | for line in output.split('\n'): | 16 | for line in output.split('\n'): |
16 | namematch = re.search('--name=(\w+\S*)',line) | 17 | namematch = re.search('--name=(\w+\S*)', line) |
17 | if namematch: | 18 | if namematch: |
18 | name = namematch.group(1) | 19 | name = namematch.group(1) |
19 | displaymatch = re.search('DISPLAY (:\d+)',line) | 20 | displaymatch = re.search('DISPLAY (:\d+)', line) |
20 | if displaymatch: | 21 | if displaymatch: |
21 | firejails[name] = displaymatch.group(1) | 22 | firejails[name] = displaymatch.group(1) |
22 | return firejails | 23 | return firejails |
23 | 24 | ||
25 | |||
24 | def getdisplay(name): | 26 | def getdisplay(name): |
25 | firejails = getfirejails() | 27 | firejails = getfirejails() |
26 | fjlist = '\n'.join(firejails.keys()) | 28 | fjlist = '\n'.join(firejails.keys()) |
27 | namere = re.compile('^'+name+'.*', re.MULTILINE) | 29 | namere = re.compile('^' + name + '.*', re.MULTILINE) |
28 | matchingjails = namere.findall(fjlist) | 30 | matchingjails = namere.findall(fjlist) |
29 | if len(matchingjails) == 1: | 31 | if len(matchingjails) == 1: |
30 | return firejails[matchingjails[0]] | 32 | return firejails[matchingjails[0]] |
@@ -33,6 +35,7 @@ def getdisplay(name): | |||
33 | else: | 35 | else: |
34 | raise NameError("ambiguous firejail name") | 36 | raise NameError("ambiguous firejail name") |
35 | 37 | ||
38 | |||
36 | if __name__ == '__main__': | 39 | if __name__ == '__main__': |
37 | if '-h' in sys.argv or '--help' in sys.argv or len(sys.argv) > 2: | 40 | if '-h' in sys.argv or '--help' in sys.argv or len(sys.argv) > 2: |
38 | print(usage) | 41 | print(usage) |
@@ -40,4 +43,4 @@ if __name__ == '__main__': | |||
40 | if len(sys.argv) == 1: | 43 | if len(sys.argv) == 1: |
41 | print(getfirejails()) | 44 | print(getfirejails()) |
42 | if len(sys.argv) == 2: | 45 | if len(sys.argv) == 2: |
43 | print (getdisplay(sys.argv[1])) | 46 | print(getdisplay(sys.argv[1])) |