aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/usbdump/usbdump.c
diff options
context:
space:
mode:
authorHans Petter Selasky <hselasky@FreeBSD.org>2014-01-21 08:24:12 +0000
committerHans Petter Selasky <hselasky@FreeBSD.org>2014-01-21 08:24:12 +0000
commit0b30fcb60d50afaf5caf0c7beac4deb9a389a809 (patch)
treebb32e4546eb066a5d439bb28bf476b39dd4fcd73 /usr.sbin/usbdump/usbdump.c
parent615eca9b9ddec5b942682e5bdab355078269e887 (diff)
downloadsrc-0b30fcb60d50afaf5caf0c7beac4deb9a389a809.tar.gz
src-0b30fcb60d50afaf5caf0c7beac4deb9a389a809.zip
Notes
Diffstat (limited to 'usr.sbin/usbdump/usbdump.c')
-rw-r--r--usr.sbin/usbdump/usbdump.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/usr.sbin/usbdump/usbdump.c b/usr.sbin/usbdump/usbdump.c
index 7e7eae923eea..43fde90e88f5 100644
--- a/usr.sbin/usbdump/usbdump.c
+++ b/usr.sbin/usbdump/usbdump.c
@@ -34,6 +34,7 @@
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <sys/stat.h>
+#include <sys/sysctl.h>
#include <sys/utsname.h>
#include <sys/queue.h>
#include <net/if.h>
@@ -780,6 +781,23 @@ usage(void)
exit(EX_USAGE);
}
+static void
+check_usb_pf_sysctl(void)
+{
+ int error;
+ int no_pf_val = 0;
+ size_t no_pf_len = sizeof(int);
+
+ /* check "hw.usb.no_pf" sysctl for 8- and 9- stable */
+
+ error = sysctlbyname("hw.usb.no_pf", &no_pf_val,
+ &no_pf_len, NULL, 0);
+ if (error == 0 && no_pf_val != 0) {
+ warnx("The USB packet filter might be disabled.");
+ warnx("See the \"hw.usb.no_pf\" sysctl for more information.");
+ }
+}
+
int
main(int argc, char *argv[])
{
@@ -872,6 +890,8 @@ main(int argc, char *argv[])
exit(EXIT_SUCCESS);
}
+ check_usb_pf_sysctl();
+
p->fd = fd = open("/dev/bpf", O_RDONLY);
if (p->fd < 0)
err(EXIT_FAILURE, "Could not open BPF device");