From 61da3c2af8ba7a06cb1f7e9e0db54b9ddea532ce Mon Sep 17 00:00:00 2001 From: Joe Hershberger Date: Wed, 23 May 2012 07:59:12 +0000 Subject: [PATCH] net: Refactor ping receive handler There is no need to call through the handler... inline it Signed-off-by: Joe Hershberger Acked-by: Simon Glass Acked-by: Mike Frysinger --- net/ping.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/net/ping.c b/net/ping.c index 939f8ff6fc..0f4d99088e 100644 --- a/net/ping.c +++ b/net/ping.c @@ -75,20 +75,10 @@ static void ping_timeout(void) NetState = NETLOOP_FAIL; /* we did not get the reply */ } -static void ping_handler(uchar *pkt, unsigned dest, IPaddr_t sip, - unsigned src, unsigned len) -{ - if (sip != NetPingIP) - return; - - NetState = NETLOOP_SUCCESS; -} - void ping_start(void) { printf("Using %s device\n", eth_get_name()); NetSetTimeout(10000UL, ping_timeout); - NetSetHandler(ping_handler); ping_send(); } @@ -100,13 +90,9 @@ void ping_receive(struct ethernet_hdr *et, struct ip_udp_hdr *ip, int len) switch (icmph->type) { case ICMP_ECHO_REPLY: - /* - * IP header OK. Pass the packet to the - * current handler. - */ - /* XXX point to ip packet */ src_ip = NetReadIP((void *)&ip->ip_src); - NetGetHandler()((uchar *)ip, 0, src_ip, 0, 0); + if (src_ip == NetPingIP) + NetState = NETLOOP_SUCCESS; return; case ICMP_ECHO_REQUEST: debug("Got ICMP ECHO REQUEST, return " -- 2.30.2