+ /* Here mgmt_addr_length stands for the management address length. */
+ mgmt_addr_length = EXTRACT_U_1(tptr);
+ tptr++;
+ tlen--;
+ cfm_tlv_len--;
+ ND_PRINT((ndo, "\n\t Management Address Length %u", mgmt_addr_length));
+ if (mgmt_addr_length) {
+ /* IEEE 802.1Q-2014 Section 21.5.3.7: Management Address */
+ if (cfm_tlv_len < mgmt_addr_length) {
+ ND_PRINT((ndo, "\n\t (TLV too short)"));
+ return;
+ }
+ cfm_tlv_len -= mgmt_addr_length;
+ /*
+ * XXX - this is a TransportDomain; print it as such.
+ */
+ hex_print(ndo, "\n\t Management Address: ", tptr, mgmt_addr_length);
+ tptr += mgmt_addr_length;
+ tlen -= mgmt_addr_length;
+ }
+ }
+ break;