From 6badfc2d0e45b54e1a5a3d53de5aad9eec428c2e Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Tue, 6 Sep 2011 14:54:04 +0200 Subject: pingu_iface: bind to interface too This is so we only see the pings for that interface --- pingu_iface.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'pingu_iface.c') diff --git a/pingu_iface.c b/pingu_iface.c index 04b180a..e2f3c3f 100644 --- a/pingu_iface.c +++ b/pingu_iface.c @@ -40,6 +40,11 @@ int pingu_iface_bind_socket(struct pingu_iface *iface, int log_error) int r; if (iface->name[0] == '\0') return 0; + r = setsockopt(iface->fd, SOL_SOCKET, SO_BINDTODEVICE, iface->name, + strlen(iface->name)); + if (r < 0 && log_error) + log_perror(iface->name); + r = bind(iface->fd, &iface->primary_addr.sa, sockaddr_len(&iface->primary_addr)); if (r < 0 && log_error) -- cgit v1.2.3