From 2b541844a561e7fcde72762883f08f177b317be2 Mon Sep 17 00:00:00 2001 From: Mazet Laurent Date: Thu, 26 Jun 2025 12:22:11 +0200 Subject: [PATCH] set promiscuous and noarp modes --- morep.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/morep.c b/morep.c index d30d118..41e0662 100644 --- a/morep.c +++ b/morep.c @@ -336,6 +336,12 @@ int MOREP_Connect (char *url) VERBOSE (morep, ERROR, PRINTF ("can't get mac address for '%s'\n", addr.ifname)); return -1; } + struct ifreq ifr = {0}; + strncpy (ifr.ifr_name, addr.ifname, sizeof (ifr.ifr_name)); + ifr.ifr_flags |= IFF_NOARP | IFF_PROMISC | IFF_UP; + if (ioctl (sock, SIOCSIFFLAGS, &ifr) != 0) { + VERBOSE (morep, WARNING, PRINTF ("can't set interface '%s' in promiscuous mode (%s)\n", addr.ifname, strerror (errno))); + } /* bind socket */ if (bind (sock, (struct sockaddr *)&sock_addr, sizeof (sock_addr)) != 0) { -- 2.30.2