1
0
mirror of https://github.com/systemd/systemd.git synced 2024-10-28 11:55:44 +03:00
Commit Graph

918 Commits

Author SHA1 Message Date
Kay Sievers
78171d9549 floppy: fix rule to create additional floppy device nodes 2009-12-15 15:07:25 +01:00
Martin Pitt
9c0c2fe6bb keymap: fix findkeyboards
Update findkeyboards for the recent ID_CLASS deprecation, use ID_INPUT_KEYBOARD
instead. This simplifies the logic a bit, too.
2009-12-15 11:49:12 +01:00
Johannes Stezenbach
8350d0b9ec keymap: handle atkbd force_release quirk
Some laptop keyboards don't generate release events
for some hotkeys.  Since linux-2.6.32 the list of scancodes
for which to enable the force_release quirk can be set
via sysfs.
Apply this to Samsung N130.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2009-12-14 19:19:35 +01:00
Martin Pitt
92b8cea053 95-keymap.rules: Run on change events, too 2009-12-14 14:31:51 +01:00
Johannes Stezenbach
666faec4e4 keymap: add Samsung N130
Signed-off-by: Johannes Stezenbach <js@sig21.net>
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2009-12-14 09:30:17 +01:00
Scott James Remnant
4fe41ac874 70-acl.rules: ACL manage Android G1 dev phones
There doesn't seem to be any special class for their developer
interface, so match by Vendor and Device id like we do for things
like fingerprint readers.

This is better than their current 0666 suggestion <g>

Signed-off-by: Scott James Remnant <scott@ubuntu.com>
2009-12-10 20:01:05 +00:00
Martin Pitt
d0a161ce64 keymap: Add Acer Aspire 1810T
https://launchpad.net/bugs/492657
2009-12-10 09:22:33 +01:00
David Zeuthen
7f4954d040 Export ID_WWN_VENDOR_EXTENSION and ID_WWN_WITH_EXTENSION
Some SCSI devices use the same WWN and have a WWN extension that we
need to take into account when creating the /dev/disk/by-id/wwn
symlinks. Thus, introduce ID_WWN_WITH_EXTENSION. This property will
contain either the WWN (if no extension is present) or the WWN with
the vendor extension appended.

Example:

 # /lib/udev/ata_id/ata_id --export /dev/sda |grep WWN
 ID_WWN=0x5001517387d61905
 ID_WWN_WITH_EXTENSION=0x5001517387d61905

 # /lib/udev/scsi_id --whitelisted --export -d /dev/sdb |grep WWN
 ID_WWN=0x600508b400105df7
 ID_WWN_VENDOR_EXTENSION=0x0000e00000d80000
 ID_WWN_WITH_EXTENSION=0x600508b400105df70000e00000d80000

 # /lib/udev/scsi_id --whitelisted --export -d /dev/sdc |grep WWN
 ID_WWN=0x600508b400105df7
 ID_WWN_VENDOR_EXTENSION=0x0000e00000db0000
 ID_WWN_WITH_EXTENSION=0x600508b400105df70000e00000db0000

Signed-off-by: David Zeuthen <davidz@redhat.com>
2009-12-04 11:40:00 -05:00
Dmitry Torokhov
89b6237342 input-id: identify touchscreens
Add detection of touchscreens to the input-id utility.

Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
2009-12-03 13:20:10 +01:00
Martin Pitt
01db50919e input_id: Check mouse button for ID_INPUT_MOUSE
Before we bless an input device as a mouse, verify that it has a left button
(BTN_MOUSE).

Thanks to Dmitry Torokhov <dtor@mail.ru> for pointing out!
2009-12-03 13:15:50 +01:00
Martin Pitt
7c3db77111 input_id: check event mask
Check the capabilities/ev for the particular event class before testing bits in
that event class. This avoids testing potentially bogus data if the device does
not support that class of events at all.

Thanks to Dmitry Torokhov for pointing out!
2009-12-03 12:56:44 +01:00
Martin Pitt
175cb7b81d input_id: small optimization
In the parent traversal loop, use
udev_device_get_parent_with_subsystem_devtype() to only grab "input" class
devices.
2009-12-03 12:46:22 +01:00
Martin Pitt
b919e0ffee input_id: Do not tag non-input devices with ID_INPUT
Current rules only call it for input devices, but let's be correct.
2009-12-03 10:22:04 +01:00
Martin Pitt
22f9cb51c3 input_id: Fix endless loop for non-input devices
When being called on a device which is not in the "input" subsystem, or doesn't
have an "input" parent, it got stuck in an endless loop. Unfortunately this
includes the virtual/input/mice multiplexer, which exposes this bug on just
about every system.
2009-12-03 10:16:49 +01:00
Martin Pitt
5b9204787f input_id: code cleanup
Now use libudev to clean up hardcoded /sys/ and /device/ paths, and to also
support direct input device arguments. Now both "input4" and "event4" will
work.
2009-12-02 11:14:19 +01:00
Dmitry Torokhov
e0ead3ba82 extras/input_id: Correctly identify touchpads
BTN_TOUCH (as well as ABS_PRESSURE) is used not only by touchpads but
by touchscreens as well. The proper check for a touchpad is presence
of BTN_TOOL_FINGER and absence of BTN_TOOL_PEN (the latter to filter
out some tablets that use BTN_TOOL_FINGER).

Tablet matching should be on either BTN_TOOL_PEN or BTN_STYLUS.
2009-11-30 23:03:05 +01:00
Martin Pitt
897c0f175d 70-acl.rules: Use new-style input properties
ID_CLASS is deprecated for input devices. Use new ID_INPUT_JOYSTICK instead.
2009-11-30 18:46:51 +01:00
Martin Pitt
a6cf773401 extras: Add input_id
input_id probes input/event devices for their class (keyboard, keys, mouse,
touchpad, tablet, joystick). This is based on the corresponding hal code in
hald/linux/device.c, input_test_{abs,rel,...}.

This should provide enough functionality to get hal-less X.org working (which
in particular needs to know exactly which devices are touchpads).

Replace the brittle hacks in 60-persistent-input.rules with checking for the
new ID_INPUT_* flags. This keeps the old ID_CLASS properties for now (but they
are to be removed later on).

Note: The current code has several hacks still, which are to be replaced with
proper libudev calls later on.
2009-11-30 18:38:43 +01:00
Dan Williams
73045f9d39 modem-modeswitch: 61-option-modem-modeswitch.rules is only for Option NV devices
Make people aware that they shouldn't add devices not manufactured by
Option NV to 61-option-modem-modeswitch.rules.  modem-modeswitch only
supports ejecting the fake CD for Option NV devices at this time.
People should be using (and fixing) usb_modeswitch instead of
modem-modeswitch.
2009-11-23 13:54:35 -08:00
Dan Williams
8a993fab2f Revert "extras/modem-modeswitch: Add Huawei E1550 GSM modem"
This reverts commit 53842b5382.

The 'option-zerocd' method should *only* be used with Option NV devices
since other manufacturers have completely different methods for killing
their fake driver CD.
2009-11-23 13:52:08 -08:00
Dan Williams
a07d103e63 Revert "modem-modeswitch: add a device"
This reverts commit 5052297b6a.

The 'option-zerocd' method should *only* be used with Option NV devices
since other manufacturers have completely different methods for killing
their fake driver CD.
2009-11-23 13:51:11 -08:00
David Zeuthen
4e9fdfccbd scsi_id: Export WWN and Unit Serial Number
Since the Unit Serial Number and the WWN are useful bits of
information export them as properties in the udev database. These
bits of information are often printed on the physical disk, see

http://people.freedesktop.org/~david/FUJITSU-MAY2036RC-sas-disk-picture.jpg

and displaying them separately in the UI (or in /dev/disk) might help
users identify the physical disk. This patch exports these bits of
information as ID_WWN and ID_SCSI_SERIAL.

Note that ata_id also use the ID_WWN property since commit
66094a4a7f (2009-11-04).

