aboutgitcodebugslistschat
path: root/util.c
diff options
context:
space:
mode:
authorStefano Brivio <sbrivio@redhat.com>2021-05-21 11:14:50 +0200
committerStefano Brivio <sbrivio@redhat.com>2021-05-21 11:14:50 +0200
commitd303cfdd55a7fb30bedd1727216e0a3926c4a95c (patch)
tree9e7668eeda1d350acb708e27ed819a05ef2bffaa /util.c
parentaf243857faeb095f0dd6f50e588e9a060eaff057 (diff)
downloadpasst-d303cfdd55a7fb30bedd1727216e0a3926c4a95c.tar
passt-d303cfdd55a7fb30bedd1727216e0a3926c4a95c.tar.gz
passt-d303cfdd55a7fb30bedd1727216e0a3926c4a95c.tar.bz2
passt-d303cfdd55a7fb30bedd1727216e0a3926c4a95c.tar.lz
passt-d303cfdd55a7fb30bedd1727216e0a3926c4a95c.tar.xz
passt-d303cfdd55a7fb30bedd1727216e0a3926c4a95c.tar.zst
passt-d303cfdd55a7fb30bedd1727216e0a3926c4a95c.zip
icmp: Implement ping tracking based on echo identifiers
Open and bind a socket for each possible ICMP/ICMPv6 echo identifier, and add a tracking mechanism. Otherwise, multiple pings in parallel won't work, and a single ping to a different destination would make an existing ping sequence stop working. Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Diffstat (limited to 'util.c')
-rw-r--r--util.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/util.c b/util.c
index 9ccd9f6..9748cbe 100644
--- a/util.c
+++ b/util.c
@@ -189,9 +189,6 @@ int sock_l4(struct ctx *c, int af, uint16_t proto, uint16_t port)
return -1;
}
- if (proto == IPPROTO_ICMP || proto == IPPROTO_ICMPV6)
- goto epoll_add;
-
if (af == AF_INET) {
sa = (const struct sockaddr *)&addr4;
sl = sizeof(addr4);