| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This includes ujoy_hid_is_collection() to work around limitations of
hid_is_collection() until this can be combined without fallout.
input, testing with 8bitdo controller, and ok brynet@
PS4 controller testing, fix for hid_is_collection, and ok mglocker@
|
| |
|
|
|
|
|
| |
to keep the behavior when switching poll(2) to use kqueue filters.
From mpi@
|
|
|
|
|
|
| |
function but actually a 'true' value is needed; use seltrue instead.
Problem reported, kenel bisected and diff tested by Jens A. Griepentrog.
ok deraadt@ mpi@
|
|
|
|
| |
Missed in previous.
|
|
|
|
|
|
|
| |
This ensure spec_kqfilter() won't return an error when spec_poll()
returns success for a given device.
ok visa@
|
|
|
|
|
|
|
|
|
| |
poll functions shouldn't return errnos, selfalse() and seltrue() exist
for this reason :)
While here fix some comments.
ok visa@
|
|
|
|
| |
ok jca@, jsg@
|
|
|
|
|
|
|
|
| |
this is so we can pull the PIPEX code out of tun(4), which in turn
will let us lock down tun(4) functionality and start moving the
code around.
ok claudio@ yasuoka@
|
|
|
|
|
|
|
|
|
|
|
| |
The design is fairly simple: events, in the form of descriptors on a
ring, are being produced in any kernel context and being consumed by
a userland process reading /dev/dt.
Code and hooks are all guarded under '#if NDT > 0' so this commit
shouldn't introduce any change as long as dt(4) is disable in GENERIC.
ok kettenis@, visa@, jasper@, deraadt@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While FIDO/U2F keys were already supported by the generic uhid(4)
driver, this driver adds the first step to tighten the security of
FIDO/U2F access. Specifically, users don't need read/write access to
all USB/HID devices anymore and the driver also improves integration
with pledge(2) and unveil(2): It is pledge-friendly because it doesn't
require any ioctls to discover the device and unveil-friendly because
it uses a single /dev/fido/* directory for its device nodes.
It also allows to support FIDO/U2F in firefox without further
weakening the "sandbox" of the browser. Firefox does not have a
proper privsep design and many operations, such as U2F access, are
handled directly by the main process. This means that the browser's
"fat" main process needs direct read/write access to all USB HID
devices, at least on other operating systems. With fido(4) we can
support security keys in Firefox under OpenBSD without such a
compromise.
With this change, libfido2 stops using the ioctl to query the device
vendor/product and just assumes "OpenBSD" "fido(4)" instead. The
ioctl is still supported but there was no benefit in obtaining the
vendor product or name; it also allows to use libfido2 under pledge.
With feedback from deraadt@ and many others
OK kettenis@ djm@ and jmc@ for the manpage bits
|
|
|
|
| |
OK anton@ deraadt@ kettenis@ mpi@
|
|
|
|
|
|
|
|
|
|
|
|
| |
available on OpenBSD well and by notifying listeners of a device
state change using EVFILT_DEVICE and NOTE_CHANGE.
drm_sysfs_hotplug_event() gets called when a state change of the device
occured, like an hdmi cable has been plugged, this in the future will
be used by the modesetting xorg driver to notify desktop environments
via randr events to update their screen configuration
ok kettenis@
|
|
|
|
| |
ok deraadt@ guenther@
|
|
|
|
| |
ok deraadt@ yasuoka@ reyk@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
node in /dev, that services all bpf consumers (up to 1024). Also,
disallow the usage of all but the first minor device, so accidental use
of another minor device will attract attention.
Cloning bpf offers some advantages:
- Users with high bpf usage won't have to clutter their /dev with device
nodes.
- A lot of programs in base use a pattern like this to acces bpf:
int fd, n = 0;
do {
(void)snprintf(device, sizeof device, "/dev/bpf%d", n++);
fd = open(device, mode);
} while (fd < 0 && errno == EBUSY);
Those can now be replaced by a simple open(), without loop.
ok mikeb
"right time in the cycle to try" deraadt
|
|
|
|
| |
Pointed out by natano@.
|
|
|
|
|
|
| |
Initial help & testing by jmatthew@
Code review & input by mpi@
Final review & OK by jsg@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
in the underlying information store of the host from the OpenBSD-VM's
userspace. OpenBSD did not provide access to these stores before,
mostly because we did not want to add a custom tool and interface for
each hypervisor. The pvbus(4) interface provides backends for
xen(4)'s XenStore and vmt(4)'s VMware Tools "guestinfo". These
information stores are fairly different, XenStore is a "filesystem"
while vmt is a RPC, and the key-value abstraction limits them a bit
but provides the most wanted functionality.
Discussed with many
OK mikeb@
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
basically only the ioctls that Linux allows on the so-called "render nodes".
For now, it also allows DRM_IOCTL_GET_MAGIC and DRM_IOCTL_GEM_OPEN, as we
don't implement prime/dma-buf yet in OpenBSD. That still leaves a big gaping
hole, so they will be removed as soon as we can.
Based on a diff by robert@, who did all the heavy lifting by studying the
behaviour of the chromium GPU process, with some further suggestions by
deraadt@.
ok jsg@, deraadt@, robert@
|
|
|
|
| |
as well. OK dlg@ mpi@
|
|
|
|
|
|
| |
Needed for libinput port.
ok guenther@, miod@
|
|
|
|
|
|
| |
functionality. Same API and ABI except for the removed bits and no
behaviour change for programs using libsndio. With help from armani@
and mpi@, thanks.
|
| |
|
|
|
|
|
| |
that we delete ours, which isn't actually useful.
ok mpi sthen
|
| |
|
| |
|
|
|
|
|
|
|
| |
The interface has been disabled by default for about 4 years and
currently there's not much value in having it around at all.
ok deraadt
|
|
|
|
|
|
|
|
|
|
| |
used by any of the remaining xenocara drivers. Except perhaps for the
legacy i810 support in the xf86-video-intel driver. But i810 support has
almost certainly been broken for more than a year now, and any remaining
users are probably better off using the xf86-video-vesa driver ever since
XAA support was removed from the X server.
ok deraadt@, jsg@, mpi@
|
|
|
|
|
| |
which basically doesn't exist at all.
reminded about it by brad
|
|
|
|
|
|
|
|
| |
No regression has been reported since libusb became the prefered
solution to work with USB scanners.
req. by mpi@
ok ian@ mpi@ miod@
|
|
|
|
| |
ok tedu@
|
|
|
|
|
| |
test period; i think 3 years ago the last bugs fell out.
ok otto beck others
|
|
|
|
| |
from Sylvestre Gallon ccna.syl gmail.com
|
|
|
|
|
| |
This needs a change in config(8) to be commited shortly.
input/ok deraadt@, ok miod@
|
| |
|
| |
|
|
|
|
| |
discussed with jsing and millert
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
which allows a correct registration of kqueue(2) notifications on
the /dev/tty instead of calling a function via a null pointer in
the ttkqfilter leading to a local DoS.
Surprisingly the same code is present in NetBSD since the kqueue
merge, but didn't make it to the OpenBSD for 10 years.
Thanks to Anton Yabchinskiy <arn-at-bestmx-dot-ru> for a GHCi crash
report and his willingness to test multiple diffs for over a week.
With input from nicm, ok miod, derraadt.
|
|
|
|
|
| |
enodev().
ok jsing@ krw@ deraadt@
|
|
|
|
|
|
| |
and POOLBYTES for write.
looks right to deraadt
|
| |
|
|
|
|
|
|
| |
filled in. Move D_CLONE down to 0x0001 as suggested by thib.
ok deraadt thib
|
|
|
|
| |
ok miod deraadt
|
|
|
|
| |
dev_t, not int.
|
|
|
|
|
|
| |
them from userland, and nothing in the kernel uses them.
ok krw@, miod@
|
|
|
|
|
| |
can make attempts to load 'entropy' into the RC4.
ok miod ariane
|
|
|
|
|
|
| |
block. the kq and poll code should have been replaced with "selltrue"
type code a while ago.
with and ok nicm
|
|
|
|
|
|
|
| |
and pipex. pppx(4) creates an interface whenever a session is created
so that altq and pf can work on these.
Started by dlg@ debugged and made usable by myself
OK dlg@ yasuoka@ deraadt@
|