Expand description
Wrappers de la famille device.
Cf. docs/specs/layer-0/family-device.md.
Trois sous-systèmes :
- uevent (netlink) :
UEventSocket(RAII) +uevent_socket_open;UEventSocket::readreçoit viarecvmsget vérifie l’authenticité (nl_pid == 0, etuid == 0duSCM_CREDENTIALSen modeUSERSPACE) avant de décoder le message via [air_sys_types::UEventMessage]. - evdev :
evdev_read_events(lecture typée) et les ioctls dédiésEVIOC*(jamais d’ioctl générique, ADR-021 conv. 3). - sysfs : aucun wrapper (cf. spec sous-section 3 — c’est la famille
fs).
Structs§
- UEvent
Socket - Socket
NETLINK_KOBJECT_UEVENTrecevant les notifications de hotplug.
Functions§
- evdev_
abs_ info EVIOCGABS(axis)— plage et état d’un axe absolu.- evdev_
device_ id EVIOCGID— identifiant bus/vendor/product/version.- evdev_
driver_ version EVIOCGVERSION— version du protocole evdev du driver.- evdev_
grab EVIOCGRAB(argument1) — capture exclusive du périphérique.- evdev_
key_ state EVIOCGKEY(len)— état actuel (enfoncé/relâché) de toutes les touches.- evdev_
led_ state EVIOCGLED(len)— état des LED.- evdev_
name EVIOCGNAME(len)— nom du périphérique (octets, possiblement non-UTF-8).- evdev_
physical_ location EVIOCGPHYS(len)— emplacement physique (topologie).- evdev_
properties EVIOCGPROP(len)— propriétés du périphérique (INPUT_PROP_*).- evdev_
read_ events - Lit un lot d’événements dans
events, sans allocation. - evdev_
release EVIOCGRAB(pointeur nul) — relâche la capture exclusive.- evdev_
revoke EVIOCREVOKE— révoque définitivement l’accès à ce FD (irréversible).- evdev_
set_ clock EVIOCSCLOCKID— choisit l’horloge des horodatages des événements.- evdev_
sound_ state EVIOCGSND(len)— état des sorties son.- evdev_
supported_ codes EVIOCGBIT(event_type, len)— bitmap des codes supportés.event_type = Noneinterroge les types supportés (EVIOCGBIT(0, len)).- evdev_
switch_ state EVIOCGSW(len)— état des interrupteurs (capot, jack…).- evdev_
unique_ id EVIOCGUNIQ(len)— identifiant unique (souvent vide).- uevent_
socket_ open - Ouvre un socket uevent lié aux
groupsdemandés.