openwrt-packages/net/hping3/patches/fix_icmp_ipid.patch

16 lines
539 B
Diff

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;