diff --git a/hbd/server/udp.py b/hbd/server/udp.py index eef799c..afc4a3d 100644 --- a/hbd/server/udp.py +++ b/hbd/server/udp.py @@ -373,8 +373,11 @@ def handle_datagram(msg: dict, addr, transport, ctx: dict): # If os_info reports an owner and none is configured server-side, apply it if plugin_name == "os_info": - if not host.owner: - host.owner = plugin_data.get("owner", config_mod.get_default_owner(cfg)) + config_owner = config_mod.get_host_access(cfg, uname).get("owner") + default_owner = config_mod.get_default_owner(cfg) + inferred_owner = plugin_data.get("owner", config_owner or default_owner) + host.owner = inferred_owner + logger.info(f"owner for {uname} is '{host.owner}") if DEBUG > 1: print(f"Stored plugin data for {uname}: {plugin_name}")