|
@@ -36,17 +36,16 @@ const u8 net_cdp_ethaddr[6] = { 0x01, 0x00, 0x0c, 0xcc, 0xcc, 0xcc };
|
|
|
|
|
|
#define CDP_TIMEOUT 250UL /* one packet every 250ms */
|
|
|
|
|
|
-static int CDPSeq;
|
|
|
-static int CDPOK;
|
|
|
+static int cdp_seq;
|
|
|
+static int cdp_ok;
|
|
|
|
|
|
-ushort CDPNativeVLAN;
|
|
|
-ushort CDPApplianceVLAN;
|
|
|
+ushort cdp_native_vlan;
|
|
|
+ushort cdp_appliance_vlan;
|
|
|
|
|
|
-static const uchar CDP_SNAP_hdr[8] = {
|
|
|
+static const uchar cdp_snap_hdr[8] = {
|
|
|
0xAA, 0xAA, 0x03, 0x00, 0x00, 0x0C, 0x20, 0x00 };
|
|
|
|
|
|
-static ushort
|
|
|
-CDP_compute_csum(const uchar *buff, ushort len)
|
|
|
+static ushort cdp_compute_csum(const uchar *buff, ushort len)
|
|
|
{
|
|
|
ushort csum;
|
|
|
int odd;
|
|
@@ -104,8 +103,7 @@ CDP_compute_csum(const uchar *buff, ushort len)
|
|
|
return csum;
|
|
|
}
|
|
|
|
|
|
-static int
|
|
|
-CDPSendTrigger(void)
|
|
|
+static int cdp_send_trigger(void)
|
|
|
{
|
|
|
uchar *pkt;
|
|
|
ushort *s;
|
|
@@ -130,8 +128,8 @@ CDPSendTrigger(void)
|
|
|
pkt += ETHER_HDR_SIZE;
|
|
|
|
|
|
/* SNAP header */
|
|
|
- memcpy((uchar *)pkt, CDP_SNAP_hdr, sizeof(CDP_SNAP_hdr));
|
|
|
- pkt += sizeof(CDP_SNAP_hdr);
|
|
|
+ memcpy((uchar *)pkt, cdp_snap_hdr, sizeof(cdp_snap_hdr));
|
|
|
+ pkt += sizeof(cdp_snap_hdr);
|
|
|
|
|
|
/* CDP header */
|
|
|
*pkt++ = 0x02; /* CDP version 2 */
|
|
@@ -210,8 +208,8 @@ CDPSendTrigger(void)
|
|
|
len = (uchar *)s - ((uchar *)net_tx_packet + ETHER_HDR_SIZE);
|
|
|
et->et_protlen = htons(len);
|
|
|
|
|
|
- len = ETHER_HDR_SIZE + sizeof(CDP_SNAP_hdr);
|
|
|
- chksum = CDP_compute_csum((uchar *)net_tx_packet + len,
|
|
|
+ len = ETHER_HDR_SIZE + sizeof(cdp_snap_hdr);
|
|
|
+ chksum = cdp_compute_csum((uchar *)net_tx_packet + len,
|
|
|
(uchar *)s - (net_tx_packet + len));
|
|
|
if (chksum == 0)
|
|
|
chksum = 0xFFFF;
|
|
@@ -221,19 +219,18 @@ CDPSendTrigger(void)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
-static void
|
|
|
-CDPTimeout(void)
|
|
|
+static void cdp_timeout_handler(void)
|
|
|
{
|
|
|
- CDPSeq++;
|
|
|
+ cdp_seq++;
|
|
|
|
|
|
- if (CDPSeq < 3) {
|
|
|
- NetSetTimeout(CDP_TIMEOUT, CDPTimeout);
|
|
|
- CDPSendTrigger();
|
|
|
+ if (cdp_seq < 3) {
|
|
|
+ NetSetTimeout(CDP_TIMEOUT, cdp_timeout_handler);
|
|
|
+ cdp_send_trigger();
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
/* if not OK try again */
|
|
|
- if (!CDPOK)
|
|
|
+ if (!cdp_ok)
|
|
|
NetStartAgain();
|
|
|
else
|
|
|
net_set_state(NETLOOP_SUCCESS);
|
|
@@ -247,15 +244,15 @@ void cdp_receive(const uchar *pkt, unsigned len)
|
|
|
ushort vlan, nvlan;
|
|
|
|
|
|
/* minimum size? */
|
|
|
- if (len < sizeof(CDP_SNAP_hdr) + 4)
|
|
|
+ if (len < sizeof(cdp_snap_hdr) + 4)
|
|
|
goto pkt_short;
|
|
|
|
|
|
/* check for valid CDP SNAP header */
|
|
|
- if (memcmp(pkt, CDP_SNAP_hdr, sizeof(CDP_SNAP_hdr)) != 0)
|
|
|
+ if (memcmp(pkt, cdp_snap_hdr, sizeof(cdp_snap_hdr)) != 0)
|
|
|
return;
|
|
|
|
|
|
- pkt += sizeof(CDP_SNAP_hdr);
|
|
|
- len -= sizeof(CDP_SNAP_hdr);
|
|
|
+ pkt += sizeof(cdp_snap_hdr);
|
|
|
+ len -= sizeof(cdp_snap_hdr);
|
|
|
|
|
|
/* Version of CDP protocol must be >= 2 and TTL != 0 */
|
|
|
if (pkt[0] < 0x02 || pkt[1] == 0)
|
|
@@ -269,7 +266,7 @@ void cdp_receive(const uchar *pkt, unsigned len)
|
|
|
printf("**WARNING: CDP packet received with a protocol version "
|
|
|
"%d > 2\n", pkt[0] & 0xff);
|
|
|
|
|
|
- if (CDP_compute_csum(pkt, len) != 0)
|
|
|
+ if (cdp_compute_csum(pkt, len) != 0)
|
|
|
return;
|
|
|
|
|
|
pkt += 4;
|
|
@@ -340,28 +337,27 @@ void cdp_receive(const uchar *pkt, unsigned len)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- CDPApplianceVLAN = vlan;
|
|
|
- CDPNativeVLAN = nvlan;
|
|
|
+ cdp_appliance_vlan = vlan;
|
|
|
+ cdp_native_vlan = nvlan;
|
|
|
|
|
|
- CDPOK = 1;
|
|
|
+ cdp_ok = 1;
|
|
|
return;
|
|
|
|
|
|
- pkt_short:
|
|
|
+pkt_short:
|
|
|
printf("** CDP packet is too short\n");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
-void
|
|
|
-CDPStart(void)
|
|
|
+void cdp_start(void)
|
|
|
{
|
|
|
printf("Using %s device\n", eth_get_name());
|
|
|
- CDPSeq = 0;
|
|
|
- CDPOK = 0;
|
|
|
+ cdp_seq = 0;
|
|
|
+ cdp_ok = 0;
|
|
|
|
|
|
- CDPNativeVLAN = htons(-1);
|
|
|
- CDPApplianceVLAN = htons(-1);
|
|
|
+ cdp_native_vlan = htons(-1);
|
|
|
+ cdp_appliance_vlan = htons(-1);
|
|
|
|
|
|
- NetSetTimeout(CDP_TIMEOUT, CDPTimeout);
|
|
|
+ NetSetTimeout(CDP_TIMEOUT, cdp_timeout_handler);
|
|
|
|
|
|
- CDPSendTrigger();
|
|
|
+ cdp_send_trigger();
|
|
|
}
|