Also print out ID_SCSI=1 so users of the udev database knows the disk
speaks SCSI.

Here's the scsi_id output from one of my SAS disks with these changes:

 ID_SCSI=1
 ID_VENDOR=FUJITSU
 ID_VENDOR_ENC=FUJITSU\x20
 ID_MODEL=MAY2036RC
 ID_MODEL_ENC=MAY2036RC\x20\x20\x20\x20\x20\x20\x20
 ID_REVISION=0103
 ID_TYPE=disk
 ID_SERIAL=3500000e01b83f520
 ID_SERIAL_SHORT=500000e01b83f520
 ID_WWN=0x500000e01b83f520
 ID_SCSI_SERIAL=B3G1P8500RWT

Unfortunately we can't overload ID_SERIAL for two reasons

 1. ID_SERIAL (and ID_SERIAL_SHORT) exported by scsi_id isn't really
    the unit serial number (as defined by SCSI) - it is sometimes the
    WWN (since it is more unique than the Unit Serial Number) and
    complex rules (to make the serial unique) govern what value to
    use.

 2. It would break existing setups if the value of ID_SERIAL changed

Signed-off-by: David Zeuthen <davidz@redhat.com>
2009-11-23 21:38:21 +01:00
Martin Pitt
5d490002b3 README.keymap.txt: small clarification 2009-11-20 18:22:53 -06:00
Kay Sievers
160b069c25 ata_id: skip ATA commands if we find an optical drive
Some drives are reported to erase CD-RW media with the ATA
commands we send.

Thanks to Christoph Stritt <phoenix@jobob.com> for his debugging.

Original bug is here:
  http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=556635
2009-11-20 03:03:27 +01:00
Harald Hoyer
5052297b6a modem-modeswitch: add a device 2009-11-12 22:17:47 +01:00
David Zeuthen
7505831b7e cdrom_id: Still check profiles even if there is no media
Even when there is no medium in the drive, we should still check the
profiles supported by the drive. Otherwise we fail to detect things
like Blu-ray drives. See

 https://bugzilla.gnome.org/show_bug.cgi?id=600273

for more information.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2009-11-10 12:32:38 -05:00
David Zeuthen
58e31304a4 gudev: Remove LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE from priv header
Since libudev is no longer unstable either.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2009-11-09 16:31:26 -05:00
David Zeuthen
4e3664f22b gudev: Fix up GUdevDeviceNumber
Actually dev_t is an unsigned quad type (e.g. 64-bit even on 32-bit
x86) so defining it to be an integer is wrong and not future
proof. Thus, redefine it to actually be a dev_t (as originally wanted)
and instead add a work-around for GNOME bug #584517, see

https://bugzilla.gnome.org/show_bug.cgi?id=584517

for details. This way, GObject Introspection will still work.

This change is technically an API/ABI break but

 - all released GUdev versions requires the user to understand that
   the API/ABI is unstable by requiring the G_UDEV_API_IS_SUBJECT_TO_CHANGE
   symbols to be defined

 - functions using GUdevDeviceNumber are rarely used

so we don't bump the so number.

Signed-off-by: David Zeuthen <davidz@redhat.com>
2009-11-08 12:31:35 -05:00
Martin Pitt
368d325ba8 modem-modeswitch: fix ZTE MF6xx rule
https://launchpad.net/bugs/281335
2009-11-06 00:12:21 +01:00
David Zeuthen
66094a4a7f ata_id: export more advanced ATA features 2009-11-04 16:37:06 +01:00
Martin Pitt
f0f7a43f4e extras/keymap/README.keymap.txt: Fix bug report link
udev-extras is gone, ask people to file bugs against udev.
2009-11-02 16:22:14 +01:00
David Zeuthen
5448cc56f6 gudev: remove G_UDEV_API_IS_SUBJECT_TO_CHANGE since API is now stable
Signed-off-by: David Zeuthen <davidz@redhat.com>
2009-10-29 18:46:50 +01:00
Martin Pitt
1150c6e641 keymap: add HP 2230s
Taken from hal-info commit e6389d9fa.

http://bugs.freedesktop.org/show_bug.cgi?id=21527
2009-10-29 13:23:14 +01:00
Martin Pitt
5f4f842a82 keymap: add HP Pavillion dv6315ea
Taken from hal-info commit eba65779.
2009-10-29 13:21:07 +01:00
Martin Pitt
0ddfae5fff keymap: Add Logitech Wave cordless
https://launchpad.net/bugs/215035
2009-10-15 00:13:17 +02:00
Martin Pitt
e13eecbdf3 keymap: make USB keyboards really work
Calling usb_id and GOTO in one rule did not make sense at all.
2009-10-11 20:02:11 +02:00
Martin Pitt
e8f04b65f3 keymap: fix usb_id invocation
For deciding whether to call usb_id, test the property which we are actually
querying further down.

https://launchpad.net/215035
2009-10-11 18:18:43 +02:00
Martin Pitt
5fa1d79421 keymap: Add Logitech Wave USB
This introduces a new rules section for USB keyboards, too.

https://launchpad.net/bugs/215035
2009-10-08 21:43:38 +02:00
Maxim Levitsky
a05cd7ea3e keymap for Acer Aspire 5720 2009-10-07 14:47:20 +02:00
William Jon McCann
bded570432 udev-acl: catch up with ConsoleKit 0.4.1 2009-09-27 06:37:26 -07:00
Harald Hoyer
676cea155a scsi_id: prevent buffer overflow in check_fill_0x83_prespc3()
see https://bugzilla.redhat.com/show_bug.cgi?id=516920
2009-09-17 00:06:03 +02:00
Kay Sievers
24355313dc scsi_id: delete copy of bsg.h
It's provided by the kernel since 2.6.23.
2009-09-14 14:33:26 +02:00
Martin Pitt
7f06ec2e19 extras/keymap: Rename KEY_COFFEE to KEY_SCREENLOCK
Unfortunately KEY_COFFEE is the canonical name in linux/input.h, and the more
sensible KEY_SCREENLOCK is an alias. Manually override this particular case,
since it's better to have "screenlock" in keymaps.

However, we still keep the automatic filtering for the general case, to avoid
introducing this problem again when input.h changes.
2009-09-09 15:22:48 +02:00
Martin Pitt
6983c0d0f2 extras/keymap: fix hash table collisions
More than one key name was mapped to the same key, due to linux/input.h
defining some aliases (in particular, KEY_HANGUEL, KEY_SCREENLOCK,
KEY_MIN_INTERESTING). These caused hash table collisions.

Changed the generation of the tables to ignore these aliases, and updated all
keymaps to use the canonical name.

This was detected by llvm-clang-analyzer. Thanks to Lennart Poettering for
doing these checks and pointing this out!

https://launchpad.net/bugs/426647
2009-09-09 11:09:17 +02:00
Kay Sievers
78715f65c9 fix randonm findings from llvm-clang-analyzer
Thanks to Lennart for the log file!
2009-09-08 22:11:04 +02:00
Martin Pitt
bfde03a149 modem-modeswitch rules: Match more devices
extras/modem-modeswitch/61-mobile-action.rules: Match on device class/subclass
"00" as well, some devices like the Vodafone K3565-Z have that.

https://launchpad.net/bugs/281335
2009-09-07 19:37:43 +02:00
Daniel Mierswa
959e8b5dec use nanosleep() instead of usleep()
POSIX.1-2001 declares usleep() function obsolete and POSIX.1-2008
removes it.

[Kay Sievers]
  - include time.h
  - use const for timespec
  - scsi_id: drop rand() in retry loop
  - modem-probe: rename msuspend() to msleep()
2009-08-30 23:58:57 +02:00
Martin Pitt
bc19bff974 Revert "extras/keymap: Fix case matching for Micro-Star"
This reverts commit 66bf63c05c.

Further debugging in https://launchpad.net/bugs/178860 showed that for some
weird reason the correct key codes already come out of the "Video Bus" input
device, and the previous commit would cause them to appear a second time
through the standard keyboard device.

