Date: Mon, 29 Jul 2019 13:04:05 +0700 From: Eugene Grosbein <eugen@grosbein.net> To: Yuri <yuri@rawbw.com>, "freebsd-net@freebsd.org" <freebsd-net@freebsd.org> Subject: Re: Is there an way for a program to know when the list of network interfaces has changed (without rescanning them)? Message-ID: <4c60eb9c-2947-1d2b-3c65-8b87201a0487@grosbein.net> In-Reply-To: <de8fe1fc-81a1-80f3-82e5-1ec41f639b63@rawbw.com> References: <de8fe1fc-81a1-80f3-82e5-1ec41f639b63@rawbw.com>
next in thread | previous in thread | raw e-mail | index | archive | help
29.07.2019 12:35, Yuri wrote: > I am asking because wireshark doesn't sense the interface list changes, and it just always shows the list from the time it was launched . There is a way as we have devd(8) reading kernel-generated events and running commands in response. Look at default /etc/devd.conf rules for example: notify 0 { match "system" "IFNET"; match "subsystem" "!(usbus|wlan)[0-9]+"; match "type" "ATTACH"; action "/etc/pccard_ether $subsystem start"; }; Quoting devd(8) manual page: > Since devctl(4) allows only one active reader, devd multiplexes it, > forwarding all events to any number of connected clients. Clients > connect by opening the SOCK_SEQPACKET UNIX domain socket at > /var/run/devd.seqpacket.pipe. We have bsnmpd(1) in base system and its module usr.sbin/bsnmpd/modules/snmp_hostres acting as client of devd, for example.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4c60eb9c-2947-1d2b-3c65-8b87201a0487>