From 03a0daf4b4dc010debf534f28c37cf65e07c1037 Mon Sep 17 00:00:00 2001 From: gaoxingwang Date: Thu, 15 Jul 2021 18:37:32 +0800 Subject: [PATCH] add SO_BINDTODEVICE --- src/ndisc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ndisc.c b/src/ndisc.c index bfd7cb7..0adedf5 100644 --- a/src/ndisc.c +++ b/src/ndisc.c @@ -783,6 +783,10 @@ ndisc (const char *name, const char *ifname, unsigned flags, unsigned retry, } setsockopt (fd, SOL_SOCKET, SO_DONTROUTE, &(int){ 1 }, sizeof (int)); + struct ifreq req; + memset(&req, 0, sizeof(struct ifreq)); + strncpy(req.ifr_name, ifname, IFNAMSIZ - 1); + setsockopt (fd, SOL_SOCKET, SO_BINDTODEVICE, (void *)&req, sizeof(req)); /* sets Hop-by-hop limit to 255 */ sethoplimit (fd, 255); -- 2.27.0