This is a kernel bug in the end, but let's not break working things
prematurely.
2009-08-26 22:39:32 +02:00
Martin Pitt
66bf63c05c extras/keymap: Fix case matching for Micro-Star
Some Micro-Star boards apparently have mixed case vendor, instead of all-caps.
Update the glob to catch all such cases.

https://launchpad.net/bugs/178860
2009-08-26 19:09:06 +02:00
Martin Pitt
d25b7205db extras/keymap: Fix hold key on Acer Aspire 6920
The Hold key locks the panel and is hardwired. It doesn't have a sensible
keycode to map to, and shouldn't be overloaded either.
2009-08-24 17:59:42 +02:00
Martin Pitt
3c47b388ee extras/modem-modeswitch: eject ZTE MF6xx fake CD-ROMs
modem-modeswitch does not fully work on ZTE MF6xx modems, their fake CD-ROMs
need to be properly ejected in order for the actual modem to appear. Add udev
rule for this device (19d2:2000 in CD-ROM mode).

https://launchpad.net/bugs/281335
2009-08-24 12:02:07 +02:00
Martin Pitt
5daaf29d71 extras/keymap: Add Acer Aspire 6920
https://launchpad.net/bugs/407940
2009-08-24 08:36:30 +02:00
Mario Limonciello
8a0217ffd4 hid2hci: remove superfluous bmAttributes match
For the retrigger of the device on remove we were trying to match bmAttributes
of self powered which is unnecessary.
2009-08-20 19:43:51 +02:00
Kay Sievers
c8663095e3 rule_generator: net - fix MATCHDEVID
This got lost for some reason with an earlier change.

Thanks to Marco d'Itri <md@linux.it> for noticing.
2009-08-16 21:12:04 +02:00
Kay Sievers
11a421dab5 udev-acl: allow to skip ACL handling 2009-08-14 20:13:20 +02:00
Diego Elio 'Flameeyes' Pettenò
90b955b836 Fix “make distcheck” run outside of the source directory.
Pass the path to keys.txt as second parameter of check-keymaps.sh so that
it can be found in the right path.
2009-08-08 22:13:25 +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
Diego Elio 'Flameeyes' Pettenò
bd2dab9ce5 Fix building of documentation when doing out-of-source builds.
Since gtk-mkhtml is executed in a sub-directory of the build directory, and
make does not know of that, the $(buildir) variable will still be "." and
the $(srcdir) will not properly be found. For this reason, use the absolute
variants for the two functions, which won't be changing.
2009-08-07 21:54:35 +02:00
Diego Elio 'Flameeyes' Pettenò
eab32c2529 Use the keymap check during “make distcheck” rather than “check”.
Since the check-keymaps.sh script checks for validity the source directory
and the Makefile.am file, instead of running it during user-oriented “make
check”, run it during developed-oriented “make distcheck”.

An invalid keymap will abort the execution which will prevent shipping
an incomplete Makefile.am.

To properly support out-of-source builds, pass as single parameter to the
test the path to the source directory.
2009-08-07 20:05:55 +02:00
Diego Elio 'Flameeyes' Pettenò
33eb18305d Finally, also merge gudev into the top-level Makefile.am.
The Introspection rules are not tested yet; more touch-ups have been made
for them.
2009-08-07 19:15:30 +02:00
Diego Elio 'Flameeyes' Pettenò
7d701b0e26 Merge keymap building in the top-level Makefile.am.
Slight adjustment around the tests and the rules for the new working
directory.
2009-08-07 19:15:29 +02:00
Diego Elio 'Flameeyes' Pettenò
b02140b6bc Also merge into the top-level Makefile.am the simpler extras. 2009-08-07 19:15:29 +02:00
Diego Elio 'Flameeyes' Pettenò
59d93adb29 Merge libudev, udev, and the unconditional extras in a single Makefile.am.
Instead of using multiple recursive Makefile.am files, use a single
Makefile.am that sets and builds all the basic suite of libraries and
binaries for udev. This reduces the number of files in the source tree, and
also reduces drastically the build time when using parallel-make.

With this setup, all the compile steps will be executed in parallel, and
just the linking stage will be (partially) serialised on the libraries
creation.
2009-08-07 19:15:28 +02:00
Martin Pitt
4de08374d0 extras/keymap: Fix Bluetooth key on Acer Aspire 6920
See https://launchpad.net/bugs/407940
2009-08-07 15:41:54 +01:00
Martin Pitt
5e22aab2e9 extras/keymap: Add Samsung NC20
Reported by Dirk Thierbach <dthierbach@gmx.de> on hal ML.
2009-08-07 11:11:48 +01:00
Mario Limonciello
8aba9a4bca hid2hci: install re-trigger for hid device when recovering from S3 2009-08-07 02:23:44 +02:00
Anssi Hannula
2a0c6867cb udev-acl: add joystick devices
User needs read-write access to joystick devices in order to use force
feedback features.
2009-08-05 05:08:45 +02:00
Kay Sievers
2a827c959a make: build internal tools against libudev-private.la 2009-07-25 20:37:45 +02:00
Kay Sievers
4b6769f612 hid2hci: rewrite (and break) rules and device handling
We must never access random devices in /dev which do not belong to
the event we are handling. Hard-coding /dev/hidrawX, and looping over all
devices is absolutely not acceptable --> hook into hidraw events.

We can not relay on (rather random) properties merged into the parent
device by earlier rules --> use libudev to find the sibling device
with a matching interface.

Libusb does not fit into udev's use case. We never want want to scan
and open() all usb devices in the system, just to find the device
we are already handling the event for --> put all the stupid scanning
into a single function and prepare for a fixed libusb or drop it later.
2009-07-24 18:06:22 +02:00
Kay Sievers
58230a77d3 path_id: fix typo in comment 2009-07-23 20:30:52 +02:00
Martin Pitt
0dcf1ce1f7 extras/keymap: Fix crash for unknown keys
The keymap table has some holes in it, which caused the interactive mode to
crash for unknown keys. In these cases, print the numeric key code instead.
2009-07-23 19:00:38 +02:00
Erik Forsberg
53842b5382 extras/modem-modeswitch: Add Huawei E1550 GSM modem
What's odd is that this is a huawei modem, not an option modem, so one would
expect it to work better with usb_modeswitch and it's -H (huawei) mode - but
that's not the case, I've tested that as well.

https://launchpad.net/bugs/401655
2009-07-23 16:40:25 +02:00
Kay Sievers
1b691f831b path_id: make global variable static 2009-07-22 19:09:48 +02:00
Kay Sievers
9821e70264 hid2hci: remove hid structures and include kernel header 2009-07-22 01:03:33 +02:00
Mario Limonciello
5bacd2aadc hid2hci: support to hid2hci for recovering Dell BT devices after S3 2009-07-22 00:33:27 +02:00
Kay Sievers
7a1566b0ee v4l_id: exit with 0 when --help is given 2009-07-21 01:36:42 +02:00
Martin Pitt
9093c7c132 extras/keymap: Add Samsung SX22S
Reported on hal ML by Sergey Astanin <s.astanin@gmail.com>.
2009-07-20 17:59:11 +02:00
Martin Pitt
0b8d9a7333 extras/keymap: teach findkeyboards about USB keyboards 2009-07-18 16:59:46 +02:00
Martin Pitt
6e40a05718 extras/keymap: Add Fujitsu Amilo M
https://launchpad.net/bugs/48547
2009-07-18 15:30:08 +02:00
Martin Pitt
1d11776f27 extras/keymap: cover more Compaq Evo models
https://launchpad.net/bugs/35382 shows that may Evo N* models share the same
keymap, so generalize the existing rule.
2009-07-18 15:23:55 +02:00
Martin Pitt
04c6b22fcd extras/keymap: Add HP Presario 2100
https://launchpad.net/bugs/20223
2009-07-18 15:17:20 +02:00
Martin Pitt
31d55fb187 extras/keymap: add recently added keymap files to Makefile.am 2009-07-18 15:09:05 +02:00
Martin Pitt
04ff303730 extras/keymap: fix check-keymaps.sh for inline mappings
Do not complain about missing keymap files when giving scancode/keyname pairs
on the keymap command line in the rules.
2009-07-18 15:07:55 +02:00
Martin Pitt
9193c7df9a keymap: inline one-line key maps
Remove key map files which have only one override. Instead, use keymap tools'
new feature of specifying scancode/keyname pairs directly at the command line.

