You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

15 lines
539 B

Description: Fixes replies when icmp-ipid is used
Author: David Eisner <deisner@gmail.com>
Last-Update: 2015-12-18
--- a/waitpacket.c
+++ b/waitpacket.c
@@ -244,7 +244,8 @@ int recv_icmp(void *packet, size_t size)
if ((icmp.type == ICMP_ECHOREPLY ||
icmp.type == ICMP_TIMESTAMPREPLY ||
icmp.type == ICMP_ADDRESSREPLY) &&
- icmp.un.echo.id == (getpid() & 0xffff))
+ icmp.un.echo.id == ((icmp_ip_id == DEFAULT_ICMP_IP_ID) ?
+ getpid() & 0xffff : icmp_ip_id) )
{
int icmp_seq = icmp.un.echo.sequence;
int status;