From: Mazet Laurent Date: Thu, 26 Jun 2025 10:22:11 +0000 (+0200) Subject: set promiscuous and noarp modes X-Git-Tag: v1.0~3 X-Git-Url: https://secure.softndesign.org/git/?a=commitdiff_plain;h=2b541844a561e7fcde72762883f08f177b317be2;p=morep.git set promiscuous and noarp modes --- 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) {