Hackfut Security File Manager
Current Path:
/lib/udev/rules.d
lib
/
udev
/
rules.d
/
📁
..
📄
01-log-block.rules
(207 B)
📄
10-console.rules
(421 B)
📄
10-dm.rules
(6.8 KB)
📄
11-dm-lvm.rules
(2.41 KB)
📄
13-dm-disk.rules
(1.5 KB)
📄
40-isdn.rules
(180 B)
📄
40-multipath.rules
(1012 B)
📄
40-redhat.rules
(1.54 KB)
📄
42-qemu-usb.rules
(405 B)
📄
50-firmware.rules
(172 B)
📄
50-udev-default.rules
(4.31 KB)
📄
60-alias-kmsg.rules
(357 B)
📄
60-cdrom_id.rules
(316 B)
📄
60-net.rules
(283 B)
📄
60-persistent-alsa.rules
(676 B)
📄
60-persistent-input.rules
(2.18 KB)
📄
60-persistent-serial.rules
(893 B)
📄
60-persistent-storage-tape.rules
(1.42 KB)
📄
60-persistent-storage.rules
(7.31 KB)
📄
60-persistent-v4l.rules
(789 B)
📄
61-mobile-action.rules
(722 B)
📄
61-option-modem-modeswitch.rules
(3.95 KB)
📄
61-persistent-storage-edd.rules
(532 B)
📄
61-sas-storage.rules
(487 B)
📄
64-device-mapper.rules
(107 B)
📄
64-md-raid.rules
(1.86 KB)
📄
65-md-incremental.rules
(2.69 KB)
📄
69-dm-lvm-metad.rules
(4.18 KB)
📄
70-acl.rules
(1.74 KB)
📄
70-hid2hci.rules
(1.34 KB)
📄
71-biosdevname.rules
(1.06 KB)
📄
73-idrac.rules
(259 B)
📄
75-cd-aliases-generator.rules
(462 B)
📄
75-net-description.rules
(680 B)
📄
75-persistent-net-generator.rules
(4.04 KB)
📄
75-tty-description.rules
(658 B)
📄
78-sound-card.rules
(4.79 KB)
📄
79-fstab_import.rules
(137 B)
📄
80-drivers.rules
(846 B)
📄
80-iosched.rules
(584 B)
📄
80-mpath-iosched.rules
(398 B)
📄
80-tuned-iosched.rules
(516 B)
📄
80-tuned-mpath-iosched.rules
(401 B)
📄
81-kvm-rhel.rules
(92 B)
📄
81-tuned-add-disk.rules
(146 B)
📄
85-regulatory.rules
(295 B)
📄
88-clock.rules
(291 B)
📄
89-microcode.rules
(173 B)
📄
91-drm-modeset.rules
(56 B)
📄
95-dm-notify.rules
(492 B)
📄
95-keyboard-force-release.rules
(2.85 KB)
📄
95-keymap.rules
(9.76 KB)
📄
95-udev-late.rules
(155 B)
Editing: 78-sound-card.rules
# do not edit this file, it will be overwritten on update SUBSYSTEM!="sound", GOTO="sound_end" ACTION=="add|change", KERNEL=="controlC*", ATTR{../uevent}="change" ACTION!="change", GOTO="sound_end" # Ok, we probably need a little explanation here for what the two lines above # are good for. # # The story goes like this: when ALSA registers a new sound card it emits a # series of 'add' events to userspace, for the main card device and for all the # child device nodes that belong to it. udev relays those to applications, # however only maintains the order between father and child, but not between # the siblings. The control device node creation can be used as synchronization # point. All other devices that belong to a card are created in the kernel # before it. However unfortunately due to the fact that siblings are forwarded # out of order by udev this fact is lost to applications. # # OTOH before an application can open a device it needs to make sure that all # its device nodes are completely created and set up. # # As a workaround for this issue we have added the udev rule above which will # generate a 'change' event on the main card device from the 'add' event of the # card's control device. Due to the ordering semantics of udev this event will # only be relayed after all child devices have finished processing properly. # When an application needs to listen for appearing devices it can hence look # for 'change' events only, and ignore the actual 'add' events. # # When the application is initialized at the same time as a device is plugged # in it may need to figure out if the 'change' event has already been triggered # or not for a card. To find that out we store the flag environment variable # SOUND_INITIALIZED on the device which simply tells us if the card 'change' # event has already been processed. KERNEL!="card*", GOTO="sound_end" ENV{SOUND_INITIALIZED}="1" SUBSYSTEMS=="usb", ENV{ID_MODEL}=="", IMPORT{program}="usb_id --export %p" SUBSYSTEMS=="usb", ENV{ID_VENDOR_FROM_DATABASE}=="", IMPORT{program}="usb-db %p" SUBSYSTEMS=="usb", ATTRS{idVendor}!="", ATTRS{idProduct}!="", ENV{ID_VENDOR_ID}="$attr{idVendor}", ENV{ID_MODEL_ID}="$attr{idProduct}" SUBSYSTEMS=="usb", ATTRS{bInterfaceNumber}!="", ENV{ID_IFACE}="$attr{bInterfaceNumber}" SUBSYSTEMS=="usb", GOTO="skip_pci" SUBSYSTEMS=="pci", ENV{ID_VENDOR_FROM_DATABASE}=="", IMPORT{program}="pci-db %p" SUBSYSTEMS=="pci", ENV{ID_BUS}="pci", ENV{ID_VENDOR_ID}="$attr{vendor}", ENV{ID_MODEL_ID}="$attr{device}" LABEL="skip_pci" ENV{ID_SERIAL}=="?*", ENV{ID_IFACE}=="?*", ENV{ID_ID}="$env{ID_BUS}-$env{ID_SERIAL}-$env{ID_IFACE}-$attr{id}" ENV{ID_SERIAL}=="?*", ENV{ID_IFACE}=="", ENV{ID_ID}="$env{ID_BUS}-$env{ID_SERIAL}-$attr{id}" ENV{ID_PATH}=="", IMPORT{program}="path_id %p/controlC%n" # The values used here for $SOUND_FORM_FACTOR and $SOUND_CLASS should be kept # in sync with those defined for PulseAudio's src/pulse/proplist.h # PA_PROP_DEVICE_FORM_FACTOR, PA_PROP_DEVICE_CLASS properties. # If the first PCM device of this card has the pcm class 'modem', then the card is a modem ATTR{pcmC%nD0p/pcm_class}=="modem", ENV{SOUND_CLASS}="modem", GOTO="sound_end" # Identify cards on the internal PCI bus as internal SUBSYSTEMS=="pci", DEVPATH=="*/0000:00:??.?/sound/*", ENV{SOUND_FORM_FACTOR}="internal", GOTO="sound_end" # Recognize good old WinTV cards and those based on saa7134 as TV cards SUBSYSTEMS=="pci", DRIVERS=="Bt87x", ENV{SOUND_FORM_FACTOR}="tv", GOTO="sound_end" SUBSYSTEMS=="pci", DRIVERS=="saa7134", ENV{SOUND_FORM_FACTOR}="tv", GOTO="sound_end" # Hmm, do we really want this database here? SUBSYSTEMS=="usb", ATTRS{idVendor}=="0471", ATTRS{idProduct}=="0311", ENV{SOUND_FORM_FACTOR}="webcam", GOTO="sound_end" # Devices that also support Image/Video interfaces are most likely webcams SUBSYSTEMS=="usb", ENV{ID_USB_INTERFACES}=="*:0e????:*", ENV{SOUND_FORM_FACTOR}="webcam", GOTO="sound_end" # Matching on the model strings is a bit ugly, I admit ENV{ID_MODEL}=="*[Ss]peaker*", ENV{SOUND_FORM_FACTOR}="speaker", GOTO="sound_end" ENV{ID_MODEL_FROM_DATABASE}=="*[Ss]peaker*", ENV{SOUND_FORM_FACTOR}="speaker", GOTO="sound_end" ENV{ID_MODEL}=="*[Hh]eadphone*", ENV{SOUND_FORM_FACTOR}="headphone", GOTO="sound_end" ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]eadphone*", ENV{SOUND_FORM_FACTOR}="headphone", GOTO="sound_end" ENV{ID_MODEL}=="*[Hh]eadset*", ENV{SOUND_FORM_FACTOR}="headset", GOTO="sound_end" ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]eadset*", ENV{SOUND_FORM_FACTOR}="headset", GOTO="sound_end" ENV{ID_MODEL}=="*[Hh]andset*", ENV{SOUND_FORM_FACTOR}="handset", GOTO="sound_end" ENV{ID_MODEL_FROM_DATABASE}=="*[Hh]andset*", ENV{SOUND_FORM_FACTOR}="handset", GOTO="sound_end" ENV{ID_MODEL}=="*[Mm]icrophone*", ENV{SOUND_FORM_FACTOR}="microphone", GOTO="sound_end" ENV{ID_MODEL_FROM_DATABASE}=="*[Mm]icrophone*", ENV{SOUND_FORM_FACTOR}="microphone", GOTO="sound_end" LABEL="sound_end"
Upload File
Create Folder