+#include "extract.h"
+#include "nlpid.h"
+
+static const char tstr[] = "[|cdp]";
+
+#define CDP_HEADER_LEN 4
+#define CDP_HEADER_VERSION_OFFSET 0
+#define CDP_HEADER_TTL_OFFSET 1
+#define CDP_HEADER_CHECKSUM_OFFSET 2
+
+#define CDP_TLV_HEADER_LEN 4
+#define CDP_TLV_TYPE_OFFSET 0
+#define CDP_TLV_LEN_OFFSET 2
+
+static const struct tok cdp_tlv_values[] = {
+ { 0x01, "Device-ID"},
+ { 0x02, "Address"},
+ { 0x03, "Port-ID"},
+ { 0x04, "Capability"},
+ { 0x05, "Version String"},
+ { 0x06, "Platform"},
+ { 0x07, "Prefixes"},
+ { 0x08, "Protocol-Hello option"},
+ { 0x09, "VTP Management Domain"},
+ { 0x0a, "Native VLAN ID"},
+ { 0x0b, "Duplex"},
+ { 0x0e, "ATA-186 VoIP VLAN request"},
+ { 0x0f, "ATA-186 VoIP VLAN assignment"},
+ { 0x10, "power consumption"},
+ { 0x11, "MTU"},
+ { 0x12, "AVVID trust bitmap"},
+ { 0x13, "AVVID untrusted ports CoS"},
+ { 0x14, "System Name"},
+ { 0x15, "System Object ID (not decoded)"},
+ { 0x16, "Management Addresses"},
+ { 0x17, "Physical Location"},
+ { 0, NULL}
+};