Also add a comment to 95-keymap.rules about how to specify key mappings in the
rules.
2009-07-18 15:02:25 +02:00
Martin Pitt
d03a6f20df keymap tool: support scancode/keycode pair arguments
This avoids having to create and parse an entire keymap file for cases where
just one or two keys have to be remapped.
2009-07-18 14:52:45 +02:00
Martin Pitt
b02c9fa19b keymap tool: improve help
Do not duplicate help strings, and add missing calling variant for
interactivity.
2009-07-18 14:27:50 +02:00
Martin Pitt
acdf6ae7ac extras/keymap: add Compal Hel80i
https://launchpad.net/bugs/198530
2009-07-18 14:13:28 +02:00
Martin Pitt
4766e49e3f extras/keymap: add Everex Stepnote XT5000T
Reported in https://launchpad.net/bugs/400921
2009-07-18 09:27:38 +02:00
Martin Pitt
9528405c4a extras/keymap: add Zepto ZNote
Reported on https://launchpad.net/bugs/400252
2009-07-16 17:34:01 +02:00
Martin Pitt
ba17475852 add keymap for Clevo D410J laptop
Reported as hal-info patch by Németh Márton <nm127@freemail.hu> on hal ML.
2009-07-16 11:23:16 +02:00
Ian Campbell
c3eedf6567 scsi_id: correct error handling in prepend_vendor_model
The callers of prepend_vendor_model both expect < 0 to be returned on
error and the index to be returned otherwise. However
prepend_vendor_model actually returns 1 on error. Fix this by correctly
returning -1.

Older kernels (before e5b3cd42: "SCSI: sanitize INQUIRY strings")
truncated the model field in sysfs (or propagated bad results from the
target) to less than the expected/required 16 characters which meant
that the SCSI id was mangled into:
        # /sbin/scsi_id -g -s /block/sdg
        S146cee20VIRTUAL-DISK
when it should have been:
        # /sbin/scsi_id -g -s /block/sdg
        SIET     VIRTUAL-DISK   146cee20

Notice how the serial number has been pasted over the vendor+model at
index 1 instead of being added at the end.

In the former case:
        # cat /sys/devices/platform/host5/session1/target5:0:0/5:0:0:1/model | od -t c -t x1
        0000000   V   I   R   T   U   A   L   -   D   I   S   K  \n
                56 49 52 54 55 41 4c 2d 44 49 53 4b 0a
But it should have been:
        # cat /sys/devices/platform/host5/session1/target5:0:0/5:0:0:1/model | od -t c -t x1
        0000000   V   I   R   T   U   A   L   -   D   I   S   K
                56 49 52 54 55 41 4c 2d 44 49 53 4b 20 20 20 20
        0000020  \n
                0a

Signed-off-by: Ian Campbell <ijc@hellion.org.uk>
2009-07-06 16:21:08 +02:00
Kay Sievers
fc8933f7f6 build: do not delete .la files 2009-07-04 04:12:06 +02:00
Martin Pitt
84176f979f extras/udev-acl: add smartcard readers
gnupg, psc-lite, etc. will ship udev rules for supported smartcard readers
soon. Add the ACL management bit.

Thanks to Michael Bienia!
2009-07-03 14:57:43 +02:00
Jon Masters
25688f4d67 firmware: search for third party or sysadmin supplied firmware updates
We currently search /lib/firmware and /lib/firmware/`uname -r` for firmware
files for device drivers loaded by the currently running kernel. These are
often packaged by distributions as a subpackage of the kernel or as a
separate package containing firmware. But these files cannot easily be
updated by third parties or sysadmins independently of that package.

This patch causes udev to also look for firmware files in an "updates"
directory, which is almost identical in purpose to the module-init-tools
"updates" directories insomuch as local changes can go in here and will
take preference over firmware supplied by any distribution.
2009-07-01 20:21:03 -04:00
Kay Sievers
84875aa6b3 scsi_id: delete no longer needed config file 2009-06-28 03:01:31 +02:00
Kay Sievers
fed0ad7694 ata_id: sync ID_SERIAL(_SHORT) with other *_id tools
ID_SERIAL is the full serial number used for the links, ID_SERIAL_SHORT
is the device serial number.
2009-06-28 02:58:12 +02:00
Kay Sievers
a8916c3400 scsi_id: --reformat_serial - use udev_util_replace_whitespace() 2009-06-28 02:27:23 +02:00
Martin Pitt
b53c3a21b9 hid2hci: narrow matches to real HCI devices
The previous rules just checked bInterfaceProtocol but not the actual device
and interface class. This caused the hci rules to be applied for Dell USB hubs
and attached input devices like keyboards and mouses as well, breaking them
completely.

Tighten the match to also check device and interface class/subclass.

https://launchpad.net/bugs/392144
2009-06-26 08:17:23 +02:00
Kay Sievers
a6c06e57a2 configure.ac: add AM_SILENT_RULES 2009-06-20 03:57:26 +02:00
Martin Pitt
a33da970ef extras/keymap: Update findkeyboards location
Recent commit 3b338b6 moved findkeyboards from /usr/share/udev to /lib/udev/.
Update documentation accordingly.
2009-06-19 14:53:18 +02:00
Martin Pitt
eb20485b40 udev-acl: Manage hplip device permissions
hplip tools need user access to the devices for checking ink levels and
user-level configuration. This was formerly done with hal FDIs.

As per discussion with Till Kamppeter.
2009-06-19 14:49:35 +02:00
Kay Sievers
3b338b6bb9 extras/keymap: install findkeyboards in /lib/udev 2009-06-19 11:48:04 +02:00
Kay Sievers
bcee964977 extras: delete man pages for private udev tools
These are mostly dummy man pages, without real content, some even
outdated. None of these tools are part of any offered public interface,
and they should not pretend to be by offering a man page.
2009-06-17 21:57:40 +02:00
Martin Pitt
2719cef56f keymap: Update findkeyboard path in docs
findkeyboards is now in /usr/share/udev/ after the migration to udev proper.
Update path in README.keymap.txt.
2009-06-17 16:57:30 +02:00
Kay Sievers
d0d3183278 extras/keymap: use LIBEXECDIR instead /lib/udev 2009-06-17 16:18:04 +02:00
Dan Williams
181368a3b2 extras/modem-modeswitch: move from udev-extras 2009-06-17 12:16:54 +02:00
Martin Pitt
0fb7c51846 extras/keymap: Fix WLAN button on ThinkPads
Fn+F5 was previously assigned to "radio" which is fairly useless under X.
Switch it to "wlan".

Reported in http://bugs.debian.org/504643
2009-06-17 12:06:33 +02:00
Martin Pitt
2417dc20f5 keymap: move from udev-extras 2009-06-17 11:56:52 +02:00
Kay Sievers
6133f3432f cleanup ./configure installation directory options 2009-06-17 02:25:07 +02:00
Lennart Poettering
ccba91c746 usb-db: move from udev-extras 2009-06-16 20:57:28 +02:00
Kay Sievers
446f931816 v4l_id: 70-v4l.rules -> 60-persistent-v4l.rules 2009-06-16 20:13:17 +02:00
Kay Sievers
c283f81cb7 gudev: fix typo in configure option 2009-06-16 19:56:31 +02:00
Mario Limonciello
be51950dc4 hid2hci: move from udev-extras 2009-06-16 19:30:22 +02:00
Kay Sievers
c5a9680ee7 v4l_id: move from udev-extras 2009-06-16 18:41:05 +02:00
Kay Sievers
fc04059abf udev-acl: handle missing action when called in CK mode 2009-06-16 18:11:40 +02:00
David Zeuthen
bf05675a20 gudev: move from udev-extras
GObject libudev access. Initial version from Bastien Nocera, current
version by David Zeuthen.
2009-06-16 17:52:15 +02:00
Kay Sievers
af23b83ea7 udev-acl: move from udev-extras
The build of extras with larger external dependencies is wrapped in:
      --enable-extras
