c6975762 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Work-around for brain-damaged Cisco equipment with arp-proxy
Cisco's arp-proxy feature fails to ignore the link-local address range This means that a link-local device on a network with this Ci
net: Work-around for brain-damaged Cisco equipment with arp-proxy
Cisco's arp-proxy feature fails to ignore the link-local address range This means that a link-local device on a network with this Cisco equipment will reply to ARP requests for our device (in addition to our reply). If we happen to reply first, the requester's ARP table will be populated with our MAC address, and one packet will be sent to us... shortly following this, the requester will get an ARP reply from the Cisco equipment telling the requester to send packets their way instead of to our device from now on. This work-around detects this link-local condition and will delay replying to the ARP request for 5ms so that the first packet is sent to the Cisco equipment and all following packets are sent to our device.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
d22c338e | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Add link-local addressing support
Code based on networking/zcip.c in busybox commit 8531d76a15890c2c535908ce888b2e2aed35b172
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> |
22804189 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Separate ArpRequest() into lower-level func
Link-local support will need to send ARP packets, but needs more fine-grained control over the contents. Split the implementation into 2 parts so li
net: Separate ArpRequest() into lower-level func
Link-local support will need to send ARP packets, but needs more fine-grained control over the contents. Split the implementation into 2 parts so link-local can share the code.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
e94070c4 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Don't copy every packet that waits for an ARP
Use the NetArpTxPacket for the ARP packet, not to hold what used to be in NetTxPacket. This saves a copy and makes the code easier to understand.
net: Don't copy every packet that waits for an ARP
Use the NetArpTxPacket for the ARP packet, not to hold what used to be in NetTxPacket. This saves a copy and makes the code easier to understand.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
show more ...
|
46c495d5 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Fix net buffer initialization
A new non-static function net_init() will initialize buffers and read from the environment. Only update from the env on each entry to NetLoop().
Signed-off-by: J
net: Fix net buffer initialization
A new non-static function net_init() will initialize buffers and read from the environment. Only update from the env on each entry to NetLoop().
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
show more ...
|
cb1c9911 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Remove unused parameter from NetInitLoop()
Noone uses it.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> |
f1d2d284 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Remove static allocation for MAC address in PingSend()
Don't force ARP clients to return the MAC address if they don't care (such as ping)
Signed-off-by: Joe Hershberger <joe.hershberger@ni.co
net: Remove static allocation for MAC address in PingSend()
Don't force ARP clients to return the MAC address if they don't care (such as ping)
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
2c00e099 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Add option CONFIG_BOOTP_MAY_FAIL
This is useful if you want to look for a DHCP server, but try some other settings if not available.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Ack
net: Add option CONFIG_BOOTP_MAY_FAIL
This is useful if you want to look for a DHCP server, but try some other settings if not available.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
show more ...
|
1752f0fd | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Fix unused variable compile warning
If CONFIG_BOOTP_SERVERIP is not defined, unused variable warning is reported. This was fixed upstream using a compiler feature instead of a simple reorder o
net: Fix unused variable compile warning
If CONFIG_BOOTP_SERVERIP is not defined, unused variable warning is reported. This was fixed upstream using a compiler feature instead of a simple reorder of the statements.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
e7111015 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Add net_update_ether() to handle ARP and Ping replies
When the network is VLAN or SNAP, net_update_ether() will preserve the original Ethernet packet header and simply replace the src and dest
net: Add net_update_ether() to handle ARP and Ping replies
When the network is VLAN or SNAP, net_update_ether() will preserve the original Ethernet packet header and simply replace the src and dest MACs and the protocol
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
show more ...
|
ece223b5 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Refactor to separate the UDP handler from the ARP handler
Call a built-in dummy if none is registered... don't require protocols to register a handler (eliminating dummies) NetConsole now uses
net: Refactor to separate the UDP handler from the ARP handler
Call a built-in dummy if none is registered... don't require protocols to register a handler (eliminating dummies) NetConsole now uses the ARP handler when waiting on arp (instead of needing a #define hack in arp.c) Clear handlers at the end of net loop
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
show more ...
|
22f6e99d | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Refactor to protect access to the NetState variable
Changes to NetState now go through an accessor function called net_set_state()
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> |
adf5d93e | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Refactor to use NetSendPacket instead of eth_send directly
Use this entry-point consistently across the net/ code Use a static inline function to preserve code size
Signed-off-by: Joe Hershber
net: Refactor to use NetSendPacket instead of eth_send directly
Use this entry-point consistently across the net/ code Use a static inline function to preserve code size
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
show more ...
|
61da3c2a | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Refactor ping receive handler
There is no need to call through the handler... inline it
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> Acked-b
net: Refactor ping receive handler
There is no need to call through the handler... inline it
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
f9623229 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Move debug trace to point of action
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> |
ae446f56 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Refactor bootp packet length computations
Eliminate pointer subtraction that recovers values computed earlier
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg
net: Refactor bootp packet length computations
Eliminate pointer subtraction that recovers values computed earlier
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
show more ...
|
00f33268 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Refactor packet length computations
Save the length when it is computed instead of forgetting it and subtracting pointers to figure it out again.
Signed-off-by: Joe Hershberger <joe.hershberge
net: Refactor packet length computations
Save the length when it is computed instead of forgetting it and subtracting pointers to figure it out again.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
9214637a | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Refactor NetSendUDPPacket to share more code
Share more of the code that is common between ARP vs not.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromi
net: Refactor NetSendUDPPacket to share more code
Share more of the code that is common between ARP vs not.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
show more ...
|
4b11c916 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: Refactor IP, UPD, and ICMP header writing functions
ICMP (ping) was reimplementing IP header code... it now shares code.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon
net: Refactor IP, UPD, and ICMP header writing functions
ICMP (ping) was reimplementing IP header code... it now shares code.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> Acked-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
674bb249 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: cosmetic: Replace magic numbers in arp.c with constants
Use field names and sizes when accessing ARP packets
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> |
1256793b | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: cosmetic: Rename tmp to reply_ip_addr in arp.c
Renamed for clarity
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> |
4545f4e6 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: cosmetic: Alphabetize includes in net.c
Easier to find when alphabetized
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> |
f8315731 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: cosmetic: Rename OPT_SIZE to OPT_FIELD_SIZE
Clearer constant name. Also remove related BOOTP_SIZE which was unused and doesn't take into account VLAN packets.
Signed-off-by: Joe Hershberger <j
net: cosmetic: Rename OPT_SIZE to OPT_FIELD_SIZE
Clearer constant name. Also remove related BOOTP_SIZE which was unused and doesn't take into account VLAN packets.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
show more ...
|
0b4c5ff4 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: cosmetic: Rename CDPHandler to cdp_receive
This is not called as a handler, so don't name it that way
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> |
8d353eb8 | 23-May-2012 |
Joe Hershberger <joe.hershberger@ni.com> |
net: cosmetic: Rename "x" to "eth_proto"
x is a poor variable name
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org> |