diff --git a/dockers/docker-lldp/lldpmgrd b/dockers/docker-lldp/lldpmgrd index 753aa678eaee..955f4a5334ad 100755 --- a/dockers/docker-lldp/lldpmgrd +++ b/dockers/docker-lldp/lldpmgrd @@ -245,10 +245,13 @@ class LldpManager(daemon_base.DaemonBase): if not op in ["SET", "DEL"]: return self.log_info("Device Config Opcode: {} Dict {} Key {}".format(op, device_dict, key)) - hostname = device_dict.get("hostname") - if not self.hostname == hostname: - self.log_info("Hostname changed old {0}, new {1}".format(self.hostname, hostname)) - self.update_hostname(hostname) + # only check hostname in key:localhost + if key == "localhost": + hostname = device_dict.get("hostname") + # check if hostname is valid and not the same as before + if hostname and self.hostname != hostname: + self.log_info("Hostname changed old {0}, new {1}".format(self.hostname, hostname)) + self.update_hostname(hostname) def lldp_process_port_table_event(self, key, op, fvp): if (key != "PortInitDone") and (key != "PortConfigDone"):