|
@@ -40,10 +40,10 @@
|
|
*
|
|
*
|
|
* DHCP:
|
|
* DHCP:
|
|
*
|
|
*
|
|
- * Prerequisites: - own ethernet address
|
|
|
|
- * We want: - IP, Netmask, ServerIP, Gateway IP
|
|
|
|
- * - bootfilename, lease time
|
|
|
|
- * Next step: - TFTP
|
|
|
|
|
|
+ * Prerequisites: - own ethernet address
|
|
|
|
+ * We want: - IP, Netmask, ServerIP, Gateway IP
|
|
|
|
+ * - bootfilename, lease time
|
|
|
|
+ * Next step: - TFTP
|
|
*
|
|
*
|
|
* TFTP:
|
|
* TFTP:
|
|
*
|
|
*
|
|
@@ -67,7 +67,7 @@
|
|
*
|
|
*
|
|
* SNTP:
|
|
* SNTP:
|
|
*
|
|
*
|
|
- * Prerequisites: - own ethernet address
|
|
|
|
|
|
+ * Prerequisites: - own ethernet address
|
|
* - own IP address
|
|
* - own IP address
|
|
* We want: - network time
|
|
* We want: - network time
|
|
* Next step: none
|
|
* Next step: none
|
|
@@ -185,7 +185,7 @@ static int net_check_prereq (proto_t protocol);
|
|
IPaddr_t NetArpWaitPacketIP;
|
|
IPaddr_t NetArpWaitPacketIP;
|
|
IPaddr_t NetArpWaitReplyIP;
|
|
IPaddr_t NetArpWaitReplyIP;
|
|
uchar *NetArpWaitPacketMAC; /* MAC address of waiting packet's destination */
|
|
uchar *NetArpWaitPacketMAC; /* MAC address of waiting packet's destination */
|
|
-uchar *NetArpWaitTxPacket; /* THE transmit packet */
|
|
|
|
|
|
+uchar *NetArpWaitTxPacket; /* THE transmit packet */
|
|
int NetArpWaitTxPacketSize;
|
|
int NetArpWaitTxPacketSize;
|
|
uchar NetArpWaitPacketBuf[PKTSIZE_ALIGN + PKTALIGN];
|
|
uchar NetArpWaitPacketBuf[PKTSIZE_ALIGN + PKTALIGN];
|
|
ulong NetArpWaitTimerStart;
|
|
ulong NetArpWaitTimerStart;
|
|
@@ -212,8 +212,8 @@ void ArpRequest (void)
|
|
arp->ar_pln = 4;
|
|
arp->ar_pln = 4;
|
|
arp->ar_op = htons (ARPOP_REQUEST);
|
|
arp->ar_op = htons (ARPOP_REQUEST);
|
|
|
|
|
|
- memcpy (&arp->ar_data[0], NetOurEther, 6); /* source ET addr */
|
|
|
|
- NetWriteIP ((uchar *) & arp->ar_data[6], NetOurIP); /* source IP addr */
|
|
|
|
|
|
+ memcpy (&arp->ar_data[0], NetOurEther, 6); /* source ET addr */
|
|
|
|
+ NetWriteIP ((uchar *) & arp->ar_data[6], NetOurIP); /* source IP addr */
|
|
for (i = 10; i < 16; ++i) {
|
|
for (i = 10; i < 16; ++i) {
|
|
arp->ar_data[i] = 0; /* dest ET addr = 0 */
|
|
arp->ar_data[i] = 0; /* dest ET addr = 0 */
|
|
}
|
|
}
|
|
@@ -372,11 +372,11 @@ restart:
|
|
*/
|
|
*/
|
|
NetOurIP = 0;
|
|
NetOurIP = 0;
|
|
NetServerIP = getenv_IPaddr ("serverip");
|
|
NetServerIP = getenv_IPaddr ("serverip");
|
|
- NetOurVLAN = getenv_VLAN("vlan"); /* VLANs must be read */
|
|
|
|
- NetOurNativeVLAN = getenv_VLAN("nvlan");
|
|
|
|
- case CDP:
|
|
|
|
- NetOurVLAN = getenv_VLAN("vlan"); /* VLANs must be read */
|
|
|
|
- NetOurNativeVLAN = getenv_VLAN("nvlan");
|
|
|
|
|
|
+ NetOurVLAN = getenv_VLAN("vlan"); /* VLANs must be read */
|
|
|
|
+ NetOurNativeVLAN = getenv_VLAN("nvlan");
|
|
|
|
+ case CDP:
|
|
|
|
+ NetOurVLAN = getenv_VLAN("vlan"); /* VLANs must be read */
|
|
|
|
+ NetOurNativeVLAN = getenv_VLAN("nvlan");
|
|
break;
|
|
break;
|
|
default:
|
|
default:
|
|
break;
|
|
break;
|
|
@@ -1429,7 +1429,7 @@ NetReceive(volatile uchar * inpkt, int len)
|
|
|
|
|
|
#ifdef CONFIG_UDP_CHECKSUM
|
|
#ifdef CONFIG_UDP_CHECKSUM
|
|
if (ip->udp_xsum != 0) {
|
|
if (ip->udp_xsum != 0) {
|
|
- ulong xsum;
|
|
|
|
|
|
+ ulong xsum;
|
|
ushort *sumptr;
|
|
ushort *sumptr;
|
|
ushort sumlen;
|
|
ushort sumlen;
|
|
|
|
|
|
@@ -1444,24 +1444,24 @@ NetReceive(volatile uchar * inpkt, int len)
|
|
sumptr = (ushort *) &(ip->udp_src);
|
|
sumptr = (ushort *) &(ip->udp_src);
|
|
|
|
|
|
while (sumlen > 1) {
|
|
while (sumlen > 1) {
|
|
- ushort sumdata;
|
|
|
|
|
|
+ ushort sumdata;
|
|
|
|
|
|
sumdata = *sumptr++;
|
|
sumdata = *sumptr++;
|
|
xsum += ntohs(sumdata);
|
|
xsum += ntohs(sumdata);
|
|
sumlen -= 2;
|
|
sumlen -= 2;
|
|
}
|
|
}
|
|
if (sumlen > 0) {
|
|
if (sumlen > 0) {
|
|
- ushort sumdata;
|
|
|
|
|
|
+ ushort sumdata;
|
|
|
|
|
|
sumdata = *(unsigned char *) sumptr;
|
|
sumdata = *(unsigned char *) sumptr;
|
|
- sumdata = (sumdata << 8) & 0xff00;
|
|
|
|
|
|
+ sumdata = (sumdata << 8) & 0xff00;
|
|
xsum += sumdata;
|
|
xsum += sumdata;
|
|
}
|
|
}
|
|
while ((xsum >> 16) != 0) {
|
|
while ((xsum >> 16) != 0) {
|
|
- xsum = (xsum & 0x0000ffff) + ((xsum >> 16) & 0x0000ffff);
|
|
|
|
|
|
+ xsum = (xsum & 0x0000ffff) + ((xsum >> 16) & 0x0000ffff);
|
|
}
|
|
}
|
|
if ((xsum != 0x00000000) && (xsum != 0x0000ffff)) {
|
|
if ((xsum != 0x00000000) && (xsum != 0x0000ffff)) {
|
|
- printf(" UDP wrong checksum %08x %08x\n", xsum, ntohs(ip->udp_xsum));
|
|
|
|
|
|
+ printf(" UDP wrong checksum %08x %08x\n", xsum, ntohs(ip->udp_xsum));
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -1517,7 +1517,7 @@ static int net_check_prereq (proto_t protocol)
|
|
return (1);
|
|
return (1);
|
|
}
|
|
}
|
|
#if (CONFIG_COMMANDS & (CFG_CMD_PING | CFG_CMD_SNTP))
|
|
#if (CONFIG_COMMANDS & (CFG_CMD_PING | CFG_CMD_SNTP))
|
|
- common:
|
|
|
|
|
|
+ common:
|
|
#endif
|
|
#endif
|
|
|
|
|
|
if (NetOurIP == 0) {
|
|
if (NetOurIP == 0) {
|