From 263e02d164ba6fbdcba4e90e657ab8f0377d2471 Mon Sep 17 00:00:00 2001 From: Pierre LALET <pierre.lalet@cea.fr> Date: Sun, 20 Aug 2017 03:19:02 +0200 Subject: [PATCH] Enable loading the tls layer like other layers --- scapy/all.py | 5 ----- scapy/layers/all.py | 7 +++++-- scapy/main.py | 3 ++- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/scapy/all.py b/scapy/all.py index 9ad308de..9d6e5b5d 100644 --- a/scapy/all.py +++ b/scapy/all.py @@ -38,11 +38,6 @@ from scapy.autorun import * from scapy.main import * from scapy.layers.all import * -if "tls" in conf.load_layers: - try: - from scapy.layers.tls.all import * - except ImportError: - pass from scapy.asn1.asn1 import * from scapy.asn1.ber import * diff --git a/scapy/layers/all.py b/scapy/layers/all.py index 561dcc8f..18e8e2a1 100644 --- a/scapy/layers/all.py +++ b/scapy/layers/all.py @@ -39,11 +39,14 @@ def _import_star(m): __all__.append(name) globals()[name] = sym +LAYER_ALIASES = { + "tls": "tls.all", +} + for _l in conf.load_layers: log_loading.debug("Loading layer %s" % _l) try: - if _l != "tls": - _import_star(_l) + _import_star(LAYER_ALIASES.get(_l, _l)) except Exception as e: log.warning("can't import layer %s: %s" % (_l,e)) diff --git a/scapy/main.py b/scapy/main.py index dbe06828..287bcd7d 100644 --- a/scapy/main.py +++ b/scapy/main.py @@ -18,6 +18,7 @@ import importlib ignored = list(six.moves.builtins.__dict__.keys()) from scapy.error import * +from scapy.layers.all import LAYER_ALIASES def _probe_config_file(cf): cf_path = os.path.join(os.path.expanduser("~"), cf) @@ -83,7 +84,7 @@ def load_module(name): _load("scapy.modules."+name) def load_layer(name): - _load("scapy.layers."+name) + _load("scapy.layers." + LAYER_ALIASES.get(name, name)) def load_contrib(name): try: -- GitLab