Commit graph

62 commits

Author SHA1 Message Date
Kay Sievers 2713e6ab0a udevd: always create /dev/{char,block}/$major:$minor 2010-12-10 13:27:03 +01:00
Kay Sievers 2b15b26dfa rules: drop OSS audio rule 2010-11-24 12:05:21 +01:00
Martin Pitt c112a41a43 fix various syntax errors in rules 2010-09-21 12:14:50 +02:00
Kay Sievers 9de4a43a89 rules: remove firewire rules for deprecated drivers 2010-07-12 11:04:17 +02:00
Stefan Richter 1bbc1a9cb0 rules: add more FireWire IDs: Point Grey IIDC; AV/C + vendor unique
1. IIDC cameras from Point Grey use the vendor OUI as Specifier_ID
instead of the 1394 TA's OUI but are otherwise fully compliant to the
IIDC spec. Their device files should be accessible like those of any
other IIDC cameras.

2. Originally, the Software_Version of devices that implement FCP
(IEC 61883-1 Function Control Protocol) was meant to be a bitmap of all
command sets that an FCP capable unit supports.  Bitmap flags are
defined for AV/C, CAL, EHS, HAVi, and vendor unique command sets.
Software_Version was revised to be a simple identifier instead, and
devices that support several command sets were meant to instantiate one
unit directory for each command set.  Still, some devices with the flags
for AV/C and vendor unique command sets combined were released (but
apparently no devices with any other flag combinations).  These rare but
existing AV/C + vendor unique devices need to be accessible just like
plain AV/C devices.

Side notes:
 - Many AV/C devices make use of the Vendor Dependent AV/C command, but
this is unrelated to vendor unique FCP command sets.
 - Here are all standardized FireWire protocol identifiers that I know
of, listed as Specifier_ID:Software_Version | specifier | protocol.
0x00005e:0x000001 | IANA    | IPv4 over 1394 (RFC 2734)
0x00005e:0x000002 | IANA    | IPv6 over 1394 (RFC 3146)
0x00609e:0x010483 | INCITS  | SBP-2 (or SCSI command sets over SBP-3)
0x00609e:0x0105bb | INCITS  | AV/C over SBP-3
0x00a02d:0x010001 | 1394 TA | AV/C (over FCP)
0x00a02d:0x010002 | 1394 TA | CAL
0x00a02d:0x010004 | 1394 TA | EHS
0x00a02d:0x010008 | 1394 TA | HAVi
0x00a02d:0x014000 | 1394 TA | Vendor Unique
0x00a02d:0x014001 | 1394 TA | Vendor Unique and AV/C (over FCP)
0x00a02d:0x000100 | 1394 TA | IIDC 1.04
0x00a02d:0x000101 | 1394 TA | IIDC 1.20
0x00a02d:0x000102 | 1394 TA | IIDC 1.30
0x00a02d:0x0A6BE2 | 1394 TA | DPP 1.0
0x00a02d:0x4B661F | 1394 TA | IICP 1.0
For now we are only interested in udev rules for AV/C and IIDC.

Reported-by: Damien Douxchamps <ddsf@douxchamps.net> (Point Grey IIDC ID)
Reported-by: Clemens Ladisch <clemens@ladisch.de> (AV/C + vendor unique ID)
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
2010-07-12 11:02:49 +02:00
Martin Pitt 2da64971fd Fix usb printer rule for multiple USB interfaces
Commit f61e72d89 failed to match for the case where an USB printer has multiple
interfaces, such as

  ID_USB_INTERFACES=:ffffff:070102:

