summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorratchov <ratchov@openbsd.org>2012-03-01 08:49:22 +0000
committerratchov <ratchov@openbsd.org>2012-03-01 08:49:22 +0000
commit6532cca52ae2d9f41d35f153f14a7b5633df3d85 (patch)
treeb49eb0c5f211193620df12053e9a883e4bce7d7c
parentzaudio is play only, so return ENXIO on any attempt to open the device (diff)
downloadwireguard-openbsd-6532cca52ae2d9f41d35f153f14a7b5633df3d85.tar.xz
wireguard-openbsd-6532cca52ae2d9f41d35f153f14a7b5633df3d85.zip
use UE_GET_ADDR to get endpoint address (remove direction bit). Fixes
devices using sych endpoints. From Gregor Pintar <grpintar at gmail.com> Thanks!
-rw-r--r--sys/dev/usb/uaudio.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/usb/uaudio.c b/sys/dev/usb/uaudio.c
index 32e92dcffee..98f869d1f28 100644
--- a/sys/dev/usb/uaudio.c
+++ b/sys/dev/usb/uaudio.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: uaudio.c,v 1.95 2012/01/31 21:13:32 brynet Exp $ */
+/* $OpenBSD: uaudio.c,v 1.96 2012/03/01 08:49:22 ratchov Exp $ */
/* $NetBSD: uaudio.c,v 1.90 2004/10/29 17:12:53 kent Exp $ */
/*
@@ -1768,7 +1768,8 @@ uaudio_process_as(struct uaudio_softc *sc, const char *buf, int *offsp,
sc->sc_dev.dv_xname);
return (USBD_NORMAL_COMPLETION);
}
- if (sync_addr && sync_ed->bEndpointAddress != sync_addr) {
+ if (sync_addr &&
+ UE_GET_ADDR(sync_ed->bEndpointAddress) != sync_addr) {
printf("%s: sync ep address mismatch\n",
sc->sc_dev.dv_xname);
return (USBD_NORMAL_COMPLETION);