2009-06-16 17:43:12 +02:00
Kay Sievers
045a3bc89e USE_LOG -> ENABLE_LOGGING, DEBUG -> ENABLE_DEBUG, USE_SELINUX -> WITH_SELINUX 2009-06-14 17:53:15 +02:00
Kay Sievers
44b49d3736 move common stuff from udev/ to private parts of libudev/ 2009-06-09 23:05:25 +02:00
Kay Sievers
9060b066d9 move syslog wrapper to libudev 2009-06-09 22:47:48 +02:00
Kay Sievers
48a9b173e8 libudev: move to top-level directory 2009-06-08 21:36:06 +02:00
Kay Sievers
67dd1cdf9d path_id: rename scsi sub-fuctions 2009-06-08 19:22:53 +02:00
Kay Sievers
33a7615943 path_id: delete old shell script
Removed with this is SAS disk support which never really worked properly,
and legacy IDE disk support, which can be re-implemented if needed.
2009-06-08 16:51:13 +02:00
Kay Sievers
a2fe9450bb path_id: add iscsi support 2009-06-08 16:48:27 +02:00
Kay Sievers
7f011f6bf2 path_id: handle fibre channel 2009-06-08 14:56:49 +02:00
Kay Sievers
93ee84ce07 fix signed/unsigned warning 2009-06-06 21:19:56 +02:00
Kay Sievers
ffd0afe8a9 path_id: add comments 2009-06-06 20:36:46 +02:00
Kay Sievers
c122b6fadf path_id: update SCSI handling 2009-06-06 20:30:56 +02:00
Kay Sievers
185ea6a76d path_id: implement in C using libudev 2009-06-06 16:07:06 +02:00
Kay Sievers
e91ac78ffc cdrom_id: add error message if open() fails 2009-05-29 13:21:38 +02:00
Kay Sievers
d3c8231e73 cdrom_id: suppress ID_CDROM_MEDIA_STATE=blank for plain non-writable CDROM media
Some broken fake cdrom drives return ID_CDROM_MEDIA_STATE=blank.

  $ /lib/udev/cdrom_id -d /dev/sr1
  main: probing: '/dev/sr1'
  cd_inquiry: INQUIRY: [Nokia   ][S60             ][1.0 ]
  cd_profiles: GET CONFIGURATION: number of profiles 76
  cd_profiles: current profile 0x08
  cd_media_toc: READ TOC: len: 12
  cd_media_toc: last track 1 starts at block 0
  cd_media_info: disk type 00
  ID_CDROM=1
  ID_CDROM_MRW=1
  ID_CDROM_MRW_W=1
  ID_CDROM_MEDIA=1
  ID_CDROM_MEDIA_CD=1
  ID_CDROM_MEDIA_STATE=blank

Others work fine, but ID_CDROM_MEDIA_STATE is not needed for non-writable CDROM media:

  $ /lib/udev/cdrom_id -d /dev/sr1
  main: probing: '/dev/sr1'
  cd_inquiry: INQUIRY: [SanDisk ][U3 Cruzer Micro ][8.02]
  cd_profiles: GET CONFIGURATION: number of profiles 72
  cd_profiles: current profile 0x08
  cd_media_toc: READ TOC: len: 20
  cd_media_toc: track=1 info=0x4(data) start_block=0
  cd_media_toc: last track 1 starts at block 0
  cd_media_info: disk type 00
  ID_CDROM=1
  ID_CDROM_MRW=1
  ID_CDROM_MRW_W=1
  ID_CDROM_MEDIA=1
  ID_CDROM_MEDIA_CD=1
  ID_CDROM_MEDIA_STATE=complete
  ID_CDROM_MEDIA_SESSION_COUNT=1
  ID_CDROM_MEDIA_TRACK_COUNT=1
  ID_CDROM_MEDIA_TRACK_COUNT_DATA=1
2009-05-26 00:50:45 +02:00
Kay Sievers
eba87f55f6 edd_id: use openat() 2009-05-20 18:10:26 +02:00
Kay Sievers
065db05221 use more efficient string copying 2009-05-20 17:57:52 +02:00
Kay Sievers
b4fa1b67f8 rule-generator: cd - skip by-path links if we create by-id links 2009-05-14 12:57:19 +02:00
Kay Sievers
3de63a356f delete libvolume_id 2009-05-12 13:28:01 +02:00
Kay Sievers
f07996885d delete vol_id and require util-linux-ng's blkid 2009-05-11 04:12:23 +02:00
Lubomir Rintel
9379b7c16d rule-generator: net - whitelist NICs that violate MAC local scheme
According to list of assigned ethernet codes [1] referred to by
IANA [2] certain global addresses do not follow the assignement
scheme and use numbers reserved for local use. Several such adapters
are quite widely used, generate rules for them.

[1] http://www.cavebear.com/archive/cavebear/Ethernet/vendor.html
[2] http://www.iana.org/assignments/ethernet-numbers
2009-05-03 15:37:30 +02:00
Kay Sievers
1f698065bc rule_generator: net - fix usb comment generation
On Sat, Apr 4, 2009 at 22:17, Omair Eshkenazi <stimpson@phys.huji.ac.il> wrote:
> I noticed that in (70-)persistent-net.rules, the comments for USB devices
> are missing the device/vendor id's. Example:
> # USB device 0x:0x (rt73usb)
2009-04-26 20:53:30 +02:00
Kay Sievers
d6f0b22d57 cdrom_id: skip media tests if CDROM_DRIVE_STATUS != CDS_DISC_OK 2009-04-23 15:04:16 +02:00
John Wright
a947e5eaae edd_id: add cciss devices
Since cciss devices can be BIOS boot devices just as well as sd* and
hd*, the edd_id program should be run on them so that the later
/dev/disk/by-id/edd-* rules will work.
2009-04-22 14:53:35 +02:00
Kay Sievers
f907449eee cdrom_id: add and use ID_CDROM_MEDIA to decide if we run vol_id
Some broken mobile phones offer a faked cdrom drive with a media
without any tracks.
2009-04-21 03:27:14 +02:00
Kay Sievers
55d8f5e208 cdrom_id: add Xen cdrom support 2009-04-17 00:29:56 +02:00
Ian Campbell
09b2999210 path_id: support identification of Xen virtual block devices 2009-04-16 22:46:18 +02:00
Kay Sievers
241e5a21f9 usb_id: remove unused variable 2009-03-28 20:57:01 +01:00
Kay Sievers
9ae847f420 usb_id: add ID_VENDOR_ID, ID_MODEL_ID, ID_USB_INTERFACE_NUM, ID_USB_DRIVER
$ extras/usb_id/usb_id -x /class/tty/ttyUSB1
ID_VENDOR=HUAWEI_Technology
ID_VENDOR_ENC=HUAWEI\x20Technology
ID_VENDOR_ID=12d1
ID_MODEL=HUAWEI_Mobile
ID_MODEL_ENC=HUAWEI\x20Mobile
ID_MODEL_ID=1003
ID_REVISION=0000
ID_SERIAL=HUAWEI_Technology_HUAWEI_Mobile
ID_TYPE=generic
ID_BUS=usb
ID_USB_INTERFACES=:ffffff:080650:
ID_USB_INTERFACE_NUM=01
ID_USB_DRIVER=option
2009-03-25 21:24:21 +01:00
Adam Buchbinder
977f6f4b3d vol_id: fix language in manpage
The documentation for the --offset option wasn't in complete
sentences.