Thanks to Pablo Mazzini for spotting this!
2010-06-17 13:19:50 +02:00
Kay Sievers 557b005fda rules: mount fuse control filesystem 2010-05-25 15:10:21 +02:00
Kay Sievers 761dfddcc0 create static nodes provided by kernel modules to allow module autoloading 2010-05-20 17:09:04 +02:00
Kay Sievers 06ba47d833 rules: call modprobe on all events but "remove" 2010-04-13 12:20:55 +02:00
Kay Sievers 421fbc71c7 rules: we do not have static devices which are renamed 2010-04-12 10:50:59 +02:00
Amit Shah 00e43e357e rules: virtio - fix is to check if the 'name' attribute is present
Fix provided by Harald Hoyer.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
2010-03-22 10:59:46 +01:00
Amit Shah 3c4b1738a9 Fix virtio-ports rule to use $attr instead of $ATTR
Newer udev versions don't understand $ATTR.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2010-03-04 00:39:53 +01:00
Amit Shah 7b79a59b28 rules: Add symlink rule for virtio ports
virtio ports spawned by the virtio_console.c driver can have 'names'
assigned to them by hosts. The ports are distinguishable using these
names. Make a rule to create a symlink to the chardev associated for a
port with a name.

The symlink created is:
    /dev/virtio-ports/org.libvirt.console0 -> /dev/vport0p0

if the first port for the first device was given a name of
'org.libvirt.console0'.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
2010-01-21 14:21:42 +01:00
Kay Sievers caf87866a7 rules: add "block" match to floppy rule 2009-12-15 16:17:12 +01:00
Kay Sievers 78171d9549 floppy: fix rule to create additional floppy device nodes 2009-12-15 15:07:25 +01:00
Kay Sievers ecf61aa7fd rules: remove support for IDE (hd*) devices
The kernel IDE drivers get deprecated now:
  http://article.gmane.org/gmane.linux.ide/43151

Almost everybody has switched over to libata devices long ago.
Recent services do not work with the now deprecated IDE drivers
at all and require libata drivers and SCSI infrastructure.

Systems who care about the old stuff need to add the rules to the
compat rules.
2009-11-19 16:25:18 +01:00
Kay Sievers d93fb59c50 rules: set mode of floppy device nodes to 0660 2009-11-12 21:56:27 +01:00
Martin Pitt ca2bf8007d 50-udev-default.rules: fix printer MODE
Prefix with a 0 to be consistent with other rules.

https://launchpad.net/bugs/438114
2009-10-05 11:38:44 +02:00
Martin Pitt 8d12968558 make raw USB printer devices world-readable again
Commit f61e72d8 made raw USB printers accessible for the lp group. However,
chmoding them to 0660 is a bit over-zealous, since by default raw USB devices
are world-readable. Not being so breaks lsusb unnecessarily. Now set
permissions to 0664.
2009-09-30 11:10:24 +02:00
Kay Sievers 4b4409b1ee rules: drop almost all NAME= keys
The drivers in kernel 2.6.31 supply the names for custom node names if
needed.
2009-09-16 20:08:50 +02:00
Kay Sievers 6c29f2b942 simplify "symlink name stack"
With well defined and kernel-supplied node names, we no longer need
to support a possible stack of conflicting symlinks and node names.
Only symlinks with identical names can be claimed by multiple devices.

This shrinks the former /dev/.udev/names/ significantly.

Also the /dev/{block,char}/MAJ:MIN" links are excluded from the name
stack - they are unique and can not conflict.
2009-09-09 18:49:07 +02:00
Martin Pitt f61e72d897 make raw USB printer devices accessible for lp
Starting from version 1.4, cups now uses libusb and printer USB devices instead
of the usblp generated /dev/usb/lpX ones. In order to not require the cups USB
backend to run as root now, change raw USB printer devices to be root:lp 0660,
similar to usblpX devices.

This might also enable the hplip backend to not run as root, since this has
always used raw device nodes.

