From b938e2ff99d90620dc14d606a80354ec0264c6c4 Mon Sep 17 00:00:00 2001 From: Matt Kraai Date: Wed, 20 Sep 2000 04:33:30 +0000 Subject: Return failure if ping gets no response. --- networking/ping.c | 10 ++++++++-- ping.c | 10 ++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/networking/ping.c b/networking/ping.c index 5f44a6816..f3ce6fb80 100644 --- a/networking/ping.c +++ b/networking/ping.c @@ -1,6 +1,6 @@ /* vi: set sw=4 ts=4: */ /* - * $Id: ping.c,v 1.23 2000/07/16 20:57:15 kraai Exp $ + * $Id: ping.c,v 1.24 2000/09/20 04:33:30 kraai Exp $ * Mini ping implementation for busybox * * Copyright (C) 1999 by Randolph Chung @@ -279,6 +279,8 @@ static void unpack(char *, int, struct sockaddr_in *); static void pingstats(int junk) { + int status; + signal(SIGINT, SIG_IGN); printf("\n--- %s ping statistics ---\n", hostname); @@ -294,7 +296,11 @@ static void pingstats(int junk) tmin / 10, tmin % 10, (tsum / (nreceived + nrepeats)) / 10, (tsum / (nreceived + nrepeats)) % 10, tmax / 10, tmax % 10); - exit(0); + if (nreceived != 0) + status = EXIT_SUCCESS; + else + status = EXIT_FAILURE; + exit(status); } static void sendping(int junk) diff --git a/ping.c b/ping.c index 5f44a6816..f3ce6fb80 100644 --- a/ping.c +++ b/ping.c @@ -1,6 +1,6 @@ /* vi: set sw=4 ts=4: */ /* - * $Id: ping.c,v 1.23 2000/07/16 20:57:15 kraai Exp $ + * $Id: ping.c,v 1.24 2000/09/20 04:33:30 kraai Exp $ * Mini ping implementation for busybox * * Copyright (C) 1999 by Randolph Chung @@ -279,6 +279,8 @@ static void unpack(char *, int, struct sockaddr_in *); static void pingstats(int junk) { + int status; + signal(SIGINT, SIG_IGN); printf("\n--- %s ping statistics ---\n", hostname); @@ -294,7 +296,11 @@ static void pingstats(int junk) tmin / 10, tmin % 10, (tsum / (nreceived + nrepeats)) / 10, (tsum / (nreceived + nrepeats)) % 10, tmax / 10, tmax % 10); - exit(0); + if (nreceived != 0) + status = EXIT_SUCCESS; + else + status = EXIT_FAILURE; + exit(status); } static void sendping(int junk) -- cgit v1.2.3