Signed-off-by: Adam Buchbinder <adam.buchbinder@gmail.com>
2009-03-16 23:11:02 +01:00
Adam Buchbinder
9a2773c4a4 create_floppy_devices: expand manpage
Include a table of what the CMOS types are, and note that nothing
will be created unless the -t option is specified. Also clean up
the formatting and bump the date.

Signed-off-by: Adam Buchbinder <adam.buchbinder@gmail.com>
2009-03-16 23:10:15 +01:00
Adam Buchbinder
57a9e68eb7 cdrom_id: update manpage
Include usage information on the -d/--debug flag. Also bump the date.

Signed-off-by: Adam Buchbinder <adam.buchbinder@gmail.com>
2009-03-16 23:09:52 +01:00
Adam Buchbinder
57df0207aa usb_id: add manpage
Signed-off-by: Adam Buchbinder <adam.buchbinder@gmail.com>
2009-03-16 23:09:32 +01:00
Kay Sievers
1597517c9e volume_id: ntfs - fix uuid setting
In my scenario, the ntfs prober did *not* detect the presence of a
ntfs filesystem (i.e. vol_id --probe-all returned *only* ext3).
However, if you examine the source of the ntfs prober, it overwrites
the uuid field of the volume_id object long before it actually
decides there's a valid filesystem there - this resulted in vol_id
returning the rather bizarre combination of type=ext3, but a uuid
populated by the ntfs prober.

https://bugs.edge.launchpad.net/ubuntu/+source/udev/+bug/337015
2009-03-03 20:11:09 +01:00
Kay Sievers
5afd777ebb usb_id: fix comment 2009-02-26 22:10:40 +01:00
Kay Sievers
468641f87f usb_id: fix NULL string usage 2009-02-26 20:57:48 +01:00
Kay Sievers
f95f1deea1 usb_id: return values if called directly for an usb_device 2009-02-26 17:58:22 +01:00
Kay Sievers
7e827bcde8 usb_id: add ID_USB_INTERFACES=:0e0100:0e0200:010100:010200: 2009-02-26 17:05:58 +01:00
David Zeuthen
ad88f9409a *_id: add model/vendor enc strings
So ID_MODEL and ID_VENDOR are pretty useful keys. However since we fix
them up (removing leading/trailing whitespace, converts spaces to
underscores) for use in device naming etc. we also force these fixups on
the desktop shell. And this looks pretty ugly.

The attached patch introduces the ID_MODEL_ENC and ID_VENDOR_ENC keys
that contains the encoded version of the raw strings obtained. It's
pretty similar in spirit to ID_FS_LABEL and its cousin ID_FS_LABEL_ENC.

With this patch a desktop shell can fix up these strings as it sees fit.
Note that some fixup is still needed though, for example

# /lib/udev/ata_id --export /dev/sda |grep ID_MODEL
ID_MODEL=INTEL_SSDSA2MH080G1GC
ID_MODEL_ENC=INTEL\x20SSDSA2MH080G1GC\x20\x20\x20\x20\x20\x20\x20\x20
\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20

Note the trailing and leading whitespace. Anyway with the attached patch
the desktop shell should be able to display "INTEL SSDSA2MH080G1GC"
rather than "INTEL_SSDSA2MH080G1GC" to the user.
2009-02-17 21:45:43 +01:00
Karel Zak
7e5861ff70 vol_id: add missing id->type to swap0
Signed-off-by: Karel Zak <kzak@redhat.com>
2009-01-24 15:21:15 +01:00
Karel Zak
3e2084614b vol_id: fix ddf version string
The version string in DDF suberblock does not include the null terminator
and the snprintf() function writes at most "size" bytes *including* the
null byte.

old version:
	ID_FS_VERSION=02.00.0
new version:
	ID_FS_VERSION=02.00.00

Signed-off-by: Karel Zak <kzak@redhat.com>
2009-01-24 15:20:37 +01:00
Kay Sievers
e339233993 usb_id: handle ATAPI devices like SCSI devices
Some weird mass storage devices identify the disks as ATAPI/cdrom
devices, and all disks in such enclusure get the same ids which
overwrite each other, in such cases, get the typ of device from the
scsi device, which has more knowledge what kind of device it really
is.
2009-01-22 19:23:33 +01:00
Sven Jost
64b333fdcc volume_id: support via raid version 2 2009-01-15 19:09:12 +01:00
Adam Buchbinder
fdcd1f4666 extras: fix mis-spelling of "environment" 2009-01-06 19:43:01 +01:00
Kay Sievers
9bd66b9dbf usb_id: s/image/media/ 2009-01-05 03:44:28 +01:00
Kay Sievers
4fad506ed8 usb_id: use devtype lookup 2009-01-03 15:26:34 +01:00
Marcel Holtmann
61ee8cc92d libudev: device - remove udev_device_get_parent_with_subsystem 2009-01-03 15:12:28 +01:00
Kay Sievers
e6fa87a11f usb_id: add "image" class 2008-12-29 05:54:44 +01:00
Harald Hoyer
de2dc210e5 rule_generator: fix enumeration for write_cd_rules
quote +, as it would be taken as a part of the regexp otherwise
https://bugzilla.redhat.com/show_bug.cgi?id=477535
2008-12-22 15:05:11 +01:00
Kay Sievers
a31f59b570 rules: first simple step merging with Ubuntu rules 2008-12-19 16:49:56 +01:00
Jeremy Higdon
6a481373b4 path_id: rework SAS persistent names 2008-12-18 13:42:28 +01:00
Kay Sievers
14e1827888 volume_id: support sub-uuid's and plug in btrfs device uuid 2008-12-09 18:14:23 +01:00
Kay Sievers
c9809be568 volume_id: btrfs - update format 2008-12-09 15:33:23 +01:00
Kay Sievers
5d89ef7bf9 make: do not delete autotools generated file with distclean
[...] running the command
`make maintainer-clean' should not delete `configure' even if
`configure' can be remade using a rule in the Makefile.  More
generally, `make maintainer-clean' should not delete anything that
needs to exist in order to run `configure' and then begin to build
the program.  This is the only exception; `maintainer-clean' should
delete everything else that can be rebuilt.
2008-12-06 04:03:08 +01:00
Kay Sievers
bc4c751802 rules: add persistent /dev/serial/{by-id,by-path} rules
$ tree /dev/serial/
 /dev/serial/
 |-- by-id
 |   |-- usb-067b_2303-if00-port0 -> ../../ttyUSB0
 |   |-- usb-FTDI_FT232R_USB_UART_A7005uBP-if00-port0 -> ../../ttyUSB3
 |   |-- usb-HUAWEI_Technology_HUAWEI_Mobile-if00-port0 -> ../../ttyUSB1
 |   `-- usb-HUAWEI_Technology_HUAWEI_Mobile-if01-port0 -> ../../ttyUSB2
 `-- by-path
     |-- pci-0000:00:1d.0-usb-0:1:1.0-port0 -> ../../ttyUSB3
     |-- pci-0000:00:1d.7-usb-0:2.2.2:1.0-port0 -> ../../ttyUSB0
     |-- pci-0000:00:1d.7-usb-0:2.3:1.0-port0 -> ../../ttyUSB1
     `-- pci-0000:00:1d.7-usb-0:2.3:1.1-port0 -> ../../ttyUSB2

 $ tree /dev/serial/
 /dev/serial/
 |-- by-id
 |   |-- usb-Inside_Out_Networks_Edgeport_4_04-01-006467-if00-port0 -> ../../ttyUSB0
 |   |-- usb-Inside_Out_Networks_Edgeport_4_04-01-006467-if00-port1 -> ../../ttyUSB1
 |   |-- usb-Inside_Out_Networks_Edgeport_4_04-01-006467-if00-port2 -> ../../ttyUSB2
 |   |-- usb-Inside_Out_Networks_Edgeport_4_04-01-006467-if00-port3 -> ../../ttyUSB3
 |   |-- usb-Keyspan__a_division_of_InnoSys_Inc._USB_4-port_Serial_Adapter-if00-port0 -> ../../ttyUSB8
 |   |-- usb-Keyspan__a_division_of_InnoSys_Inc._USB_4-port_Serial_Adapter-if00-port1 -> ../../ttyUSB9
 |   |-- usb-Keyspan__a_division_of_InnoSys_Inc._USB_4-port_Serial_Adapter-if00-port2 -> ../../ttyUSB10
 |   |-- usb-Keyspan__a_division_of_InnoSys_Inc._USB_4-port_Serial_Adapter-if00-port3 -> ../../ttyUSB11
 |   `-- usb-Prolific_Technology_Inc._USB-Serial_Controller-if00-port0 -> ../../ttyUSB7
 `-- by-path
     |-- pci-0000:00:1d.2-usb-0:1.3:1.0-port0 -> ../../ttyUSB7
     |-- pci-0000:00:1d.7-usb-0:6.1.4.1:1.0-port0 -> ../../ttyUSB4
     |-- pci-0000:00:1d.7-usb-0:6.1.4.1:1.0-port1 -> ../../ttyUSB5
     |-- pci-0000:00:1d.7-usb-0:6.1.4.1:1.0-port2 -> ../../ttyUSB6
     |-- pci-0000:00:1d.7-usb-0:6.1.4.4:1.0-port0 -> ../../ttyUSB0
     |-- pci-0000:00:1d.7-usb-0:6.1.4.4:1.0-port1 -> ../../ttyUSB1
     |-- pci-0000:00:1d.7-usb-0:6.1.4.4:1.0-port2 -> ../../ttyUSB2
     |-- pci-0000:00:1d.7-usb-0:6.1.4.4:1.0-port3 -> ../../ttyUSB3
     |-- pci-0000:00:1d.7-usb-0:6.3:1.0-port0 -> ../../ttyUSB8
     |-- pci-0000:00:1d.7-usb-0:6.3:1.0-port1 -> ../../ttyUSB9
     |-- pci-0000:00:1d.7-usb-0:6.3:1.0-port2 -> ../../ttyUSB10
     `-- pci-0000:00:1d.7-usb-0:6.3:1.0-port3 -> ../../ttyUSB11