https://launchpad.net/bugs/420015
2009-09-04 17:12:28 +02:00
Kay Sievers 79f3b4a161 rules: rfkill has no group, so use 0644
Thanks to Marco d'Itri<md@linux.it> for noticing.
2009-08-16 21:07:39 +02:00
Alan Jenkins 214a6c791c fix spelling
Fix spelling in docbook comments, code comments, and a local variable
name.  Thanks to "ispell -h" for docbook HTML and "scspell" for source
code.

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2009-08-08 15:42:05 +02:00
Stefan Richter f0fb82d821 rules: set group ownership of new firewire driver device files
The newer firewire-core driver exposes per-device character device files,
called /dev/fw[0-9]*, in contrast to the older raw1394, video1394, dv1394
drivers which created one global file or per-controller files.

This allows to set ownership, permissions, or/ and access control lists
for each device file based on device type markers obtained from sysfs.
The "units" attribute which is used for this purpose has become available
in Linux 2.6.31(-rc1) by commit 0210b66dd88a2a1e451901b00378a2068b6ccb35.

The added rules match identifiers of

  - IIDC devices:
    industrial cameras and some webcams,

  - AV/C devices:
    camcorders, set-top boxes, TV sets, audio devices, and similar
    devices.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
2009-07-01 23:43:17 +02:00
Marcel Holtmann 213f0355c0 rules: make RFKILL control device world readable 2009-06-05 15:09:05 +02:00
Kay Sievers 12a7c14b86 rules: add SUBSYSTEM match to scsi rules
On Fri, May 22, 2009 at 16:15, Alan Jenkins <alan-jenkins@tuffmail.co.uk> wrote:
> I've been looking at what is responsible for all the path lookup activity in
> coldplug.  On my debian stable system, it looks like every device gets its
> parent looked up in sysfs.  I think this is due to SUBSYSTEMS matches.
>
> I see the udev default rules are different, but it looks like they still
> test for SUBSYSTEMS on every single device. Should we add SUBSYSTEM="scsi_generic"
> to these three rules?
2009-05-22 16:44:53 +02:00
Kay Sievers d67e32aeb2 rules: fix ieee1394 rules 2009-05-05 12:43:42 +02:00
Kay Sievers efca104ccf oops, removed ppp entry from rules got committed 2009-05-04 14:10:05 +02:00
Kay Sievers cb14f4543a handle devtmpfs nodes
UDev follows the kernel given name, and re-uses the kernel created
device node. If the kernel and spcecified udev rules disagree, the
udev specified node node is created and the kernel-created on is
deleted.
2009-05-04 04:52:31 +02:00
Kay Sievers 3157c02d2b rules: remove initramfs comment 2009-05-03 14:44:23 +02:00
Kay Sievers 6d34b6af12 rules: add rfcomm* to group dialout
https://bugs.launchpad.net/bugs/368109
2009-04-28 11:24:25 +02:00
Andre Przywara 57ec3a57f1 rules: create /dev/cpu/<n>/cpuid world readable
I don't see any security implications, to be actually useful,
/dev/cpu/<n>/cpuid should be world readable. The cpuid instruction
can be called from userspace anyway, so there is nothing to hide.
The device does not support any write operation, so 0444 should
suffice.

