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>
diff --git a/net/arp.c b/net/arp.c
index 997c2ab..fcff536 100644
--- a/net/arp.c
+++ b/net/arp.c
@@ -192,9 +192,9 @@
 			memcpy(NetArpWaitPacketMAC,
 				&arp->ar_sha, ARP_HLEN);
 
-#ifdef CONFIG_NETCONSOLE
-			NetGetHandler()(0, 0, 0, 0, 0);
-#endif
+			net_get_arp_handler()((uchar *)arp, 0, reply_ip_addr,
+				0, len);
+
 			/* modify header, and transmit it */
 			memcpy(((struct ethernet_hdr *)NetArpWaitTxPacket)->
 				et_dest, NetArpWaitPacketMAC, ARP_HLEN);