2008-12-04 01:43:33 +01:00
Karel Zak
43f7e87f54 volume_id: HPFS code clean up
* fix typo (hs vs. hbb)

 * set id->{version,usage,type} when all tests pass

 * be paranoid and don't use hs->version when "hs" source buffer was
   possibly modified by next volume_id_get_buffer() call.

Signed-off-by: Karel Zak <kzak@redhat.com>
2008-12-03 15:28:53 +01:00
Kay Sievers
caf4c97a2c scsi_id: do not fail if no serial is found like for optical drives 2008-12-02 19:23:38 +01:00
Kay Sievers
aba31da054 usb_id: add "break" to currently unused case labels 2008-11-26 13:38:49 +01:00
Marcel Holtmann
62a7b2d5a5 usb_id: fix switch statement for video type
Introducing the video type, creating a fall-through case where other
devices might now be declared as type video.
2008-11-26 13:31:37 +01:00
Kay Sievers
45a9e9e27b floppy: use ARRAY_SIZE() 2008-11-23 17:29:37 +01:00
Peter Breitenlohner
013332b93c floppy: fix array bounds check and minor calculation
Fix off-by-4 bug in floppy minors for fd[4-7].
Avoid segmentation fault for bad CMOS type.
Print mode in human readable, i.e., octal form.
2008-11-23 17:22:32 +01:00
Kay Sievers
6733f60178 update NEWS TODO 2008-11-22 00:34:42 +01:00
Kay Sievers
c3f0b654fc path_id: fix fibre channel handling 2008-11-21 20:48:24 +01:00
Peter Breitenlohner
4435308844 man: fix typos 2008-11-21 10:50:12 +01:00
Kay Sievers
f1ab8f912e volume_id: clear probing result before probing and do not probe a second time, if not needed
On Thu, Nov 20, 2008 at 14:17, Karel Zak <kzak@redhat.com> wrote:
>  I see the patch (volume_id_probe_filesystem()) and a few things come
>  to mind:
>
>  - shouldn't be the relevant parts (label, uuid, version, ...) of
>    the "struct volume_id" zeroized when you found a signature and
>    before you call the next probing function?
>
>  - it seems as overkill to use two for()s and probe two times for all
>    filesystems. What about to store the first result and re-use it?
>
>  - .. or at least never use the second for() when the fist for() found
>    nothing ;-)
2008-11-21 07:26:44 +01:00
Kay Sievers
7106902dce volume_id: update btrfs 2008-11-21 07:26:09 +01:00
Kay Sievers
405d283043 vol_id: if regular files are probed, use stat() for the size value 2008-11-21 05:02:02 +01:00
Kay Sievers
2b22881cae volume_id: remove unused usage types 2008-11-21 04:22:04 +01:00
Kay Sievers
1340a9e9ec scsi_id: make sure, we do not have slashes in values 2008-11-20 07:57:17 +01:00
Kay Sievers
97f37a7e78 ata_id: make sure, we do not have slashes in values 2008-11-20 07:52:33 +01:00
Kay Sievers
5317ca29e5 usb_id: replace chars in returned strings
Slashes are not funny in device names:
  |-- input
  |   |-- by-id
  |   |   `-- usb-Logitech_USB-PS
  |   |       |-- 2_Optical_Mouse-event-mouse -> ../../event2
  |   |       `-- 2_Optical_Mouse-mouse -> ../../mouse1
