Bugfix from Shaun Jackman: don't attempt to write 64 bytes and then fail if
the write wasn't 192 bytes long.
This commit is contained in:
parent
d5b9b60fa5
commit
9b1857f79f
@ -110,8 +110,10 @@ static void ping(const char *host)
|
|||||||
c = sendto(pingsock, packet, DEFDATALEN + ICMP_MINLEN, 0,
|
c = sendto(pingsock, packet, DEFDATALEN + ICMP_MINLEN, 0,
|
||||||
(struct sockaddr *) &pingaddr, sizeof(struct sockaddr_in));
|
(struct sockaddr *) &pingaddr, sizeof(struct sockaddr_in));
|
||||||
|
|
||||||
if (c < 0 || c != sizeof(packet))
|
if (c < 0) {
|
||||||
|
if (ENABLE_FEATURE_CLEAN_UP) close(pingsock);
|
||||||
bb_perror_msg_and_die("sendto");
|
bb_perror_msg_and_die("sendto");
|
||||||
|
}
|
||||||
|
|
||||||
signal(SIGALRM, noresp);
|
signal(SIGALRM, noresp);
|
||||||
alarm(5); /* give the host 5000ms to respond */
|
alarm(5); /* give the host 5000ms to respond */
|
||||||
@ -135,6 +137,7 @@ static void ping(const char *host)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (ENABLE_FEATURE_CLEAN_UP) close(pingsock);
|
||||||
printf("%s is alive!\n", hostname);
|
printf("%s is alive!\n", hostname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user