If the checksum computed over the port happens to be 0, the LLDPDU is
never scheduled for emission on this port. We ensure that a computed
checksum is never 0. If two different ports happen to have the same
checksum, we consider it unlikely enough to bear with the fact that the
timer will not be reset in this case.
hardware->h_ifname);
continue;
}
- cksum = frame_checksum(output, output_len, 0);
+ /* Port change is detected by computing a checksum. 0 means the
+ * checksum never was computed (new interface). */
+ cksum = frame_checksum(output, output_len, 0);
+ cksum &= 1;
free(output);
if (cksum != hardware->h_lport_cksum) {
log_debug("localchassis",