2008-11-20 02:44:08 +01:00
Kay Sievers
24239ded2d rules: v4l - add by-id/ links for USB devices
/dev/v4l
|-- by-id
|   |-- usb-046d_09a4_C4B15020-video-index0 -> ../../video0
|   `-- usb-05a9_a511-video-index0 -> ../../video1
`-- by-path
    |-- pci-0000:00:1d.0-usb-0:1:1.0-video-index0 -> ../../video1
    `-- pci-0000:00:1d.7-usb-0:2:1.0-video-index0 -> ../../video0
2008-11-20 02:26:13 +01:00
Kay Sievers
361b8a7423 volume_id: update btrfs magic 2008-11-18 19:14:37 +01:00
Kay Sievers
4dfe61c966 vol_id: clarify error message 2008-11-14 00:57:34 +01:00
Kay Sievers
510af2e939 volume_id: ntfs - mark as no other fs must match 2008-11-13 21:44:28 +01:00
Kay Sievers
8c7630b704 fix spelling in comment 2008-11-13 20:46:25 +01:00
Kay Sievers
387a827120 volume_id: fat - accept empty FAT32 fsinfo signature 2008-11-13 19:40:24 +01:00
Kay Sievers
779d2d851e volume_id: always check for all filesystem types and skip conflicting results
We probe for all known filesystems to find conflicting signatures. If
we find multiple matching signatures and one of the detected filesystem
types claims that it can not co-exist with any other filesystem type,
we do not return a probing result.

We can not afford to mount a volume with the wrong filesystem code and
possibly corrupt it. Linux ssytems have the problem of dozens of possible
filesystem types, and volumes with left-over signatures from former
filesystem types. Invalid signature need to be removed from the volume
to make the filesystem detection successful.

We do not want to read that many bytes from probed floppies, skip volumes
smaller than a usual floppy disk.
2008-11-13 19:34:41 +01:00
Karel Zak
3e39ff6365 volume_id: fat - move check for msdos signature (0x55 0xaa)
Make the msdos signature (0x55 0xaa) at 510 and 511 optional when
the standard FAT magic string is present.
2008-11-13 17:32:14 +01:00
Alan Jenkins
0bf41e6c24 scsi_id: we don't use DEVPATH env var anymore, update man page
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-11-13 01:37:25 +01:00
Kay Sievers
92f4313665 unify string replacement 2008-11-05 21:49:52 +01:00
Kay Sievers
b467444884 usb_id: MassStorage SubClass 6 is "scsi" not "disk" 2008-11-05 19:02:56 +01:00
Kay Sievers
0d5076dd92 volume_id: btrfs update 2008-11-05 02:22:07 +01:00
Kay Sievers
a0e17034ee firmware.sh: record missing files in /dev/.udev/firmware-missing/ 2008-11-04 18:38:06 +01:00
Kay Sievers
bf18270222 fstab_import: add "change" event match 2008-10-30 16:41:47 +01:00
Kay Sievers
11ddcbf7b4 edd_id: add "change" event match 2008-10-30 16:41:27 +01:00
Kay Sievers
1822e9b033 do not init string arrays, just clear first byte 2008-10-26 02:31:54 +01:00
Kay Sievers
f6bb9e981a fix uninitialized variable warnings 2008-10-24 09:37:37 +02:00
Kay Sievers
9bdca442ef rule_generator: fix netif NAME= value extraction regex
$ sed -n -r \
    -e 's/^#.*//' \
    -e 's/[[:space:],]NAME="(eth[0-9]*)"[[:space:]]*(,.*|\\|)$/\1/p' \
    /dev/null /etc/udev/rules.d/70-persistent-net.rules
  SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:16:41:e2:8d:c7", ATTR{type}=="1", KERNEL=="eth*",eth4

  $ sed -n -r \
    -e 's/^#.*//' \
    -e 's/.*[[:space:],]NAME="(eth[0-9]*)".*/\1/p' \
    /dev/null /etc/udev/rules.d/70-persistent-net.rules
  eth4
2008-10-23 15:44:34 +02:00
Kay Sievers
14f4025607 add util_resolve_subsys_kernel() 2008-10-22 18:03:38 +02:00
Matthias Koenig
fcd070d010 volume_id: swap - larger PAGE_SIZE support 2008-10-22 11:45:27 +02:00
Alan Jenkins
111e4f81ff replace strncpy() with strlcpy()
The problem was strncpy() doesn't stop after writing the terminating
NUL; by definition it goes on to zero the entire buffer.

I spy another use of strncpy in udev_device_add_property_from_string(),
which is responsible for another ~1% user cpu time...

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-10-21 23:55:13 +02:00
Alan Jenkins
b29a5e4ab9 use more appropriate alternatives to malloc()
Use calloc to request cleared memory instead.
Kernel and libc conspire to make this more efficient.

Also, replace one malloc() + strcpy() with strdup().

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
2008-10-21 12:54:57 +02:00
Kay Sievers
e02d738ee4 cdrom_id: remove ARRAY_SIZE() declaration 2008-10-21 12:40:47 +02:00
Kay Sievers
69239210be libudev: device - get_attr_value() -> get_sysattr_value() 2008-10-20 18:12:36 +02:00
Kay Sievers
2d9a1b1ef2 pass make distcheck 2008-10-18 20:33:06 +02:00
Kay Sievers
54808d77a3 prefix udev-util.c functions with util_* 2008-10-18 20:12:55 +02:00
Kay Sievers
002a957762 collect: use udev_list 2008-10-17 19:29:02 +02:00
Kay Sievers
8460299b57 rename udev source files 2008-10-16 18:13:48 +02:00
Kay Sievers
d56f94d168 volume_id: btrfs - update magic to latest disk format 2008-10-16 17:10:47 +02:00
Kay Sievers
f183b6ed76 libudev: add global property list 2008-10-16 13:51:29 +02:00
Kay Sievers
f4700eb8a0 vol_id: update README 2008-10-13 03:34:37 +02:00
Steven Whitehouse
2f66462982 volume_id: support for GFS2 UUIDs 2008-10-13 03:23:31 +02:00
Kay Sievers
6a328058e0 volume_id: more fat debugging 2008-10-06 18:17:05 +02:00
Kay Sievers
3cbc96e3be volume_id: add more vfat debugging information 2008-10-06 12:17:47 +02:00
Kay Sievers
0565a00a4c volume_id: use PRIu64i, PRIx64 macros 2008-10-03 18:24:04 +02:00
Kay Sievers
99370c2152 volume_id: add btrfs 2008-10-03 17:23:12 +02:00
Kay Sievers
59315eeae4 volume_id: better DDF raid detection 2008-10-03 15:01:39 +02:00
Kay Sievers
ab7430c5d8 vol_id: always use the safe string versions for unencoded label and uuid 2008-10-03 14:58:02 +02:00
Kay Sievers
d4f687c013 vol_id: fix logging glue 2008-10-03 14:56:54 +02:00
Kay Sievers
3ab8ebf572 volume_id: add dbg() as noop to check for compile errors 2008-10-03 14:50:57 +02:00
Kay Sievers
7744e869ec move selinux noops to udev.h 2008-10-03 14:49:29 +02:00
Kay Sievers
22c89d3fd7 vol_id: add size= option 2008-10-03 11:42:47 +02:00
Kay Sievers
2f1a291e2f usb_id: use libudev 2008-10-02 21:20:18 +02:00
Kay Sievers
e598c5738c libudev: get rid of selinux
"Hello world!" linked against libselinux parses /proc/mounts and
whatever else on startup, even when the lib is not needed at all.
Not funny! Get rid of that thing where it's not absolutely needed.
2008-10-02 18:48:40 +02:00
Kay Sievers
033e9f8cde use no_argument, required_argument, optional_argument in longopts 2008-10-02 16:49:05 +02:00
Kay Sievers
842dacb76f volume_id: hpfs - read label and uuid 2008-10-02 15:16:11 +02:00
Kay Sievers
4dea370d49 build: include Makefile.am.inc in all Makefile.am
Many thanks to Chris Spiegel for finding the still current vol_id
non-large-file-access bug, because of not including config.h.
2008-10-01 18:02:39 +02:00
Kay Sievers
4aa0b15efb fix dbg() callers 2008-09-29 19:03:08 +02:00
Kay Sievers
d0f398bc25 gitignore: move *.8 to subdirs 2008-09-29 05:03:43 +02:00
Kay Sievers
e345e2670a libudev: rework list handling 2008-09-26 19:44:53 +02:00
Kay Sievers
38f27948cd always include config.h from Makefile 2008-09-19 23:03:49 -07:00
Alan Jenkins
a4354f9385 scsi_id: compiler warning on 32-bit
The sg_io_v4 interface passes pointers as u64s.  It turns out GCC
disapproves of us casting a u64 straight to a 32 bit pointer.

cc1: warnings being treated as errors
scsi_serial.c: In function ‘sg_err_category4’:
scsi_serial.c:159: warning: cast to pointer from integer of different size
scsi_serial.c: In function ‘scsi_dump_v4’:
scsi_serial.c:303: warning: cast to pointer from integer of different size
2008-09-19 22:14:46 -07:00
Kay Sievers
c68a293678 vol_id: fix lib logging glue 2008-09-16 00:40:47 -07:00
Kay Sievers
17fcfb5972 use size definitions from libudev 2008-09-10 21:50:21 +02:00
Kay Sievers
31c1f53745 get rid of udev_sysdeps.c 2008-09-10 18:59:42 +02:00
Kay Sievers
ecc9ec579f convert to libudev and delete udev_utils_string.c 2008-09-10 18:39:23 +02:00
Kay Sievers
7525097713 extras: use libudev code 2008-09-10 18:24:39 +02:00
Kay Sievers
3eb46ec6dd libudev: do not use any udev source file 2008-09-10 18:00:31 +02:00
Kay Sievers
b2946df419 libudev: rename libudev-utils.c libudev-util.c 2008-09-10 17:12:33 +02:00
Kay Sievers
7a01f11afb libudev: get rid of udev_utils.c 2008-09-10 17:08:24 +02:00
Kay Sievers
b21b95d722 libudev: get rid of udev_sysfs.c 2008-09-10 14:29:07 +02:00
Kay Sievers
55e9959b15 update file headers 2008-09-10 02:40:42 +02:00
Kay Sievers
ef5c2d048c volume_id: merge util.h in libvolume_id-private.h 2008-09-10 02:31:11 +02:00