Skip to content
Snippets Groups Projects
Commit 08fe8253 authored by KERDREUX Jerome's avatar KERDREUX Jerome
Browse files

Remote debug is now disabled by default

parent fae0f46b
No related branches found
No related tags found
No related merge requests found
# Default configuration # Default configuration
import os import os
...@@ -7,20 +6,23 @@ import binascii ...@@ -7,20 +6,23 @@ import binascii
from configobj import ConfigObj from configobj import ConfigObj
# Default settings # Default settings
DEF_ADDR = '224.0.29.200' DEF_ADDR = "224.0.29.200"
DEF_PORT = 1236 DEF_PORT = 1236
DEF_HOPS = 10 DEF_HOPS = 10
DEF_ALIVE_TIMER = 100 DEF_ALIVE_TIMER = 100
DEF_CIPHER_WINDOW = 60 * 2 DEF_CIPHER_WINDOW = 60 * 2
DEF_QUEUE_SIZE = 10 DEF_QUEUE_SIZE = 10
DEF_LOG_LEVEL = 'DEBUG' DEF_LOG_LEVEL = "DEBUG"
DEF_LOG_PATH = '/var/log/xaal' DEF_LOG_PATH = "/var/log/xaal"
DEF_REMOTE_CONSOLE = False
STACK_VERSION = 7 STACK_VERSION = 7
class Config: class Config:
def __init__(self): def __init__(self):
self.conf_dir = os.environ.get('XAAL_CONF_DIR', os.path.expanduser("~/.xaal")) self.conf_dir = os.environ.get("XAAL_CONF_DIR", os.path.expanduser("~/.xaal"))
self.address = DEF_ADDR self.address = DEF_ADDR
self.port = DEF_PORT self.port = DEF_PORT
self.hops = DEF_HOPS self.hops = DEF_HOPS
...@@ -29,26 +31,29 @@ class Config: ...@@ -29,26 +31,29 @@ class Config:
self.queue_size = DEF_QUEUE_SIZE self.queue_size = DEF_QUEUE_SIZE
self.log_level = DEF_LOG_LEVEL self.log_level = DEF_LOG_LEVEL
self.log_path = DEF_LOG_PATH self.log_path = DEF_LOG_PATH
self.key = b'' self.remote_console = DEF_REMOTE_CONSOLE
self.key = b""
self.STACK_VERSION = STACK_VERSION self.STACK_VERSION = STACK_VERSION
def load(self, name='xaal.ini'): def load(self, name="xaal.ini"):
filename = os.path.join(self.conf_dir, name) filename = os.path.join(self.conf_dir, name)
if not os.path.isfile(filename): if not os.path.isfile(filename):
raise FileNotFoundError(f"Unable to load xAAL config file [{filename}]") raise FileNotFoundError(f"Unable to load xAAL config file [{filename}]")
cfg = ConfigObj(filename) cfg = ConfigObj(filename)
self.address = self.safe_string(cfg.get('address'), DEF_ADDR) self.address = self.safe_string(cfg.get("address"), DEF_ADDR)
self.port = self.safe_int(cfg.get('port'), DEF_PORT) self.port = self.safe_int(cfg.get("port"), DEF_PORT)
self.hops = self.safe_int(cfg.get('hops'), DEF_HOPS) self.hops = self.safe_int(cfg.get("hops"), DEF_HOPS)
self.alive_timer = self.safe_int(cfg.get('alive_timer'), DEF_ALIVE_TIMER) self.alive_timer = self.safe_int(cfg.get("alive_timer"), DEF_ALIVE_TIMER)
self.cipher_window = self.safe_int(cfg.get('cipher_window'), DEF_CIPHER_WINDOW) self.cipher_window = self.safe_int(cfg.get("cipher_window"), DEF_CIPHER_WINDOW)
self.queue_size = self.safe_int(cfg.get('queue_size'), DEF_QUEUE_SIZE) self.queue_size = self.safe_int(cfg.get("queue_size"), DEF_QUEUE_SIZE)
self.log_level = self.safe_string(cfg.get('log_level'), DEF_LOG_LEVEL) self.log_level = self.safe_string(cfg.get("log_level"), DEF_LOG_LEVEL)
self.log_path = self.safe_string(cfg.get('log_path'), DEF_LOG_PATH) self.log_path = self.safe_string(cfg.get("log_path"), DEF_LOG_PATH)
key = cfg.get('key', None) self.remote_console = self.safe_bool(cfg.get("remote_console"), DEF_REMOTE_CONSOLE)
key = cfg.get("key", None)
if key and type(key) is str: if key and type(key) is str:
self.key = binascii.unhexlify(key.encode('utf-8')) self.key = binascii.unhexlify(key.encode("utf-8"))
else: else:
raise ValueError(f"Key not set in config file [{filename}]") raise ValueError(f"Key not set in config file [{filename}]")
...@@ -73,6 +78,14 @@ class Config: ...@@ -73,6 +78,14 @@ class Config:
except (ValueError, TypeError): except (ValueError, TypeError):
return default return default
@staticmethod
def safe_bool(value, default):
if value is None:
return default
if value.lower() == "true":
return True
return False
config = Config() config = Config()
try: try:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment