From cd0a8217c83dbef867d71e03a0fab3763489ccfc Mon Sep 17 00:00:00 2001 From: Thomas Rusiecki Date: Sat, 9 Nov 2024 16:52:26 -0300 Subject: [PATCH] fixed mac not recovered properly --- evidence/parse.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/evidence/parse.py b/evidence/parse.py index 3ec476b..b98f840 100644 --- a/evidence/parse.py +++ b/evidence/parse.py @@ -4,6 +4,7 @@ import logging from dmidecode import DMIParse from json_repair import repair_json +from evidence.parse_details import get_lshw_child from evidence.models import Annotation from evidence.xapian import index @@ -12,6 +13,23 @@ from utils.constants import CHASSIS_DH logger = logging.getLogger('django') +def get_mac(lshw): + try: + if type(lshw) is dict: + hw = lshw + else: + hw = json.loads(lshw) + except json.decoder.JSONDecodeError: + hw = json.loads(repair_json(lshw)) + + networks = [] + get_lshw_child(hw, networks, 'network') + + if nets_sorted: + mac = nets_sorted[0]['serial'] + logger.debug("The snapshot has the following MAC: %s" , mac) + return mac + def get_network_cards(child, nets): if child['id'] == 'network' and "PCI:" in child.get("businfo"):