summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2022-06-10 08:00:09 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2022-06-22 17:25:12 +0200
commit04564e61c6661503bd83a09d0551371fe4dc7869 (patch)
treec9cedc00241021d2c249dac9d127fc2ecb6ea72f
parentopenssl: Do not use signals (diff)
downloadrtems-libbsd-04564e61c6661503bd83a09d0551371fe4dc7869.tar.bz2
ping: Do not use signals
-rw-r--r--freebsd/sbin/ping/ping.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/freebsd/sbin/ping/ping.c b/freebsd/sbin/ping/ping.c
index 71976058..0daa5f45 100644
--- a/freebsd/sbin/ping/ping.c
+++ b/freebsd/sbin/ping/ping.c
@@ -306,7 +306,9 @@ main(int argc, char *const *argv)
#endif
struct sockaddr_in *to;
double t;
+#ifndef __rtems__
u_long alarmtimeout;
+#endif /* __rtems__ */
long ltmp;
int almost_done, ch, df, hold, i, icmp_len, mib[4], preload;
int ssend_errno, srecv_errno, tos, ttl;
@@ -370,7 +372,9 @@ main(int argc, char *const *argv)
err(EX_OSERR, "srecv socket");
}
+#ifndef __rtems__
alarmtimeout = df = preload = tos = 0;
+#endif /* __rtems__ */
outpack = outpackhdr + sizeof(struct ip);
while ((ch = getopt(argc, argv,
@@ -569,6 +573,7 @@ main(int argc, char *const *argv)
mttl = ltmp;
options |= F_MTTL;
break;
+#ifndef __rtems__
case 't':
alarmtimeout = strtoul(optarg, &ep, 0);
if ((alarmtimeout < 1) || (alarmtimeout == ULONG_MAX))
@@ -579,6 +584,7 @@ main(int argc, char *const *argv)
optarg, MAXALARM);
alarm((int)alarmtimeout);
break;
+#endif /* __rtems__ */
case 'v':
options |= F_VERBOSE;
break;
@@ -1529,8 +1535,10 @@ static void
finish(void)
{
+#ifndef __rtems__
(void)signal(SIGINT, SIG_IGN);
(void)signal(SIGALRM, SIG_IGN);
+#endif /* __rtems__ */
(void)putchar('\n');
(void)fflush(stdout);
(void)printf("--- %s ping statistics ---\n", hostname);