mirror of
https://github.com/sshuttle/sshuttle.git
synced 2025-02-27 07:41:20 +01:00
32 lines
664 B
Python
32 lines
664 B
Python
|
#!/usr/bin/env python
|
||
|
import sys, os, re, subprocess
|
||
|
|
||
|
prompt = ' '.join(sys.argv[1:2]).replace('"', "'")
|
||
|
|
||
|
if 'yes/no' in prompt:
|
||
|
print "yes"
|
||
|
sys.exit(0)
|
||
|
|
||
|
script="""
|
||
|
tell application "Finder"
|
||
|
activate
|
||
|
display dialog "%s" \
|
||
|
with title "Sshuttle SSH Connection" \
|
||
|
default answer "" \
|
||
|
with icon caution \
|
||
|
with hidden answer
|
||
|
end tell
|
||
|
""" % prompt
|
||
|
|
||
|
p = subprocess.Popen(['osascript', '-e', script], stdout=subprocess.PIPE)
|
||
|
out = p.stdout.read()
|
||
|
rv = p.wait()
|
||
|
if rv:
|
||
|
# if they press the cancel button, it returns nonzero
|
||
|
sys.exit(1)
|
||
|
g = re.match("text returned:(.*), button returned:.*", out)
|
||
|
if not g:
|
||
|
sys.exit(2)
|
||
|
print g.group(1)
|
||
|
|