def connect_openvpn(config, restart=False, sudopassword=None): log_debug('Connecting OpenVPN configuration: [%s]' % config) global _state if _sudo and sudopassword is None: sudopassword = utils.keyboard( heading=_settings.get_string(3012), hidden=True) openvpn = vpn.OpenVPN(_openvpn, _settings.get_datapath( config), ip=_ip, port=_port, args=_args, sudo=_sudo, sudopwd=sudopassword, debug=(_settings['debug'] == 'true')) try: if restart: openvpn.disconnect() _state = disconnected openvpn.connect() display_notification(_settings.get_string(4002) % os.path.splitext(os.path.basename(config))[0]) _state = connected except vpn.OpenVPNError as exception: if exception.errno == 1: _state = connected if utils.yesno(_settings.get_string(3002), _settings.get_string(3009), _settings.get_string(3010)): log_debug('User has decided to restart OpenVPN') connect_openvpn(config, True, sudopassword) else: log_debug('User has decided not to restart OpenVPN') else: utils.ok(_settings.get_string( 3002), _settings.get_string(3011), exception.string) _state = failed
def connect_openvpn(config, restart=False, sudopassword=None): log_debug('Connecting OpenVPN configuration: [%s]' % config) global _state if _sudo and _sudopwdrequired and sudopassword is None: sudopassword = utils.keyboard( heading=_settings.get_string(3012), hidden=True) openvpn = vpn.OpenVPN(_openvpn, _settings.get_datapath( config), ip=_ip, port=_port, args=_args, sudo=_sudo, sudopwd=sudopassword, debug=(_settings['debug'] == 'true')) try: if restart: openvpn.disconnect() _state = disconnected openvpn.connect() display_notification(_settings.get_string(4002) % os.path.splitext(os.path.basename(config))[0]) _state = connected except vpn.OpenVPNError as exception: if exception.errno == 1: _state = connected if utils.yesno(_settings.get_string(3002), _settings.get_string(3009), _settings.get_string(3010)): log_debug('User has decided to restart OpenVPN') connect_openvpn(config, True, sudopassword) else: log_debug('User has decided not to restart OpenVPN') else: utils.ok(_settings.get_string( 3002), _settings.get_string(3011), exception.string) _state = failed
def sudo_prefix(): prefix = '' if _settings['sudo'] == 'true': sudopwd = _settings['sudopwd'] if _settings['sudoprompt'] == 'true': sudopwd = utils.keyboard( heading=_settings.get_string(3003), hidden=True) if sudopwd is not None and len(sudopwd) > 0: prefix = 'echo \'%s\' | ' % sudopwd return '%ssudo -S ' % prefix return prefix
def import_ovpn(): path = utils.browse_files(_settings.get_string(3000), mask='.ovpn|.conf') if path and os.path.exists(path) and os.path.isfile(path): log_debug('Import: [%s]' % path) name = utils.keyboard(heading=_settings.get_string(3001)) if name and len(name) > 0: ovpn = _settings.get_datapath('%s.ovpn' % name) if os.path.exists(ovpn) and not utils.yesno(_settings.get_string(3002), _settings.get_string(3003)): utils.ok(_settings.get_string( 3002), _settings.get_string(3004)) else: log_debug('Copying [%s] to [%s]' % (path, ovpn)) shutil.copyfile(path, ovpn) else: utils.ok(_settings.get_string(3002), _settings.get_string(3005))
add_custom_url(recent, presets=False) xbmcplugin.endOfDirectory(int(__settings__.get_argv(1))) except __tunein__.TuneInError as e: utils.ok(__addonname__, __settings__.get_string(3011), __settings__.get_string(3010)) log_error('TuneInError: %s %s' % (e.status, e.fault)) except urllib2.URLError as e: utils.ok(__addonname__, __settings__.get_string(3009), __settings__.get_string(3010)) log_error('URLError: %s' % e) # Search for a radio station. elif __path__ == 'search': try: searchstring = utils.keyboard(heading=__settings__.get_string(3000)) if (searchstring and len(searchstring) > 0): results = __tunein__.search(searchstring, 'standard') process_tunein_json(results) xbmcplugin.endOfDirectory(int(__settings__.get_argv(1))) except __tunein__.TuneInError as e: utils.ok(__addonname__, __settings__.get_string(3011), __settings__.get_string(3010)) log_error('TuneInError: %s %s' % (e.status, e.fault)) except urllib2.URLError as e: utils.ok(__addonname__, __settings__.get_string(3009), __settings__.get_string(3010)) log_error('URLError: %s' % e) # Play custom url.