38 lines
708 B
Plaintext
38 lines
708 B
Plaintext
|
#!/usr/bin/env python3
|
||
|
|
||
|
import sys
|
||
|
import os
|
||
|
from subprocess import call
|
||
|
|
||
|
host, port = sys.argv[1:3]
|
||
|
proxy = os.environ.get('HTTP_PROXY')
|
||
|
|
||
|
if proxy:
|
||
|
proxy = proxy.strip('/')
|
||
|
if proxy[:7] == 'http://':
|
||
|
proxy = proxy[7:]
|
||
|
elif proxy[:8] == 'https://':
|
||
|
proxy = proxy[8:]
|
||
|
s = proxy.split('@')
|
||
|
user = None
|
||
|
if len(s) == 2:
|
||
|
user, proxy = s
|
||
|
args = ['proxytunnel', '-p', proxy, '-d', host + ':' + port]
|
||
|
if user:
|
||
|
args += ['-P', user]
|
||
|
call(args)
|
||
|
|
||
|
else:
|
||
|
call(['nc', host, port])
|
||
|
|
||
|
|
||
|
# #!/usr/bin/env bash
|
||
|
# host="$1"
|
||
|
# port="$2"
|
||
|
#
|
||
|
# if [ -z $HTTP_PROXY ]; then
|
||
|
# nc "$host" "$port"
|
||
|
# else
|
||
|
# proxytunnel -p "$HTTP_PROXY" -d "$host:$port"
|
||
|
# fi
|