Signed-off-by: Andre Przywara <andre.przywara@amd.com>
2009-04-24 00:29:53 +02:00
Kay Sievers 7a87d34f8a rules: remove DVB shell script 2009-04-16 22:35:59 +02:00
Kay Sievers 3b8103d45f rules: fix extra quote in 50-udev-default.rules
Patch from Gerardo Exequiel Pozzi.
2009-03-18 02:32:12 +01:00
Kay Sievers 45bcd16ca5 udevd: switch watch symlinks to devpath
Some broken tools get confused following links to /sys, switch
to link targets carrying the devpath instead of the syspath, like
the queue links.
2009-03-05 00:35:58 +01:00
Kay Sievers 66d9b44f83 rules: add drm devices to group "video"
https://bugs.launchpad.net/bugs/317430
2009-01-15 17:06:14 +01:00
Kay Sievers 18cff5c3b2 rules: fix typo in ide cd rule
Thanks to Scott, who found that.
2009-01-10 17:44:09 +01:00
Kay Sievers b6c8f986ec rules: reorder block rules 2009-01-05 12:34:55 +01:00
Kay Sievers 1aa8fdf779 rules: Ubuntu merge - s/uucp/dialout/ 2009-01-04 17:01:47 +01:00
Kay Sievers e1cc6b6a81 rules: replace DVB shell script rule 2009-01-03 22:30:05 +01:00
Kay Sievers 8553cf06b9 rules: Ubuntu merge - use group "tape" 2009-01-03 16:25:15 +01:00
Kay Sievers cc02d72c82 rules: Ubuntu merge - use group "cdrom" 2009-01-03 15:50:17 +01:00
Kay Sievers 49bb7a8a2a rules: provide /dev/raw/rawctl
On Fri, Dec 26, 2008 at 01:26, Karel Zak <kzak@redhat.com> wrote:
> On Fri, Dec 26, 2008 at 12:39:16AM +0100, Kay Sievers wrote:
>> On Fri, Dec 26, 2008 at 00:26, Karel Zak <kzak@redhat.com> wrote:

>> >  The upstream raw(8) command supports /dev/rawctl and also
>> >  /dev/raw/rawctl.  I think it makes more sense to use raw/rawctl when
>> >  you have all your raw devices in raw/ subdirectory (e.g. /dev/raw/raw<N>).
>>
>> The raw tool looks for /dev/rawctl first and the fallback to
>> /dev/raw/rawctl is named DEVFS_*. Should we turn that order around and
>> remove the devfs notion from the raw tool and let udev create a
>> dev/raw/rawctl node?
>
>  Yeah. Fixed, committed and pushed.
>
>  $ strace -e open ./raw
>  open("/dev/raw/rawctl", O_RDWR)         = -1 ENOENT (No such file or directory)
>  open("/dev/rawctl", O_RDWR)             = -1 ENOENT (No such file or directory)
>
>  I have also removed the #ifdef OLD_RAW_DEVS (/dev/raw<N>) junk.
2008-12-26 01:41:36 +01:00
Kay Sievers a7cb7d79f7 rules: second round merging with Ubuntu rules 2008-12-22 16:15:37 +01:00
Kay Sievers a8cf7cf2c7 rules: do not put raw1394 in "video" group
A note on /dev/raw1394's security implications:
1. You cannot access local memory through raw1394, except
for ROMs and CSRs that are exposed to other nodes any way.

2. It is extremely hard to manipulate data on attached
SBP-2 devices (FireWire storage devices).

3. You can disturb operation of the FireWire bus, e.g.
creating a DoS situation for audio/video applications, for
SBP-2 devices, or eth1394 network interfaces.

4. If another PC is attached to the FireWire bus, it may be
possible to read or overwrite the entire RAM of that remote PC.
This depends on the PC's configuration. Most FireWire controllers
support this feature (yes, it's not a bug, or at least wasn't
intended to be one...) but not all OSs enable the feature.

Actually, a cheap setup to achieve #1 by #4 is to have two
FireWire controllers in the PC and connect them.

https://bugs.launchpad.net/ubuntu/+source/kino/+bug/6290/comments/21
2008-12-22 14:58:11 +01:00
Kay Sievers 6b956a9983 rules: remove legacy symlinks 2008-12-22 13:34:54 +01:00
Kay Sievers f0bbea6696 rules: rtc - create rtc compat link only for cmos type rtc 2008-12-21 13:48:55 +01:00
Kay Sievers d4e0db3c5d rules: remove /dev/raw/raxctl symlink, it's a devfs leftover 2008-12-21 13:42:08 +01:00
Kay Sievers 41e7f55711 rules: more changes toward Ubuntu rules merge
dv1394*: no kernel name symlink
lp*: no par* symlink
hwrng: no kernel name symlink
2008-12-21 13:17:37 +01:00