Commit 8cba4e19 authored by Guillaume Bury's avatar Guillaume Bury

Re-added openvpn-args

parent cb4cb822
...@@ -5,7 +5,6 @@ import openvpn ...@@ -5,7 +5,6 @@ import openvpn
VIFIB_NET = "2001:db8:42::/48" VIFIB_NET = "2001:db8:42::/48"
# TODO : How do we get our vifib ip ? # TODO : How do we get our vifib ip ?
def babel(network_ip, network_mask, verbose_level): def babel(network_ip, network_mask, verbose_level):
...@@ -31,14 +30,17 @@ def getConfig(): ...@@ -31,14 +30,17 @@ def getConfig():
global config global config
parser = argparse.ArgumentParser(description='Resilient virtual private network application') parser = argparse.ArgumentParser(description='Resilient virtual private network application')
_ = parser.add_argument _ = parser.add_argument
_('--dh', required=True, help='Path to dh file') _('--dh', required=True,
_('--babel-state', help='Path to babeld state-file') help='Path to dh file')
_('--verbose', '-v', default='0', help='Defines the verbose level') _('--babel-state',
_('--ca', required=True, help='Path to the certificate authority') help='Path to babeld state-file')
_('--key', required=True, help='Path to the rsa_key') _('--verbose', '-v', default='0',
_('--cert', required=True, help='Pah to the certificate') help='Defines the verbose level')
# Temporary args # Temporary args
_('--ip', required=True, help='IPv6 of the server') _('--ip', required=True, help='IPv6 of the server')
# Openvpn options
_('openvpn_args', nargs=argparse.REMAINDER,
help="Common OpenVPN options (e.g. certificates)")
config = parser.parse_args() config = parser.parse_args()
...@@ -48,7 +50,6 @@ def main(): ...@@ -48,7 +50,6 @@ def main():
serverProcess = openvpn.server(config, config.ip) serverProcess = openvpn.server(config, config.ip)
else: else:
client1Process = openvpn.client(config, '10.1.4.2') client1Process = openvpn.client(config, '10.1.4.2')
if __name__ == "__main__": if __name__ == "__main__":
main() main()
......
import subprocess import subprocess
def openvpn(config, *args): def openvpn(config, *args ):
args = ['openvpn', args = ['openvpn',
'--dev', 'tap', '--dev', 'tap',
'--ca', config.ca, '--ca', config.ca,
...@@ -12,8 +12,15 @@ def openvpn(config, *args): ...@@ -12,8 +12,15 @@ def openvpn(config, *args):
'--user', 'nobody', '--user', 'nobody',
'--group', 'nogroup', '--group', 'nogroup',
'--verb', config.verbose '--verb', config.verbose
] + list(args) ] + list(args) + config.openvpn_args
return subprocess.Popen(args) #stdin = kw.pop('stdin', None)
#stdout = kw.pop('stdout', None)
#stderr = kw.pop('stderr', None)
#for i in kw.iteritems():
# args.append('--%s=%s' % i)
return subprocess.Popen(args
#stdin=stdin, stdout=stdout, stderr=stderr,
)
# TODO : set iface up when creating a server/client # TODO : set iface up when creating a server/client
# ! check working directory before launching up script ? # ! check working directory before launching up script ?
...@@ -29,8 +36,8 @@ def server(config, ip): ...@@ -29,8 +36,8 @@ def server(config, ip):
def client(config, serverIp): def client(config, serverIp):
return openvpn(config, return openvpn(config,
'--nobind', '--nobind',
'--tls-client', '--tls-client',
'--remote', serverIp, '--remote', serverIp,
'--up', 'up-client') '--up', 'up-client')
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment