MCPcopy Create free account
hub / github.com/dedsec1121fk/DedSec / extract_device_name

Function extract_device_name

Scripts/Developer Base/Devices Finder.py:607–634  ·  view source on GitHub ↗
(service_info, vendor="", extra_info=None)

Source from the content-addressed store, hash-verified

605
606
607def extract_device_name(service_info, vendor="", extra_info=None):
608 extra_info = extra_info or {}
609 search_text = service_info or ""
610 patterns = [
611 r"http-title:\s*([^|]+)",
612 r"Server:\s*([^|]+)",
613 r"ssl-cert:\s*subject=.*?commonName=([^/|]+)",
614 ]
615 for pattern in patterns:
616 match = re.search(pattern, search_text, re.IGNORECASE)
617 if match:
618 return match.group(1).strip()
619
620 for key in ("hostname", "mdns_name"):
621 if extra_info.get(key):
622 return extra_info[key]
623
624 upnp = extra_info.get("upnp", {})
625 if upnp.get("server"):
626 return upnp["server"][:80]
627
628 snmp = extra_info.get("snmp", {})
629 if snmp.get("sysname"):
630 return snmp["sysname"]
631
632 if vendor:
633 return vendor
634 return ""
635
636
637

Callers 1

scan_networkFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected