chiark / gitweb /
move imported udev into place
authorKay Sievers <kay.sievers@vrfy.org>
Tue, 3 Apr 2012 19:24:46 +0000 (21:24 +0200)
committerKay Sievers <kay.sievers@vrfy.org>
Wed, 4 Apr 2012 03:05:07 +0000 (05:05 +0200)
214 files changed:
.gitignore
Makefile.am
TODO
autogen.sh
configure.ac
m4/.gitignore
man/udev.xml [moved from src/udev/src/udev.xml with 100% similarity]
man/udevadm.xml [moved from src/udev/src/udevadm.xml with 100% similarity]
man/udevd.xml [moved from src/udev/src/udevd.xml with 100% similarity]
rules/.gitignore [new file with mode: 0644]
rules/42-usb-hid-pm.rules [moved from src/udev/rules/42-usb-hid-pm.rules with 100% similarity]
rules/50-udev-default.rules [moved from src/udev/rules/50-udev-default.rules with 100% similarity]
rules/60-persistent-alsa.rules [moved from src/udev/rules/60-persistent-alsa.rules with 100% similarity]
rules/60-persistent-input.rules [moved from src/udev/rules/60-persistent-input.rules with 100% similarity]
rules/60-persistent-serial.rules [moved from src/udev/rules/60-persistent-serial.rules with 100% similarity]
rules/60-persistent-storage-tape.rules [moved from src/udev/rules/60-persistent-storage-tape.rules with 100% similarity]
rules/60-persistent-storage.rules [moved from src/udev/rules/60-persistent-storage.rules with 100% similarity]
rules/75-net-description.rules [moved from src/udev/rules/75-net-description.rules with 100% similarity]
rules/75-tty-description.rules [moved from src/udev/rules/75-tty-description.rules with 100% similarity]
rules/78-sound-card.rules [moved from src/udev/rules/78-sound-card.rules with 100% similarity]
rules/80-drivers.rules [moved from src/udev/rules/80-drivers.rules with 100% similarity]
rules/95-udev-late.rules [moved from src/udev/rules/95-udev-late.rules with 100% similarity]
rules/99-systemd.rules.in [moved from src/99-systemd.rules.in with 100% similarity]
src/udev/.gitignore
src/udev/COPYING [deleted file]
src/udev/ChangeLog [deleted file]
src/udev/INSTALL [deleted file]
src/udev/Makefile.am [deleted file]
src/udev/NEWS [deleted file]
src/udev/README [deleted file]
src/udev/TODO [deleted file]
src/udev/accelerometer/61-accelerometer.rules [moved from src/udev/src/accelerometer/61-accelerometer.rules with 100% similarity]
src/udev/accelerometer/accelerometer.c [moved from src/udev/src/accelerometer/accelerometer.c with 100% similarity]
src/udev/ata_id/ata_id.c [moved from src/udev/src/ata_id/ata_id.c with 100% similarity]
src/udev/autogen.sh [deleted file]
src/udev/cdrom_id/60-cdrom_id.rules [moved from src/udev/src/cdrom_id/60-cdrom_id.rules with 100% similarity]
src/udev/cdrom_id/cdrom_id.c [moved from src/udev/src/cdrom_id/cdrom_id.c with 100% similarity]
src/udev/collect/collect.c [moved from src/udev/src/collect/collect.c with 100% similarity]
src/udev/configure.ac [deleted file]
src/udev/docs/.gitignore [moved from src/udev/src/docs/.gitignore with 96% similarity]
src/udev/docs/Makefile.am [moved from src/udev/src/docs/Makefile.am with 96% similarity]
src/udev/docs/libudev-docs.xml [moved from src/udev/src/docs/libudev-docs.xml with 100% similarity]
src/udev/docs/libudev-sections.txt [moved from src/udev/src/docs/libudev-sections.txt with 100% similarity]
src/udev/docs/libudev.types [moved from src/udev/src/docs/libudev.types with 100% similarity]
src/udev/docs/version.xml.in [moved from src/udev/src/gudev/docs/version.xml.in with 100% similarity]
src/udev/gudev/.gitignore [moved from src/udev/src/gudev/.gitignore with 100% similarity]
src/udev/gudev/docs/.gitignore [moved from src/udev/src/gudev/docs/.gitignore with 96% similarity]
src/udev/gudev/docs/Makefile.am [moved from src/udev/src/gudev/docs/Makefile.am with 94% similarity]
src/udev/gudev/docs/gudev-docs.xml [moved from src/udev/src/gudev/docs/gudev-docs.xml with 100% similarity]
src/udev/gudev/docs/gudev-sections.txt [moved from src/udev/src/gudev/docs/gudev-sections.txt with 100% similarity]
src/udev/gudev/docs/gudev.types [moved from src/udev/src/gudev/docs/gudev.types with 100% similarity]
src/udev/gudev/docs/version.xml.in [moved from src/udev/src/docs/version.xml.in with 100% similarity]
src/udev/gudev/gjs-example.js [moved from src/udev/src/gudev/gjs-example.js with 100% similarity]
src/udev/gudev/gudev-1.0.pc.in [moved from src/udev/src/gudev/gudev-1.0.pc.in with 100% similarity]
src/udev/gudev/gudev.h [moved from src/udev/src/gudev/gudev.h with 100% similarity]
src/udev/gudev/gudevclient.c [moved from src/udev/src/gudev/gudevclient.c with 100% similarity]
src/udev/gudev/gudevclient.h [moved from src/udev/src/gudev/gudevclient.h with 100% similarity]
src/udev/gudev/gudevdevice.c [moved from src/udev/src/gudev/gudevdevice.c with 100% similarity]
src/udev/gudev/gudevdevice.h [moved from src/udev/src/gudev/gudevdevice.h with 100% similarity]
src/udev/gudev/gudevenumerator.c [moved from src/udev/src/gudev/gudevenumerator.c with 100% similarity]
src/udev/gudev/gudevenumerator.h [moved from src/udev/src/gudev/gudevenumerator.h with 100% similarity]
src/udev/gudev/gudevenums.h [moved from src/udev/src/gudev/gudevenums.h with 100% similarity]
src/udev/gudev/gudevenumtypes.c.template [moved from src/udev/src/gudev/gudevenumtypes.c.template with 100% similarity]
src/udev/gudev/gudevenumtypes.h.template [moved from src/udev/src/gudev/gudevenumtypes.h.template with 100% similarity]
src/udev/gudev/gudevmarshal.list [moved from src/udev/src/gudev/gudevmarshal.list with 100% similarity]
src/udev/gudev/gudevprivate.h [moved from src/udev/src/gudev/gudevprivate.h with 100% similarity]
src/udev/gudev/gudevtypes.h [moved from src/udev/src/gudev/gudevtypes.h with 100% similarity]
src/udev/gudev/seed-example-enum.js [moved from src/udev/src/gudev/seed-example-enum.js with 100% similarity]
src/udev/gudev/seed-example.js [moved from src/udev/src/gudev/seed-example.js with 100% similarity]
src/udev/keymap/.gitignore [moved from src/udev/src/keymap/.gitignore with 100% similarity]
src/udev/keymap/95-keyboard-force-release.rules [moved from src/udev/src/keymap/95-keyboard-force-release.rules with 100% similarity]
src/udev/keymap/95-keymap.rules [moved from src/udev/src/keymap/95-keymap.rules with 100% similarity]
src/udev/keymap/README.keymap.txt [moved from src/udev/src/keymap/README.keymap.txt with 100% similarity]
src/udev/keymap/check-keymaps.sh [moved from src/udev/src/keymap/check-keymaps.sh with 100% similarity]
src/udev/keymap/findkeyboards [moved from src/udev/src/keymap/findkeyboards with 100% similarity]
src/udev/keymap/force-release-maps/common-volume-keys [moved from src/udev/src/keymap/force-release-maps/common-volume-keys with 100% similarity]
src/udev/keymap/force-release-maps/dell-touchpad [moved from src/udev/src/keymap/force-release-maps/dell-touchpad with 100% similarity]
src/udev/keymap/force-release-maps/hp-other [moved from src/udev/src/keymap/force-release-maps/hp-other with 100% similarity]
src/udev/keymap/force-release-maps/samsung-90x3a [moved from src/udev/src/keymap/force-release-maps/samsung-90x3a with 100% similarity]
src/udev/keymap/force-release-maps/samsung-other [moved from src/udev/src/keymap/force-release-maps/samsung-other with 100% similarity]
src/udev/keymap/keyboard-force-release.sh.in [moved from src/udev/src/keymap/keyboard-force-release.sh.in with 100% similarity]
src/udev/keymap/keymap.c [moved from src/udev/src/keymap/keymap.c with 99% similarity]
src/udev/keymap/keymaps/acer [moved from src/udev/src/keymap/keymaps/acer with 100% similarity]
src/udev/keymap/keymaps/acer-aspire_5720 [moved from src/udev/src/keymap/keymaps/acer-aspire_5720 with 100% similarity]
src/udev/keymap/keymaps/acer-aspire_5920g [moved from src/udev/src/keymap/keymaps/acer-aspire_5920g with 100% similarity]
src/udev/keymap/keymaps/acer-aspire_6920 [moved from src/udev/src/keymap/keymaps/acer-aspire_6920 with 100% similarity]
src/udev/keymap/keymaps/acer-aspire_8930 [moved from src/udev/src/keymap/keymaps/acer-aspire_8930 with 100% similarity]
src/udev/keymap/keymaps/acer-travelmate_c300 [moved from src/udev/src/keymap/keymaps/acer-travelmate_c300 with 100% similarity]
src/udev/keymap/keymaps/asus [moved from src/udev/src/keymap/keymaps/asus with 100% similarity]
src/udev/keymap/keymaps/compaq-e_evo [moved from src/udev/src/keymap/keymaps/compaq-e_evo with 100% similarity]
src/udev/keymap/keymaps/dell [moved from src/udev/src/keymap/keymaps/dell with 100% similarity]
src/udev/keymap/keymaps/dell-latitude-xt2 [moved from src/udev/src/keymap/keymaps/dell-latitude-xt2 with 100% similarity]
src/udev/keymap/keymaps/everex-xt5000 [moved from src/udev/src/keymap/keymaps/everex-xt5000 with 100% similarity]
src/udev/keymap/keymaps/fujitsu-amilo_li_2732 [moved from src/udev/src/keymap/keymaps/fujitsu-amilo_li_2732 with 100% similarity]
src/udev/keymap/keymaps/fujitsu-amilo_pa_2548 [moved from src/udev/src/keymap/keymaps/fujitsu-amilo_pa_2548 with 100% similarity]
src/udev/keymap/keymaps/fujitsu-amilo_pro_edition_v3505 [moved from src/udev/src/keymap/keymaps/fujitsu-amilo_pro_edition_v3505 with 100% similarity]
src/udev/keymap/keymaps/fujitsu-amilo_pro_v3205 [moved from src/udev/src/keymap/keymaps/fujitsu-amilo_pro_v3205 with 100% similarity]
src/udev/keymap/keymaps/fujitsu-amilo_si_1520 [moved from src/udev/src/keymap/keymaps/fujitsu-amilo_si_1520 with 100% similarity]
src/udev/keymap/keymaps/fujitsu-esprimo_mobile_v5 [moved from src/udev/src/keymap/keymaps/fujitsu-esprimo_mobile_v5 with 100% similarity]
src/udev/keymap/keymaps/fujitsu-esprimo_mobile_v6 [moved from src/udev/src/keymap/keymaps/fujitsu-esprimo_mobile_v6 with 100% similarity]
src/udev/keymap/keymaps/genius-slimstar-320 [moved from src/udev/src/keymap/keymaps/genius-slimstar-320 with 100% similarity]
src/udev/keymap/keymaps/hewlett-packard [moved from src/udev/src/keymap/keymaps/hewlett-packard with 100% similarity]
src/udev/keymap/keymaps/hewlett-packard-2510p_2530p [moved from src/udev/src/keymap/keymaps/hewlett-packard-2510p_2530p with 100% similarity]
src/udev/keymap/keymaps/hewlett-packard-compaq_elitebook [moved from src/udev/src/keymap/keymaps/hewlett-packard-compaq_elitebook with 100% similarity]
src/udev/keymap/keymaps/hewlett-packard-pavilion [moved from src/udev/src/keymap/keymaps/hewlett-packard-pavilion with 100% similarity]
src/udev/keymap/keymaps/hewlett-packard-presario-2100 [moved from src/udev/src/keymap/keymaps/hewlett-packard-presario-2100 with 100% similarity]
src/udev/keymap/keymaps/hewlett-packard-tablet [moved from src/udev/src/keymap/keymaps/hewlett-packard-tablet with 100% similarity]
src/udev/keymap/keymaps/hewlett-packard-tx2 [moved from src/udev/src/keymap/keymaps/hewlett-packard-tx2 with 100% similarity]
src/udev/keymap/keymaps/ibm-thinkpad-usb-keyboard-trackpoint [moved from src/udev/src/keymap/keymaps/ibm-thinkpad-usb-keyboard-trackpoint with 100% similarity]
src/udev/keymap/keymaps/inventec-symphony_6.0_7.0 [moved from src/udev/src/keymap/keymaps/inventec-symphony_6.0_7.0 with 100% similarity]
src/udev/keymap/keymaps/lenovo-3000 [moved from src/udev/src/keymap/keymaps/lenovo-3000 with 100% similarity]
src/udev/keymap/keymaps/lenovo-ideapad [moved from src/udev/src/keymap/keymaps/lenovo-ideapad with 100% similarity]
src/udev/keymap/keymaps/lenovo-thinkpad-usb-keyboard-trackpoint [moved from src/udev/src/keymap/keymaps/lenovo-thinkpad-usb-keyboard-trackpoint with 100% similarity]
src/udev/keymap/keymaps/lenovo-thinkpad_x200_tablet [moved from src/udev/src/keymap/keymaps/lenovo-thinkpad_x200_tablet with 100% similarity]
src/udev/keymap/keymaps/lenovo-thinkpad_x6_tablet [moved from src/udev/src/keymap/keymaps/lenovo-thinkpad_x6_tablet with 100% similarity]
src/udev/keymap/keymaps/lg-x110 [moved from src/udev/src/keymap/keymaps/lg-x110 with 100% similarity]
src/udev/keymap/keymaps/logitech-wave [moved from src/udev/src/keymap/keymaps/logitech-wave with 100% similarity]
src/udev/keymap/keymaps/logitech-wave-cordless [moved from src/udev/src/keymap/keymaps/logitech-wave-cordless with 100% similarity]
src/udev/keymap/keymaps/logitech-wave-pro-cordless [moved from src/udev/src/keymap/keymaps/logitech-wave-pro-cordless with 100% similarity]
src/udev/keymap/keymaps/maxdata-pro_7000 [moved from src/udev/src/keymap/keymaps/maxdata-pro_7000 with 100% similarity]
src/udev/keymap/keymaps/medion-fid2060 [moved from src/udev/src/keymap/keymaps/medion-fid2060 with 100% similarity]
src/udev/keymap/keymaps/medionnb-a555 [moved from src/udev/src/keymap/keymaps/medionnb-a555 with 100% similarity]
src/udev/keymap/keymaps/micro-star [moved from src/udev/src/keymap/keymaps/micro-star with 100% similarity]
src/udev/keymap/keymaps/module-asus-w3j [moved from src/udev/src/keymap/keymaps/module-asus-w3j with 100% similarity]
src/udev/keymap/keymaps/module-ibm [moved from src/udev/src/keymap/keymaps/module-ibm with 100% similarity]
src/udev/keymap/keymaps/module-lenovo [moved from src/udev/src/keymap/keymaps/module-lenovo with 100% similarity]
src/udev/keymap/keymaps/module-sony [moved from src/udev/src/keymap/keymaps/module-sony with 100% similarity]
src/udev/keymap/keymaps/module-sony-old [moved from src/udev/src/keymap/keymaps/module-sony-old with 100% similarity]
src/udev/keymap/keymaps/module-sony-vgn [moved from src/udev/src/keymap/keymaps/module-sony-vgn with 100% similarity]
src/udev/keymap/keymaps/olpc-xo [moved from src/udev/src/keymap/keymaps/olpc-xo with 100% similarity]
src/udev/keymap/keymaps/onkyo [moved from src/udev/src/keymap/keymaps/onkyo with 100% similarity]
src/udev/keymap/keymaps/oqo-model2 [moved from src/udev/src/keymap/keymaps/oqo-model2 with 100% similarity]
src/udev/keymap/keymaps/samsung-90x3a [moved from src/udev/src/keymap/keymaps/samsung-90x3a with 100% similarity]
src/udev/keymap/keymaps/samsung-other [moved from src/udev/src/keymap/keymaps/samsung-other with 100% similarity]
src/udev/keymap/keymaps/samsung-sq1us [moved from src/udev/src/keymap/keymaps/samsung-sq1us with 100% similarity]
src/udev/keymap/keymaps/samsung-sx20s [moved from src/udev/src/keymap/keymaps/samsung-sx20s with 100% similarity]
src/udev/keymap/keymaps/toshiba-satellite_a100 [moved from src/udev/src/keymap/keymaps/toshiba-satellite_a100 with 100% similarity]
src/udev/keymap/keymaps/toshiba-satellite_a110 [moved from src/udev/src/keymap/keymaps/toshiba-satellite_a110 with 100% similarity]
src/udev/keymap/keymaps/toshiba-satellite_m30x [moved from src/udev/src/keymap/keymaps/toshiba-satellite_m30x with 100% similarity]
src/udev/keymap/keymaps/zepto-znote [moved from src/udev/src/keymap/keymaps/zepto-znote with 100% similarity]
src/udev/libudev-device-private.c [moved from src/udev/src/libudev-device-private.c with 100% similarity]
src/udev/libudev-device.c [moved from src/udev/src/libudev-device.c with 100% similarity]
src/udev/libudev-enumerate.c [moved from src/udev/src/libudev-enumerate.c with 100% similarity]
src/udev/libudev-list.c [moved from src/udev/src/libudev-list.c with 100% similarity]
src/udev/libudev-monitor.c [moved from src/udev/src/libudev-monitor.c with 100% similarity]
src/udev/libudev-private.h [moved from src/udev/src/libudev-private.h with 99% similarity]
src/udev/libudev-queue-private.c [moved from src/udev/src/libudev-queue-private.c with 100% similarity]
src/udev/libudev-queue.c [moved from src/udev/src/libudev-queue.c with 100% similarity]
src/udev/libudev-selinux-private.c [moved from src/udev/src/libudev-selinux-private.c with 100% similarity]
src/udev/libudev-util-private.c [moved from src/udev/src/libudev-util-private.c with 100% similarity]
src/udev/libudev-util.c [moved from src/udev/src/libudev-util.c with 100% similarity]
src/udev/libudev.c [moved from src/udev/src/libudev.c with 99% similarity]
src/udev/libudev.h [moved from src/udev/src/libudev.h with 100% similarity]
src/udev/libudev.pc.in [moved from src/udev/src/libudev.pc.in with 100% similarity]
src/udev/m4/.gitignore [deleted file]
src/udev/mtd_probe/75-probe_mtd.rules [moved from src/udev/src/mtd_probe/75-probe_mtd.rules with 100% similarity]
src/udev/mtd_probe/mtd_probe.c [moved from src/udev/src/mtd_probe/mtd_probe.c with 100% similarity]
src/udev/mtd_probe/mtd_probe.h [moved from src/udev/src/mtd_probe/mtd_probe.h with 100% similarity]
src/udev/mtd_probe/probe_smartmedia.c [moved from src/udev/src/mtd_probe/probe_smartmedia.c with 100% similarity]
src/udev/scsi_id/.gitignore [moved from src/udev/src/scsi_id/.gitignore with 100% similarity]
src/udev/scsi_id/README [moved from src/udev/src/scsi_id/README with 100% similarity]
src/udev/scsi_id/scsi.h [moved from src/udev/src/scsi_id/scsi.h with 100% similarity]
src/udev/scsi_id/scsi_id.c [moved from src/udev/src/scsi_id/scsi_id.c with 100% similarity]
src/udev/scsi_id/scsi_id.h [moved from src/udev/src/scsi_id/scsi_id.h with 100% similarity]
src/udev/scsi_id/scsi_serial.c [moved from src/udev/src/scsi_id/scsi_serial.c with 100% similarity]
src/udev/src/.gitignore [deleted file]
src/udev/src/COPYING [deleted file]
src/udev/src/floppy/60-floppy.rules [deleted file]
src/udev/src/floppy/create_floppy_devices.c [deleted file]
src/udev/src/gudev/COPYING [deleted file]
src/udev/src/rule_generator/75-cd-aliases-generator.rules [deleted file]
src/udev/src/rule_generator/75-persistent-net-generator.rules [deleted file]
src/udev/src/rule_generator/rule_generator.functions [deleted file]
src/udev/src/rule_generator/write_cd_rules [deleted file]
src/udev/src/rule_generator/write_net_rules [deleted file]
src/udev/src/scsi_id/scsi_id.8 [deleted file]
src/udev/src/sd-daemon.c [deleted file]
src/udev/src/sd-daemon.h [deleted file]
src/udev/test-libudev.c [moved from src/udev/src/test-libudev.c with 100% similarity]
src/udev/test-udev.c [moved from src/udev/src/test-udev.c with 100% similarity]
src/udev/test/rules-test.sh
src/udev/udev-builtin-blkid.c [moved from src/udev/src/udev-builtin-blkid.c with 100% similarity]
src/udev/udev-builtin-firmware.c [moved from src/udev/src/udev-builtin-firmware.c with 100% similarity]
src/udev/udev-builtin-hwdb.c [moved from src/udev/src/udev-builtin-hwdb.c with 100% similarity]
src/udev/udev-builtin-input_id.c [moved from src/udev/src/udev-builtin-input_id.c with 100% similarity]
src/udev/udev-builtin-kmod.c [moved from src/udev/src/udev-builtin-kmod.c with 100% similarity]
src/udev/udev-builtin-path_id.c [moved from src/udev/src/udev-builtin-path_id.c with 100% similarity]
src/udev/udev-builtin-usb_id.c [moved from src/udev/src/udev-builtin-usb_id.c with 100% similarity]
src/udev/udev-builtin.c [moved from src/udev/src/udev-builtin.c with 100% similarity]
src/udev/udev-ctrl.c [moved from src/udev/src/udev-ctrl.c with 100% similarity]
src/udev/udev-event.c [moved from src/udev/src/udev-event.c with 99% similarity]
src/udev/udev-node.c [moved from src/udev/src/udev-node.c with 100% similarity]
src/udev/udev-rules.c [moved from src/udev/src/udev-rules.c with 100% similarity]
src/udev/udev-watch.c [moved from src/udev/src/udev-watch.c with 100% similarity]
src/udev/udev.conf [moved from src/udev/src/udev.conf with 100% similarity]
src/udev/udev.h [moved from src/udev/src/udev.h with 100% similarity]
src/udev/udev.pc.in [moved from src/udev/src/udev.pc.in with 100% similarity]
src/udev/udevadm-control.c [moved from src/udev/src/udevadm-control.c with 100% similarity]
src/udev/udevadm-info.c [moved from src/udev/src/udevadm-info.c with 100% similarity]
src/udev/udevadm-monitor.c [moved from src/udev/src/udevadm-monitor.c with 100% similarity]
src/udev/udevadm-settle.c [moved from src/udev/src/udevadm-settle.c with 100% similarity]
src/udev/udevadm-test-builtin.c [moved from src/udev/src/udevadm-test-builtin.c with 100% similarity]
src/udev/udevadm-test.c [moved from src/udev/src/udevadm-test.c with 100% similarity]
src/udev/udevadm-trigger.c [moved from src/udev/src/udevadm-trigger.c with 100% similarity]
src/udev/udevadm.c [moved from src/udev/src/udevadm.c with 100% similarity]
src/udev/udevd.c [moved from src/udev/src/udevd.c with 99% similarity]
src/udev/v4l_id/60-persistent-v4l.rules [moved from src/udev/src/v4l_id/60-persistent-v4l.rules with 100% similarity]
src/udev/v4l_id/v4l_id.c [moved from src/udev/src/v4l_id/v4l_id.c with 100% similarity]
units/.gitignore
units/udev-control.socket [moved from src/udev/src/udev-control.socket with 100% similarity]
units/udev-kernel.socket [moved from src/udev/src/udev-kernel.socket with 100% similarity]
units/udev-settle.service.in [moved from src/udev/src/udev-settle.service.in with 100% similarity]
units/udev-trigger.service.in [moved from src/udev/src/udev-trigger.service.in with 100% similarity]
units/udev.service.in [moved from src/udev/src/udev.service.in with 100% similarity]

index f36dd8a..16a6f58 100644 (file)
@@ -107,3 +107,14 @@ ltmain.sh
 *.tar.gz
 *.tar.bz2
 libtool
+/accelerometer
+/ata_id
+/cdrom_id
+/collect
+/gtk-doc.make
+/keymap
+/mtd_probe
+/scsi_id
+/udevadm
+/udevd
+/v4l_id
index 219d8de..74e14d2 100644 (file)
@@ -1,7 +1,7 @@
 #  This file is part of systemd.
 #
-#  Copyright 2011 Lennart Poettering
-#  Copyright 2011 Kay Sievers
+#  Copyright 2010-2012 Lennart Poettering
+#  Copyright 2010-2012 Kay Sievers
 #
 #  systemd is free software; you can redistribute it and/or modify it
 #  under the terms of the GNU General Public License as published by
 #  You should have received a copy of the GNU General Public License
 #  along with systemd; If not, see <http://www.gnu.org/licenses/>.
 
-ACLOCAL_AMFLAGS = -I m4
+ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
+AM_MAKEFLAGS = --no-print-directory
 
-SUBDIRS = po
+SUBDIRS = . po
+
+LIBUDEV_CURRENT=13
+LIBUDEV_REVISION=2
+LIBUDEV_AGE=13
+
+LIBGUDEV_CURRENT=1
+LIBGUDEV_REVISION=1
+LIBGUDEV_AGE=1
 
 LIBSYSTEMD_LOGIN_CURRENT=2
 LIBSYSTEMD_LOGIN_REVISION=1
@@ -41,7 +50,6 @@ dbuspolicydir=@dbuspolicydir@
 dbussessionservicedir=@dbussessionservicedir@
 dbussystemservicedir=@dbussystemservicedir@
 dbusinterfacedir=@dbusinterfacedir@
-udevrulesdir=@udevrulesdir@
 pamlibdir=@pamlibdir@
 pkgconfigdatadir=$(datadir)/pkgconfig
 pkgconfiglibdir=$(libdir)/pkgconfig
@@ -55,6 +63,7 @@ tmpfilesdir=$(prefix)/lib/tmpfiles.d
 sysctldir=$(prefix)/lib/sysctl.d
 usergeneratordir=$(pkglibexecdir)/user-generators
 pkgincludedir=$(includedir)/systemd
+udevlibexecdir=$(rootprefix)/lib/udev
 
 # And these are the special ones for /
 rootprefix=@rootprefix@
@@ -66,17 +75,28 @@ systemunitdir=$(rootprefix)/lib/systemd/system
 
 CLEANFILES =
 EXTRA_DIST =
+BUILT_SOURCES =
 INSTALL_EXEC_HOOKS =
 UNINSTALL_EXEC_HOOKS =
 INSTALL_DATA_HOOKS =
+DISTCHECK_HOOKS =
+DISTCLEAN_LOCAL_HOOKS =
 pkginclude_HEADERS =
 lib_LTLIBRARIES =
+include_HEADERS =
 pkgconfiglib_DATA =
 polkitpolicy_in_files =
 dist_udevrules_DATA =
+nodist_udevrules_DATA =
+udevhomedir = $(libexecdir)/udev
+udevhome_SCRIPTS =
+dist_udevhome_SCRIPTS =
+dist_udevhome_DATA =
+dist_man_MANS =
 
 AM_CPPFLAGS = \
        -include $(top_builddir)/config.h \
+       -DSYSCONFDIR=\""$(sysconfdir)"\" \
        -DSYSTEM_CONFIG_FILE=\"$(pkgsysconfdir)/system.conf\" \
        -DSYSTEM_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/system\" \
        -DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \
@@ -99,12 +119,14 @@ AM_CPPFLAGS = \
        -DUSER_GENERATOR_PATH=\"$(usergeneratordir)\" \
        -DSYSTEM_SHUTDOWN_PATH=\"$(systemshutdowndir)\" \
        -DSYSTEMD_KBD_MODEL_MAP=\"$(pkgdatadir)/kbd-model-map\" \
-        -DX_SERVER=\"$(bindir)/X\" \
+       -DX_SERVER=\"$(bindir)/X\" \
+       -DUDEVLIBEXECDIR=\""$(libexecdir)/udev"\" \
        -I $(top_srcdir)/src \
        -I $(top_srcdir)/src/readahead \
        -I $(top_srcdir)/src/login \
        -I $(top_srcdir)/src/journal \
-       -I $(top_srcdir)/src/systemd
+       -I $(top_srcdir)/src/systemd \
+       -I $(top_srcdir)/src/udev
 
 AM_CFLAGS = $(WARNINGFLAGS)
 AM_LDFLAGS = $(GCLDFLAGS)
@@ -221,9 +243,6 @@ dist_dbuspolicy_DATA = \
 dist_dbussystemservice_DATA = \
        src/org.freedesktop.systemd1.service
 
-nodist_udevrules_DATA = \
-       src/99-systemd.rules
-
 dbusinterface_DATA = \
        org.freedesktop.systemd1.Manager.xml \
        org.freedesktop.systemd1.Job.xml \
@@ -299,7 +318,9 @@ dist_systemunit_DATA = \
        units/quotaon.service \
        units/systemd-ask-password-wall.path \
        units/systemd-ask-password-console.path \
-       units/syslog.target
+       units/syslog.target \
+       units/udev-control.socket \
+       units/udev-kernel.socket
 
 nodist_systemunit_DATA = \
        units/getty@.service \
@@ -323,7 +344,10 @@ nodist_systemunit_DATA = \
        units/fsck@.service \
        units/fsck-root.service \
        units/rescue.service \
-       units/user@.service
+       units/user@.service \
+       units/udev.service \
+       units/udev-trigger.service \
+       units/udev-settle.service
 
 dist_userunit_DATA = \
        units/user/default.target \
@@ -356,9 +380,11 @@ EXTRA_DIST += \
        units/fsck@.service.in \
        units/fsck-root.service.in \
        units/user@.service.in \
+       units/udev.service \
+       units/udev-trigger.service \
+       units/udev-settle.service \
        src/systemd.pc.in \
        introspect.awk \
-       src/99-systemd.rules.in \
        man/custom-html.xsl
 
 if TARGET_FEDORA
@@ -422,7 +448,7 @@ endif
 
 dist_doc_DATA = \
        README \
-        NEWS \
+       NEWS \
        LICENSE \
        DISTRO_PORTING
 
@@ -535,7 +561,6 @@ EXTRA_DIST += \
 libsystemd_core_la_CFLAGS = \
        $(AM_CFLAGS) \
        $(DBUS_CFLAGS) \
-       $(UDEV_CFLAGS) \
        $(LIBWRAP_CFLAGS) \
        $(PAM_CFLAGS) \
        $(AUDIT_CFLAGS) \
@@ -543,8 +568,8 @@ libsystemd_core_la_CFLAGS = \
 
 libsystemd_core_la_LIBADD = \
        libsystemd-basic.la \
+       libudev.la \
        $(DBUS_LIBS) \
-       $(UDEV_LIBS) \
        $(LIBWRAP_LIBS) \
        $(PAM_LIBS) \
        $(AUDIT_LIBS) \
@@ -642,9 +667,9 @@ EXTRA_DIST += \
        src/spawn-agent.h \
        src/acl-util.h \
        src/logs-show.h \
-        src/utf8.h \
-        src/journal/sparse-endian.h \
-        src/ima-setup.h
+       src/utf8.h \
+       src/journal/sparse-endian.h \
+       src/ima-setup.h
 
 MANPAGES = \
        man/systemd.1 \
@@ -687,7 +712,10 @@ MANPAGES = \
        man/systemd-cat.1 \
        man/systemd-machine-id-setup.1 \
        man/journald.conf.5 \
-       man/journalctl.1
+       man/journalctl.1 \
+       man/udev.7 \
+       man/udevadm.8 \
+       man/udevd.8
 
 MANPAGES_ALIAS = \
        man/reboot.8 \
@@ -721,8 +749,7 @@ systemd_SOURCES = \
 
 systemd_CFLAGS = \
        $(AM_CFLAGS) \
-       $(DBUS_CFLAGS) \
-       $(UDEV_CFLAGS)
+       $(DBUS_CFLAGS)
 
 systemd_LDADD = \
        libsystemd-core.la
@@ -843,13 +870,9 @@ systemd_shutdown_SOURCES = \
        src/umount.c \
        src/shutdown.c
 
-systemd_shutdown_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(UDEV_CFLAGS)
-
 systemd_shutdown_LDADD = \
        libsystemd-basic.la \
-       $(UDEV_LIBS)
+       libudev.la
 
 systemd_modules_load_SOURCES = \
        src/modules-load.c
@@ -887,12 +910,11 @@ systemd_fsck_SOURCES = \
 
 systemd_fsck_CFLAGS = \
        $(AM_CFLAGS) \
-       $(UDEV_CFLAGS) \
        $(DBUS_CFLAGS)
 
 systemd_fsck_LDADD = \
        libsystemd-basic.la \
-       $(UDEV_LIBS) \
+       libudev.la \
        $(DBUS_LIBS)
 
 systemd_timestamp_SOURCES = \
@@ -904,13 +926,9 @@ systemd_timestamp_LDADD = \
 systemd_ac_power_SOURCES = \
        src/ac-power.c
 
-systemd_ac_power_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(UDEV_CFLAGS)
-
 systemd_ac_power_LDADD = \
        libsystemd-basic.la \
-       $(UDEV_LIBS)
+       libudev.la
 
 systemd_detect_virt_SOURCES = \
        src/detect-virt.c
@@ -1103,6 +1121,620 @@ EXTRA_DIST += \
        src/libsystemd-daemon.sym
 
 # ------------------------------------------------------------------------------
+SUBDIRS += \
+       src/udev/docs
+
+include_HEADERS += \
+       src/udev/libudev.h
+
+lib_LTLIBRARIES += \
+       libudev.la
+
+noinst_LTLIBRARIES += \
+       libudev-private.la
+
+libudev_la_SOURCES =\
+       src/udev/libudev-private.h \
+       src/udev/libudev.c \
+       src/udev/libudev-list.c \
+       src/udev/libudev-util.c \
+       src/udev/libudev-device.c \
+       src/udev/libudev-enumerate.c \
+       src/udev/libudev-monitor.c \
+       src/udev/libudev-queue.c
+
+libudev_la_LDFLAGS = \
+       $(AM_LDFLAGS) \
+       -version-info $(LIBUDEV_CURRENT):$(LIBUDEV_REVISION):$(LIBUDEV_AGE)
+
+libudev_private_la_SOURCES =\
+       $(libudev_la_SOURCES) \
+       src/udev/libudev-util-private.c \
+       src/udev/libudev-device-private.c \
+       src/udev/libudev-queue-private.c \
+       src/udev/libudev-selinux-private.c
+
+libudev_private_la_LIBADD = \
+       $(SELINUX_LIBS)
+
+pkgconfiglib_DATA += \
+       src/udev/libudev.pc
+
+EXTRA_DIST += \
+       src/udev/libudev.pc.in
+
+CLEANFILES += \
+       src/udev/libudev.pc
+
+# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
+libudev-install-move-hook:
+       if test "$(libdir)" != "$(rootlibdir)"; then \
+               mkdir -p $(DESTDIR)$(rootlibdir) && \
+               so_img_name=$$(readlink $(DESTDIR)$(libdir)/libudev.so) && \
+               so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
+               ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libudev.so && \
+               mv $(DESTDIR)$(libdir)/libudev.so.* $(DESTDIR)$(rootlibdir); \
+       fi
+
+libudev-uninstall-move-hook:
+       rm -f $(DESTDIR)$(rootlibdir)/libudev.so*
+
+INSTALL_EXEC_HOOKS += libudev-install-move-hook
+UNINSTALL_EXEC_HOOKS += libudev-uninstall-move-hook
+
+# ------------------------------------------------------------------------------
+udev-confdirs:
+       -mkdir -p $(DESTDIR)$(sysconfdir)/udev/rules.d
+       -mkdir -p $(DESTDIR)$(libexecdir)/udev/devices
+
+INSTALL_DATA_HOOKS += udev-confdirs
+
+udevrulesdir = $(libexecdir)/udev/rules.d
+dist_udevrules_DATA += \
+       rules/99-systemd.rules \
+       rules/42-usb-hid-pm.rules \
+       rules/50-udev-default.rules \
+       rules/60-persistent-storage-tape.rules \
+       rules/60-persistent-serial.rules \
+       rules/60-persistent-input.rules \
+       rules/60-persistent-alsa.rules \
+       rules/60-persistent-storage.rules \
+       rules/75-net-description.rules \
+       rules/75-tty-description.rules \
+       rules/78-sound-card.rules \
+       rules/80-drivers.rules \
+       rules/95-udev-late.rules
+
+udevconfdir = $(sysconfdir)/udev
+dist_udevconf_DATA = \
+       src/udev/udev.conf
+
+sharepkgconfigdir = $(datadir)/pkgconfig
+sharepkgconfig_DATA = \
+       src/udev/udev.pc
+
+EXTRA_DIST += \
+       rules/99-systemd.rules.in \
+       src/udev/udev.pc.in
+
+CLEANFILES += \
+       rules/99-systemd.rules \
+       src/udev/udev.pc
+
+EXTRA_DIST += \
+       units/udev.service.in \
+       units/udev-trigger.service.in \
+       units/udev-settle.service.in
+
+CLEANFILES += \
+       units/udev.service \
+       units/udev-trigger.service \
+       units/udev-settle.service
+
+systemd-install-hook:
+       mkdir -p $(DESTDIR)$(systemunitdir)/sockets.target.wants
+       ln -sf ../udev-control.socket $(DESTDIR)$(systemunitdir)/sockets.target.wants/udev-control.socket
+       ln -sf ../udev-kernel.socket $(DESTDIR)$(systemunitdir)/sockets.target.wants/udev-kernel.socket
+       mkdir -p $(DESTDIR)$(systemunitdir)/basic.target.wants
+       ln -sf ../udev.service $(DESTDIR)$(systemunitdir)/basic.target.wants/udev.service
+       ln -sf ../udev-trigger.service $(DESTDIR)$(systemunitdir)/basic.target.wants/udev-trigger.service
+
+INSTALL_DATA_HOOKS += systemd-install-hook
+
+bin_PROGRAMS += \
+       udevadm
+
+udevlibexec_PROGRAMS = \
+       udevd
+
+udev_common_sources = \
+       src/udev/udev.h \
+       src/udev/udev-event.c \
+       src/udev/udev-watch.c \
+       src/udev/udev-node.c \
+       src/udev/udev-rules.c \
+       src/udev/udev-ctrl.c \
+       src/udev/udev-builtin.c \
+       src/udev/udev-builtin-blkid.c \
+       src/udev/udev-builtin-firmware.c \
+       src/udev/udev-builtin-hwdb.c \
+       src/udev/udev-builtin-input_id.c \
+       src/udev/udev-builtin-kmod.c \
+       src/udev/udev-builtin-path_id.c \
+       src/udev/udev-builtin-usb_id.c
+
+udev_common_CFLAGS = \
+       $(BLKID_CFLAGS) \
+       $(KMOD_CFLAGS)
+
+udev_common_LDADD = \
+       libudev-private.la \
+       $(BLKID_LIBS) \
+       $(KMOD_LIBS)
+
+udev_common_CPPFLAGS = \
+       $(AM_CPPFLAGS) \
+       -DFIRMWARE_PATH="$(FIRMWARE_PATH)" \
+       -DUSB_DATABASE=\"$(USB_DATABASE)\" -DPCI_DATABASE=\"$(PCI_DATABASE)\"
+
+udevd_SOURCES = \
+       $(udev_common_sources) \
+       src/udev/udevd.c \
+       src/systemd/sd-daemon.h \
+       src/sd-daemon.c
+
+udevd_CFLAGS = \
+       $(udev_common_CFLAGS)
+
+udevd_LDADD = \
+       $(udev_common_LDADD)
+
+udevd_CPPFLAGS = \
+       $(udev_common_CPPFLAGS)
+
+udevadm_SOURCES = \
+       $(udev_common_sources) \
+       src/udev/udevadm.c \
+       src/udev/udevadm-info.c \
+       src/udev/udevadm-control.c \
+       src/udev/udevadm-monitor.c \
+       src/udev/udevadm-settle.c \
+       src/udev/udevadm-trigger.c \
+       src/udev/udevadm-test.c \
+       src/udev/udevadm-test-builtin.c
+
+udevadm_CFLAGS = \
+       $(udev_common_CFLAGS)
+
+udevadm_LDADD = \
+       $(udev_common_LDADD)
+
+udevadm_CPPFLAGS = \
+       $(udev_common_CPPFLAGS)
+
+# ------------------------------------------------------------------------------
+TESTS = \
+       src/udev/test/udev-test.pl \
+       src/udev/test/rules-test.sh
+
+check_PROGRAMS = \
+       test-libudev \
+       test-udev
+
+test_libudev_SOURCES = \
+       src/udev/test-libudev.c
+
+test_libudev_LDADD = \
+       libudev.la
+
+test_udev_SOURCES = \
+       $(udev_common_sources) \
+       src/udev/test-udev.c
+
+test_udev_CFLAGS = \
+       $(udev_common_CFLAGS)
+
+test_udev_LDADD = \
+       $(udev_common_LDADD)
+
+test_udev_CPPFLAGS = \
+       $(udev_common_CPPFLAGS)
+
+test_udev_DEPENDENCIES = \
+       src/udev/test/sys
+
+# packed sysfs test tree
+src/udev/test/sys:
+       $(AM_V_GEN)mkdir -p src/udev/test && tar -C src/udev/test/ -xJf $(top_srcdir)/src/udev/test/sys.tar.xz
+
+test-sys-distclean:
+       -rm -rf src/udev/test/sys
+DISTCLEAN_LOCAL_HOOKS += test-sys-distclean
+
+EXTRA_DIST += \
+       src/udev/test/sys.tar.xz \
+       $(TESTS) \
+       src/udev/test/rule-syntax-check.py
+
+# ------------------------------------------------------------------------------
+ata_id_SOURCES = \
+       src/udev/ata_id/ata_id.c
+
+ata_id_LDADD = \
+       libudev-private.la
+
+udevlibexec_PROGRAMS += \
+       ata_id
+
+# ------------------------------------------------------------------------------
+cdrom_id_SOURCES = \
+       src/udev/cdrom_id/cdrom_id.c
+
+cdrom_id_LDADD = \
+       libudev-private.la
+
+udevlibexec_PROGRAMS += \
+       cdrom_id
+
+dist_udevrules_DATA += \
+       src/udev/cdrom_id/60-cdrom_id.rules
+
+# ------------------------------------------------------------------------------
+collect_SOURCES = \
+       src/udev/collect/collect.c
+
+collect_LDADD = \
+       libudev-private.la
+
+udevlibexec_PROGRAMS += \
+       collect
+
+# ------------------------------------------------------------------------------
+scsi_id_SOURCES =\
+       src/udev/scsi_id/scsi_id.c \
+       src/udev/scsi_id/scsi_serial.c \
+       src/udev/scsi_id/scsi.h \
+       src/udev/scsi_id/scsi_id.h
+
+scsi_id_LDADD = \
+       libudev-private.la
+
+udevlibexec_PROGRAMS += \
+       scsi_id
+
+EXTRA_DIST += \
+       src/udev/scsi_id/README
+
+# ------------------------------------------------------------------------------
+v4l_id_SOURCES = \
+       src/udev/v4l_id/v4l_id.c
+
+v4l_id_LDADD = \
+       libudev-private.la
+
+udevlibexec_PROGRAMS += \
+       v4l_id
+
+dist_udevrules_DATA += \
+       src/udev/v4l_id/60-persistent-v4l.rules
+
+# ------------------------------------------------------------------------------
+accelerometer_SOURCES = \
+       src/udev/accelerometer/accelerometer.c
+
+accelerometer_LDADD = \
+       libudev-private.la -lm
+
+udevlibexec_PROGRAMS += \
+       accelerometer
+
+dist_udevrules_DATA += \
+       src/udev/accelerometer/61-accelerometer.rules
+
+# ------------------------------------------------------------------------------
+if ENABLE_GUDEV
+SUBDIRS += \
+       src/udev/gudev/docs
+
+libgudev_includedir = \
+       $(includedir)/gudev-1.0/gudev
+
+libgudev_include_HEADERS = \
+       src/udev/gudev/gudev.h \
+       src/udev/gudev/gudevenums.h \
+       src/udev/gudev/gudevenumtypes.h \
+       src/udev/gudev/gudevtypes.h \
+       src/udev/gudev/gudevclient.h \
+       src/udev/gudev/gudevdevice.h \
+       src/udev/gudev/gudevenumerator.h
+
+lib_LTLIBRARIES += libgudev-1.0.la
+
+pkgconfiglib_DATA += \
+       src/udev/gudev/gudev-1.0.pc
+
+EXTRA_DIST += \
+       src/udev/gudev/gudev-1.0.pc.in
+
+CLEANFILES += \
+       src/udev/gudev/gudev-1.0.pc
+
+libgudev_1_0_la_SOURCES = \
+       src/udev/gudev/gudevenums.h \
+       src/udev/gudev/gudevenumtypes.h \
+       src/udev/gudev/gudevenumtypes.h\
+       src/udev/gudev/gudevtypes.h \
+       src/udev/gudev/gudevclient.h \
+       src/udev/gudev/gudevclient.c \
+       src/udev/gudev/gudevdevice.h \
+       src/udev/gudev/gudevdevice.c \
+       src/udev/gudev/gudevenumerator.h \
+       src/udev/gudev/gudevenumerator.c \
+       src/udev/gudev/gudevprivate.h
+
+nodist_libgudev_1_0_la_SOURCES = \
+       src/udev/gudev/gudevmarshal.h \
+       src/udev/gudev/gudevmarshal.c \
+       src/udev/gudev/gudevenumtypes.h \
+       src/udev/gudev/gudevenumtypes.c
+
+BUILT_SOURCES += \
+       $(nodist_libgudev_1_0_la_SOURCES)
+
+libgudev_1_0_la_CPPFLAGS = \
+       $(AM_CPPFLAGS) \
+       -I$(top_builddir)/src\
+       -I$(top_srcdir)/src\
+       -I$(top_builddir)/src/udev/gudev \
+       -I$(top_srcdir)/src/udev/gudev \
+       -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT \
+       -D_GUDEV_COMPILATION \
+       -DG_LOG_DOMAIN=\"GUdev\"
+
+libgudev_1_0_la_CFLAGS = \
+       -fvisibility=default \
+       $(GLIB_CFLAGS)
+
+libgudev_1_0_la_LIBADD = \
+       libudev.la \
+       $(GLIB_LIBS)
+
+libgudev_1_0_la_LDFLAGS = \
+       -version-info $(LIBGUDEV_CURRENT):$(LIBGUDEV_REVISION):$(LIBGUDEV_AGE) \
+       -export-dynamic -no-undefined \
+       -export-symbols-regex '^g_udev_.*'
+
+EXTRA_DIST += \
+       src/udev/gudev/gudevmarshal.list \
+       src/udev/gudev/gudevenumtypes.h.template \
+       src/udev/gudev/gudevenumtypes.c.template \
+       src/udev/gudev/gjs-example.js \
+       src/udev/gudev/seed-example-enum.js \
+       src/udev/gudev/seed-example.js
+
+CLEANFILES += \
+       $(nodist_libgudev_1_0_la_SOURCES)
+
+src/udev/gudev/gudevmarshal.h: src/udev/gudev/gudevmarshal.list
+       $(AM_V_GEN)glib-genmarshal $< --prefix=g_udev_marshal --header > $@
+
+src/udev/gudev/gudevmarshal.c: src/udev/gudev/gudevmarshal.list
+       $(AM_V_GEN)echo "#include \"gudevmarshal.h\"" > $@ && \
+       glib-genmarshal $< --prefix=g_udev_marshal --body >> $@
+
+src/udev/gudev/gudevenumtypes.h: src/udev/gudev/gudevenumtypes.h.template src/udev/gudev/gudevenums.h
+       $(AM_V_GEN)glib-mkenums --template $^ > \
+           $@.tmp && mv $@.tmp $@
+
+src/udev/gudev/gudevenumtypes.c: src/udev/gudev/gudevenumtypes.c.template src/udev/gudev/gudevenums.h
+       $(AM_V_GEN)glib-mkenums --template $^ > \
+           $@.tmp && mv $@.tmp $@
+
+if ENABLE_INTROSPECTION
+src/udev/gudev/GUdev-1.0.gir: libgudev-1.0.la $(G_IR_SCANNER)
+       $(AM_V_GEN)$(G_IR_SCANNER) -v \
+               --warn-all \
+               --namespace GUdev \
+               --nsversion=1.0 \
+               --include=GObject-2.0 \
+               --library=gudev-1.0 \
+               --library-path=$(top_builddir)/src/udev \
+               --library-path=$(top_builddir)/src/udev/gudev \
+               --output $@ \
+               --pkg=glib-2.0 \
+               --pkg=gobject-2.0 \
+               --pkg-export=gudev-1.0 \
+               --c-include=gudev/gudev.h \
+               -I$(top_srcdir)/src/udev \
+               -I$(top_builddir)/src/udev \
+               -D_GUDEV_COMPILATION \
+               -D_GUDEV_WORK_AROUND_DEV_T_BUG \
+               $(top_srcdir)/src/udev/gudev/gudev.h \
+               $(top_srcdir)/src/udev/gudev/gudevtypes.h \
+               $(top_srcdir)/src/udev/gudev/gudevenums.h \
+               $(or $(wildcard $(top_builddir)/src/udev/gudev/gudevenumtypes.h),$(top_srcdir)/src/udev/gudev/gudevenumtypes.h) \
+               $(top_srcdir)/src/udev/gudev/gudevclient.h \
+               $(top_srcdir)/src/udev/gudev/gudevdevice.h \
+               $(top_srcdir)/src/udev/gudev/gudevenumerator.h \
+               $(top_srcdir)/src/udev/gudev/gudevclient.c \
+               $(top_srcdir)/src/udev/gudev/gudevdevice.c \
+               $(top_srcdir)/src/udev/gudev/gudevenumerator.c
+
+src/udev/gudev/GUdev-1.0.typelib: src/udev/gudev/GUdev-1.0.gir $(G_IR_COMPILER)
+       $(AM_V_GEN)g-ir-compiler $< -o $@
+
+girdir = $(GIRDIR)
+gir_DATA = \
+       src/udev/gudev/GUdev-1.0.gir
+
+typelibsdir = $(GIRTYPELIBDIR)
+typelibs_DATA = \
+       src/udev/gudev/GUdev-1.0.typelib
+
+CLEANFILES += $(gir_DATA) $(typelibs_DATA)
+endif # ENABLE_INTROSPECTION
+
+# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
+libgudev-install-move-hook:
+       if test "$(libdir)" != "$(rootlibdir)"; then \
+               mkdir -p $(DESTDIR)$(rootlibdir) && \
+               so_img_name=$$(readlink $(DESTDIR)$(libdir)/libgudev-1.0.so) && \
+               so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
+               ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libgudev-1.0.so && \
+               mv $(DESTDIR)$(libdir)/libgudev-1.0.so.* $(DESTDIR)$(rootlibdir); \
+       fi
+
+libgudev-uninstall-move-hook:
+       rm -f $(DESTDIR)$(rootlibdir)/libgudev-1.0.so*
+
+INSTALL_EXEC_HOOKS += libgudev-install-move-hook
+UNINSTALL_EXEC_HOOKS += libgudev-uninstall-move-hook
+endif
+
+# ------------------------------------------------------------------------------
+if ENABLE_KEYMAP
+keymap_SOURCES = \
+       src/udev/keymap/keymap.c
+
+keymap_CPPFLAGS = \
+       $(AM_CPPFLAGS) -I src/udev/keymap
+
+nodist_keymap_SOURCES = \
+       src/udev/keymap/keys-from-name.h \
+       src/udev/keymap/keys-to-name.h
+
+BUILT_SOURCES += \
+       $(nodist_keymap_SOURCES)
+
+udevlibexec_PROGRAMS += \
+       keymap
+
+dist_doc_DATA += \
+       src/udev/keymap/README.keymap.txt
+
+dist_udevrules_DATA += \
+       src/udev/keymap/95-keymap.rules \
+       src/udev/keymap/95-keyboard-force-release.rules
+
+dist_udevhome_SCRIPTS += \
+       src/udev/keymap/findkeyboards
+
+udevhome_SCRIPTS += \
+       src/udev/keymap/keyboard-force-release.sh
+
+EXTRA_DIST += \
+       src/udev/keymap/check-keymaps.sh \
+       src/udev/keymap/keyboard-force-release.sh.in
+
+CLEANFILES += \
+       $(nodist_keymap_SOURCES) \
+       src/udev/keymap/keys.txt \
+       src/udev/keymap/keys-from-name.gperf \
+       src/udev/keymap/keyboard-force-release.sh
+
+udevkeymapdir = $(libexecdir)/udev/keymaps
+dist_udevkeymap_DATA = \
+       src/udev/keymap/keymaps/acer \
+       src/udev/keymap/keymaps/acer-aspire_5720 \
+       src/udev/keymap/keymaps/acer-aspire_8930 \
+       src/udev/keymap/keymaps/acer-aspire_5920g \
+       src/udev/keymap/keymaps/acer-aspire_6920 \
+       src/udev/keymap/keymaps/acer-travelmate_c300 \
+       src/udev/keymap/keymaps/asus \
+       src/udev/keymap/keymaps/compaq-e_evo \
+       src/udev/keymap/keymaps/dell \
+       src/udev/keymap/keymaps/dell-latitude-xt2 \
+       src/udev/keymap/keymaps/everex-xt5000 \
+       src/udev/keymap/keymaps/fujitsu-amilo_li_2732 \
+       src/udev/keymap/keymaps/fujitsu-amilo_pa_2548 \
+       src/udev/keymap/keymaps/fujitsu-amilo_pro_edition_v3505 \
+       src/udev/keymap/keymaps/fujitsu-amilo_pro_v3205 \
+       src/udev/keymap/keymaps/fujitsu-amilo_si_1520 \
+       src/udev/keymap/keymaps/fujitsu-esprimo_mobile_v5 \
+       src/udev/keymap/keymaps/fujitsu-esprimo_mobile_v6 \
+       src/udev/keymap/keymaps/genius-slimstar-320 \
+       src/udev/keymap/keymaps/hewlett-packard \
+       src/udev/keymap/keymaps/hewlett-packard-2510p_2530p \
+       src/udev/keymap/keymaps/hewlett-packard-compaq_elitebook \
+       src/udev/keymap/keymaps/hewlett-packard-pavilion \
+       src/udev/keymap/keymaps/hewlett-packard-presario-2100 \
+       src/udev/keymap/keymaps/hewlett-packard-tablet \
+       src/udev/keymap/keymaps/hewlett-packard-tx2 \
+       src/udev/keymap/keymaps/ibm-thinkpad-usb-keyboard-trackpoint \
+       src/udev/keymap/keymaps/inventec-symphony_6.0_7.0 \
+       src/udev/keymap/keymaps/lenovo-3000 \
+       src/udev/keymap/keymaps/lenovo-ideapad \
+       src/udev/keymap/keymaps/lenovo-thinkpad-usb-keyboard-trackpoint \
+       src/udev/keymap/keymaps/lenovo-thinkpad_x6_tablet \
+       src/udev/keymap/keymaps/lenovo-thinkpad_x200_tablet \
+       src/udev/keymap/keymaps/lg-x110 \
+       src/udev/keymap/keymaps/logitech-wave \
+       src/udev/keymap/keymaps/logitech-wave-cordless \
+       src/udev/keymap/keymaps/logitech-wave-pro-cordless \
+       src/udev/keymap/keymaps/maxdata-pro_7000 \
+       src/udev/keymap/keymaps/medion-fid2060 \
+       src/udev/keymap/keymaps/medionnb-a555 \
+       src/udev/keymap/keymaps/micro-star \
+       src/udev/keymap/keymaps/module-asus-w3j \
+       src/udev/keymap/keymaps/module-ibm \
+       src/udev/keymap/keymaps/module-lenovo \
+       src/udev/keymap/keymaps/module-sony \
+       src/udev/keymap/keymaps/module-sony-old \
+       src/udev/keymap/keymaps/module-sony-vgn \
+       src/udev/keymap/keymaps/olpc-xo \
+       src/udev/keymap/keymaps/onkyo \
+       src/udev/keymap/keymaps/oqo-model2 \
+       src/udev/keymap/keymaps/samsung-other \
+       src/udev/keymap/keymaps/samsung-90x3a \
+       src/udev/keymap/keymaps/samsung-sq1us \
+       src/udev/keymap/keymaps/samsung-sx20s \
+       src/udev/keymap/keymaps/toshiba-satellite_a100 \
+       src/udev/keymap/keymaps/toshiba-satellite_a110 \
+       src/udev/keymap/keymaps/toshiba-satellite_m30x \
+       src/udev/keymap/keymaps/zepto-znote
+
+udevkeymapforcereldir = $(libexecdir)/udev/keymaps/force-release
+dist_udevkeymapforcerel_DATA = \
+       src/udev/keymap/force-release-maps/dell-touchpad \
+       src/udev/keymap/force-release-maps/hp-other \
+       src/udev/keymap/force-release-maps/samsung-other \
+       src/udev/keymap/force-release-maps/samsung-90x3a \
+       src/udev/keymap/force-release-maps/common-volume-keys
+
+src/udev/keymap/keys.txt: $(INCLUDE_PREFIX)/linux/input.h
+       $(AM_V_at)mkdir -p src/keymap
+       $(AM_V_GEN)$(AWK) '/^#define.*KEY_[^ ]+[ \t]+[0-9]/ { if ($$2 != "KEY_MAX") { print $$2 } }' < $< | sed 's/^KEY_COFFEE$$/KEY_SCREENLOCK/' > $@
+
+src/udev/keymap/keys-from-name.gperf: src/udev/keymap/keys.txt
+       $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct key { const char* name; unsigned short id; };"; print "%null-strings"; print "%%";} { print $$1 ", " $$1 }' < $< > $@
+
+src/udev/keymap/keys-from-name.h: src/udev/keymap/keys-from-name.gperf Makefile
+       $(AM_V_GEN)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_key -H hash_key_name -p -C < $< > $@
+
+src/udev/keymap/keys-to-name.h: src/udev/keymap/keys.txt Makefile
+       $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const key_names[KEY_CNT] = { "} { print "[" $$1 "] = \"" $$1 "\"," } END{print "};"}' < $< > $@
+
+keymaps-distcheck-hook: src/udev/keymap/keys.txt
+       $(top_srcdir)/src/udev/keymap/check-keymaps.sh $(top_srcdir) $^
+DISTCHECK_HOOKS += keymaps-distcheck-hook
+endif
+
+# ------------------------------------------------------------------------------
+mtd_probe_SOURCES =  \
+       src/udev/mtd_probe/mtd_probe.c \
+       src/udev/mtd_probe/mtd_probe.h \
+       src/udev/mtd_probe/probe_smartmedia.c
+
+mtd_probe_CPPFLAGS = \
+       $(AM_CPPFLAGS)
+
+dist_udevrules_DATA += \
+       src/udev/mtd_probe/75-probe_mtd.rules
+
+udevlibexec_PROGRAMS += \
+       mtd_probe
+
+# ------------------------------------------------------------------------------
 libsystemd_id128_la_SOURCES = \
        src/sd-id128.c
 
@@ -1467,24 +2099,16 @@ systemd_readahead_collect_SOURCES = \
 systemd_readahead_collect_LDADD = \
        libsystemd-basic.la \
        libsystemd-daemon.la \
-       $(UDEV_LIBS)
-
-systemd_readahead_collect_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(UDEV_CFLAGS)
+       libudev.la
 
 systemd_readahead_replay_SOURCES = \
        src/readahead/readahead-replay.c \
        src/readahead/readahead-common.c
 
-systemd_readahead_replay_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(UDEV_CFLAGS)
-
 systemd_readahead_replay_LDADD = \
        libsystemd-basic.la \
        libsystemd-daemon.la \
-       $(UDEV_LIBS)
+       libudev.la
 
 rootlibexec_PROGRAMS += \
        systemd-readahead-collect \
@@ -1579,12 +2203,11 @@ systemd_cryptsetup_SOURCES = \
 
 systemd_cryptsetup_CFLAGS = \
        $(AM_CFLAGS) \
-       $(LIBCRYPTSETUP_CFLAGS) \
-       $(UDEV_CFLAGS)
+       $(LIBCRYPTSETUP_CFLAGS)
 
 systemd_cryptsetup_LDADD = \
        $(LIBCRYPTSETUP_LIBS) \
-       $(UDEV_LIBS) \
+       libudev.la \
        libsystemd-basic.la
 
 systemd_cryptsetup_generator_SOURCES = \
@@ -1797,14 +2420,13 @@ endif
 systemd_logind_CFLAGS = \
        $(AM_CFLAGS) \
        $(DBUS_CFLAGS) \
-       $(UDEV_CFLAGS) \
        $(ACL_CFLAGS)
 
 systemd_logind_LDADD = \
        libsystemd-basic.la \
        libsystemd-daemon.la \
+       libudev.la \
        $(DBUS_LIBS) \
-       $(UDEV_LIBS) \
        $(ACL_LIBS)
 
 systemd_user_sessions_SOURCES = \
@@ -1828,13 +2450,12 @@ loginctl_SOURCES = \
 
 loginctl_CFLAGS = \
        $(AM_CFLAGS) \
-       $(DBUS_CFLAGS) \
-       $(UDEV_CFLAGS)
+       $(DBUS_CFLAGS)
 
 loginctl_LDADD = \
        libsystemd-basic.la \
-       $(DBUS_LIBS) \
-       $(UDEV_LIBS)
+       libudev.la \
+       $(DBUS_LIBS)
 
 rootbin_PROGRAMS += \
        loginctl
@@ -1955,13 +2576,9 @@ INSTALL_DATA_HOOKS += \
 systemd_multi_seat_x_SOURCES = \
        src/login/multi-seat-x.c
 
-systemd_multi_seat_x_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(UDEV_CFLAGS)
-
 systemd_multi_seat_x_LDADD = \
        libsystemd-basic.la \
-       $(UDEV_LIBS)
+       libudev.la
 
 rootlibexec_PROGRAMS += \
        systemd-multi-seat-x
@@ -1977,14 +2594,13 @@ endif
 
 systemd_uaccess_CFLAGS = \
        $(AM_CFLAGS) \
-       $(UDEV_CFLAGS) \
        $(ACL_CFLAGS)
 
 systemd_uaccess_LDADD = \
        libsystemd-basic.la \
        libsystemd-daemon.la \
        libsystemd-login.la \
-       $(UDEV_LIBS) \
+       libudev.la \
        $(ACL_LIBS)
 
 rootlibexec_PROGRAMS += \
@@ -2088,6 +2704,9 @@ SED_PROCESS = \
                -e 's,@exec_prefix\@,$(exec_prefix),g' \
                -e 's,@libdir\@,$(libdir),g' \
                -e 's,@includedir\@,$(includedir),g' \
+               -e 's,@VERSION\@,$(VERSION),g' \
+               -e 's,@rootprefix\@,$(rootprefix),g' \
+               -e 's,@udevlibexecdir\@,$(libexecdir)/udev,g' \
                < $< > $@ || rm $@
 
 units/%: units/%.in Makefile
@@ -2105,9 +2724,13 @@ sysctl.d/%: sysctl.d/%.in Makefile
 src/%.policy.in: src/%.policy.in.in Makefile
        $(SED_PROCESS)
 
-src/%.rules: src/%.rules.in Makefile
+%.rules: %.rules.in Makefile
        $(SED_PROCESS)
 
+%.sh: %.sh.in Makefile
+       $(SED_PROCESS)
+       $(AM_V_GEN)chmod +x $@
+
 src/%.c: src/%.gperf
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
        $(GPERF) < $< > $@
@@ -2143,8 +2766,7 @@ CLEANFILES += \
        $(nodist_polkitpolicy_DATA) \
        src/load-fragment-gperf.gperf \
        src/load-fragment-gperf.c \
-       src/load-fragment-gperf-nulstr.c \
-       src/99-systemd.rules
+       src/load-fragment-gperf-nulstr.c
 
 if HAVE_XSLTPROC
 XSLTPROC_FLAGS = \
@@ -2424,15 +3046,19 @@ uninstall-hook: $(UNINSTALL_EXEC_HOOKS)
 
 install-data-hook: systemd-install-data-hook $(INSTALL_DATA_HOOKS)
 
+distcheck-hook: $(DISTCHECK_HOOKS)
+
+distclean-local: $(DISTCLEAN_LOCAL_HOOKS)
+
 DISTCHECK_CONFIGURE_FLAGS = \
        --with-dbuspolicydir=$$dc_install_base/$(dbuspolicydir) \
        --with-dbussessionservicedir=$$dc_install_base/$(dbussessionservicedir) \
        --with-dbussystemservicedir=$$dc_install_base/$(dbussystemservicedir) \
        --with-dbusinterfacedir=$$dc_install_base/$(dbusinterfacedir) \
-       --with-udevrulesdir=$$dc_install_base/$(udevrulesdir) \
        --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
-        --with-rootprefix=$$dc_install_base \
-        --disable-split-usr
+       --with-rootprefix=$$dc_install_base \
+       --disable-split-usr \
+       --enable-gtk-doc
 
 upload: all distcheck
        cp -v systemd-$(VERSION).tar.xz /home/lennart/git.fedora/systemd/
diff --git a/TODO b/TODO
index 4f3b157..c12190e 100644 (file)
--- a/TODO
+++ b/TODO
@@ -342,3 +342,28 @@ Regularly:
 * pahole
 
 * set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!
+
+udev:
+ - find a way to tell udev to not cancel firmware
+   requests in initramfs
+
+ - scsi_id -> sg3_utils?
+
+ - make gtk-doc optional like kmod
+
+ - move /usr/lib/udev/devices/ to tmpfiles
+
+ - trigger --subsystem-match=usb/usb_device
+
+ - kill rules_generator
+
+ - have a $attrs{} ?
+
+ - remove RUN+="socket:"
+
+ - libudev.so.1
+     - symbol versioning
+     - return object with *_unref()
+     - udev_monitor_from_socket()
+     - udev_queue_get_failed_list_entry()
+
index 9ca5377..fba3dc0 100755 (executable)
@@ -21,6 +21,7 @@ if [ -f .git/hooks/pre-commit.sample -a ! -f .git/hooks/pre-commit ] ; then
     echo "Activated pre-commit hook."
 fi
 
+gtkdocize
 intltoolize --force --automake
 autoreconf --force --install --symlink
 
@@ -32,7 +33,8 @@ args="\
 --sysconfdir=/etc \
 --localstatedir=/var \
 --libdir=$(libdir /usr/lib) \
---libexecdir=/usr/lib"
+--libexecdir=/usr/lib \
+--enable-gtk-doc"
 
 if [ ! -L /bin ]; then
 args="$args \
index 9a9a789..9baebef 100644 (file)
@@ -1,6 +1,7 @@
 #  This file is part of systemd.
 #
-#  Copyright 2010 Lennart Poettering
+#  Copyright 2010-2012 Lennart Poettering
+#  Copyright 2010-2012 Kay Sievers
 #
 #  systemd is free software; you can redistribute it and/or modify it
 #  under the terms of the GNU General Public License as published by
@@ -18,6 +19,7 @@
 AC_PREREQ(2.63)
 
 AC_INIT([systemd],[44],[systemd-devel@lists.freedesktop.org])
+AC_SUBST(PACKAGE_URL, [http://www.freedesktop.org/wiki/Software/systemd])
 AC_CONFIG_SRCDIR([src/main.c])
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_HEADERS([config.h])
@@ -25,16 +27,15 @@ AC_USE_SYSTEM_EXTENSIONS
 AC_SYS_LARGEFILE
 AC_PREFIX_DEFAULT([/usr])
 AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability silent-rules tar-pax no-dist-gzip dist-xz subdir-objects check-news])
-
-AC_SUBST(PACKAGE_URL, [http://www.freedesktop.org/wiki/Software/systemd])
-
+AM_SILENT_RULES([yes])
 AC_CANONICAL_HOST
 AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
 AS_IF([test "x$host_cpu" = "xmips" || test "x$host_cpu" = "xmipsel" ||
        test "x$host_cpu" = "xmips64" || test "x$host_cpu" = "xmips64el"],
       [AC_DEFINE(ARCH_MIPS, [], [Whether on mips arch])])
 
-AM_SILENT_RULES([yes])
+LT_PREREQ(2.2)
+LT_INIT
 
 # i18n stuff for the PolicyKit policy files
 IT_PROG_INTLTOOL([0.40.0])
@@ -53,6 +54,9 @@ AC_PROG_CC_C99
 AM_PROG_CC_C_O
 AC_PROG_GCC_TRADITIONAL
 
+AC_PATH_PROG([M4], [m4])
+GTK_DOC_CHECK(1.10)
+
 AC_CHECK_TOOL(OBJCOPY, objcopy)
 AC_CHECK_TOOL(STRINGS, strings)
 AC_CHECK_TOOL(GPERF, gperf)
@@ -110,9 +114,6 @@ CC_CHECK_FLAGS_APPEND([with_ldflags], [LDFLAGS], [\
         -Wl,--gc-sections])
 AC_SUBST([GCLDFLAGS], $with_ldflags)
 
-LT_PREREQ(2.2)
-LT_INIT
-
 AC_SEARCH_LIBS([clock_gettime], [rt], [], [AC_MSG_ERROR([*** POSIX RT library not found])])
 AC_SEARCH_LIBS([dlsym], [dl], [], [AC_MSG_ERROR([*** Dynamic linking loader library not found])])
 
@@ -127,10 +128,11 @@ AC_SUBST(CAP_LIBS)
 # This makes sure pkg.m4 is available.
 m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config])
 
-PKG_CHECK_MODULES(UDEV, [ libudev >= 172 ])
-PKG_CHECK_MODULES(DBUS, [ dbus-1 >= 1.3.2 ])
-PKG_CHECK_MODULES(KMOD, [ libkmod >= 5 ])
+PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.3.2])
+PKG_CHECK_MODULES(KMOD, [libkmod >= 5])
+PKG_CHECK_MODULES(BLKID,[blkid >= 2.20])
 
+# ------------------------------------------------------------------------------
 have_ima=yes
 AC_ARG_ENABLE([ima], AS_HELP_STRING([--disable-ima],[Disable optional IMA support]),
                 [case "${enableval}" in
@@ -144,6 +146,7 @@ if test "x${have_ima}" != xno ; then
         AC_DEFINE(HAVE_IMA, 1, [Define if IMA is available])
 fi
 
+# ------------------------------------------------------------------------------
 have_selinux=no
 AC_ARG_ENABLE(selinux, AS_HELP_STRING([--disable-selinux], [Disable optional SELINUX support]))
 if test "x$enable_selinux" != "xno"; then
@@ -155,6 +158,7 @@ if test "x$enable_selinux" != "xno"; then
 fi
 AM_CONDITIONAL(HAVE_SELINUX, [test "$have_selinux" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_xz=no
 AC_ARG_ENABLE(xz, AS_HELP_STRING([--disable-xz], [Disable optional XZ support]))
 if test "x$enable_xz" != "xno"; then
@@ -166,6 +170,7 @@ if test "x$enable_xz" != "xno"; then
 fi
 AM_CONDITIONAL(HAVE_XZ, [test "$have_xz" = "yes"])
 
+# ------------------------------------------------------------------------------
 AC_ARG_ENABLE([tcpwrap],
         AS_HELP_STRING([--disable-tcpwrap],[Disable optional TCP wrappers support]),
                 [case "${enableval}" in
@@ -190,6 +195,7 @@ else
 fi
 AC_SUBST(LIBWRAP_LIBS)
 
+# ------------------------------------------------------------------------------
 AC_ARG_ENABLE([pam],
         AS_HELP_STRING([--disable-pam],[Disable optional PAM support]),
                 [case "${enableval}" in
@@ -227,6 +233,7 @@ fi
 AC_SUBST(PAM_LIBS)
 AM_CONDITIONAL([HAVE_PAM], [test "x$have_pam" != xno])
 
+# ------------------------------------------------------------------------------
 AC_ARG_ENABLE([acl],
         AS_HELP_STRING([--disable-acl],[Disable optional ACL support]),
                 [case "${enableval}" in
@@ -264,6 +271,7 @@ fi
 AC_SUBST(ACL_LIBS)
 AM_CONDITIONAL([HAVE_ACL], [test "x$have_acl" != xno])
 
+# ------------------------------------------------------------------------------
 AC_ARG_ENABLE([audit],
         AS_HELP_STRING([--disable-audit],[Disable optional AUDIT support]),
                 [case "${enableval}" in
@@ -300,6 +308,7 @@ else
 fi
 AC_SUBST(AUDIT_LIBS)
 
+# ------------------------------------------------------------------------------
 have_libcryptsetup=no
 AC_ARG_ENABLE(libcryptsetup, AS_HELP_STRING([--disable-libcryptsetup], [disable libcryptsetup tools]))
 if test "x$enable_libcryptsetup" != "xno"; then
@@ -311,6 +320,7 @@ if test "x$enable_libcryptsetup" != "xno"; then
 fi
 AM_CONDITIONAL(HAVE_LIBCRYPTSETUP, [test "$have_libcryptsetup" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_binfmt=no
 AC_ARG_ENABLE(binfmt, AS_HELP_STRING([--disable-binfmt], [disable binfmt tool]))
 if test "x$enable_binfmt" != "xno"; then
@@ -318,6 +328,7 @@ if test "x$enable_binfmt" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_BINFMT, [test "$have_binfmt" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_vconsole=no
 AC_ARG_ENABLE(vconsole, AS_HELP_STRING([--disable-vconsole], [disable vconsole tool]))
 if test "x$enable_vconsole" != "xno"; then
@@ -325,6 +336,7 @@ if test "x$enable_vconsole" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_VCONSOLE, [test "$have_vconsole" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_readahead=no
 AC_ARG_ENABLE(readahead, AS_HELP_STRING([--disable-readahead], [disable readahead tools]))
 if test "x$enable_readahead" != "xno"; then
@@ -332,6 +344,7 @@ if test "x$enable_readahead" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_READAHEAD, [test "$have_readahead" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_quotacheck=no
 AC_ARG_ENABLE(quotacheck, AS_HELP_STRING([--disable-quotacheck], [disable quotacheck tools]))
 if test "x$enable_quotacheck" != "xno"; then
@@ -339,6 +352,7 @@ if test "x$enable_quotacheck" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_QUOTACHECK, [test "$have_quotacheck" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_randomseed=no
 AC_ARG_ENABLE(randomseed, AS_HELP_STRING([--disable-randomseed], [disable randomseed tools]))
 if test "x$enable_randomseed" != "xno"; then
@@ -346,6 +360,7 @@ if test "x$enable_randomseed" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_RANDOMSEED, [test "$have_randomseed" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_logind=no
 AC_ARG_ENABLE(logind, AS_HELP_STRING([--disable-logind], [disable login daemon]))
 if test "x$enable_logind" != "xno"; then
@@ -354,6 +369,7 @@ fi
 AM_CONDITIONAL(ENABLE_LOGIND, [test "$have_logind" = "yes"])
 AS_IF([test "$have_logind" = "yes"], [ AC_DEFINE(HAVE_LOGIND, [1], [Logind support available]) ])
 
+# ------------------------------------------------------------------------------
 have_hostnamed=no
 AC_ARG_ENABLE(hostnamed, AS_HELP_STRING([--disable-hostnamed], [disable hostname daemon]))
 if test "x$enable_hostnamed" != "xno"; then
@@ -361,6 +377,7 @@ if test "x$enable_hostnamed" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_HOSTNAMED, [test "$have_hostnamed" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_timedated=no
 AC_ARG_ENABLE(timedated, AS_HELP_STRING([--disable-timedated], [disable timedate daemon]))
 if test "x$enable_timedated" != "xno"; then
@@ -368,6 +385,7 @@ if test "x$enable_timedated" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_TIMEDATED, [test "$have_timedated" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_localed=no
 AC_ARG_ENABLE(localed, AS_HELP_STRING([--disable-localed], [disable locale daemon]))
 if test "x$enable_localed" != "xno"; then
@@ -375,6 +393,7 @@ if test "x$enable_localed" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_LOCALED, [test "$have_localed" = "yes"])
 
+# ------------------------------------------------------------------------------
 have_coredump=no
 AC_ARG_ENABLE(coredump, AS_HELP_STRING([--disable-coredump], [disable coredump hook]))
 if test "x$enable_coredump" != "xno"; then
@@ -382,6 +401,92 @@ if test "x$enable_coredump" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_COREDUMP, [test "$have_coredump" = "yes"])
 
+# ------------------------------------------------------------------------------
+if test "x$cross_compiling" = "xno" ; then
+       AC_CHECK_FILES([/usr/share/pci.ids], [pciids=/usr/share/pci.ids])
+       AC_CHECK_FILES([/usr/share/hwdata/pci.ids], [pciids=/usr/share/hwdata/pci.ids])
+       AC_CHECK_FILES([/usr/share/misc/pci.ids], [pciids=/usr/share/misc/pci.ids])
+fi
+
+AC_ARG_WITH(usb-ids-path,
+       [AS_HELP_STRING([--with-usb-ids-path=DIR], [Path to usb.ids file])],
+       [USB_DATABASE=${withval}],
+       [if test -n "$usbids" ; then
+              USB_DATABASE="$usbids"
+       else
+              PKG_CHECK_MODULES(USBUTILS, usbutils >= 0.82)
+              AC_SUBST([USB_DATABASE], [$($PKG_CONFIG --variable=usbids usbutils)])
+       fi])
+AC_MSG_CHECKING([for USB database location])
+AC_MSG_RESULT([$USB_DATABASE])
+AC_SUBST(USB_DATABASE)
+
+AC_ARG_WITH(pci-ids-path,
+       [AS_HELP_STRING([--with-pci-ids-path=DIR], [Path to pci.ids file])],
+       [PCI_DATABASE=${withval}],
+       [if test -n "$pciids" ; then
+              PCI_DATABASE="$pciids"
+       else
+              AC_MSG_ERROR([pci.ids not found, try --with-pci-ids-path=])
+       fi])
+AC_MSG_CHECKING([for PCI database location])
+AC_MSG_RESULT([$PCI_DATABASE])
+AC_SUBST(PCI_DATABASE)
+
+# ------------------------------------------------------------------------------
+AC_ARG_WITH(firmware-path,
+       AS_HELP_STRING([--with-firmware-path=DIR[[[:DIR[...]]]]],
+          [Firmware search path (default=ROOTPREFIX/lib/firmware/updates:ROOTPREFIX/lib/firmware)]),
+       [], [with_firmware_path="$rootprefix/lib/firmware/updates:$rootprefix/lib/firmware"])
+OLD_IFS=$IFS
+IFS=:
+for i in $with_firmware_path; do
+       if test "x${FIRMWARE_PATH}" = "x"; then
+              FIRMWARE_PATH="\\\"${i}/\\\""
+       else
+              FIRMWARE_PATH="${FIRMWARE_PATH}, \\\"${i}/\\\""
+       fi
+done
+IFS=$OLD_IFS
+AC_SUBST([FIRMWARE_PATH], [$FIRMWARE_PATH])
+
+# ------------------------------------------------------------------------------
+AC_ARG_ENABLE([gudev],
+       AS_HELP_STRING([--disable-gudev], [disable Gobject libudev support @<:@default=enabled@:>@]),
+       [], [enable_gudev=yes])
+AS_IF([test "x$enable_gudev" = "xyes"], [ PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.22.0 gobject-2.0 >= 2.22.0]) ])
+
+AC_ARG_ENABLE([introspection],
+       AS_HELP_STRING([--disable-introspection], [disable GObject introspection @<:@default=enabled@:>@]),
+       [], [enable_introspection=yes])
+AS_IF([test "x$enable_introspection" = "xyes"], [
+       PKG_CHECK_MODULES([INTROSPECTION], [gobject-introspection-1.0 >= 0.6.2])
+       AC_DEFINE([ENABLE_INTROSPECTION], [1], [enable GObject introspection support])
+       AC_SUBST([G_IR_SCANNER], [$($PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0)])
+       AC_SUBST([G_IR_COMPILER], [$($PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0)])
+       AC_SUBST([G_IR_GENERATE], [$($PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0)])
+       AC_SUBST([GIRDIR], [$($PKG_CONFIG --define-variable=datadir=${datadir} --variable=girdir gobject-introspection-1.0)])
+       AC_SUBST([GIRTYPELIBDIR], [$($PKG_CONFIG --define-variable=libdir=${libdir} --variable=typelibdir gobject-introspection-1.0)])
+])
+AM_CONDITIONAL([ENABLE_INTROSPECTION], [test "x$enable_introspection" = "xyes"])
+AM_CONDITIONAL([ENABLE_GUDEV], [test "x$enable_gudev" = "xyes"])
+
+# ------------------------------------------------------------------------------
+AC_ARG_ENABLE([keymap],
+       AS_HELP_STRING([--disable-keymap], [disable keymap fixup support @<:@default=enabled@:>@]),
+       [], [enable_keymap=yes])
+AS_IF([test "x$enable_keymap" = "xyes"], [
+       AC_PATH_PROG([GPERF], [gperf])
+       if test -z "$GPERF"; then
+              AC_MSG_ERROR([gperf is needed])
+       fi
+
+       AC_CHECK_HEADER([linux/input.h], [:], AC_MSG_ERROR([kernel headers not found]))
+       AC_SUBST([INCLUDE_PREFIX], [$(echo '#include <linux/input.h>' | eval $ac_cpp -E - | sed -n '/linux\/input.h/ {s:.*"\(.*\)/linux/input.h".*:\1:; p; q}')])
+])
+AM_CONDITIONAL([ENABLE_KEYMAP], [test "x$enable_keymap" = "xyes"])
+
+# ------------------------------------------------------------------------------
 have_manpages=no
 AC_ARG_ENABLE(manpages, AS_HELP_STRING([--disable-manpages], [disable manpages]))
 if test "x$enable_manpages" != "xno"; then
@@ -389,11 +494,10 @@ if test "x$enable_manpages" != "xno"; then
 fi
 AM_CONDITIONAL(ENABLE_MANPAGES, [test "$have_manpages" = "yes"])
 
+# ------------------------------------------------------------------------------
 AC_PATH_PROG([XSLTPROC], [xsltproc])
 AM_CONDITIONAL(HAVE_XSLTPROC, test x"$XSLTPROC" != x)
 
-AC_PATH_PROG([M4], [m4])
-
 AC_ARG_WITH(distro, AS_HELP_STRING([--with-distro=DISTRO],[Specify the distribution to target: One of fedora, suse, debian, ubuntu, arch, gentoo, slackware, altlinux, mandriva, meego, mageia, angstrom or other]))
 if test "z$with_distro" = "z"; then
         if test "$cross_compiling" = yes; then
@@ -572,11 +676,6 @@ AC_ARG_WITH([dbusinterfacedir],
         [],
         [with_dbusinterfacedir=`pkg-config --variable=session_bus_services_dir dbus-1`/../interfaces])
 
-AC_ARG_WITH([udevrulesdir],
-        AS_HELP_STRING([--with-udevrulesdir=DIR], [Directory for udev rules]),
-        [],
-        [with_udevrulesdir=`pkg-config --variable=udevdir udev`/rules.d])
-
 AC_ARG_WITH([rootprefix],
         AS_HELP_STRING([--with-rootprefix=DIR], [rootfs directory prefix for config files and kernel modules]),
         [], [with_rootprefix=${ac_default_prefix}])
@@ -608,12 +707,18 @@ AC_SUBST([dbuspolicydir], [$with_dbuspolicydir])
 AC_SUBST([dbussessionservicedir], [$with_dbussessionservicedir])
 AC_SUBST([dbussystemservicedir], [$with_dbussystemservicedir])
 AC_SUBST([dbusinterfacedir], [$with_dbusinterfacedir])
-AC_SUBST([udevrulesdir], [$with_udevrulesdir])
 AC_SUBST([pamlibdir], [$with_pamlibdir])
 AC_SUBST([rootprefix], [$with_rootprefix])
 AC_SUBST([rootlibdir], [$with_rootlibdir])
 
-AC_CONFIG_FILES([Makefile po/Makefile.in])
+AC_CONFIG_FILES([
+        Makefile po/Makefile.in
+        src/udev/docs/Makefile
+        src/udev/docs/version.xml
+        src/udev/gudev/docs/Makefile
+        src/udev/gudev/docs/version.xml
+])
+
 AC_OUTPUT
 AC_MSG_RESULT([
         $PACKAGE_NAME $VERSION
@@ -641,13 +746,23 @@ AC_MSG_RESULT([
         localed:                 ${have_localed}
         coredump:                ${have_coredump}
         plymouth:                ${have_plymouth}
+        firmware path:           ${FIRMWARE_PATH}
+        usb.ids:                 ${USB_DATABASE}
+        pci.ids:                 ${PCI_DATABASE}
+        gudev:                   ${enable_gudev}
+        gintrospection:          ${enable_introspection}
+        keymap:                  ${enable_keymap}
+
         prefix:                  ${prefix}
         rootprefix:              ${with_rootprefix}
+        sysconf dir:             ${sysconfdir}
+        datarootdir:             ${datarootdir}
+        includedir:              ${includedir}
+        include_prefix:          ${INCLUDE_PREFIX}
         libexec dir:             ${libexecdir}
         lib dir:                 ${libdir}
         rootlib dir:             ${with_rootlibdir}
         PAM modules dir:         ${with_pamlibdir}
-        udev rules dir:          ${with_udevrulesdir}
         D-Bus policy dir:        ${with_dbuspolicydir}
         D-Bus session dir:       ${with_dbussessionservicedir}
         D-Bus system dir:        ${with_dbussystemservicedir}
index 55eaa80..cf35a86 100644 (file)
@@ -4,3 +4,4 @@ ltoptions.m4
 ltsugar.m4
 ltversion.m4
 lt~obsolete.m4
+gtk-doc.m4
similarity index 100%
rename from src/udev/src/udev.xml
rename to man/udev.xml
similarity index 100%
rename from src/udev/src/udevadm.xml
rename to man/udevadm.xml
similarity index 100%
rename from src/udev/src/udevd.xml
rename to man/udevd.xml
diff --git a/rules/.gitignore b/rules/.gitignore
new file mode 100644 (file)
index 0000000..93a50dd
--- /dev/null
@@ -0,0 +1 @@
+/99-systemd.rules
index fa3500b..e697a57 100644 (file)
@@ -1,31 +1,4 @@
-*~
-*.o
-*.a
-*.lo
-*.la
-.libs
-.deps
-.dirstamp
-Makefile
-Makefile.in
-/aclocal.m4
-/autom4te.cache
-/config.h
-/config.h.in
-/config.log
-/config.status
-/config.guess
-/config.sub
-/libtool
-/ltmain.sh
-/install-sh
-/missing
-/configure
-/stamp-h1
-/depcomp
 /gtk-doc.make
-/build-aux
-/udev-test-install
 /udevd
 /udevadm
 /test-udev
@@ -38,3 +11,8 @@ Makefile.in
 /v4l_id
 /keymap
 /scsi_id
+*.[78]
+*.html
+udev.pc
+libudev.pc
+udev*.service
diff --git a/src/udev/COPYING b/src/udev/COPYING
deleted file mode 100644 (file)
index d159169..0000000
+++ /dev/null
@@ -1,339 +0,0 @@
-                    GNU GENERAL PUBLIC LICENSE
-                       Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                            Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                            NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-                     END OF TERMS AND CONDITIONS
-
-            How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License along
-    with this program; if not, write to the Free Software Foundation, Inc.,
-    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) year name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
diff --git a/src/udev/ChangeLog b/src/udev/ChangeLog
deleted file mode 100644 (file)
index dd58138..0000000
+++ /dev/null
@@ -1,6387 +0,0 @@
-Summary of changes from v181 to v182
-============================================
-
-Kay Sievers (22):
-      build-sys: unpack test sysfs only for 'make check'
-      build-sys: add --disable-manpages
-      update sd-daemon files
-      test: remove outdated key attributes
-      update TOO
-      builtin: path_id - remove dead cciss code
-      rules: do not create by-id/scsi-* links for ATA devices
-      remove udev-acl
-      udev.conf - do not set any value by default
-      move src/extras subdirectories to src/
-      rules: delete outdated 30-kernel-compat.rules
-      rules: move 42-qemu-usb.rules to rules/ dir
-      remove edd_id extra
-      build-sys: remove empty directory
-      rules: delete s390 rules, they will move to s390utils
-      update TODO
-      rules: move all rules to top level rules/ dir
-      extras: path_id - skip ATA transport class devices
-      extras: path_id - add comment about readdir() rebase logic
-      extras: ata_id - do not log error if HDIO_GET_IDENTITY fails
-      rules sort order: /lib, /run, /etc
-      build-sys: place build binaries in the root
-
-Matthew Garrett (1):
-      rules: Enable USB autosuspend on more USB HID devices
-
-
-Summary of changes from v180 to v181
-============================================
-
-Andreas Schwab (1):
-      ata_id: fix identify string fixup
-
-Bruno Redondi (1):
-      keymap: Add Fujitsu Siemens Amilo Li 2732
-
-James M. Leddy (1):
-      keymap: Fix touchpad toggle button on Lenovo Ideapad
-
-Kay Sievers (4):
-      configure: show ROOTPREFIX in firmware path option help text
-      extras: cdrom_id -  create /dev/cdrom and conditionally /dev/dvd for sr0
-      extras: cdrom_id -  create only /dev/cdrom
-      ata_id: whitespace fixes
-
-Lucas De Marchi (1):
-      builtin: kmod - depend on libkmod >= 5
-
-
-Summary of changes from v179 to v180
-============================================
-
-Kay Sievers (4):
-      Makefile: update kernel.org hooks
-      build-sys: we need to install shipped man pages without xsltproc installed
-      builtin: blkid - add missing ID_ prefix for PART_ENTRY_* keys
-      do not stop rule processing when device node is no longer around
-
-
-Summary of changes from v178 to v179
-============================================
-
-Kay Sievers (8):
-      fix some fallout from tab removal
-      use devnode() for $name not sysname(), device nodes might be in a subdirectory
-      print warning when rules try to rename kernel device nodes
-      move variable inside condition
-      update TODO
-      build-sys: enable everything for 'make distcheck'
-      use sysname() for devices without a device node
-      fix path to extras
-
-
-Summary of changes from v177 to v178
-============================================
-
-Evan Nemerson (1):
-      gudev: several minor introspection fixes
-
-Kay Sievers (7):
-      Makefile: update kernel.org doc hooks for kup
-      builtin: blkid - add missing ID_ prefix
-      udevd: kill hanging event processes after 30 seconds
-      Makefile: switch from .asc to .sign
-      rules: rtc - point /dev/rtc symlink to 'hctosys' device
-      warn about deprecated RUN+="socket:" use
-      libudev: do not set DEVNAME= twice
-
-Martin Pitt (4):
-      keymap: Fix rfkill button on Hewlett-Packard HP ProBook
-      keymap: Fix eject button on Samsung 700Z series
-      keymap: Fix keyboard brightness keys on Samsung 700Z series
-      keymap: Add Alienware M14xR1
-
-
-Summary of changes from v176 to v177
-============================================
-
-Kay Sievers (3):
-      Makefile: update kernel.org sign and upload hook
-      rule_generator: fix to install rules in rules.d/
-      rule_generator: use += for dist_udevhome_DATA
-
-
-Summary of changes from v175 to v176
-============================================
-
-Alan Stern (1):
-      [PATCH[ udev: ata_id: Fix length of INQUIRY command
-
-Kay Sievers (61):
-      libudev: print log_fn address instead of ctx when setting logging function
-      do not ship autogen.sh in the tarball
-      man: clarify 'config file stack'
-      rename 'init' directory to 'systemd'
-      systemd: use PassCred=yes
-      use libexecdir, bindir, sbindir, switch to /usr/lib/udev in documentation
-      configure: fix typo
-      make: do not (mis-)use the config file generator, create .xz tarball
-      prepare builtins for blkid and kmod
-      add builtin load/unload initializers
-      build argv[] for builtin commands
-      update blkid builtin
-      rules: switch to built-in blkid
-      rules: do not preprocess 60-persistent-storage.rules
-      buildsys: disable tar.gz
-      builtin: blkid - add missing newline
-      builtin: blkid - add missing ID_FS_USAGE
-      builtin: kmod - switch modprobe to builtin
-      rules: do not preprocess 80-drivers.rules + 75-probe_mtd.rules
-      builtin: apply format string
-      remove last sbindir use
-      update NEWS
-      autogen.sh: moce CFLAGS from to configure.ac; print common ./configure options
-      builtin: kmod - link against libkmod
-      add copyright
-      builtin: kmod - reload index when rules are reloaded
-      builtin: rename load()/unload() to init()/exit()
-      invalidate rules and kmod index with 'udevadm control --reload'
-      update NEWS
-      builtin: firmware - move 'firmware' tool to builtins
-      builtin: firmware - add missing file
-      builtin: kmod - hook up udev main logging to libkmod
-      make: introduce --with-rootprefix=
-      update NEWS
-      move rules dirs to udev context; replace inotify with time-controlled stat()
-      udevd: always create runtime dir
-      builtin: move usb-db, pci-db to builtins
-      builtin: kmod - switch to kmod_module_probe_insert_module()
-      udevd: remove TIMEOUT= handling
-      update README
-      systemd: rename PassCred= to PsssCredentials=
-      remove mknod() logic and rely on 'devtmpfs'
-      builtin: kmod - hook up kmod_validate_resources()
-      build-sys: use use ${ac_default_prefix}
-      require kmod >= 3
-      build-sys: use --libexecdir=/usr/lib instead of /usr/lib/udev
-      autogen.sh: enable git pre-commit
-      merge udev/, libudev/, systemd/ files in src/; move extras/ to src/
-      replace unpacked sysfs test tree 'test/sys/' with packed tarball
-      rules: delete arch specific rules
-      doc: fix out of tree build (copy from libkmod)
-      autogen.sh: add CFLAGS and print entire line, so that mouse copy/paste works
-      build-sys: try to build without installed xsltproc
-      add test/src to .gitignore
-      tabs are as useful as a hole in the head
-      autogen.sh: makedev() misteriously breaks with -O0 here, use -O1 for now
-      fix debug message
-      add .vimrc
-      cdrom_id: int -> bool
-      fix compiler warning
-      man: mention that no daemons should be started by udev
-
-Lucas De Marchi (1):
-      builtin: kmod - log if modules are blacklisted
-
-Luis Felipe Strano Moraes (1):
-      Switch spawn_read to void and remove useless stores there.
-
-Martin Pitt (1):
-      75-persistent-net-generator.rules: Add Xen
-
-Mike Frysinger (1):
-      hwdb: drop useless line freeing
-
-Sjoerd Simons (1):
-      keymap: Add Lenovo Thinkpad X220 Tablet
-
-Ville Skyttä (1):
-      man: spelling fix
-
-
-Summary of changes from v174 to v175
-============================================
-
-David Zeuthen (2):
-      gudev: Use strtoul to parse unsigned 64-bit integers
-      gudev: Use g_ascii_strtoull() instead of strtoul()
-
-Harald Hoyer (1):
-      extras/keymap/findkeyboards: beautify shell code and get rid of grep
-
-Jerone Young (1):
-      keymap: Fix micmute remap for Lenovo Thinkpads
-
-Kay Sievers (7):
-      make: add gpg signing bits
-      ignore entire rules line if unknown keys are used
-      do not skip /dev/{disk,char}/M:m removal when the device node is already gone
-      replace AC_DISABLE_STATIC with LT_INIT([disable-static])
-      make: tweak some autofoo according to Flameeyes' recommendations for libabc
-      rules: restore rule to set cdrom group for optical drives
-      rules: fix typo
-
-Martin Pitt (8):
-      check-keymaps.sh: Allow running separately
-      extras/keymap/findkeyboards: Filter out non-event devices
-      findkeyboards: Consistently use spaces instead of tabs
-      keymap: Fix stuck keys on GIGABYTE i1520M
-      keymap: More Asus module variants
-      keymap: Fix "internet" key on HP G62
-      keymap: Fix bluetooth key on Acer TravelMate 7720
-      keymap: Fix stuck keys on BenQ nScreen
-
-
-Summary of changes from v173 to v174
-============================================
-
-David Zeuthen (1):
-      ata_id: Check for Compact Flash card
-
-Jerone Young (1):
-      Add mic mute keycode support for Lenovo Thinkpad USB keyboard
-
-Kay Sievers (34):
-      gtk-doc: delete empty files
-      libudev: list - use binary search for list lookup
-      rules: move input_id to default rules
-      implement path_id, usb_id, input_id as built-in command
-      do not remove static nodes on module unload
-      rules: remove legacy rules for cdrom and usb printer
-      update TODO
-      preserve 'sticky bit' on 'add/change' events
-      libudev: util_get_sys_(subsystem,driver}() -> util_get_sys_core_link_value()
-      export USEC_INITIALIZED= and take timestamp on message receive time
-      libudev: udev_device_get_sysattr_value() return syspath of custom links
-      libudev: list - properly sort linked list not only the index
-      mknod: do not complain about existing node
-      update README
-      libudev: fix typo in documentation
-      rules: fuse: do not mount fusectl from udev rules
-      keymap: add genius keymap to Makefile
-      update NEWS
-      usb_id: can't use global variables when used as built-in
-      remove 'udevadm trigger --type=failed' and SYSFS, ID, BUS keys
-      libudev: export udev_util_encode_string()
-      update TODO
-      systemd: no not start udev in a container
-      systemd: no not start udev in a container
-      delete left-over files in extras/
-      systemd: update drop-in sd-daemon files
-      udevadm: control - use /run/udev/control socket instead of abstract namespace one
-      udevd: control - no not delete socket file when --daemon is used
-      udev_ctrl_cleanup()- accept NULL as argument
-      update NEWS
-      udevd: install into /lib/udev instead of /sbin
-      udevd: add missing braces
-      systemd: use ConditionCapability=CAP_MKNOD instead of ConditionVirtualization=!container
-      rules: do not load sg module
-
-Kir Kolyshkin (1):
-      keymap: add Genius SlimStar 320
-
-Martin Pitt (1):
-      keymap: Update Acer Aspire 5920g
-
-Matthias Clasen (1):
-      make: allow to pass ${ACLOCAL_FLAGS}
-
-Paul Fox (1):
-      keymap: update the OLPC keymap for correct function key behavior
-
-Petr Uzel (1):
-      udevadm: settle - return failure if unknown option is given
-
-Steve Langasek (1):
-      udevd: exit - process events before signals in worker
-
-Thomas Hood (2):
-      keymap: Support keymap overrides in /etc/udev/keymaps
-      keymap: Support for microphone mute button on ThinkPad X220 et al
-
-
-Summary of changes from v172 to v173
-============================================
-
-Allin Cottrell (1):
-      configure: allow to disable mtd_probe
-
-Kay Sievers (15):
-      make: fix 'make tar-sync'
-      udevd: use 'uptime' in debug timestamp
-      udevd: fix (recently) broken static node permission setting
-      rules: mount fuse filesystem only 'add'
-      udevadm: move udevadm command descriptions into their files
-      udev-acl: skip ACLs when systemd is running, disable by default
-      do not delete database when renaming netif, the db name does not change anymore
-      do not allow kernel properties to be set by udev rules
-      configure: reorder options
-      rules: input - do not create (broken) links for bluetooth devices
-      rules: serial - do not export ID_PORT, use ID_USB_INTERFACE_NUM
-      rules: sound - instead of ID_IFACE use standard ID_USB_INTERFACE_NUM
-      keymap: do not run usb_id for bluetooth devices
-      udevadm: trigger --type=failed - log deprecation warning
-      udevd: debug - put timestamp in []
-
-Martin Pitt (4):
-      gudev: Ship JavaScript examples
-      scsi_id: Ship README
-      Remove obsolete extras/scsi_id/scsi_id.config
-      keymap: Only run on key devices
-
-
-Summary of changes from v171 to v172
-============================================
-
-Bastien Nocera (3):
-      accelerometer: add orientation property
-      udev-acl: fix memleak
-      accelerometer: add documentation
-
-Harald Hoyer (2):
-      udevadm-*.c: return != 0, if unknown option given
-      udev/udevadm-monitor.c: fixed misplaced brace
-
-Kay Sievers (33):
-      rules: apply 'audio' group of the static snd/{seq,timer} nodes
-      Makefile: add tar-sync
-      rules: static_node - use 0660 if group is given to get the cigar
-      rule-syntax-check.py: use print()
-      make: use 'git tag'
-      rules: run input_id for main input devices too
-      update TODO
-      configure: add AC_CONFIG_AUX_DIR, AC_CONFIG_SRCDIR
-      cdrom_id: add tray lock and eject handling
-      rules: enable in-kernel media-presence polling
-      update TODO
-      delete mobile-action-modeswitch which has moved to usb_modeswitch
-      libudev: enumerate - scan /sys/module
-      rules: move polling rule above 'block' match
-      libudev: monitor - update doc
-      rules: set polling value only if it is disabled
-      libudev: device - fix udev_device_get_tags_list_entry() to always load database
-      rules: remove redundant MODE="0664" from lp rules
-      rules: fix wrong wildcard match, we always need a ':*' at the end
-      libudev: device - export udev_device_has_tag()
-      path_id: add missing '-' to tape suffix
-      path_id: add ID_PATH_TAG= to be used in udev tags
-      enforce valid TAG+= names
-      update TODO
-      libudev: device - add udev_device_has_tag() to libudev.h and gtk-doc
-      libudev: enumerate - add udev_enumerate_add_match_parent()
-      libudev: enumerate - include parent device itself with match_parent()
-      libudev: enumerate - clarify documentation
-      path_id: recognize ACPI parent devices
-      rules: input - call path_id for ACPI devices
-      udevadm: monitor - use uptime to match the kernel's timestamp
-      libudev: ctrl - move code to udev directory
-      update sd-daemon.[ch]
-
-Keshav P.R (1):
-      rules: support for gpt partition uuid/label
-
-Lee, Chun-Yi (1):
-      Support more MSI notebook by using asterisk on dmi vendor name
-
-Marco d'Itri (1):
-      Add missing commas to 95-keymap.rules
-
-Martin Pitt (3):
-      keymap: Add Microsoft Natural Keyboard
-      keymap: Add force-release quirk for Hannspree SN10.
-      keymap: Add slight name variations of Toshiba Satellites
-
-Peter Jones (1):
-      ata_id: show the error message when HDIO_GET_IDENTITY fails
-
-
-Summary of changes from v170 to v171
-============================================
-
-Kay Sievers (17):
-      libudev: export symbols explicitely and individually from C code not from separate file or prefix match
-      libudev: device - make a bunch of symbols static
-      systemd: Replace Requires= with Wants=, run trigger in parallel
-      systemd: sort trigger after socket
-      systemd: trigger - run after udev.service (for now)
-      systemd: set socket buffer size to 128 MB like udev has
-      update TODO
-      update TODO
-      libudev: monitor - use SOCK_NONBLOCK
-      systemd: split socket file
-      systemd: add missing socket files
-      rules: fix whitespace
-      rules: implement TAGS== match
-      libudev: enumerate - do not ignore other matches when add_match_tag() is used
-      rules: support substitutions in TAG=
-      path_id: allow to be asked about usb_devices not only usb_interfaces
-      systemd: run udev.service and udev-trigger.service in parallel
-
-Scott James Remnant (1):
-      configure: allow usb.ids location to be specified
-
-
-Summary of changes from v169 to v170
-============================================
-
-Kay Sievers (1):
-      libudev: ctrl - properly wait for incoming message after connect
-
-Michal Soltys (1):
-      configure.ac: fixes for rule_generator and modeswitch
-
-
-Summary of changes from v168 to v169
-============================================
-
-Kay Sievers (26):
-      simplify rules file overwrite logic
-      libudev: list - use bit flags for 'sort' and 'unique'
-      libudev: queue - _unref() should return the object
-      remove dead fstab_import files
-      hid2hci: prepare move to bluez package
-      set event timeout to 60 sec and settle timeout to 120
-      udevd: improve error message in case exec() fails
-      configure: allow to enable/disable extras individually
-      delete hid2hci which moved to the bluez tree
-      update TODO/NEWS
-      bump requirement to Linux kernel 2.6.32 and ARM 2.6.36
-      libudev: ctrl - log accept4() errors
-      update NEWS
-      update INSTALL, NEWS, configure comment, queue doc
-      update TODO
-      udevd: create queue file before daemonizing to reliably block 'settle'
-      udevd: remove left-over SIGALRM
-      gudev: silent gtk-doc warnings
-      cdrom_id: remove unused --export switch to silent gcc
-      libudev: queue - always rebuild queue file when nothing is queued anymore
-      libudev: device - use DEVMODE from kernel as the default mode
-      update TODO
-      Merge branch 'docs/udev.xml' of git://github.com/mfwitten/udev
-      udate TODO, NEWS, INSTALL
-      build: use --gc-sections, -fvisibility=hidden
-      udevadm: settle: wake up more often if --seq-start= or --exit-if-exists= is used
-
-Koen Kooi (1):
-      configure: reintroduce introspection flags to fix crosscompilation
-
-Michael Witten (36):
-      Docs: udev.xml: Offset daemon name with commas
-      Docs: udev.xml: Remove commas (and unnecessary repetition)
-      Docs: udev.xml: `are' -> `is'; the subject is `Access'
-      Docs: udev.xml: Use present tense
-      Docs: udev.xml: Clarification through proper wording
-      Docs: udev.xml: `,' -> `;'
-      Docs: udev.xml: `key value' -> `key-value'
-      Docs: udev.xml: `,' -> `:'
-      Docs: udev.xml: Use `assignment' consistently
-      Docs: udev.xml: `comma-separated' is a better description
-      Docs: udev.xml: Remove unnecessary repitition
-      Docs: udev.xml: Add a few more words for context
-      Docs: udev.xml: Use `unless' for clarity
-      Docs: udev.xml: Clarify PROGRAM key
-      Docs: udev.xml: `a shell style' -> `shell-style'
-      Docs: udev.xml: Clean `*' description
-      Docs: udev.xml: Clean character range description
-      Docs: udev.xml: Clean up description of NAME assignment key
-      Docs: udev.xml: Clean up description of SYMLINK assignment key
-      Docs: udev.xml: Clean up description of ENV assignment key
-      Docs: udev.xml: Clean up description of RUN assignment key
-      Docs: udev.xml: Clean up description of LABEL assignment key
-      Docs: udev.xml: Add missing `.'
-      Docs: udev.xml: `which' -> `content of which'
-      Docs: udev.xml: `commandline' -> `command line'
-      Docs: udev.xml: Clean up WAIT_FOR description
-      Docs: udev.xml: `a' -> `the'
-      Docs: udev.xml: Clean up introduction to substitutions.
-      Docs: udev.xml: Use normal sentence structure
-      Docs: udev.xml: Actually make a separate paragraph
-      Docs: udev.xml: Add comma
-      Docs: udev.xml: `char' -> `character'
-      Docs: udev.xml: `comma-separated' is a better description
-      Docs: udev.xml: Clarify through a change in word ordering
-      Docs: udev.xml: Improved word order
-      Docs: udev.xml: Fix dangling modifier
-
-Nix (1):
-      libudev: queue - accept NULL passed into udev_queue_export_cleanup()
-
-
-Summary of changes from v167 to v168
-============================================
-
-David Zeuthen (1):
-      Run ata_id on non-removable USB devices
-
-Harald Hoyer (1):
-      udevd: clarify worker exit status
-
-Kay Sievers (35):
-      version bump
-      systemd: let settle depend on trigger, do not block basic with trigger
-      selinux: do not label files in runtime dir
-      selinux: firmware - do not label files in runtime dir
-      udevadm: control - add --exit
-      trivial cleanups
-      udevd: log warning if /run is not writable
-      libudev: ctrl - fix refcounting in connection handling
-      udevadm: settle - watch queue file
-      libudev: bump revision
-      udevadm: info --cleanup-db
-      udevd: do not nice processes
-      "db_persist=" -> "db_persist"
-      udevd: move OOM disable into --daemon option
-      systemd: add OOMScoreAdjust=-1000
-      require explicit "db_persist" to exclude device info from --db-cleanup
-      udevd: get netlink socket from systemd
-      fix more warnings
-      libudev: ctrl, monitor - use SOCK_NONBLOCK
-      systemd: socket -> sockets
-      udevadm: monitor - use epoll
-      libudev: test - use epoll
-      udevadm:  test - use printf() instead of info() for non-debug output
-      use 'else if' in epoll event array loop
-      libudev: run_program() - select() -> epoll
-      udevd: ppoll() -> epoll + signalfd
-      Merge branch 'docs/README' of git://github.com/mfwitten/udev
-      timeout handling without alarm()
-      udevadm: settle - kill alarm()
-      udevd: netif rename - use ifindex for temporary name
-      udevd: always use udevd[] log prefix
-      udevd: rules files - accept empty or /dev/null links
-      udevd: log signal number when spawned processes fail
-      systemd: Reqires= -> Wants=udev.socket
-      udevd, udev-event: sync waitpid() error handling
-
-Lee, Chun-Yi (1):
-      Add rule for Acer Aspire One ZG8 to use acer-aspire_5720 keymap
-
-Leonid Antonenkov (1):
-      rule-generator: net - ignore Hyper-V virtual interfaces
-
-Martin Pitt (3):
-      Revert "Do not build extras with --disable-extras"
-      Avoid spinning up CD on pressing eject button
-      keymap: Another ID for Logitech Wave keyboard
-
-Michael Reed (1):
-      path_id: rework SAS device handling
-
-Michael Witten (12):
-      Docs: README: `to replace' -> `replacing'
-      Docs: README: `,' -> `;'
-      Docs: README: Clean up a sentence
-      Docs: README: Use present tense
-      Docs: README: Add missing `and'
-      Docs: README: Remove commas and use subjective mood
-      Docs: README: Clean up `udev extras' requirements
-      Docs: README: Clarify configuration of existing devices
-      Docs: README: `does never apply' -> `never applies'
-      Docs: README: Flip sentence structure to improve wording
-      Docs: README: `set up' is the verb; `setup' is a noun
-      Docs: README: Add a comma to offset the modifier
-
-Seth Forshee (1):
-      keymap: Support Dell Latitude XT2 tablet-mode navigation keys
-
-Thomas Egerer (1):
-      udevd: add 'N:' to optstring in getopt_long
-
-
-Summary of changes from v166 to v167
-============================================
-
-Andrey Borzenkov (1):
-      udev-acl: add /dev/sgX nodes for CD-ROM
-
-David Zeuthen (1):
-      cdrom_id: Don't ignore profiles when there is no media available
-
-Harald Hoyer (2):
-      cdrom_id: cd_media_toc() extend toc size to 65536
-      udev-acl/70-acl.rules: tag ID_REMOTE_CONTROL with acl
-
-Kay Sievers (29):
-      version bump
-      Merge branch 'master' of git+ssh://master.kernel.org/pub/scm/linux/hotplug/udev
-      v4l_id: kill the v4l1 ioctl
-      v4l_id: remove left-over variable
-      update some comments
-      test-libudev: add short options
-      libudev: udev_device_get_sysattr_list_entry() update
-      libudev: resolve ifindex in udev_device_new_from_id_filename()
-      libudev: bump minor version
-      udev-acl: move sg rule to optical drive rule
-      move /dev/.udev/ to /dev/.run/udev/ and convert old udev database at udevd startup
-      NEWS: clarify /dev/.run/ requirements
-      input_id: silent gcc warnings
-      fstab_import: disable build
-      systemd: remove deprecated udev-retry.service
-      fstab_import: remove from configure
-      update sd-daemon.[ch]
-      udevd: use facility == LOG_DAEMON when writing to /dev/kmsg
-      udevd: initialize fds, for proper close() on exit
-      use /run/udev/ if possible and fall back to /dev/.udev/
-      rules: run ata_id only on SPC-3 or later optical drives
-      systemd: bind udev control socket in systemd and split udev.service
-      systemd: use sockets.target not socket.target
-      man: remove trigger --type=failed handling
-      libudev: export udev_get_run_path()
-      libudev: docs - add udev_get_run_path()
-      libudev: make valgrind happy
-      systemd: do not enable udev-settle.service by default
-      systemd: udev.socket - disable implicit dependencies
-
-Kei Tokunaga (1):
-      udevadm: enumerate - update prev pointer properly
-
-Lee, Chun-Yi (2):
-      Remap Acer WMI touchpad toggle key to F21 used by X
-      Remap MSI Laptop touchpad on/off key to F22 and F23
-
-Martin Pitt (12):
-      60-persistent-input.rules: Support multiple interfaces
-      Only build v4l_id if V4L1 header file is available
-      60-persistent-input.rules: Do not create duplicate links
-      Fix building with --disable-extras
-      Do not build extras with --disable-extras
-      v4l_id: Drop videodev.h check again
-      keymap: Fix Acer Aspire 5920G media key
-      input_id: Consistently use tabs for indentation
-      input_id: Add some debugging output
-      input_id: Avoid memory overflow with too long capability masks
-      input_id: Cover key devices which only have KEY_* > 255
-      input_id: Rewrite debug logging to use standard udev info()
-
-Seth Forshee (1):
-      keymap: continue reading keymap after invalid scancodes
-
-Thomas Egerer (3):
-      libudev: allow to get list of all available sysfs attrs for a device
-      libudev: use sysfs attr ilist interface for attribute walk
-      udevadm: info - make attribute array static and const
-
-
-Summary of changes from v165 to v166
-============================================
-
-Chris Bagwell (1):
-      Remap Eee PC touchpad toggle key to F21 used by X
-
-Gerd Hoffmann (1):
-      extras: add rules for qemu guests
-
-Jürgen Kaiser (1):
-      keymap: Add Acer Aspire 8930
-
-Kay Sievers (7):
-      version bump
-      man: generate html pages for www.kernel.org
-      man: fix typo
-      make: fix qemu rules file name
-      extras: qemu - fix typo
-      ata_id: do not print empty serial numbers to avoid unwanted trailing '_'
-      update gitignore
-
-Martin Pitt (6):
-      keymap: Add Acer TravelMate C310
-      keymap: Update README.keymap.txt
-      keymap: Add Lenovo ThinkPad X201 tablet
-      keymap: Move reading of event in separate function
-      keymap: More robust state machine
-      keymap: Explain how to end the program
-
-Matthew Garrett (1):
-      keymap: Remove wlan from Dell
-
-
-Summary of changes from v164 to v165
-============================================
-
-Andy Whitcroft (1):
-      keymap: Add release quirks for two Zepto Znote models and AMILO Xi 2428
-
-Bastien Nocera (2):
-      keymap: Add force release for HP touchpad off
-      extras/keymap: Make touchpad buttons consistent
-
-David Henningsson (1):
-      Add ACLs for FFADO supported sound cards
-
-David Zeuthen (6):
-      ata_id: Support SG_IO version 4 interface
-      Run scsi_id and ata_id on the scsi_device object
-      Use ata_id, not scsi_id, on ATAPI devices
-      Add GUdevEnumerator type and Device.get_tags() method
-      Add g_udev_device_get_is_initialized() method
-      gudev: Add Device.get_usec_since_initialized
-
-Harald Hoyer (2):
-      udev-rules.c: change import property buffer to 16384 bytes
-      70-acl.rules: add ACLs for ID_PDA devices
-
-Jakub Wilk (1):
-      man: udev - workaraound -> workaround
-
-Jan Drzewiecki (1):
-      cdrom_id: Fix media state for unreadable DVDs
-
-Kay Sievers (19):
-      version bump
-      rules: 78-sound-card - remove specific hardware matches, they do not belong here
-      rules: drop OSS audio rule
-      rules: drop alsa jack-plug input devices
-      rules: revert bsg use until the event ordering problem is sorted out
-      libudev: do not overwrite path with readlink() call
-      udevadm: info - honor --export and --export-prefix for property query
-      udevadm: info - honor --export, --export-prefix=
-      udevd: use dev_t or netif ifindex as database key
-      udevd: always create /dev/{char,block}/$major:$minor
-      udevd: simplify udev database and fix DEVNAME handling
-      udevd: switch to common id_filename functions
-      udevd: write full database file for (unsupported) renamed device nodes
-      check ifindex > 0 instead of subsystem == "net"
-      libudev: enumerate - allow to filter-out not-already-initialized devices
-      libudev: fix renamed device nodes detection logic
-      libudev: record and export "age" of device record
-      gudev: bump minor version
-      update NEWS
-
-Martin Pitt (5):
-      keymap: Add Sony Vaio VGN71
-      keymap: Add some more Sony Vaio VGN-* models
-      Add ACL for media player USB devices
-      keymap: Fix struck Touchpad key on Dell Latitude E series
-      keymap: Fix struck Touchpad key on Dell Precision M series
-
-Michal Soltys (1):
-      udevd: create static nodes before /dev/null is needed
-
-
-Summary of changes from v163 to v164
-============================================
-
-David Zeuthen (1):
-      Install libgudev-1.0.so in prefix / instead of prefix /usr
-
-Harald Hoyer (1):
-      cdrom_id: request the drive profile features with a dynamic length
-
-Kay Sievers (4):
-      version bump
-      udevd: do not wrongly delay events for devices with swapped names
-      return proper error code in rename_netif()
-      libudev: return kernel provided devnode when asked before we handled any rules
-
-Martin Pitt (2):
-      keymap: Apply force-release rules to all Samsung models.
-      keymap: Add Toshiba Satellite U500
-
-
-Summary of changes from v162 to v163
-============================================
-
-David Zeuthen (2):
-      gudev: Deliver ::uevent signal in the thread-default main loop
-      Bump required GLib version to 2.22
-
-Hannes Reinecke (1):
-      scsi_id: export target port group
-
-Kay Sievers (5):
-      version bump
-      scsi_id: fix compiler warnings
-      systemd: hook into basic.target instead of sysinit.target
-      systemd: sort before basic.target
-      udevd: add sd-daemon.c
-
-Lee, Chun-Yi (1):
-      keymap: Add alternate MSI vendor name
-
-Martin Pitt (8):
-      keymap: Add Lenovo Y550
-      Clarify WAIT_FOR documentation
-      fix various syntax errors in rules
-      Add automatic rules syntax check
-      cdrom_id: Try reading the medium if all MMC commands fail
-      Revert "cdrom_id: Try reading the medium if all MMC commands fail"
-      cdrom_id: Fall back to CDROM_DRIVE_STATUS if all MMC commands fail
-      cdrom_id: Don't read beyond "last track" in TOC
-
-Torsten Schoenfeld (1):
-      gudev: add a few annotations that newer gobject-introspection versions demand
-
-
-Summary of changes from v161 to v162
-============================================
-
-David Woodhouse (1):
-      Add keymap for Lenovo IdeaPad S10-3
-
-Jan Drzewiecki (2):
-      cdrom_id: Drop MEDIA_SESSION_NEXT for DVD-RW-RO
-      cdrom_id: Fix DVD blank detection for sloppy firmware
-
-Kay Sievers (10):
-      init: update systemd service files
-      init: update systemd service files
-      init: add 'udev -' to description in systemd service files
-      udevd: add pid to kmsg logs
-      init: edit systemd service descriptions
-      version bump
-      udevd: remove unneeded credential passing from init_notify()
-      set SELinux context on 'add' but not on 'change' events
-      systemd: enable all udev services unconditionally
-      Revert "Add alternative KVM MAC address blacklist"
-
-Luca Tettamanti (1):
-      Add support for oom_score_adj
-
-Marco d'Itri (2):
-      udev-acl: do not mistake all SCSI "processor" devices for scanner
-      do not create persistent name rules for KVM network interfaces
-
-Martin Pitt (12):
-      cdrom_id: Add media status debugging
-      udev(7): Point out required extension, and remove some confusion
-      keymap: Add Onkyo PC
-      keymap: Add HP G60
-      keymap: Fix Sony VAIO VGN-SZ2HP/B
-      udev(7) manpage: Fix description of $attr
-      gudev: fix crash if netlink is not available
-      keymap: Fix Acer TravelMate 4720
-      cdrom_id: Fix DVD-RW media detection
-      Fix KVM MAC address range
-      do not create persistent name rules for VMWare network interfaces
-      Add alternative KVM MAC address blacklist
-
-Michael Forney (1):
-      Don't install systemd scripts with --without-systemdsystemunitdir
-
-Michal Soltys (1):
-      ChangeLog fix
-
-
-Summary of changes from v160 to v161
-============================================
-
-Fortunato Ventre (1):
-      keymap: Add force-release quirks for a lot more Samsung models
-
-Harald Hoyer (3):
-      udev-event.c: rename interface to <src>-<dest>, if <dest> taken
-      rule_generator/write_net_rules: prevent interface to be named "eth"
-      cdrom_id: READ TOC before READ DISC INFORMATION fixes qemu
-
-Jan Drzewiecki (5):
-      cdrom_id: Fix detection of reblanked DVD+RW and DVD-RAM
-      cdrom_id: Handle pre-MMC2 drives
-      cdrom_id: Also apply format check to DVD-RW
-      cdrom_id: No "next session" for "other" media state
-      cdrom_id: Fix state for fresh DVD-RW
-
-Jerone Young (1):
-      Fix volume keys not releasing on Mivvy G310
-
-Kay Sievers (12):
-      version bump
-      rules: remove firewire rules for deprecated drivers
-      udev-acl: update firewire matches to recent rule changes
-      libudev: bump minor so version after adding symbols
-      call util_delete_path() only when we actually deleted stuff
-      udev-acl: properly handle CK change events for root user
-      udev-acl: remove specific device matches from the rules file
-      fix broken "compile warning fix"
-      always log error when renaming a network interface fails
-      do not rename the database on device rename
-      cdrom_id: whitespace fix
-      cdrom_id: do not bail out when we can not read the TOC like for empty CDRW
-
-Marco d'Itri (3):
-      hid2hci: fix Logitech diNovo, MX5500 and other keyboards
-      log an error when a message from the wrong version of udevadm is ignored
-      hid2hci: fix for Logitech diNovo Edge keyboard
-
-Martin Pitt (1):
-      keymap: Generalize Samsung keymaps
-
-Michal Schmidt (1):
-      udev-acl: really fix ACL assignment in CK events
-
-Richard Hughes (1):
-      udev-acl: add DDC_DEVICE to the types that are managed
-
-Stefan Richter (1):
-      rules: add more FireWire IDs: Point Grey IIDC; AV/C + vendor unique
-
-Yin Kangkai (7):
-      udevadm: fix short options in getopt()
-      udevd: fix some memory leaks in error path
-      malloc()+memset() -> calloc()
-      udevd: fix short options in getopt()
-      udevd: fix unref'ing of device in error path
-      udevd: create static device links only when the target exists
-      udev: fix compile warning
-
-
-Summary of changes from v159 to v160
-============================================
-
-Harald Hoyer (2):
-      60-persistent-storage-tape: s/path_id.sh/path_id/
-      60-persistent-storage-tape.rules: make own by-path symlink for nst tapes
-
-Kay Sievers (4):
-      version bump
-      rules: tape - remove WAIT_FOR instruction and don't export BSG_DEV
-      allow final assignment for OPTIONS:="nowatch"
-      udevd: init_notify() fix abstract namespace name handling
-
-Lennart Poettering (1):
-      systemd: make service files readable by GKeyFile
-
-Martin Pitt (2):
-      keymap: Find alternate Lenovo module
-      keymap: Add Lenovo ThinkPad SL Series extra buttons
-
-
-Summary of changes from v158 to v159
-============================================
-
-Jerone Young (1):
-      Fix stuck volume key presses for Toshiba Satellite U300 & U305models
-
-Kay Sievers (5):
-      version bump
-      add systemd service files
-      make: pre-process and install systemd service files when needed
-      make: fix 'make distcheck'
-      switch a few left-over from GPLv2 to GPLv2 or later
-
-Lennart Poettering (1):
-      systemd: update service files for newly introduced DefaultDependencies= option
-
-Martin Pitt (1):
-      keymap: Add Logitech Cordless Wave Pro
-
-Matthew Garrett (1):
-      keymap: Add support for IBM-branded USB devices
-
-Michael Meeks (1):
-      gudev: respect possibly given LD_LIBRARY_PATH
-
-Ryan Harper (2):
-      Add virtio-blk support to path_id
-      Add virtio-blk by-id rules based on 'serial' attribute
-
-
-Summary of changes from v157 to v158
-============================================
-
-Harald Hoyer (1):
-      extras/keymap: add Samsung N210 to keymap rules
-
-Kay Sievers (7):
-      version bump
-      libudev: fix fd leak in udev_enumerate_scan_devices() when tags are searched
-      udevd: in case we don't daemonize, send READY message to /sbin/init
-      delete last distro specific rules
-      remove a few comments in file headers
-      mtd_probe: add needed include, modprobe blacklist flag, and change some whitespace
-      rules: remove unused subdir
-
-Martin Pitt (4):
-      Fix hid2hci rules harder
-      add Vala vapi for gudev-1.0
-      Revert "add Vala vapi for gudev-1.0"
-      Fix usb printer rule for multiple USB interfaces
-
-Maxim Levitsky (1):
-      mtd_probe: add autodetection for xD cards
-
-Paul Bender (1):
-      configure.ac: fix cross compilation
-
-
-Summary of changes from v156 to v157
-============================================
-
-Harald Hoyer (1):
-      40-redhat.rules: removed file
-
-Jerone Young (3):
-      Fix wlan key on Inspirion 1210
-      Fix wlan key on Inspiron 910
-      Fix wlan key on Inspiron 1010 & 1110
-
-Kay Sievers (25):
-      configure.ac: version bump
-      Makefile.am: silent build mkdir
-      rules: mount fuse control filesystem
-      fix compilation with --enable-debug
-      while (1) -> for (;;)
-      childs -> children
-      udevd: replace --debug-trace with --children-max
-      udevd: fix comments
-      rules: add -v to modprobe calls to be able see what will be loaded
-      udevd:  read debug settings from kernel commandline
-      update NEWS
-      rules: delete pilot rules and remove redhat directory
-      man: add static device nodes and udevd debug options
-      man: add kernel command line parameters
-      man: udevd - update intro
-      rules: rename packages -> arch
-      rules: SUSE - move last distro rule to package
-      rules: add misc/30-kernel-compat.rules
-      make: mkdir /lib/udev/devices/
-      make: fix rules/ subdir names
-      udevd: set umask before creating files/directories
-      add IMPORT{cmdline}
-      IMPORT{cmdline}: start at first char after '='
-      libudev: doc - fix typo
-      update NEWS
-
-
-Summary of changes from v155 to v156
-============================================
-
-Bryan Kadzban (1):
-      udevd: fix typo /proc/fd -> /proc/self/fd
-
-Kay Sievers (4):
-      configure.ac: version bump
-      cdrom_id: do not export ID_CDROM_MEDIA_SESSION_LAST_OFFSET= for single session media
-      rules: optical drives - use ID_CDROM_MEDIA_TRACK_COUNT_DATA
-      libudev: fix udev_queue_get_seqnum_sequence_is_finished() with empty queue file
-
-
-Summary of changes from v154 to v155
-============================================
-
-Kay Sievers (11):
-      reset process priority before executing RUN+=
-      configure.ac: version bump
-      rules: SUSE - delete device-mapper rules
-      libudev: add O_CLOEXEC
-      use default mode of 0600 for nodes if gid == 0
-      udevd: create standard symlinks and handle /lib/udev/devices
-      update NEWS README
-      fix tests and allow MODE=000
-      create static nodes provided by kernel modules to allow module autoloading
-      update NEWS
-      man: directly use 'refentry'
-
-
-Summary of changes from v153 to v154
-============================================
-
-Harald Hoyer (2):
-      Makefile.am: add LGPL COPYING file to EXTRA_DIST
-      cdrom_id: only mark sr[0-9]* as ID_CDROM
-
-Jerone Young (1):
-      Fix volume keys not releasing for Pegatron platform
-
-Kay Sievers (23):
-      configure.ac: version bump
-      more readlink buffer size handling
-      remove left-over from ignore_remove and all_partitions
-      fix previous commit
-      udevadm: info --export-db -- remove watch handle export
-      add TAG= to improve event filtering and device enumeration
-      all to match against a given TAG==
-      udev-acl: use a tag instead of a property to mark devices
-      fix logic on-demand loading logic for db and uevent
-      use the usual TAG+=, TAG= logic
-      delete old tags when configuration changes
-      libudev: accept NULL in udev_device_get_tags_list_entry()
-      export tag functions
-      export udev_device_get_tags_list_entry()
-      udevd: always try to find an idle worker instead of forking a new one
-      remove unused parameter from udev_node_mknod()
-      remove debug output during rules parsing
-      warn when renaming kernel-provided nodes instead of adding symlinks
-      man: udevadm trigger - the default is "change" not "add"
-      update README regarding kernel version and default rules
-      add info message when empty NAME is given
-      libudev: add documentation for recently added functions
-      udevd: reload config only for *.rules files
-
-Martin Pitt (1):
-      keymap: Fix Bluetooth key on Acer TravelMate 4720
-
-Mathias Nyman (1):
-      remove buffer-overrun risk in readlink call
-
-Matthias Schwarzott (1):
-      rules: Gentoo - remove old devfs compat rules
-
-Michael Thayer (1):
-      fix device node deletion
-
-Robby Workman (1):
-      configure.ac: move firmware-path setting out of extras section
-
-Yin Kangkai (2):
-      keymap: Add keymap and force-release quirk for Samsung N128
-      keymap: Add keymap quirk of WebCam key for MSI netbooks.
-
-
-Summary of changes from v152 to v153
-============================================
-
-Kay Sievers (1):
-      configure.ac: version bump
-
-Robby Workman (1):
-      configure.ac: fix broken firmware search path in configure.ac
-
-
-Summary of changes from v151 to v152
-============================================
-
-Adrian Bunk (1):
-      udev needs automake 1.10
-
-Amit Shah (2):
-      Fix virtio-ports rule to use $attr instead of $ATTR
-      rules: virtio - fix is to check if the 'name' attribute is present
-
-Andy Whitcroft (2):
-      keymap: Add Samsung Q210/P210 force-release quirk
-      keymap: Add Fujitsu Amilo 1848+u  force-release quirk
-
-Dan Williams (1):
-      modeswitch: morph into tool that only switches Mobile Action cables
-
-David Zeuthen (3):
-      Decrease buffer size when advancing past NUL byte
-      Use UTIL_LINE_SIZE, not UTIL_PATH_SIZE to truncate properties
-      Increase UTIL_LINE_SIZE from 2048 to 16384
-
-Harald Hoyer (1):
-      cdrom_id: remove debugging code
-
-Jerone Young (6):
-      Force key release for volume keys on Dell Studio 1557
-      Fix Keymapping for upcoming Dell Laptops
-      Add new Dell touchpad keycode
-      Revert special casing 0xD8 to latitude XT only
-      Fix Dell Studio 1558 volume keys not releasing
-      Add support for another Dell touchpad toggle key
-
-Kamal Mostafa (3):
-      keymap: Unite laptop models needing common volume-key release quirk
-      keymap: Add force-release quirk for Coolbox QBook 270-02
-      keymap: Add force-release quirk for Mitac 8050QDA
-
-Kay Sievers (43):
-      libudev: bump minor version
-      udevadm: fix untested and broken commit to set buffer size
-      configure.ac: version bump
-      udev-acl: no not encourage use of ACL_MANAGE outside of rules file
-      replace utimes() with utimensat()
-      libbudev-private: rename udev_list_entry_get_flag()
-      udevadm: monitor - use / as separator in --subsystem-match=subsystem[/devtype]
-      use major:minor as entries in symlink stack instead of devpath
-      use major:minor as entries in watch directory
-      libudev: docs - .gitignore backup files
-      firmware: fix possible segfault when firmware device goes away while loading
-      do not reset SELinux context when the node was not touched
-      libudev: add udev_device_new_from_environment()
-      add LGPL COPYING to libudev and GUdev
-      cdrom_id: open non-mounted optical media with O_EXCL
-      libudev: update documentation
-      extras: mobile-action-modeswitch - update gitignore
-      scsi_id: add rand() in retry loop
-      cdrom_id: retry to open the device, if EBUSY
-      cdrom_id: check mount state in retry loop
-      cdrom_id: always set ID_CDROM regardless if we can run cdrom_id
-      rules: delete outdated packagees rules
-      rules: we do not have static devices which are renamed
-      unify/cleanup event handling
-      allow IMPORT{db}="KEY"
-      usb-db: remove double '/'
-      replace "add|change" with "!remove"
-      update NEWS
-      log info only if we actually delete the node
-      udevadm: trigger - switch default action from "add" to "change"
-      remove "all_partitions" option
-      rules: call modprobe on all events but "remove"
-      remove "ignore_remove" option
-      update NEWS
-      cdrom_id: rework feature/profiles buffer parsing
-      cdrom_id: print more debug messages
-      cdrom_id: debug - print feature values in hex
-      cdrom_id: debug - print feature values in hex
-      cdrom_id: set ID_CDROM_MEDIA=1 only for known media
-      Revert "Fix switching Logitech bluetooth adapters into hci mode."
-      add O_NOFOLLOW when creating files in link stack
-      delete only device nodes, not symlinks when deleting a devtmpfs node
-      doc: add section about how *not* to rename device nodes
-
-Marco d'Itri (3):
-      rules: input - create by-path/ links for pci devices
-      Fix switching Logitech bluetooth adapters into hci mode.
-      doc: document the WAIT_FOR timeout
-
-Martin Pitt (12):
-      keymap: Add Dell Inspiron 1011 (Mini 10)
-      Fix brightness keys on MSI Wind U-100
-      keymap: Fix LG X110
-      keymap: Add Toshiba Satellite M30X
-      udev-acl: Correctly handle ENV{ACL_MANAGE}==0
-      input_id: Fix linking
-      keymap: Add Acer TravelMate 6593G and Acer Aspire 1640
-      keymap: Fix another key for Acer TravelMate 6593
-      cdrom_id: Fix uninitialized variables
-      cdrom_id: Fix uninitialized buffers
-      cdrom_id: Do not ignore errors from scsi_cmd_run()
-      cdrom_id: Swap media state and TOC info probing
-
-Mike Brudevold (1):
-      cdrom_id: add missing profiles to feature_profiles
-
-Robert Hooker (1):
-      keymap: Add support for Gateway AOA110/AOA150 clones.
-
-Scott James Remnant (2):
-      libudev: export udev_monitor_set_receive_buffer_size()
-      udevadm monitor: increase netlink buffer size
-
-Thomas Bächler (1):
-      firmware: fix error reporting on missing firmware files
-
-Yury G. Kudryashov (3):
-      configure.ac - fix typo in --with-pci-ids-path option
-      hid2hci: include linux/types.h for __u32
-      configure.ac: ddd --with-firmware-path option
-
-
-Summary of changes from v150 to v151
-============================================
-
-Amit Shah (1):
-      rules: Add symlink rule for virtio ports
-
-Bryan Kadzban (1):
-      Fix reverted floppy-device permissions
-
-Egbert Eich (1):
-      rulews: suse - add do-not-load-KMS-modules rules
-
-Frederic Crozat (1):
-      rules: acl - add COLOR_MEASUREMENT_DEVICE match
-
-Kay Sievers (11):
-      configure.ac: version bump
-      udevd: inotify - do not parse rules at create but at close
-      do not remove device nodes of active kernel devices
-      libudev: device - create db file atomically
-      clarify message about not removed device node
-      input_id: include limits.h
-      keymap: include linux/limits.h
-      keymap: linux/input.h - get absolute include path from gcc
-      delete outdated and unmaintained writing_udev_rules
-      update README and NEWS
-      update tests
-
-Marco d'Itri (2):
-      writing_udev_rules: update rules files names
-      keymap: support for the Samsung N140 keyboard
-
-Martin Pitt (4):
-      add ACL rule for Garmin GPSMap 60
-      keymap: move force-release directory
-      extras/keymap/check-keymaps.sh: Ignore comment-only lines
-      keymap: Fix invalid map line
-
-
-Summary of changes from v149 to v150
-============================================
-
-Clemens Buchacher (2):
-      add Samsung R70/R71 keymap
-      keymap: Samsung R70/R71 force-release quirk
-
-Daniel Drake (2):
-      keymap: Add OLPC XO key mappings
-      keymap: Fix typo in compal rules
-
-Daniel Elstner (1):
-      libudev: wrap in extern "C" block for C++
-
-David Zeuthen (1):
-      Export ID_WWN_VENDOR_EXTENSION and ID_WWN_WITH_EXTENSION
-
-Jerone Young (1):
-      keymap: Lenovo Thinkpad USB Keyboard with Tracepoint
-
-Johannes Stezenbach (2):
-      keymap: add Samsung N130
-      keymap: handle atkbd force_release quirk
-
-Kay Sievers (15):
-      util_unlink_secure(): chmod() before chown()
-      floppy: fix rule to create additional floppy device nodes
-      configure.ac: version bump
-      remove remaining support for CONFIG_SYSFS_DEPRECATED
-      cdrom_id: remove deprecated device matches
-      rules: add "block" match to floppy rule
-      update mtime of nodes and links when we re-use them
-      udevadm: info - fix info --root --query=name --path= for device without a device node
-      remove remaining support for CONFIG_SYSFS_DEPRECATED
-      fix typo in log message priority handling
-      remove UDEV_RUN environment variable
-      udevadm: logging - copy va_list and do not use it twice
-      libudev: doc - add symbols to sections.txt
-      work around gtk-doc which breaks distcheck
-      gobject-introspection: use $datadir instead of $prefix
-
-Marco d'Itri (2):
-      build: keymap - create subdir
-      rules: udev-acl - add firewire video devices
-
-Martin Pitt (12):
-      keymap: Add Acer Aspire 1810T
-      95-keymap.rules: Run on change events, too
-      keymap: fix findkeyboards
-      Speed up udev_enumerate_scan_*
-      keymap: Add hotkey quirk for Acer Aspire One (AO531h/AO751h)
-      Clarify RUN/IMPORT documentation
-      keymap: Add Logitech S510 USB keyboard
-      keymap: add Acer TravelMate 8471
-      keymap: Add Acer Aspire 1810TZ
-      keymap: Add LG X110
-      keymap: Add Fujitsu Amilo Li 1718
-      keymap: Document force-release
-
-Piter PUNK (1):
-      firmware: convert shell script to C
-
-Scott James Remnant (1):
-      70-acl.rules: ACL manage Android G1 dev phones
-
-Thomas de Grenier de Latour (1):
-      libudev: enumerate - fix move_later logic
-
-
-Summary of changes from v148 to v149
-============================================
-
-Daniel Elstner (1):
-      really fix both in-tree and out-of-tree builds
-
-Dmitry Torokhov (1):
-      input-id: identify touchscreens
-
-Kay Sievers (4):
-      libudev: doc - use #NULL
-      configure.ac: version bump
-      really really fix both in-tree and out-of-tree builds
-      fix both in-tree and out-of-tree builds
-
-Martin Pitt (6):
-      input_id: Fix endless loop for non-input devices
-      input_id: Do not tag non-input devices with ID_INPUT
-      input_id: small optimization
-      input_id: check event mask
-      input_id: Check mouse button for ID_INPUT_MOUSE
-      udev_device_get_parent_with_subsystem_devtype(): Clarify documentation
-
-
-Summary of changes from v147 to v148
-============================================
-
-Dan Williams (3):
-      Revert "modem-modeswitch: add a device"
-      Revert "extras/modem-modeswitch: Add Huawei E1550 GSM modem"
-      modem-modeswitch: 61-option-modem-modeswitch.rules is only for Option NV devices
-
-Daniel Mierswa (1):
-      Fix typo in NEWS, ConsoleKit-0.4.11 -> 0.4.1
-
-David Zeuthen (4):
-      cdrom_id: Still check profiles even if there is no media
-      scsi_id: Export WWN and Unit Serial Number
-      Create /dev/disk/by-id/wwn-0x... symlinks
-      Also create /dev/disk/by-id/wwn-0x..-part%n symlinks for partitions
-
-Dmitry Torokhov (1):
-      extras/input_id: Correctly identify touchpads
-
-Harald Hoyer (1):
-      modem-modeswitch: add a device
-
-Kay Sievers (8):
-      rules: set mode of floppy device nodes to 0660
-      remove "ignore_device"
-      print warning for BUS=, SYSFS{}=, ID=
-      test-udev: remove "ignore_device" code
-      udev-test.pl: catch-up with recent changes
-      rules: remove support for IDE (hd*) devices
-      ata_id: skip ATA commands if we find an optical drive
-      Revert "Fix out-of-tree builds"
-
-Martin Pitt (5):
-      README.keymap.txt: small clarification
-      extras: Add input_id
-      70-acl.rules: Use new-style input properties
-      input: Deprecate ENV{ID_CLASS}
-      input_id: code cleanup
-
-Scott James Remnant (1):
-      Fix out-of-tree builds
-
-
-Summary of changes from v146 to v147
-============================================
-
-Alan Jenkins (1):
-      udevd: queue-export - remove retry loop
-
-Andrew Church (1):
-      fix wrong parameter size on ioctl FIONREAD
-
-Daniel Mierswa (2):
-      don't compare a non-existing function with NULL
-      use nanosleep() instead of usleep()
-
-David Zeuthen (4):
-      gudev: remove G_UDEV_API_IS_SUBJECT_TO_CHANGE since API is now stable
-      ata_id: export more advanced ATA features
-      gudev: Fix up GUdevDeviceNumber
-      gudev: Remove LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE from priv header
-
-Florian Zumbiehl (10):
-      util_delete_path(): use util_strscpy()
-      util_lookup_group(): fix memory leak if realloc() fails
-      util_delete_path(): handle multiple leading slashes
-      util_create_path(): fix possible out of bounds array access
-      ude_rules.c: fix possible NULL pointer dereference in get_key()
-      util_resolve_sys_link(): fix possible buffer overflow
-      udev_util_encode_string(): fix possible buffer overflow
-      udev-rules.c: parse_file() - fix possible buffer overflow
-      udev_queue_get_seqnum_sequence_is_finished(): fix possible file handle leak
-      util_run_program(): fix possible buffer overflow #2
-
-Harald Hoyer (2):
-      scsi_id: prevent buffer overflow in check_fill_0x83_prespc3()
-      rename interfaces to <iface>_rename if rename fails
-
-Jeremy Kerr (1):
-      util_run_program: restore signal mask before executing event RUN commands
-
-Kay Sievers (45):
-      make: sort Makefile.am per target/extra
-      configure.ac: version bump
-      udev-acl: allow to skip ACL handling
-      rules: rfkill has no group, so use 0644
-      rule_generator: net - fix MATCHDEVID
-      make: add comment
-      update NEWS
-      print warning for NAME="%k" - it breaks the kernel supplied DEVNAME
-      warn about non-readable or empty rules file
-      change database file names
-      assign errno for getgrnam_r()/getpwnam_r()
-      doc: udevadm test *does* create nodes and links these days
-      util_unlink_secure(): chmod() before chown()
-      util_create_path(): fix errno usage
-      inotify_add_watch(): do not store watch, if it failed
-      update TODO
-      update README
-      rules: suse - use NAME for mapper/control
-      libudev-util.c: get_sys_link() - return error for empty link target
-      udev-rules.c: remove 'first_token' variable
-      Revert "udev-rules.c: remove 'first_token' variable"
-      test: catch possible bug in GOTO resolving
-      udevadm: remove symlink support for old commands
-      util_run_program(): skip multiple spaces in argv creation
-      fix whitespace
-      require 2.6.27 for proper signalfd handling
-      fix randonm findings from llvm-clang-analyzer
-      simplify "symlink name stack"
-      reorder create_path() and node/link creation to be called in a direct sequence
-      put util_create_path() and file creastion in a retry loop
-      udevadm: control - remove compat code
-      scsi_id: delete copy of bsg.h
-      fix SYMLINK{} option parsing
-      rules: remove remaining NAME="%k"
-      rules: drop almost all NAME= keys
-      update TODO, NEWS
-      udevd: serialize events for with the same major/minor
-      break loops if util_create_path() returns error
-      remove "last_rule" option
-      use CLOEXEC flags instead of fcntl()
-      unblock signals we might want to handle
-      udevd: create /dev/.udev/rules.d/ before watching it wit inotify
-      gudev: fix pkg-config call to work with "make distcheck"
-      update NEWS
-      Revert "gudev: fix out-of-tree build"
-
-Lennart Poettering (5):
-      pci-db: make sure we actually read the pci.ids file instead of usb.ids
-      sound: recognize saa7134 TV card sound devices as TV cards
-      sound: include ALSA sound card id in ID_ID property
-      sound: include ALSA sound card id in /dev/snd/by-id/ links
-      Revert "sound: include ALSA sound card id in /dev/snd/by-id/ links"
-
-Marco d'Itri (6):
-      doc: writing_udev_rules updated for the new command names
-      rules: sound - do not use /usr/bin/env
-      udevadm: print all messages to stderr with priority higher or equal than LOG_ERR
-      udevadmi: control = exit with rc=2 if there is some system error
-      gudev: gir-scanner workaround for out of tree builds
-      gudev: fix out-of-tree build
-
-Mario Limonciello (1):
-      hid2hci: remove superfluous bmAttributes match
-
-Martin Pitt (24):
-      extras/keymap: Add Acer Aspire 6920
-      extras/modem-modeswitch: eject ZTE MF6xx fake CD-ROMs
-      extras/keymap: Fix hold key on Acer Aspire 6920
-      extras/keymap: Fix case matching for Micro-Star
-      Revert "extras/keymap: Fix case matching for Micro-Star"
-      make raw USB printer devices accessible for lp
-      modem-modeswitch rules: Match more devices
-      extras/keymap: fix hash table collisions
-      extras/keymap: Rename KEY_COFFEE to KEY_SCREENLOCK
-      fix single-session CD detection
-      fix previous commit for CD detection
-      make raw USB printer devices world-readable again
-      50-udev-default.rules: fix printer MODE
-      keymap: Add Logitech Wave USB
-      keymap: add missing map file
-      keymap: fix usb_id invocation
-      keymap: make USB keyboards really work
-      keymap: Add Logitech Wave cordless
-      keymap: add HP Pavillion dv6315ea
-      keymap: add HP 2230s
-      Makefile.am: fix build with mawk
-      extras/keymap/README.keymap.txt: Fix bug report link
-      fix major fd leak in link handling
-      modem-modeswitch: fix ZTE MF6xx rule
-
-Matthias Schwarzott (2):
-      rules: Gentoo update
-      rules: Gentoo update
-
-Maxim Levitsky (1):
-      keymap for Acer Aspire 5720
-
-Peter Rajnoha (1):
-      libudev: allow to store negative values in the udev database
-
-Scott James Remnant (1):
-      util_run_program: *really* restore signal mask before executing event RUN commands
-
-William Jon McCann (1):
-      udev-acl: catch up with ConsoleKit 0.4.1
-
-
-Summary of changes from v145 to v146
-============================================
-
-Alan Jenkins (3):
-      man: fix unused, inaccurate metadata
-      man: SYMLINK can be matched as well as assigned
-      fix spelling
-
-Anssi Hannula (2):
-      rules: exclude digitizers from joystick class
-      udev-acl: add joystick devices
-
-Diego Elio 'Flameeyes' Pettenò (21):
-      Merge libudev, udev, and the unconditional extras in a single Makefile.am.
-      Replace the custom test-run target with the standard make check.
-      Also merge into the top-level Makefile.am the simpler extras.
-      Change hook handling to be more portable.
-      Merge keymap building in the top-level Makefile.am.
-      Make keymap generation rules be silent (backward-compatible).
-      Move pkg-config docs and man pages before conditionals.
-      Finally, also merge gudev into the top-level Makefile.am.
-      Make sure to clean up all the built sources.
-      Make sure to use dependency/target variables.
-      Add silent-rule support for the gudev rules.
-      Fix building of introspection library on top-level Makefile.am.
-      Fix another relative path for the new working directory.
-      Include the correct directory for out-of-source builds.
-      Add tests to the distribution; this fixes "make distcheck".
-      Ask gperf to use ANSI-C for generation.
-      Merge in Makefile.am.inc into Makefile.am
-      Use the keymap check during “make distcheck” rather than “check”.
-      Fix building of documentation when doing out-of-source builds.
-      Fix “make distcheck” run outside of the source directory.
-      Use LT_INIT to explicit that udev needs libtool series 2.
-
-Eric W. Biederman (1):
-      fix util_lookup_group to handle large groups
-
-Erik Forsberg (1):
-      extras/modem-modeswitch: Add Huawei E1550 GSM modem
-
-Kay Sievers (18):
-      udevd: add timestamp to --debug output
-      v4l_id: exit with 0 when --help is given
-      configure.ac: version bump
-      hid2hci: remove hid structures and include kernel header
-      path_id: make global variable static
-      udevadm: trigger - add --sysname-match=
-      rules: serial - fix path_id call
-      path_id: fix typo in comment
-      format names are not case insensitive
-      hid2hci: rewrite (and break) rules and device handling
-      make: build internal tools against libudev-private.la
-      update a few years of copyright
-      libudev: silent gcc warning: may be used uninitialized in this function
-      make: suppress enter/leaving directory messages
-      re-enable failed event tracking
-      "record_failed" -> "fail_event_on_error"
-      udevd: block for 15 seconds after error when too old kernel is detected
-      make: fix issues from non-recursive conversion
-
-Lennart Poettering (1):
-      enumeration: move ALSA control devices to the end of the enumerated devices of each card
-
-Mario Limonciello (2):
-      hid2hci: support to hid2hci for recovering Dell BT devices after S3
-      hid2hci: install re-trigger for hid device when recovering from S3
-
-Martin Pitt (17):
-      add keymap for Clevo D410J laptop
-      extras/keymap: add Zepto ZNote
-      extras/keymap: add Everex Stepnote XT5000T
-      extras/keymap: add Compal Hel80i
-      keymap tool: improve help
-      keymap tool: support scancode/keycode pair arguments
-      keymap: inline one-line key maps
-      extras/keymap: fix check-keymaps.sh for inline mappings
-      extras/keymap: add recently added keymap files to Makefile.am
-      extras/keymap: Add HP Presario 2100
-      extras/keymap: cover more Compaq Evo models
-      extras/keymap: Add Fujitsu Amilo M
-      extras/keymap: teach findkeyboards about USB keyboards
-      extras/keymap: Add Samsung SX22S
-      extras/keymap: Fix crash for unknown keys
-      extras/keymap: Add Samsung NC20
-      extras/keymap: Fix Bluetooth key on Acer Aspire 6920
-
-
-Summary of changes from v144 to v145
-============================================
-
-Ian Campbell (1):
-      scsi_id: correct error handling in prepend_vendor_model
-
-Kay Sievers (10):
-      README: add CONFIG_BLK_DEV_BSG
-      use MIN() MAX() from param.h
-      configure.ac: version bump
-      libudev: device - free values before updating them
-      libudev: enumerate - sort with qsort()
-      udevd: detach event from worker if we kill a worker
-      udevadm: info - add space after R:, A:, W: on database export
-      udevd: make sure a worker finishes event handling before exiting
-      udevd: handle SIGCHLD before the worker event message
-      udevd: use bool
-
-
-Summary of changes from v143 to v144
-============================================
-
-Jon Masters (1):
-      firmware: search for third party or sysadmin supplied firmware updates
-
-Kay Sievers (19):
-      configure.ac: add AM_SILENT_RULES
-      configure.ac: version bump
-      TODO: add cleanup of ATA_COMPAT
-      libudev: queue - add comments for queue format
-      udev/.gitignore: add udev.pc
-      configure.ac: version bump
-      do not exports properties starting with a '.'
-      scsi_id: --reformat_serial - use udev_util_replace_whitespace()
-      ata_id: sync ID_SERIAL(_SHORT) with other *_id tools
-      rules: make ata_id properties the default for all ATA block devices
-      scsi_id: delete no longer needed config file
-      update NEWS
-      man: udev - add private properties like ENV{.FOO}="bar"
-      Merge branch 'firmware' of git://git.kernel.org/pub/scm/linux/kernel/git/jcm/udev-jcm
-      udevadm: test - print list of properties
-      build: do not delete .la files
-      libudev: monitor - handle kernel supplied DEVNAME properly
-      update NEWS
-      build: add *exec* to the internal rootlibdir name
-
-Martin Pitt (2):
-      hid2hci: narrow matches to real HCI devices
-      extras/udev-acl: add smartcard readers
-
-Stefan Richter (1):
-      rules: set group ownership of new firewire driver device files
-
-
-Summary of changes from v142 to v143
-============================================
-
-Alan Jenkins (5):
-      udevadm: settle - fix timeout
-      udevd: remove tiny bit of dead code
-      udevd: implement a more efficient queue file format
-      udev-selinux.c: remove libudev header
-      udevd: queue-export - fix crash
-
-Benjamin Gilbert (1):
-      test: check string substitutions in OWNER and GROUP
-
-Dan Williams (2):
-      rules: tty/net - move from udev-extras
-      extras/modem-modeswitch: move from udev-extras
-
-David Zeuthen (1):
-      gudev: move from udev-extras
-
-Kay Sievers (95):
-      version bump
-      rules: v4l do not mix vbi and video nodes
-      fix possible endless loop for GOTO to non-existent LABEL
-      Revert "rules: v4l do not mix vbi and video nodes"
-      rule-generator: cd - skip by-path links if we create by-id links
-      remove format char string truncation syntax
-      use more efficient string copying
-      edd_id: use openat()
-      use openat(), unlinkat(), fstatat()
-      update TODO
-      remove unused GL_FORMAT from rules parser
-      require key names in uppercase
-      keep the ifdef'd udevd testing/profiling hack
-      fix location of database files
-      udevadm: settle - make --timeout=0 working
-      update NEWS
-      rules: add SUBSYSTEM match to scsi rules
-      cdrom_id: suppress ID_CDROM_MEDIA_STATE=blank for plain non-writable CDROM media
-      udevadm: control - add comment to man page about --reload-rules
-      cdrom_id: add error message if open() fails
-      udevadm: settle - add --exit-if-exists=<file>
-      udevd: remove check for dev_t, DEVPATH_OLD takes care of that
-      str[sp]cpyl: add __attribute__ ((sentinel))
-      udevd: convert to event worker processes
-      udevd: close netlink socket in worker and set cloexec
-      rules: do not call path_id for virtual devices
-      udevd: use enum instead of char in struct declaration
-      allow format substitution in path of ATTR{<path>}=="<value>"
-      cleanup $attr{} substitution
-      path_id: implement in C using libudev
-      path_id: update SCSI handling
-      path_id: add comments
-      fix signed/unsigned warning
-      libudev: enumerate - allow multiple keys with the same name
-      udevadm: trigger - add --property-match=<key>:<value>
-      udevadm: info - accept --query without a value and print properties
-      udevadm: control - --env -> --property
-      udevadm: monitor --environment -> --property
-      path_id: handle fibre channel
-      path_id: add iscsi support
-      path_id: delete old shell script
-      udevd: print error if worker dies unexpectedly
-      path_id: rename scsi sub-fuctions
-      libudev: add comments to libudev.h
-      libudev: move to top-level directory
-      fix libudev include in Makefile.am.in
-      libudev: device_new() -> udev_device_new()
-      udevd: log info for created/killed workers
-      libudev: call log functions conditionally
-      move syslog wrapper to libudev
-      move common stuff from udev/ to private parts of libudev/
-      libudev: rename private files to *-private.c
-      rules: remove scsi ch module loading rule
-      update NEWS
-      udevadm: info -revert "accept --query without argument"
-      README: add kernel options
-      README: add INOTIFY and SIGNALFD
-      USE_LOG -> ENABLE_LOGGING, DEBUG -> ENABLE_DEBUG, USE_SELINUX -> WITH_SELINUX
-      libudev: add gtk-doc
-      libudev: update documentation
-      libudev: doc - add section headers
-      libudev: doc - add enumerate
-      libudev: doc - add queue
-      update TODO
-      libudev: doc - add namespace for index
-      libudev: move .so version to libudev Makefile
-      autogen.sh: simplify
-      TODO: update
-      libudev: remove prefix from .so version variables
-      libudev: doc - add empty libudev.types
-      udev-acl: move from udev-extras
-      INSTALL: add --enable-extras
-      udev-acl: handle missing action when called in CK mode
-      v4l_id: move from udev-extras
-      libudev: doc - libudev-docs.sgml -> libudev-doc.xml
-      gudev: fix typo in configure option
-      v4l_id: 70-v4l.rules -> 60-persistent-v4l.rules
-      configure: enable all extras by default, provide --disable-extras
-      autogen.sh: make "CFLAGS=-O0 ./autogen.sh" working
-      NEWS: add --disable-extras
-      cleanup ./configure installation directory options
-      rules: remove MMC rule, 2.6.30 has the modalias
-      configure.ac: print error if gperf is missing
-      libudev: install in $libdir and move later to $rootlibdir
-      extras/keymap: use LIBEXECDIR instead /lib/udev
-      README: add /lib/udev/ is private
-      rules: do not install usb-id/pci-id rules when --disable-extras is used
-      extras: delete man pages for private udev tools
-      README: update
-      extras/keymap: install findkeyboards in /lib/udev
-      INSTALL: use /sbin instead of %{sbindir}
-      NEWS: update
-      udev.pc: add
-      Merge branch 'master' of git+ssh://master.kernel.org/pub/scm/linux/hotplug/udev
-      docs: install writing_udev_rules
-
-Lennart Poettering (2):
-      rules: sound - move from udev-extra
-      usb-db: move from udev-extras
-
-Marcel Holtmann (1):
-      rules: make RFKILL control device world readable
-
-Mario Limonciello (1):
-      hid2hci: move from udev-extras
-
-Martin Pitt (5):
-      keymap: move from udev-extras
-      extras/keymap: Fix WLAN button on ThinkPads
-      keymap: Update findkeyboard path in docs
-      udev-acl: Manage hplip device permissions
-      extras/keymap: Update findkeyboards location
-
-Matthias Schwarzott (3):
-      rules: Gentoo update
-      rules: Gentoo update
-      rules: Gentoo update
-
-Scott James Remnant (1):
-      OWNER/GROUP: fix if logic
-
-
-Summary of changes from v141 to v142
-============================================
-
-Andre Przywara (1):
-      rules: create /dev/cpu/<n>/cpuid world readable
-
-Ian Campbell (1):
-      path_id: support identification of Xen virtual block devices
-
-John Wright (1):
-      edd_id: add cciss devices
-
-Kay Sievers (46):
-      version bump
-      libudev: path_encode - always return 0 if encoded string does not fit into size
-      libudev: monitor - clarify socket handling documentation
-      udevd: log error for too old kernels or CONFIG_SYSFS_DEPRECATED
-      rules: remove DVB shell script
-      update NEWS
-      cdrom_id: add Xen cdrom support
-      test-libudev: update monitor source
-      TODO: add packet filter
-      update NEWS
-      cdrom_id: add and use ID_CDROM_MEDIA to decide if we run vol_id
-      libudev: monitor - add client socket filter for subsystem value
-      udevadm: monitor - print error if we can not bind to socket
-      update TODO
-      udevadm monitor - add --subsystem-match=
-      libudev: monitor - use simpler hash
-      libudev: monitor - switch to filter_add_match_subsystem_devtype()
-      libudev: monitor - do not filter messages with wrong magic
-      udevadm: monitor - add <subsytem>:<devtype> support
-      libudev: monitor - add udev_monitor_filter_remove
-      libudev: queue - fix get_seqnum_is_finished()
-      cdrom_id: skip media tests if CDROM_DRIVE_STATUS != CDS_DISC_OK
-      libudev: queue - clarify comments
-      libudev: monitor - export filter_update()
-      update NEWS
-      drop "extern" keyword from non-static function
-      rule_generator: net - fix usb comment generation
-      rules: input - add links for USB/platform non-kbd/mouse devices
-      rules: input - fix comments
-      rules: add rfcomm* to group dialout
-      accept DEVNAME from the kernel as a hint for the node name
-      update TODO
-      build: use AC_MSG_RESULT
-      rules: add "event*" match
-      udevd: revert initial device node creation
-      rules: remove initramfs comment
-      handle devtmpfs nodes
-      oops, removed ppp entry from rules got committed
-      remove all PHYSDEVPATH handling and warning about
-      remove asmlinkage
-      rules: fix ieee1394 rules
-      add "static" back to the inline functions
-      update TODO
-      delete vol_id and require util-linux-ng's blkid
-      delete libvolume_id
-
-Lubomir Rintel (1):
-      rule-generator: net - whitelist NICs that violate MAC local scheme
-
-
-Summary of changes from v140 to v141
-============================================
-
-Adam Buchbinder (4):
-      usb_id: add manpage
-      cdrom_id: update manpage
-      create_floppy_devices: expand manpage
-      vol_id: fix language in manpage
-
-Alan Jenkins (1):
-      avoid leaking netlink socket fd to external programs
-
-Borislav Petkov (1):
-      rules: rename ide-floppy to ide-gd
-
-David Brownell (1):
-      rules: exclude mtd* from persistent disk links
-
-Kay Sievers (15):
-      rules: fix extra quote in 50-udev-default.rules
-      version bump
-      udevadm: test - handling trailing '/' in devpath
-      udevadm: monitor - clarify printed header
-      rules: remove ram* from persisten disk links blacklist
-      rules: serial - support ttyACM devices
-      rules: replace IDE driver with media match
-      usb_id: add ID_VENDOR_ID, ID_MODEL_ID, ID_USB_INTERFACE_NUM, ID_USB_DRIVER
-      libudev: GPL -> LGPL
-      usb_id: remove unused variable
-      send monitor events back to netlink socket
-      "UDEV_MONITOR_KERNEL/UDEV" -> "kernel/udev"
-      IMPORT: 2048 -> 4096 bytes buffer
-      path_encode: fix max length calculation
-      libudev: monitor - unify socket message handling
-
-Michal Soltys (1):
-      rules: md-raid.rules fix
-
-Robby Workman (1):
-      udevadm: trigger - add "--action" to --help
-
-Scott James Remnant (1):
-      libudev: monitor - ignore messages from unusual sources
-
-
-Summary of changes from v139 to v140
-============================================
-
-Harald Hoyer (1):
-      libvolume_id: bump age
-
-Kay Sievers (12):
-      version bump
-      update TODO
-      volume_id: ntfs - fix uuid setting
-      update TODO
-      rules: Fedora update
-      libudev: queue - use lstat() to check existence of symlink
-      udevadm: settle - add --seq-start= --seq-end=
-      udevd: switch watch symlinks to devpath
-      udevadm: add text for new options to command and man page
-      update TODO
-      libudev: ctrl - return error after sending ctrl message
-      udevadm: settle - use timeout signal, instead of loop counter
-
-Michael Prokop (1):
-      fix compile error in debug mode
-
-Scott James Remnant (1):
-      udevadm: settle - synchronise with the udev daemon
-
-
-Summary of changes from v138 to v139
-============================================
-
-Kay Sievers (11):
-      version bump
-      remove static local variable
-      use the event udev_device to disable the watch on "remove"
-      add "nowatch" to disable a default installed watch with a later rule
-      add m4/ subdir
-      use AC_USE_SYSTEM_EXTENSIONS instead of AC_GNU_SOURCE
-      usb_id: add ID_USB_INTERFACES=:0e0100:0e0200:010100:010200:
-      usb_id: return values if called directly for an usb_device
-      usb_id: fix NULL string usage
-      usb_id: fix comment
-      udevadm: info - export all devices with --export-db
-
-Scott James Remnant (10):
-      Don't add inotify watch until RUN rules processed.
-      Clear existing inotify watch before processing.
-      Cleanup a little.
-      Allow watch handle to be stored in the udevdb.
-      Store watch handle in db.
-      Use the udevdb to speed up watch clearing.
-      Put a log message in a more sensible place.
-      Output watch handle in udevadm info.
-      lookup the old watch handle; reload only if has a path
-      Look at more inotify events in the buffer than just the first.
-
-
-Summary of changes from v137 to v138
-============================================
-
-David Zeuthen (1):
-      *_id: add model/vendor enc strings
-
-Karel Zak (2):
-      vol_id: fix ddf version string
-      vol_id: add missing id->type to swap0
-
-Kay Sievers (13):
-      man: fix grammar
-      version bump
-      fix NAME="" logic
-      rules: dm - add escape for uuid links with whitespace
-      test: add test for empty and non-existent ATTR
-      rules: fix md "change"/"remove" handling
-      autogen.sh: add more warnings
-      fix NAME= and OPTION+="string_escape=..." logic
-      rules: move OPTIONS to separate rule
-      use global "reload_config" flag
-      rules: add "watch" option to dm and md rules
-      rules: include loop block devices in persistent links
-      release 138
-
-Matthias Schwarzott (1):
-      rules: Gentoo update
-
-Miklos Vajna (1):
-      doc: writing udev rules - refer to 'udevadm info' instead of 'udevinfo'
-
-Scott James Remnant (2):
-      udevd: optionally watch device nodes with inotify
-      rules: update persistent storage rules to use inotify watches
-
-
-Summary of changes from v136 to v137
-============================================
-
-Alan Jenkins (2):
-      man: typo fixes
-      remove stray initializer
-
-Kay Sievers (17):
-      version bump
-      rules: fix typo in ide cd rule
-      libudev: use 4096 bytes buffer for attribute reading
-      rules: add drm devices to group "video"
-      do not complain about a missing /etc/udev/rules.d/
-      udevadm: test - remove --force option
-      update NEWS
-      remove name from index if the node name has changed
-      cleanup old names before creating the new names
-      open-code pollfd setup
-      increase netif renaming timeout from 30 to 90 seconds
-      Merge commit '5f03ed8a56d308af72db8a48ab66ed68667af2c6'
-      Merge commit '9032f119f07ad3b5116b3d4858816d851d4127de'
-      split up long line
-      udevd: add back SA_RESTART
-      usb_id: handle ATAPI devices like SCSI devices
-      udevadm: settle - fix typo
-
-Lennart Poettering (1):
-      fix naming for tape nst devices in /dev/tape/by-path/
-
-Olaf Kirch (2):
-      udevd: use ppoll instead of signal pipes
-      reap children faster
-
-Scott James Remnant (2):
-      Allow user and group lookup to be disabled.
-      Expose delayed name resolution
-
-Sven Jost (1):
-      volume_id: support via raid version 2
-
-
-Summary of changes from v135 to v136
-============================================
-
-Adam Buchbinder (1):
-      extras: fix mis-spelling of "environment"
-
-Harald Hoyer (1):
-      rule_generator: fix enumeration for write_cd_rules
-
-Jeremy Higdon (1):
-      path_id: rework SAS persistent names
-
-Karel Zak (1):
-      volume_id: HPFS code clean up
-
-Kay Sievers (54):
-      rules: ATA_COMPAT do not try to match on sr*, it will never have vendor ATA
-      scsi_id: do not fail if no serial is found like for optical drives
-      update configure and NEWS
-      rules: fix isdn rules
-      rules: add persistent /dev/serial/{by-id,by-path} rules
-      make: install serial rules file
-      make: do not delete autotools generated file with distclean
-      udevadm: settle - allow --timeout=0 and --quiet
-      rules: move aoe rules to default rules file
-      volume_id: btrfs - update format
-      rules: add "do not edit header"
-      volume_id: support sub-uuid's and plug in btrfs device uuid
-      libudev: include <sys/types.h>
-      build: add -lsepol
-      build: just use autoreconf -i
-      rules: remove ide-scsi
-      rules: first simple step merging with Ubuntu rules
-      "'/sbin/modprobe abnormal' exit" - also print program options
-      rules: more changes toward Ubuntu rules merge
-      rules: more changes toward Ubuntu rules merge
-      rules: remove /dev/raw/raxctl symlink, it's a devfs leftover
-      rules: rtc - create rtc compat link only for cmos type rtc
-      rules: remove legacy symlinks
-      rules: do not put raw1394 in "video" group
-      rules: second round merging with Ubuntu rules
-      rules: remove /dev/dsp /dev/audio
-      rules: put alsa in group "audio"
-      rules: isdn - remove /dev/isdn/capi20 symlink
-      rules: provide /dev/raw/rawctl
-      if needed, store database entries also for devices which do not have a device node
-      build: use autoreconf --symlink
-      usb_id: add "image" class
-      require non-SYSFS_DEPRECATED 2.6.20+ kernel
-      build: default to --prefix=/usr --exec-prefix=""
-      libudev: enumerate - add lookup by property
-      rules: input - make sure needed variables are set
-      libudev: device - read "uevent" only if info is not already loaded
-      libudev: subsytem -> subsystem
-      libudev: bump revision
-      usb_id: use devtype lookup
-      require 2.6.22+ kernel
-      rules: Ubuntu merge - use group "cdrom"
-      rules: Ubuntu merge - use group "tape"
-      rules: replace DVB shell script rule
-      rules: Ubuntu merge - s/uucp/dialout/
-      update NEWS
-      update NEWS
-      enable skipping of "naming-only" rules
-      usb_id: s/image/media/
-      udevadm: s/udevinfo/udevadm info/
-      rules: reorder block rules
-      rules: zaptel - add "dialout" group
-      libudev: device - add udev_device_get_property_value()
-      libudev: test - add udev_device_get_property_value()
-
-Marcel Holtmann (3):
-      libudev: device - add devtype support
-      libudev: device - lookup subsystem and devtype together
-      libudev: device - remove udev_device_get_parent_with_subsystem
-
-Michal Soltys (1):
-      man: udev - update NAME assignment
-
-Ryan Thomas (1):
-      rules: add rules for AoE devices
-
-
-Summary of changes from v134 to v135
-============================================
-
-Kay Sievers (6):
-      usb_id: add "break" to currently unused case labels
-      rules: fix cciss disk/by-id/ links
-      rules: add infiniband rules
-      rules: infiniband.rules -> 40-infiniband.rules
-      fix network interface name swapping
-      update configure and NEWS
-
-Marcel Holtmann (1):
-      usb_id: fix switch statement for video type
-
-Piter PUNK (2):
-      rules: /dev/null -> X0R
-      rules: add usb device nodes
-
-
-Summary of changes from v133 to v134
-============================================
-
-Gabor Z. Papp (1):
-      include errno.h in sysdeps.h
-
-Harald Hoyer (1):
-      rules: add persistent rules for memory stick block devices
-
-Kay Sievers (19):
-      autogen.sh: fix -print-multi-os-directory usage
-      volume_id: update btrfs magic
-      bump version
-      rules: merge group "video" into default rules
-      rules: v4l - add by-id/ links for USB devices
-      libudev: accept NULL whitelist in util_replace_chars()
-      usb_id: replace chars in returned strings
-      ata_id: make sure, we do not have slashes in values
-      scsi_id: make sure, we do not have slashes in values
-      volume_id: remove unused usage types
-      vol_id: if regular files are probed, use stat() for the size value
-      volume_id: update btrfs
-      volume_id: clear probing result before probing and do not probe a second time, if not needed
-      path_id: fix fibre channel handling
-      update NEWS TODO
-      floppy: use ARRAY_SIZE()
-      fix handling of swapping node name with symlink name
-      silence PHYSDEV* warning for WAIT_FOR* rules
-      rules: exclude "btibm" devices from vol_id calls
-
-Matthias Schwarzott (1):
-      rules: Gentoo update
-
-Peter Breitenlohner (2):
-      man: fix typos
-      floppy: fix array bounds check and minor calculation
-
-
-Summary of changes from v132 to v133
-============================================
-
-Alan Jenkins (2):
-      udevd: de-duplicate strings in rules
-      scsi_id: we don't use DEVPATH env var anymore, update man page
-
-Karel Zak (1):
-      volume_id: fat - move check for msdos signature (0x55 0xaa)
-
-Kay Sievers (22):
-      silence "comparison between signed and unsigned"
-      string index - split nodes and childs to allow and unlimited number of childs
-      reserve child slot 0
-      merge trie nodes, childs and root into a single array
-      set errno = ENOSYS in inotify stub
-      udevadm: info - unify -V and --version
-      rules: remove DEVTYPE disk/partition
-      rules: remove pnp shell script, acpi loads these modules properly
-      update NEWS
-      configure: add linux-hotplug mail address
-      remove len == 0 check, the index root is always '\0'
-      volume_id: bump revision
-      volume_id: always check for all filesystem types and skip conflicting results
-      volume_id: fat - accept empty FAT32 fsinfo signature
-      fix spelling in comment
-      volume_id: ntfs - mark as no other fs must match
-      vol_id: clarify error message
-      libudev: device - handle disk "device" link for partitions in deprecated sysfs layout
-      limit $attr(<symlink>) magic to well-known links only
-      udevd: fix cleanup of /dev/.udev/uevent_seqnum
-      fix $links substitution for devices without any link
-      update NEWS
-
-Sergey Vlasov (1):
-      udevadm: fix option parsing breakage with klibc
-
-
-Summary of changes from v131 to v132
-============================================
-
-Kay Sievers (2):
-      fix size_t compiler warning on 32 bit platforms
-      convert debug string arrays to functions
-
-
-Summary of changes from v130 to v131
-============================================
-
-Alan Jenkins (17):
-      libudev: fix sysnum logic for digit-only device names
-      udevd: avoid overhead of calling rmdir on non-empty directories
-      use more appropriate alternatives to malloc()
-      libudev: util - optimize path_encode()
-      libudev: allocate udev_device->envp[] dynamically
-      replace strncpy() with strlcpy()
-      use re-entrant variants of getpwnam and getgrnam
-      udevd: fix memory leak
-      udevd: fix WAIT_FOR_SYSFS execution order
-      fix handling of string_escape option
-      udevd: use a tighter loop for compare_devpath()
-      udevd: avoid implicit memset in match_attr()
-      kerneldoc comment fixes
-      udevd: simplify rules execution loop
-      udevd: fix termination of rule execution
-      udevd: be more careful when matching against parents
-      udevd: shrink struct token to 12 bytes
-
-Kay Sievers (113):
-      remove outdated docs/README-gcov_for_udev
-      libudev: device - add device lookup by subsystem:sysname
-      libudev: also prefix non-exported functions with udev_*
-      libudev: add udev_monitor_send_device()
-      libudev: list - add flag
-      libudev: device - generate DEVNAME and DEVLINKS properties
-      vol_id: update README
-      libudev: handle ! in sysname, add sysnum, return allocated list_entry on add
-      delete simple-build-check.sh
-      test: move global ENV{ENV_KEY_TEST}="test" to local rule
-      libudev: monitor - fix send_device() property copying
-      libudev: device - add get_envp() to construct envp from property list
-      libudev: do not include ctrl in libudev.so
-      libudev: monitor - do not mangle DEVLINKS property
-      libudev: update DEVLINKS property when properties are read
-      libudev: device - lookup "subsystem" and "driver" only once
-      libudev: device - export properties when values are set
-      libudev: list - handle update of key with NULL value
-      libudev: ctrl - fix typo in set_env()
-      libudev: add global property list
-      libudev: device - copy global properties, unset empty properties
-      volume_id: btrfs - update magic to latest disk format
-      udevd: use libudev
-      move udev_device_db to libudev
-      rename udev source files
-      libudev: always add UDEV_LOG
-      libudev: monitor - export MAJOR/MINOR only if available
-      udev-node: name_list -> udev_list
-      udev-rules-parse: name_list -> udev_list
-      delete name_list, move common file functions
-      fix sorting of rules files
-      run_program: prevent empty last argv entry
-      update IMPORT= file/stdout property parsing
-      update rules file parsing
-      delete udev-util-file.c
-      libudev: list - prepend udev_* to all functions
-      libudev: add sysnum to test program
-      test: fix a few unintentially wrongly written rules which cause parse errors
-      libudev: monitor - add set_receive_buffer_size()
-      libudev: ctrl - change magic to integer
-      libudev: make list_node functions available
-      udevd: use udev_list_node
-      collect: use udev_list
-      delete list.h
-      merge udev-rules.c and udev-rules-parse.c
-      make struct udev_rules opaque
-      move run_program to util
-      udev_event_run() -> udev_event_execute_rules()
-      udev_rules_run() -> udev_event_execute_run();
-      move udev_rules_apply_format() to udev-event.c
-      udev_list_cleanup() -> udev_list_cleanup_entries()
-      selinux_init(udev) -> udev_selinux_init(udev)
-      prefix udev-util.c functions with util_*
-      pass make distcheck
-      libudev: device - get_attr_value() -> get_sysattr_value()
-      cdrom_id: remove ARRAY_SIZE() declaration
-      replace missing get_attr_value() -> get_sysattr_value()
-      add "root" == 0 shortcuts to lookup_user/group()
-      do not use the new work-in-progress parser rule matcher
-      libudev: device - 128 -> ENVP_SIZE
-      add util_resolve_subsys_kernel()
-      handle numerical owner/group string in lookup_user/group()
-      replace in-memory rules array with match/action token list
-      do not create temporary node ($tempnode) if node already exists
-      shrink struct udev_event
-      shrink struct udev_event
-      rule_generator: fix netif NAME= value extraction regex
-      skip SYMLINK rules for devices without a device node
-      rules: let empty strings added to buffer always return offset 0
-      fix uninitialized variable warnings
-      cache uid/gid during rule parsing
-      distinguish "match" from "assign" by (op < OP_MATCH_MAX)
-      determine at rule parse time if we need to call fnmatch()
-      special-case "?*" match to skip fnmatch()
-      libudev: monitor - replace far too expensive snprintf() with strlcpy()
-      libudev: monitor - cache result of monitor send buffer
-      fix "unused" warnings
-      remove debug printf
-      match KEY="A|B" without temporary string copy
-      match_attr() - copy attr value only when needed
-      do not init string arrays, just clear first byte
-      fix $attr{[<subsystem>/<sysname>]<attribute>} substitution
-      libudev: device - fill envp array while composing monitor buffer
-      test: add RUN+="socket: ..." to a test to run monitor code
-      libudev: device - allocate envp array only once
-      update NEWS
-      udevd: merge exec and run queue to minimize devpath string compares
-      ATTR{}== always fails if the attribute does not exist
-      rules: remove SCSI timeouts
-      rules: remove "add" match from usb device node rule
-      edd_id: add "change" event match
-      fstab_import: add "change" event match
-      write trace log to stderr
-      log rules file and line number when NAME, SYMLINK, OWNER, GROUP, MODE, RUN is applied
-      skip entire rule containing device naming keys, if no device can be named
-      fix udev_node_update_old_links() logic
-      move some info() to dbg()
-      add "devel" and "install" switches to autogen.sh
-      move debugging strings inside #ifdef DEBUG
-      firmware.sh: record missing files in /dev/.udev/firmware-missing/
-      fix list handling in enumerate and rules file sorting
-      volume_id: btrfs update
-      info() PROGRAM and IMPORT execution
-      fix $links substitution
-      fix cleanup of possible left-over symlinks
-      do not import the "uevent" file when we only read the db to get old symlinks
-      usb_id: MassStorage SubClass 6 is "scsi" not "disk"
-      unify string replacement
-      $links should be relative
-      fix indentation
-      rules: md - add mdadm 3 device naming
-      cleanup /dev/.udev/queue on startup and exit
-      udevadm: settle - exit if udevd exits
-
-Matthias Koenig (1):
-      volume_id: swap - larger PAGE_SIZE support
-
-Steven Whitehouse (1):
-      volume_id: support for GFS2 UUIDs
-
-
-Summary of changes from v129 to v130
-============================================
-
-Kay Sievers (26):
-      fix compile error with --disable-logging
-      libudev: enumerate - add_device() -> add_syspath()
-      volume_id: hpfs - read label and uuid
-      use no_argument, required_argument, optional_argument in longopts
-      libudev: get rid of selinux
-      libudev: device - add get_parent_with_subsystem()
-      usb_id: use libudev
-      udevadm: info - fix --query=all for devices without a device node
-      vol_id: add size= option
-      move selinux noops to udev.h
-      volume_id: add dbg() as noop to check for compile errors
-      vol_id: fix logging glue
-      vol_id: always use the safe string versions for unencoded label and uuid
-      volume_id: better DDF raid detection
-      volume_id: add btrfs
-      volume_id: use PRIu64i, PRIx64 macros
-      udevd: clarify deprecated sysfs layout warning
-      libudev: fix --enable-debug
-      don not print error if GOTO jumps just to next rule
-      volume_id: add more vfat debugging information
-      libudev: libudev.pc remove selinux
-      store node name and symlinks into db symlink target if they are small enough
-      volume_id: more fat debugging
-      libudev: fix typo in "multiple entries in symlink" handling
-      connect /sys and /dev with /sys/dev/{block,char}/<maj>:<min> and /dev/{block,char}/<maj>:<min>
-      replace spaces in dm and md name symlinks
-
-
-Summary of changes from v128 to v129
-============================================
-
-Alan Jenkins (7):
-      udev-test.pl: set non-zero exitcode if tests fail
-      scsi_id: compiler warning on 32-bit
-      trivial cleanup in udev_rules_iter
-      avoid repeated scans for goto targets (udev_iter_find_label)
-      replace strerror() usage with threadsafe "%m" format string
-      fix messages (inc. debug compile failure) introduced when optimizing "goto"
-      allow compiler to check dbg() arguments on non-debug builds
-
-Kay Sievers (46):
-      libudev: switch to "udev_device_get_parent"
-      libudev: udev_device - add attribute cache
-      libudev: handle "device" link as parent, handle "class" "block" as "subsystem"
-      udevadm: info - fix lookup-by-name
-      libudev: switch API from devpath to syspath
-      libudev: rename ctrl_msg to ctrl_msg_wire
-      vol_id: fix lib logging glue
-      fix broken symlink resolving
-      fix udevadm trigger
-      libudev: pass udev_device in enumerate
-      libudev: fix "subsystem" value
-      always include config.h from Makefile
-      libudev: udev_device_get_devname -> udev_device_get_devnode
-      libudev: add udev_device_new_from_devnum()
-      libudev: also import "uevent" file when reading udev database
-      libudev: add userdata pointer
-      libudev: replace awkward callback list interfaces with list iterators
-      libudev: get devnum from uevent file
-      libudev: enumerate_get_devices_list -> enumerate_get_list
-      libudev: initialize selinux only when needed
-      libudev: device - read database only when needed
-      libudev: rework list handling
-      libudev: more list rework
-      lubudev: accept more sys directories as devices, and parent devices
-      libudev: enumerate - accept list of subsystems to scan, or skip
-      libudev: enumerate "subsystem"
-      libudev: enumerate - scan /sys/block/ if needed
-      libudev: enumerate - split new() and scan()
-      test: replace ancient sysfs tree with recent one
-      test: add missing pci directory because of .gitignore *.7
-      gitignore: move *.8 to subdirs
-      test: replace last reference of "/class/*" devpath
-      fix dbg() callers
-      libudev: enumerate - scan devices and subsystems, add subsystem and attribute filter
-      udevadm: trigger: use libudev
-      fix segfault caused by wrong pointer used in dbg()
-      libudev: device_init() -> device_new()
-      udevadm: trigger fix long option --type=
-      libudev: add queue interface
-      udevadm: settle - use libudev queue
-      libudev: device - handle /sys/block/<disk-device-link>/<partition>
-      libudev: enumerate - ignore regular files while scanning
-      udevadm: trigger --type=failed - use libudev queue
-      rules: ieee1394 - create both, by-id/scsi-* and by-id/ieee-* links
-      build: include Makefile.am.inc in all Makefile.am
-      udevd: print warning if CONFIG_SYSFS_DEPRECATED is used
-
-
-Summary of changes from v127 to v128
-============================================
-
-Alan Jenkins (8):
-      fix uninitialized name_list error::ignore_error
-      do not needlessly declare some local variables in udev_rules_parse.c as static
-      remove deprecated envp[] in main()
-      fix name compare bug name_list_key_add()
-      remove redundant string copy in udev_rules_apply_format()
-      remove redundant "remove trailing newlines" in udevadm info
-      threadsafe rules iteration
-      fix off-by-one in pass_env_to_socket()
-
-Kay Sievers (53):
-      libudev: add monitor documentation
-      libudev: fix --disable-log
-      autogen.sh: add --with-selinux
-      volume_id: hfs - calculate proper uuid
-      fix dangling pointer returned by attr_get_by_subsys_id()
-      udev-test.pl: add --valgrind option
-      libudev: libudev.pc add Libs.private
-      volume_id: fail on undefined __BYTE_ORDER
-      remove FAQ
-      libudev: fix monitor documentation
-      libudev: add udev_device_get_syspath()
-      udev_device_init() remove statically allocated device support
-      udevadm: info - fix broken --device-id-of-file=
-      udevadm: control - use getopt_long()
-      udevadm: print warning to stderr if udevadm is called by symlink
-      udev-test.pl: remove left-over comment from --valgrind option
-      udevadm: rename source files
-      udevadm: rename internal functions to udevadm_*
-      udevadm: split out control functions
-      udevadm: move init from commands to udevadm
-      autogen.sh: add debug
-      use libudev code, unify logging, pass udev context around everywhere
-      volume_id: linux_raid - fix logic for volumes with size == 0
-      vol_id: add --debug option
-      udevadm: add --version --help options to man page, hide them as commands
-      move udev_ctrl to libudev-private
-      udev-test.pl: set udev_log="err"
-      test-udev: cleanup libudev context and overridden rules file string
-      test-udev: remove unused var
-      add a bunch of private device properties to udev_device
-      udevadm: monitor - use libudev for udev monitor
-      libudev: monitor - add event properties to udev_device
-      udevadm: log message if udevadm link is used
-      udevd: remove max_childs_running logic
-      libudev: monitor- add netlink uevent support
-      udevadm: monitor - use libudev code to retrieve device data
-      libudev: udev_device - read "driver" value
-      libudev: rename enumerate function
-      libudev: add selinux
-      libudev: initialize selinux after logging
-      volume_id: merge util.h in libvolume_id-private.h
-      update file headers
-      libudev: udev_device - add more properties
-      libudev: do not use udev_db.c
-      libudev: get rid of udev_sysfs.c
-      libudev: get rid of udev_utils.c
-      libudev: rename libudev-utils.c libudev-util.c
-      libudev: do not use any udev source file
-      extras: use libudev code
-      convert to libudev and delete udev_utils_string.c
-      get rid of udev_sysdeps.c
-      use size definitions from libudev
-      udevadm: info - use "udev_device"
-
-
-Summary of changes from v126 to v127
-============================================
-
-Karel Zak (2):
-      build-sys: don't duplicate file names
-      build-sys: remove non-POSIX variable names
-
-Kay Sievers (26):
-      add inotify dummy definitions if inotify is not available
-      build: remove autopoint check
-      udevadm: trigger - add missing attr filter to synthesized "subsystem" register events
-      ignore duplicated rules file names
-      fix .gitignore
-      rules: delete all distro rules which do not use default rules
-      rules: add nvram
-      rules: add isdn rules
-      rules: Gentoo update
-      add missing includes
-      add some warnings
-      update .gitignore
-      add missing 'v' for "make changelog"
-      build: fix "make dist"
-      vol_id: make the --offset= argument optional
-      rules: optical drives - probe at last session offset, do not probe for raid
-      libudev: add library to access udev information
-      libudev: split source files
-      update INSTALL
-      libudev: add udev event monitor API
-      volume_id: remove deprecated functions and bump major version
-      volume_id: remove left-over fd close()
-      split udev_device.c to leave out rules handling from libudev
-      libudev: link against selinux if needed
-      firmware.sh: lookup lookup kernel provided firmware directory
-      libudev: require LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE
-
-Michal Soltys (1):
-      rules: fix md rules for partitioned devices
-
-
-Summary of changes from v125 to v126
-============================================
-
-Kay Sievers (9):
-      delete all Makefiles and move udev source to udev/
-      use autotools
-      rules: mode 0660 for group "disk"
-      rules: update Fedora rules
-      update ChangeLog
-      INSTALL: --enable-selinux not --with-selinux
-      volume_id: move static lib to $prefix
-      volume_id: create relative links
-      rules: run vol_id on opticals only if media is found
-
-Marco d'Itri (1):
-      rules: Debian update
-
-Thomas Koeller (1):
-      use proper directory lib/lib64 for libvolume_id
-
-
-Summary of changes from v124 to v125
-============================================
-
-John Huttley (1):
-      rules: tape rules - add nst to usb and 1394 links
-
-Karl O. Pinc (1):
-      man: clarify $attr{} parent searching
-
-Kay Sievers (14):
-      collect: fix size_t printf
-      path_id: suppress trailing '-' like 'ID_PATH=pci-0000:05:01.0-'
-      rules: add v4l persistent links
-      docs: update some docs and delete outdated stuff
-      scsi_id: fix fallback to sg v3 for sg nodes
-      rules: fix cciss rules for partition numbers > 9
-      udev.conf: udevcontrol -> udevadm control
-      rules: use consistently OPTIONS+=
-      scsi_id: the fallback fix broke error handling
-      man: rebuild from xml
-      do not touch node ownership and permissions, if already correct
-      rules: tape rules - add nst to by-path/ links
-      udevadm: info - add --export format to --device-id-of-file=
-      move default rules from /etc/udev/rules.d/ to /lib/udev/rules.d/
-
-Marco d'Itri (7):
-      rules_generator: net rules - do not print error if file is missing and ignore commented rules
-      man: add link_priority default value
-      scsi_id: man page fix
-      udevadm: settle - add verbose output when running into timeout
-      rules: Debian update
-      rules: Debian update
-      ignore rule with GOTO to a non-existent label
-
-Thomas Koeller (1):
-      scsi_id: include sys/stat.h
-
-Tobias Klauser (1):
-      collect: check realloc return value
-
-
-Summary of changes from v123 to v124
-============================================
-
-Kay Sievers (1):
-      cdrom_id: fix recognition of blank media
-
-
-Summary of changes from v122 to v123
-============================================
-
-Erik van Konijnenburg (3):
-      add substitution in MODE= field
-      Makefile: use udevdir in "make install"
-      volume_id: support for oracleasm
-
-Harald Hoyer (1):
-      scsi_id: retry open() on -EBUSY
-
-Karel Zak (2):
-      volume_id: remove unnecessary global variable
-      volume_id: enable GFS probing code, add LABEL support
-
-Kay Sievers (5):
-      edd_id: call it only for sd* and hd*
-      rename WAIT_FOR_SYSFS to WAIT_FOR and accept an absolute path
-      rules: tape rules - use bsg device nodes for SG_IO
-      rules: persistent net - handle "locally administered" ibmveth MAC addresses
-      cdrom_id: export ID_CDROM_MEDIA_TRACK_COUNT_AUDIO=, ID_CDROM_MEDIA_TRACK_COUNT_DATA=
-
-Michal Soltys (1):
-      man: add NAME== match entry
-
-Xinwei Hu (2):
-      collect: realloc buffer, if needed
-      udevd: export .udev/queue/$seqnum before .udev/uevent_seqnum
-
-
-Summary of changes from v121 to v122
-============================================
-
-Hannes Reinecke (2):
-      scsi_id: remove all sysfs dependencies
-      scsi_id: add SGv4 support
-
-Karel Zak (1):
-      volume_id: clean up linux_raid code
-
-Kay Sievers (8):
-      scsi_id:  update man page
-      scsi_id: remove bus_id option
-      scsi_id: add --sg-version= option
-      rules: adapt to new scsi_id
-      rules: adapt tape rules to new scsi_id
-      scsi_id: add bsg.h
-      volume_id: bump version
-      Makefile: do not create udevcontrol, udevtrigger symlinks
-
-MUNEDA Takahiro (2):
-      man: udevd- fix udev(8) reference
-      man: scsi_id
-
-Matthias Schwarzott (1):
-      cdrom_id: fix segfault
-
-
-Summary of changes from v120 to v121
-============================================
-
-Damjan Georgievski (1):
-      libvolume_id: recognize swap partitions with a tuxonice hibernate image
-
-Daniel Drake (1):
-      writing udev rules: fix rule typos
-
-David Woodhouse (1):
-      rules_generator: net rules - add "dev_id" value to generated rules
-
-Harald Hoyer (1):
-      selinux: more context settings
-
-Kay Sievers (21):
-      udevinfo: do not replace chars when printing ATTR== matches
-      vol_id: add --offset option
-      cdrom_id: replace with version which also exports media properties
-      udevd: at startup write message including version number to kernel log
-      rules_generator: net rules - always add KERNEL== match to generated rules
-      selinux: fix missing includes
-      allow setting of MODE="0000"
-      path_id: remove subsystem whitelist
-      logging: add trailing newline to all strings
-      scsi_id: initialize serial strings
-      persistent device naming: also read unpartitioned media
-      cdrom_id: add more help text
-      add $links substitution
-      fstab_import: add program to IMPORT matching fstab entry
-      add OPTIONS+="event_timeout=<seconds>"
-      write "event_timeout" to db
-      udevadm: trigger - add --env= option
-      udevadm: control - fix --env key to accept --env=<KEY>=<value>
-      udevadm: info - do not print ATTR{dev}==
-      persistent device naming: update tape rules
-      rules: update md rules
-
-
-Summary of changes from v119 to v120
-============================================
-
-Kay Sievers (9):
-      test: remove duplicated EXTRA entry
-      rules: remove last WAIT_FOR_SYSFS, load ppdev, switch scsi_device
-      udevadm: trigger - option to synthesize events and pass them to a socket
-      udevadm: info - resolve devpath if symlink is given
-      udevadm: remove old man page links and compat links for debugging tools
-      udevadm: trigger - fix broken socket option check
-      udevadm: trigger - fix --socket== + --verbose
-      also accept real socket files for RUN+="socket:<path>"
-      persistent device naming: cleanup storage rules
-
-Michael Kralka (1):
-      udevd: serialize events if they refer to the same major:minor number
-
-
-Summary of changes from v118 to v119
-============================================
-
-Anthony L. Awtrey (1):
-      do not skip RUN execution if device node removal fails
-
-Harald Hoyer (2):
-      rules: Fedora update
-      rules: do not set GROUP="disk" for scanners
-
-Jiri Slaby (1):
-      rules_generator: add missing write_net_rules unlock
-
-Karel Zak (2):
-      volume_id: fix UUID raw buffer usage
-      volume_id: fix typo in function documentation
-
-Kay Sievers (10):
-      switch mailing lists to linux-hotplug@vger.kernel.org
-      rules: remove tty rule which can never run because of an earlier "last_rule"
-      volume_id: update ext detection
-      selinux: set context for real file name not the temp name
-      hack to allow ATTR{block/*/uevent}="change"
-      rules_generator: add KERNEL=="<netifname>*" to generated rules
-      persistent device naming: also run on "change" event
-      test: add "subsystem" links to all devices
-      sysfs: depend on "subsystem" link
-      extend hack to allow TEST=="*/start"
-
-Matthias Schwarzott (1):
-      volume_id: respect LDFLAGS
-
-Neil Williams (1):
-      volume_id: add prefix=, exec_prefix=
-
-Roy Marples (1):
-      Makefile: do not require GNU install
-
-
-Summary of changes from v117 to v118
-============================================
-
-Daniel Drake (1):
-      doc: update "writing udev rules"
-
-Hannes Reinecke (1):
-      volume_id: LVM - add uuid
-
-Kay Sievers (9):
-      remove udevstart
-      rules_generator: do not create rules with insufficient matches
-      man: udevadm settle - mention 180 seconds default timeout
-      libvolume_id: squashfs - add endianess support for LZMA compression
-      rules: add AOE rule
-      volume_id: md - add metadata minor version
-      volume_id: run only once into a timeout for unreadable devices
-      create_floppy_devices: fix logic for more than one floppy device
-      volume_id: also add readable check to probe_all()
-
-Matthias Schwarzott (1):
-      rules: Gentoo update
-
-Michael Prokop (1):
-      libvolume_id: squashfs+LZMA compression detection
-
-
-Summary of changes from v116 to v117
-============================================
-
-Dan Nicholson (2):
-      extras: ignore built and generated files
-      volume_id: create relative symlink when $(libdir) = $(usrlibdir)
-
-Kay Sievers (15):
-      usb_id: fail if vendor/product can not be retrieved
-      rules: SUSE update
-      firmware: do not print error if logger is missing
-      volume_id: vfat - allow all possible sector sizes
-      volume_id: LUKS - export version
-      volume_id: ntfs - rely on valid master file table
-      volume_id: bump version
-      udevinfo: exclude "uevent" file from --attribute-walk
-      udevadm: merge all udev tools into a single binary
-      udevadm: accept command as option, like --help, --version
-      udevadm: add info option --device-id-of-file=<file>
-      Makefile: fix bogus version number than got committed
-      udevadm: also return major==0 results for --device-id-of-file
-      man: udevd.8 - remove udevcontrol section
-      udevadm: control - allow command to be passed as option
-
-MUNEDA Takahiro (1):
-      man: fix udevadm.8 typo
-
-Matthias Schwarzott (2):
-      firmware: remove hardcoded path to logger
-      rules: Gentoo update
-
-VMiklos (1):
-      rules: Frugalware update
-
-
-Summary of changes from v115 to v116
-============================================
-
-Bryan Kadzban (1):
-      rules: fix typos
-
-Harald Hoyer (3):
-      check line length after comment check and whitespace strip
-      only install *.rules
-      remove extra space from udevinfo symlink output
-
-Kay Sievers (29):
-      rules: fix two trivial typos
-      rules: random and urandom are 0666
-      rules: add REMOVE_CMD rule
-      track "move" events to rename database and failed files
-      rules: Gentoo update
-      rules: add i2o driver rule
-      man: recreate man pages
-      volume_id: fix linux_raid metadata version 1.0 detection
-      add $name substitution
-      do not delete the device node with ignore_remove, but handle the event
-      print warning for invalid TEST operations
-      rules: do not delete /lib/udev/devices/ nodes on "remove"
-      rules: remove broken nvram group assignment without any permission
-      add /dev/rtc symlink if new rtc drivers are used
-      increase WAIT_FOR_SYSFS timeout to 10 seconds
-      rules: put bsd nodes in /dev/bsd/ directory
-      path_id: fix for stacked class devices
-      ignore device node names while restoring symlinks from the stack
-      use SEQNUM in /dev/.udev/queue/ instead of devpath
-      rules: add memstick module loading
-      udevinfo: simplify symlink printing logic
-      prevent wrong symlink creation if database disagress with current rules
-      fix wrong variable used in logged string
-      update README
-      rule_generator: move all policy from write_net_rules to the rules file
-      rules: call usb_id only for SUBSYSTEMS=="usb"
-      rules: split out and fix persistent tape rules
-      fix debug output string
-      rule_generator: always match netif type in generated rule
-
-Matthias Schwarzott (3):
-      rules: Gentoo update
-      rules: Gentoo update
-      rules: Gentoo update
-
-Michael Morony (1):
-      set buffer size if strlcpy/strlcat indicate truncation
-
-maximilian attems (1):
-      correct includes in udev_selinux.c
-
-
-Summary of changes from v114 to v115
-============================================
-
-Harald Hoyer (1):
-      rules: fix typo in 80-drivers.rules
-
-Kay Sievers (15):
-      rules: add default rules
-      rules: update SUSE rules
-      rules: add packages rules
-      rules: add ia64 rules
-      rules: move md-raid rules to packages dir
-      rules: run vol_id only for partitions
-      rules: update Fedora rules
-      edd_id: move persistent rules to its own file
-      accept relative path for TEST
-      rules: add iowarrior rule
-      volume_id: fix sqashfs detection
-      do not ignore dynamic rule if it is the last one in the list
-      rule_generator: fix wrong DRIVERS!= logic
-      rules: update Fedora
-      Makefile: install default rules
-
-Marco d'Itri (3):
-      rules_generator: remove policy from write_cd_rules
-      rules_generator: fix write_cd_rules when similar names exist in the root directory
-      rules: Debian update
-
-
-Summary of changes from v113 to v114
-============================================
-
-Hannes Reinecke (3):
-      collect: extra to synchronize actions across events
-      add $driver subtitution
-      rules_generator: add S/390 persistent network support
-
-Kay Sievers (24):
-      rules_generator: remove executable flag from include file
-      always unlink temporary file before creating new one
-      rules: SUSE update
-      volume_id: ext4 detection
-      udevtrigger: allow to specify action string
-      add option to RUN key to ignore the return value of the program
-      use global udev_log variable instead of parameter in run_program
-      add udev_rules_run() to handle RUN list
-      move udev_utils_run.c into udev_rules.c
-      rules: SUSE update
-      name_list: rename loop_name -> name_loop
-      handle dynamic rules created in /dev/.udev/rules.d/
-      allow SYMLINK== match
-      libvolume_id: use /usr/$libdir in pc file
-      Makefile: add --as-needed flag to ld
-      restore behavior of NAME==
-      rules_generator: remove "installation" function
-      udevtrigger: trigger "driver" events
-      rules: update SUSE
-      rules: Fedora update
-      rules: add "do not edit" comment
-      rules: Fedora update
-      rules_generator: skip random MAC addresses
-      write changed network interface names to the kernel log
-
-Matthias Schwarzott (3):
-      rules: Gentoo update
-      fix inotify to work not only once
-      rules: Gentoo update
-
-Richard Hughes (1):
-      Makefile: add "make dist" for nightly snapshots
-
-
-Summary of changes from v112 to v113
-============================================
-
-David Zeuthen (1):
-      vol_id: do not fail if unable to drop privileges
-
-Kay Sievers (12):
-      add missing ChangeLog
-      make ATTR{[$SUBSYSTEM/$KERNEL]<attr>}="<value>" working
-      rules: recognize partitions and disk devices properly
-      rules: SUSE update
-      atomically replace existing nodes and symlinks
-      do not try to create existing file
-      info() for ignore_remove
-      rules: SUSE update
-      Makefile: check for missing ChangeLog or RELEASE-NOTES at release
-      allow to disable the replacement of unusual characters
-      no newline in log messages
-      udevd: do not use syslog if --verbose (debugging) is used
-
-Tobias Klauser (1):
-      fix typo in udev_utils_run.c
-
-
-Summary of changes from v111 to v112
-============================================
-
-Fabio Massimo Di Nitto (1):
-      rules: ignore partitons that span the entire disk
-
-Hannes Reinecke (1):
-      cciss device support
-
-Kay Sievers (34):
-      udevd: close /proc/meminfo after reading
-      create_floppy_devices: remove dead "unlink" code
-      volume_id: add function documentation
-      udev_db: escape path names with \x00 instead of %00
-      udevsettle: use long options
-      replace_chars: replace spaces in node name
-      volume_id: add and export string encoding function
-      vol_id: export encoded strings
-      rules: use encoded strings instead of skipping characters
-      udevtest: print message before log output
-      volume_id: escape % character
-      replace_chars: replace % character
-      IMPORT: do not mangle whitespace
-      scsi_id: do not install symlink in /sbin
-      rules: SUSE update
-      volume_id: terminate overlong label strings
-      scsi_id: add long options
-      rules: use long options for scsi_id
-      path_id: skip subsystem directory
-      rules: fix cciss rule
-      rules: SUSE update
-      scsi_id: fix typo in help text
-      fix "do not access parent" warning for ATTR{}
-      sysfs: add device lookup by $SUBSYSYTEM:$KERNEL
-      events for "bus" and "class" registration must be matched as "subsystem"
-      udevtest: add --subsystem option
-      sysfs: change order of subsystem lookup
-      add $sys substitution
-      add TEST=="<file>" key
-      add "[$SUBSYSTEM/$KERNEL]<attribute>" lookup
-      sysfs: handle bus/class top-level directories
-      sysfs: skip unknown sysfs directories
-      rules: SUSE update
-      release 112
-
-Miklos Vajna (2):
-      create_floppy_devices: add man page
-      path_id: remove on make uninstall
-
-Ryan Lortie (1):
-      volume_id: support for long-filename based labels
-
-Scott James Remnant (2):
-      replace_untrusted_chars: replace all whitespace with space
-      run_program: log "info" not "error" if program is missing
-
-
-Summary of changes from v110 to v111
-============================================
-
-Kay Sievers (19):
-      rules: SUSE update
-      rules: Fedora update
-      volume_id: use md native uuid format
-      vol_id: use long options
-      volume_id: add volume_id_get_* functions
-      vol_id: use volume_id_get_*
-      udevd: use fgets() to read /proc files
-      volume_id: add internal UUID_STRING
-      volume_id: add DDF support
-      vol_id: README update
-      volume_id: rename UUID_64BIT_LE/BE
-      vol_id: add ID_FS_UUID_SAFE
-      rules: use ID_FS_UUID_SAFE
-      rules: SUSE update
-      volume_id: give access to list of all available probers
-      vol_id: use libvolume_id prober list for --probe-all
-      volume_id: add remaining names for prober lookup by type
-      rules: SUSE update
-      volume_id: vol_id depends on libvolume_id
-
-Matthias Schwarzott (2):
-      volume_id: fix Makefile for parallel make
-      rules: Gentoo update
-
-
-Summary of changes from v109 to v110
-============================================
-
-Harald Hoyer (1):
-      udevcontrol: allow to set global variables in udevd
-
-Kay Sievers (13):
-      remove eventrecorder.sh
-      update SUSE rules
-      volume_id: add md metadata 1.0, 1.1, 1.2 support
-      unset variable with ENV{VAR}=""
-      delete copies of default rules in SUSE rules
-      volume_id: ext - fix endianess in version number
-      rules: Fedora update
-      volume_id: old md metadata has only 32 bit for the uuid
-      volume_id: minix version 3 support
-      don't create $tempnode for devices without major
-      usb_id: add <devpath> to help text
-      ata_id: use getopt_long()
-      rules: SUSE update
-
-Matthias Schwarzott (3):
-      Makefile: respect CFLAGS/LDFLAGS
-      rules: Gentoo update
-      ata_id: don't log error for libata devices on older kernels
-
-
-Summary of changes from v108 to v109
-============================================
-
-Harald Hoyer (1):
-      create_floppy_devices: create nodes with correct selinux context
-
-Kay Sievers (11):
-      udevtest: export ACTION string if given as option
-      update SUSE rules
-      make ACTION!="add|change" working
-      udevtest: import uevent variables if possible
-      udevinfo: export all information stored in database
-      default rules: add libata compat links
-      create_path: don't fail if something else created the directory
-      udevd: fix serialization of events
-      path_id: remove broken example
-      libvolume_id: do not install static library
-      update SUSE rules
-
-Matthias Schwarzott (2):
-      update Gentoo rules
-      persistent device naming: add joystick links
-
-VMiklos (1):
-      path_id: add man page
-
-
-Summary of changes from v107 to v108
-============================================
-
-Kay Sievers (3):
-      udevinfo: relax check for the correct device if looked up by name
-      don't write to sysfs files during test run
-      finally remove the directory event-multiplexer crap
-
-Matthias Schwarzott (2):
-      write_cd_rules: set default link type to "by-id" for usb and ieee1394 devices
-      update Gentoo rules
-
-Pozsar Balazs (1):
-      udevsettle: read udev not kernel seqnum first
-
-
-Summary of changes from v106 to v107
-============================================
-
-Jean Tourrilhes (1):
-      udevtest: export UDEV_LOG if we changed it
-
-Kay Sievers (33):
-      man: add missing options to various man pages
-      man: fix typo
-      create_floppy_devices: apply specified mode without umask
-      man: spelling fixes
-      udevmonitor: add switch for kernel and udev events
-      default rules: wait for 0:0:0:0 scsi devices only
-      update Fedora rules
-      delete dasd_id, it moved to s390-tools
-      update Gentoo rules
-      encode db-file names, instead of just replacing '/'
-      update internal variables if we see $DEVPATH during IMPORT
-      increase /proc/stat buffer
-      maintain index over device-names to devpath relation
-      restore overwritten symlinks when the device goes away
-      store devpath with the usual leading slash
-      add link_priority to rule options, and store it in database
-      pick actual valid device in udev_db_lookup_name
-      cleanup already existing db-entries and db-index on device update
-      selinux: move selinux_exit() to the main programs
-      remove old error message
-      read list of devices from index, make index private to database
-      priority based symlink handling
-      volume_id: get rid of compiler warning
-      udevinfo: remove -d option
-      update %n on netif name change
-      if a node goes away, possibly restore a waiting symlink
-      update TODO
-      man: add "link_priority" option
-      update SUSE rules
-      udevtest: add --force mode
-      udevinfo: print link priority
-      usb_id: append target:lun to storage device serial
-      run_directory: add final warning before removal
-
-Marco d'Itri (1):
-      update Debian rules
-
-Matthias Schwarzott (2):
-      udevd: cleanup std{in,our,err} on startup
-      udevmonitor: fix swapped event switch descriptions
-
-
-Summary of changes from v105 to v106
-============================================
-
-A. Costa (1):
-      man: fix typos in scsi_id and udevd
-
-Andrey Borzenkov (2):
-      vol_id: add -L to print raw partition label
-      vol_id: document -L
-
-Jamie Wellnitz (1):
-      persistent device naming: tape devices and medium changers
-
-Kay Sievers (15):
-      exclude parent devices from DRIVER== match
-      volume_id: really fix endianess bug in linux_raid detection
-      release 105
-      man: correct udevinfo --export-db
-      path_id: append LUN to iSCSI path
-      create_floppy_devices: add option for owner/group
-      update example rules
-      apply format chars to ATTR before writing to sysfs
-      add (subsystem) to udevmonitor output
-      update DRIVER== changes
-      remove --version from the udevinfo man page
-      add test for an attribute which contains an operator char
-      man: add note about parent matching behavior
-      scsi_id: accept tabs in /etc/scsi_id.conf
-      remove dead rule in persistent tape rules
-
-Matthias Schwarzott (4):
-      correct typo in extras/scsi_id/scsi_id.conf
-      fix retry-loop in netif-rename code
-      add option --version to udevd
-      rule_generator: fix for creating rules on read-only filesystem
-
-Peter Breitenlohner (1):
-      fix INSTALL_PROGRAM vs. INSTALL_SCRIPT
-
-Sergey Vlasov (3):
-      udevd: init signal pipe before daemonizing
-      unlink old database file before creating a new one
-      fix %c $string substitution
-
-Theodoros V. Kalamatianos (1):
-      fix udev attribute names with a colon
-
-
-Summary of changes from v104 to v105
-============================================
-
-A. Costa (1):
-      man: fix typos in scsi_id and udevd
-
-Andrey Borzenkov (2):
-      vol_id: add -L to print raw partition label
-      vol_id: document -L
-
-Kay Sievers (2):
-      exclude parent devices from DRIVER== match
-      volume_id: really fix endianess bug in linux_raid detection
-
-Matthias Schwarzott (2):
-      correct typo in extras/scsi_id/scsi_id.conf
-      fix retry-loop in netif-rename code
-
-Peter Breitenlohner (1):
-      fix INSTALL_PROGRAM vs. INSTALL_SCRIPT
-
-Sergey Vlasov (3):
-      udevd: init signal pipe before daemonizing
-      unlink old database file before creating a new one
-      fix %c $string substitution
-
-
-Summary of changes from v103 to v104
-============================================
-
-Kay Sievers (12):
-      update Fedora rules
-      update example rules
-      update SUSE rules
-      update SUSE rules
-      volume_id: fix endianess bug in linux_raid detection
-      man: fix udevmonitor text
-      man: recreate from xml
-      rename config "filename" to "dir"
-      remove outdated documentation
-      rename "udev.c" to "test-udev.c" - it is only for testing
-      update Fedora rules
-      use git-archive instead of git-tar-tree
-
-Kazuhiro Inaoka (1):
-      inotify syscall definitions for M32R
-
-Marco d'Itri (2):
-      write_cd_rules: identity-based persistence
-      scsi_id: remove trailing garbage from ID_SERIAL_SHORT
-
-Russell Coker (1):
-      SELinux: label created symlink instead of node
-
-
-Summary of changes from v102 to v103
-============================================
-
-Kay Sievers:
-      persistent storage rules: skip gnbd devices
-      volume_id: add checksum check to via_raid
-      volume_id: add comment about hfs uuid conversion
-      update SUSE rules
-      update Fedora rules
-
-
-Summary of changes from v101 to v102
-============================================
-
-Daniel Drake:
-      writing_udev_rules: fix typo in example rule
-
-Kay Sievers:
-      create missing ChangeLog for version 101
-      update SUSE rules
-      update default rules
-      first try "subsystem" link at a parent device, before guessing
-      if /sys/subsystem exists, skip class, bus, block scanning
-      scsi_id: export ID_SERIAL_SHORT without vendor/product
-      update SUSE rules
-
-MUNEDA Takahiro:
-      path_id: fix SAS disk handling
-
-
-Summary of changes from v100 to v101
-============================================
-
-Arjan Opmeer:
-      fix udevinfo help text typo
-
-Bryan Kadzban:
-      cleanup default rules
-      add IMPORT operations to the udev man page
-
-Kay Sievers:
-      remove Makefile magic for leading '0' in version
-      udevd: use getopt_long()
-      udevd: add --verbose option to log also to stdout
-      udevd: add --debug-trace option
-      rule_generator: improve net rule comment generation
-      volume_id: correct iso9660 high sierra header
-      warn if a PHYSEDV* key, the "device" link, or a parent attribute is used
-      don't print PHYSDEV* warnings for old WAIT_FOR_SYSFS rules
-      udevinfo: print error in --attribute-walk
-      udev_sysfs: unify symlink resolving
-      udevtrigger: trigger devices sorted by their dependency
-      fix spelling in deprecation warning
-      release 101
-
-Michał Bartoszkiewicz:
-      udevtrigger: fix typo that prevents partition events
-
-Miles Lane:
-      clarify "specified user/group unknown" error
-
-Piter PUNK:
-      update slackware rules
-
-VMiklos:
-      update Frugalware rules
-
-
-Summary of changes from v099 to v100
-============================================
-
-Kay Sievers:
-      update SUSE rules
-      fix messed up ChangeLog from release 099
-      man: add $attr{} section about symlinks
-      revert persistent-storage ata-serial '_' '-' replacement
-
-
-Summary of changes from v098 to v099
-============================================
-
-Greg KH:
-      update Gentoo rules
-
-Kay Sievers:
-      udev_db.c: include <sys/stat.h>
-      use fnmatch() instead of our own pattern match code
-      rename major/minor variable to maj/min to avoid warning
-      update source file headers
-      udevtest: print header that ENV{} can't work
-      update TODO
-      udevtrigger: options to filter by subsystem and sysfs attribute
-      udevtrigger: remove unused longindex
-      udevinfo: use long options
-      udevd: use files instead of symlinks for /dev/.udev/queue,failed
-      udevtrigger: fix pattern match
-      reorder options in udevinfo man page
-      udevinfo: fix SUBSYTEMS spelling error
-      fix ENV{TEST}="Test: $env{TEST}"
-      let $attr{symlink} return the last element of the path
-      cdrom_id: add rules file to call cdrom_id
-      udevinfo: do not show symlinks as attributes in --attribute-walk
-      remove broken name_cdrom.pl
-
-Marco d'Itri:
-      update Debian rules
-      run_program: close pipe fd's which are connected to child process
-      add persistent rules generator for net devices and optical drives
-
-MUNEDA Takahiro:
-      changes rules for ata disk from '_' to '-'
-
-Sergey Vlasov:
-      make struct option arrays static const
-      fix "subsytem" typo
-
-
-Summary of changes from v097 to v098
-============================================
-
-Alex Merry:
-      udevtest: allow /sys in the devpath paramter
-
-Harald Hoyer:
-      selinux: init once in the daemon, not in every event process
-
-Kay Sievers:
-      udevd: remove huge socket buffer on the control socket
-      man page: fix typo
-      rename udev_libc_wrapper -> udev_sysdeps
-      db: store devpath - node relationship for all devices
-      udevinfo: allow -a -n <node>
-      udevinfo, udevtest: simplify '/sys' stripping from devpath argument
-      lookup_user, lookup_group: report "unknown user" and "lookup failed"
-      consistent key naming to match only the event device or include all parent devices
-      skip rule, if too may keys of the same type are used
-      introduce ATTR{file}="value" to set sysfs attributes
-      update SUSE rules
-      update default rules
-      export DRIVER for older kernels as a replacement for PHYSDEVDRIVER
-      fix typo in SUBSYSTEMS key parsing
-      udevtrigger: add --retry-failed
-      volume_id: add suspend partition detection
-      vol_id: use primary group of 'nobody' instead of 'nogroup'
-      remove built-in /etc/passwd /etc/group parser
-      always expect KEY{value} on ATTR, ATTRS, ENV keys
-      use new key names in test programs
-      cleanup commandline argument handling
-      db: don't create a db file for only a node name to store
-      man: add ATTR{file}="value" assignment
-
-Lennart Poettering:
-      volume_id: fix fat32 cluster chain traversal
-
-Marco d'Itri:
-      fix 'unknow user' error from getpwnam/getgrnam
-      fix rc when using udev --daemon
-      update Debian rules
-
-Michał Bartoszkiewicz:
-      man pages: fix typos
-
-
-Summary of changes from v096 to v097
-============================================
-
-Anssi Hannula:
-      add joystick support to persistent input rules
-
-Kay Sievers:
-      firmware.sh: remove needless '/'
-      vol_id: add --skip-raid and --probe-all option
-      switch uevent netlink socket to group 1 only
-      increase /proc/stat read buffer
-      use "change" instead of "online" events
-      remove 'static' from local variable
-      libvolume_id: add parameter 'size' to all probe functions
-      man pages: replace 'device-path' by 'devpath'
-      man pages: work around xmlto which tries to be smart
-      refresh vol_id man page
-      udevinfo: add DRIVER==
-      Makefile: fix dependency
-      libvolume_id: read ufs2 label
-      switch ifdef __KLIBC__ to ifndef __GLIBC__
-      report failing getpwnam/getgrnam as error
-      rename udevcontrol message types and variables
-      initialize unused sockets to -1
-      udevd: remove useless udevinitsend parameter
-      update README
-      udevd: autotune max_childs/max_childs_running
-      update frugalware rules
-      update SUSE rules
-      move default rules to etc/udev/rules.d/
-      add 'crypto' devices to persistent storage rules
-      add late.rules to default rules
-      update Fedora rules
-      don't report an error on overlong comment lines
-      update SUSE rules
-      udevd: read DRIVER from the environment
-
-Marco d'Itri:
-      make rename_netif() error messages useful
-      path_id: fix an harmless syntax error
-
-Piter PUNK:
-      update slackware rules
-
-Richard Purdie:
-      Fix inotify syscalls on ARM
-
-
-Summary of changes from v095 to v096
-============================================
-
-Kay Sievers:
-      Makefiles: fix .PHONY for man page target
-      allow longer devpath values
-      path_id: prepare for new sysfs layout
-
-
-Summary of changes from v094 to v095
-============================================
-
-Kay Sievers:
-      update SUSE rules
-      don't remove symlinks if they are already there
-      allow "online" events to create/update symlinks
-      udevinfo: clarify parent device attribute use
-      update SUSE rules
-      netif rename: optimistic loop for the name to become free
-      remove broken %e enumeration
-
-Tobias Klauser:
-      print usage of udevcontrol when no or invalid command is given
-
-
-Summary of changes from v093 to v094
-============================================
-
-Daniel Drake:
-      update "writing udev rules"
-
-Kay Sievers:
-      libvolume_id: gfs + gfs2 support
-      remove MODALIAS key and substitution
-      add persistent-input.rules
-
-Marco d'Itri:
-      update Debian rules
-
-
-Summary of changes from v092 to v093
-============================================
-
-Hannes Reinecke:
-      path_id: add support for iSCSI devices
-
-Kay Sievers:
-      libvolume_id: fat - check for signature at end of sector
-      libvolume_id: add more software raid signatures
-      update Fedora rules
-      path_id: prevent endless loop for SAS devices on older kernels
-      remove udevsend
-      replace binary firmware helper with shell script
-      skip device mapper devices for persistent links
-
-
-Summary of changes from v091 to v092
-============================================
-
-Kay Sievers:
-      don't include stropts.h, some libc's don't like it
-      udevd: create leading directories for /dev/.udev/uevent_seqnum
-      vol_id: fix logging from libvolume_id's log function
-      update SUSE rules
-      update SUSE rules
-      add more warnings for invalid key operations
-      fix offsetof() build issue with recent glibc
-      selinux: fix typo in block device node selection
-      vol_id: add NetWare volume detection
-      edd_id: fix "(null)" output if "mbr_signature" does not exist
-      update Fedora rules
-      libvolume_id: nss - use different uuid
-
-Libor Klepac:
-      path_id: add platform and serio support
-
-Marco d'Itri:
-      update Debian rules
-      path_id: fix bashism
-
-
-Summary of changes from v090 to v091
-============================================
-
-Hannes Reinecke:
-      path_id: fix SAS device path generation
-
-Kay Sievers:
-      udevtest: don't try to delete symlinks
-      persistent rules: fix typo in dm rule
-      allow NAME=="value" to check for already assigned value
-      udevd: export initial sequence number on startup
-
-
-Summary of changes from v089 to v090
-============================================
-
-Kay Sievers:
-      udevd: export current seqnum and add udevsettle
-      volume_id: fix endianess conversion typo for FAT32
-      merge device event handling and make database content available on "remove"
-      set default udevsettle timeout to 3 minutes
-      export INTERFACE_OLD if we renamed a netif
-      let udevmonitor show the possibly renamed devpath
-      volume_id: move some debug to info level
-      udevtrigger: fix event order
-      usb_id: remove uneeded code
-      remove old symlinks before creating current ones
-      path_id: fix loop for SAS devices
-      apply format char to variables exported by ENV
-
-Marco d'Itri:
-      add inotify support for hppa and MIPS and log if inotify is not available
-
-Matt Kraai:
-      fix typo in error message
-
-
-Summary of changes from v088 to v089
-============================================
-
-Hannes Reinecke:
-      path_id: add bus to USB path
-
-Kay Sievers:
-      change rule to skip removable IDE devices
-      don't create uuid/label links for raid members
-      volume_id: provide library
-      fix rule order for persistent tape links
-      update man page
-      volume_id: provide a custom debug function
-      volume_id: rename subdirectory
-      volume_id: use shared library by default
-      because is better than cause
-      volume_id: remove some global symbols
-      volume_id: define exported symbols
-      remove all stripping code
-      man pages: mention udev(7) not udev(8)
-      update Debian rules
-      move all *_id programs to /lib/udev/
-      update Red Hat rules
-      update SUSE rules
-      pass CROSS_COMPILE to AR and RANLIB down to extras/
-      volume_id: update README
-      volume_id: generate man page from xml source
-      update README
-      fix symlink targets in Makefiles
-
-
-Summary of changes from v087 to v088
-============================================
-
-Hannes Reinecke:
-      persistent links: add scsi tape links and usb path support
-
-Kay Sievers:
-      volume_id: add squashfs detection
-      reset signal handler in event process
-      correct use of fcntl()
-      add udevtrigger to request events for coldplug
-      add ',' to trusted chars
-      volume_id: remove partition table parsing code
-      volume_id: remove all partition table support
-      fix spelling error in debug string
-      rename "persistent disk" to "persistent storage"
-      fix output for USB path
-
-
-Summary of changes from v086 to v087
-============================================
-
-Hannes Reinecke:
-      path_id: support SAS devices
-
-Kay Sievers:
-      fix persistent disk rules to exclude removable IDE drives
-      warn about %e, MODALIAS, $modalias
-      remove devfs rules and scripts
-
-Masatake YAMATO:
-      typo in debug text in udev_run_hotplugd.c
-
-
-Summary of changes from v085 to v086
-============================================
-
-Kay Sievers:
-      volume_id: replace __packed__ by PACKED macro
-      volume_id: split raid and filesystem detection
-      volume_id: add missing return
-      udevd: fix queue export for multiple events for the same device
-
-Kyle McMartin:
-      workaround missing kernel headers for some architectures
-
-Nix:
-      update to udev-084/doc/writing_udev_rules
-
-
-Summary of changes from v084 to v085
-============================================
-
-Andrey Borzenkov:
-      Fix trivial spelling errors in RELEASE-NOTES
-
-Jeroen Roovers:
-      fix typo in parisc support to path_id
-
-Kay Sievers:
-      make WAIT_FOR_SYSFS usable in non "wait-only" rules
-      fix typo in man page
-      include sys/socket.h for klibc build
-      cramfs detection for bigendian
-      exit WAIT_FOR_SYSFS if the whole device goes away
-      update SUSE rules
-      update Red Hat rules
-      update Gentoo rules
-      include errno.h in udev_libc_wrapper.c
-
-
-Summary of changes from v083 to v084
-============================================
-
-Kay Sievers:
-      update SUSE rules
-      switch CROSS to CROSS_COMPILE
-      replace fancy silent build program by simple kernel build like logic
-      move manpages to top level
-      remove UDEVD_UEVENT_INITSEND
-      whitespace fixes
-      scsi_id: remove dead files
-      optimize sysfs device and attribute cache
-      let SYSFS{} look at the device, not only the parent device
-      add debug output to sysfs operations
-
-
-Summary of changes from v082 to v083
-============================================
-
-Andrey Borzenkov:
-      man page: document when substitutions are applied for RUN and other keys
-      check for ignore_device in loop looks redundant
-
-Kay Sievers:
-      udevstart: fix NAME="" which prevents RUN from being executed
-      find programs in /lib/udev for IMPORT if {program} is not given
-      don't add $SUBSYSTEM automatically as $1 to programs
-      remove redundant substitution of RUN key
-
-
-Summary of changes from v081 to v082
-============================================
-
-Andrey Borzenkov:
-      substitute format chars in RUN after rule matching
-
-Kay Sievers:
-      scsi_id, usb_id: request device parent by subsystem
-      path_id: work with "all devices in /sys/devices"
-      ignore all messages with missing devpath or action
-      Makefile: remove dynamic config file generation
-      path_id: handle fiber channel (Hannes Reinecke <hare@suse.de>)
-      usb_id: don't fail on other subsytems than "scsi"
-      don't do RUN if "ignore_device" is given
-      increase kernel uevent buffer size
-      move udev(8) manpage to udev(7)
-      recreate man pages from xml source
-      remove udev, udevstart, udevsend from the default installation
-      update SUSE rules
-      rename apply_format() cause it is public now
-      udevtest: add udev_rules_apply_format() to RUN keys
-      let "ignore_device" always return the event successfully
-
-Olivier Blin:
-      fixes udev build with -fpie
-
-
-Summary of changes from v080 to v081
-============================================
-
-Kay Sievers:
-      add DEVLINKS to "remove" event
-      better log text and comments
-      vol_id: probe volume as user nobody
-      fix BUS, ID, $id usage
-      prepare moving of /sys/class devices to /sys/devices
-
-
-Summary of changes from v079 to v080
-============================================
-
-Brent Cook:
-      fix dependency for make -j2
-
-coly:
-      fix man page typos
-
-Kay Sievers:
-      update RELEASE-NOTES + TODO
-      fix typo in man page
-      update TODO
-      update SUSE rules
-      path_id: fix invalid character class
-      replace libsysfs
-
-Marco d'Itri:
-      udev_selinux.c: include udev.h
-
-
-Summary of changes from v078 to v079
-============================================
-
-Kay Sievers:
-      don't log error if database does not exist
-      use udev_root instead of "/dev"in selinux matchpathcon_init_prefix()
-      scsi_id: read page 0x80 with libata drives
-      update SUSE rules
-      remove %e from man page
-
-
-Summary of changes from v077 to v078
-============================================
-
-Greg Kroah-Hartman:
-      Update Gentoo udev main rule file.
-      add parisc support to path_id
-
-Hannes Reinecke:
-      scsi_id: -u fold multiple consecutive whitespace chars into single '_'
-
-Harald Hoyer:
-      optimize SELinux path match
-
-Kay Sievers:
-      update README
-      allow C99 statements
-      fix segfaulting create_floppy_devices
-      update SUSE rules
-      remove unused variables
-      remove default settings in udev.conf
-      clearenv() is now part of klibc
-      add DEVLINKS to the event environment
-
-Kurt Garloff:
-      scsi_id: support pre-SPC3 page 83 format
-
-
-Summary of changes from v076 to v077
-============================================
-
-Kay Sievers:
-      merge two consecutive static strlcat's
-      don't return an error, if "ignore_device" is used
-      remove outdated and misleading stuff
-      move SEQNUM event skipping to udevsend
-      update RELEASE-NOTES
-      update SUSE rules
-      allow programs in /lib/udev called without the path
-      update SUSE rules
-      add target to to generate ChangeLog section
-      update Red Hat rules
-
-Marco d'Itri:
-      allow to overwrite the configured udev_root by exporting UDEV_ROOT
-      let udevsend ignore events with SEQNUM set
-      update Debian rules
-
-
-Summary of changes from v75 to v076
-============================================
-
-Kay Sievers:
-      fix typo in eventrecorder
-      volume_id: include stddef.h header
-      remove misleading install instructions
-      remove all built-in wait_for_sysfs logic
-      add linux/types.h back, old glibc-kernel-headers want it
-      volume_id: use glibc's byteswap
-      udevd: ignore all messages without DEVPATH
-      udevd: track exit status of event process
-      udevd: export event queue and event state
-      remove "udev_db" option from config file
-      Makefile: remove exec_prefix and srcdir
-      update README and RELEASE-NOTES
-      udevd: track killed event processes as failed
-      update README
-      don't start udevd from udevsend
-      udevd: add a missing return
-      libvolume_id: fix weird fat volume recognition
-      move some helpers from extras to /lib/udev
-
-Scott James Remnant:
-      move delete_path() to utils
-      clean-up empty queue directories
-      Makefile: fail, if submake fails
-
-
-Summary of changes from v74 to v075
-============================================
-
-Greg Kroah-Hartman:
-      Make run_directory.c stat the place it is going to try to run.
-
-Kay Sievers:
-      forgot the ChangeLog for 074
-      volume_id: provide libvolume_id.a file
-      remove our own copy of klibc
-      remove outdated HOWTO
-      update TODO
-      update SUSE rules
-      remove completely useless start script
-      fix tests and remove no longer useful stuff
-      replace udeveventrecorder by a shell script
-
-
-Summary of changes from v73 to v074
-============================================
-
-Kay Sievers:
-      never queue events with TIMEOUT set
-      let NAME="" supress node creation, but do RUN keys
-      remove udevinitsend
-      update .gitignore
-
-Marco d'Itri:
-      add strerror() to error logs
-      move some logging from dbg() to info()
-
-
-Summary of changes from v72 to v073
-============================================
-
-Kay Sievers:
-      udevd: depend on netlink and remove all sequence reorder logic
-      print useconds in udevmonitor
-      add RELEASE-NOTES, update TODO
-
-
-Summary of changes from v71 to v072
-============================================
-
-Ananth N Mavinakayanahalli:
-  libsysfs: translate devpath of the symlinked class devices to its real path
-
-Jan Luebbe:
-  add man pages for *_id programs
-
-Kay Sievers:
-  volume_id: add OCFS Version 1
-  volume_id: add Veritas fs
-  volume_id: check ext fs for valid blocksize, cause magic is only 2 bytes
-  volume_id: move blocksize validation to fix jbd recognition
-  volume_id: fix typo in ocfs
-  volume_id: add vxfs include
-  volume_id: make FAT32 recognition more robust
-  volume_id: Version 051
-  volume_id: fix typo in ext blocksize check
-  volume_id: Version 052
-  FAQ: remove confusing statement about module loading
-  cleanup compiler/linker flags
-  use DESTDIR on uninstall, no need to pass prefix to submake
-  allow to pass STRIPCMD, to skip stripping of binaries
-  cleanup make release
-  fix the new warnings I asked for
-  move rules parsing into daemon
-  "make STRIPCMD=" will disable the stripping of binaries
-  remove no longer working udevd-test program
-  "STRIPCMD=" for the EXTRAS
-  add dummy inotify syscalls on unsupported architecture
-  remove no longer needed waiting for "dev" file
-  revert the "read symlink as device patch"
-  use libsysfs to translate the class linke to the device path
-  libsysfs: remove brute-force "bus", "driver" searching for old kernels
-  test: add "driver" and "bus" links to test sysfs tree
-  update RELEASE-NOTES
-  udevd: don't daemonize before initialization
-  log to console if syslog is not available
-  udevd: disable OOM
-  remove precompiled rules option
-  export DEVNAME on "remove" only if we really got a node to remove
-  fix typo in umask()
-
-
-Summary of changes from v70 to v071
-============================================
-
-Greg Kroah-Hartman:
-      Remove the udev.spec file as no one uses it anymore
-
-John Hull:
-      edd_id: check that EDD id is unique
-
-Kay Sievers:
-      ata_id: open volume O_NONBLOCK
-      add "Persistent Device Naming" rules file for disks
-      scsi_id: switch temporary node creation to /dev
-      volume_id: set reiser instead of reiserfs for filesystem type
-      update devfs rules header
-      update Debian rules
-      update Fedora rules
-      update Debian rules
-      remove no longer needed includes
-      switch tools and volume_id from LGPL to GPLv2
-      add edd-*-part%n to the persistent.rules
-      update Debian persistent rules
-      clarify README
-      udevd: fix initial timeout handling
-      force event socket buffer size to 16MB
-      udevd: move logging from err to info for non-hotplug uevent
-      fix selinux compilation
-      libsysfs: accept sysmlinks to directories instead of real directories
-
-Marco d'Itri:
-      run_directory: fix typo in "make install"
-
-
-Summary of changes from v069 to v070
-============================================
-
-Amir Shalem:
-  udevd: fix udevd read() calls to leave room for null byte
-
-Edward Goggin:
-  scsi_id: derive a UID for a SCSI-2 not compliant with the page 83
-
-Greg Kroah-Hartman:
-  fix nbd error messages with a gentoo rule hack
-  fix scsi_id rule in gentoo config file
-
-Jürg Billeter:
-  EXTRAS/Makefile: fix install targets to match main Makefile
-
-Kay Sievers:
-  volume_id: fix error handling with failing read()
-  EXTRAS: cleanup and sync all Makefiles
-  add install test to 'make buildtest'
-  update RELEASE-NOTES
-
-Olivier Blin:
-  fix a debug text typo in udev_rules.c
-
-
-Summary of changes from v068 to v069
-============================================
-
-Amir Shalem:
-  fix typo in firmware_helper
-
-Duncan Sands:
-  firmware_helper: fix write count
-
-Kay Sievers:
-  *_id: fix zero length in set_str()
-  add program name to logged error
-  fix exit code of udevinitsend and udevmonitor
-  udevd: keep the right order for messages without SEQNUM
-  volume_id: don't probe for mac_partition_maps
-  udevmonitor: cleanup on exit
-  path_id: remove SUSE specific PATH
-  update SUSE rules
-  add pci_express to bus list
-  update SUSE rules
-  store ENV{key}="value" exported keys in the database
-  fix lookup for name in the udevdb, it should return the devpath
-  prepare for new HAL udevdb dump
-  print persistent data with "udevinfo -q all"
-  change parameter order of udev_db_search_name()
-  add and use name_list_cleanup() for cleaning up the string lists
-  don't store devpath in udevdb, we don't need it
-  add uft8 validation for safe volume label exporting
-  start to enforce plain ascii or valid utf8
-  use WRITE_END/READ_END for the pipe index
-  remove not needed sig_flag for state of signal_pipe
-  don't reenter get_udevd_msg() if message is ignored
-  rename ...trailing_char() to ...trailing_chars()
-  vol_id: ID_LABEL_SAFE will no longer contain fancy characters
-  udevd: move some logging to "info" and "err"
-  remove special TIMEOUT handling from incoming queue
-  udev_test.pl: we replace untrusted chars with '_'
-  check the udevdb before assigning a new %e
-  update RELEASE-NOTES
-  udevinfo: add database export
-  write man page masters in DocBook XML
-  udevinfo: rename dump() to export()
-  test the automatic man page rebuild and checkin
-  Makefile: remove all the duplicated rules
-  all man pages rewritten to use DocBook XML
-  add missing udevsend man page
-  also forgot udevmonitor.8
-  udevinfo: restore -d option
-  scsi_id: rename SYSFS to LIBSYSFS
-  add edd_id tool to match BIOS EDD disk information
-  move and update libsysfs.txt
-  klibc: update to version 1.1.1
-  delete cdromsymlinks* - obsoleted by cdrom_id and IMPORT rules
-  delete docs/persistent_naming - obsoleted by persistent disk names
-  delete old Fedora html page
-  add "totally outdated" header to docs/overview :)
-  update SUSE rules
-  fix useless but funny name_cdrom.pl script to work again
-  update TODO
-  Makefile: fix prerequisits for $(PROGRAMS)
-  Makefile: cleanup install targets
-  remove chassis_id program
-  fic gcov use and move it into the Makefile
-  FAQ: update things that have changed
-
-Thierry Vignaud:
-  switch to '==' in raid-devfs.sh
-
-
-Summary of changes from v067 to v068
-============================================
-
-Greg Kroah-Hartman:
-  add EXTRAS documentation to the README file.
-  Always open the cdrom drive in non-blocking mode in cdrom_id
-  cdrom_id: change err() to info() to help with debugging problems
-
-Kay Sievers:
-  cleanup some debug output and move to info level + unify select() loops
-  move udevmonitor to /usr/sbin
-  ENV{TEST}=="1" compares and ENV{TEST}="1" sets the environment
-  vol_id: fix sloppy error handling
-  fix typo in cdrom_id syslog
-  bring std(in|out|err) fd's in a sane state
-  fix printed udevmonitor header
-
-
-Summary of changes from v066 to v067
-============================================
-
-Greg Kroah-Hartman:
-  added the cdrom.h #defines directly into the cdrom_id.c file
-
-Kay Sievers:
-  update SUSE rules
-  fix make install, as we don't provide a default rule set anymore
-  fix more compiler warnings ...
-  fix udevstart event ordering, we want /dev/null very early
-  don't fail too bad, if /dev/null does not exist
-
-
-Summary of changes from v065 to v066
-============================================
-
-Greg Kroah-Hartman:
-  update gentoo rule file.
-  Created cdrom_id program to make it easier to determine cdrom types
-  added cdrom_id to the build check
-  updated gentoo rule file to handle removable ide devices.
-  changed cdrom_id exports to be easier to understand and consistant with other _id programs.
-  fix klibc build issue in cdrom_id.c
-  Change the gentoo rules to use cdrom_id instead of cdsymlink.sh
-  changed location of gentoo helper apps to be /sbin instead of in scripts dir
-  tweak the gentoo rules some more.
-
-Kay Sievers:
-  add NETLINK define for the lazy distros
-  read sysfs attribute also from parent class device
-  switch some strlcpy's to memcpy
-  allow clean shutdown of udevd
-  add flag for reading of precompiled rules
-  update distro rules files
-  add SUSE rules
-  update SUSE rules
-  add firmware_helper to load firmware
-  more distro rules updates
-  update README
-  remove example rules and put the dev.d stuff into the run_directory folder
-  trivial text cleanups
-  update SUSE rules
-  split udev_util in several files
-  update SUSE rules
-  allow logging of all output from executed tools
-  add Usage: to udevmonitor and udevcontrol
-  move some logging to the info level
-
-Thierry Vignaud:
-  fix udevinfo output
-
-
-Summary of changes from v064 to v065
-============================================
-
-Greg Kroah-Hartman:
-  Added persistent name rules for block devices to gentoo rule file.
-  Added horrible (but fun) path_id script to extras.
-  Update gentoo rules file.
-
-Kay Sievers:
-  update release notes for next version
-  add udevmonitor, to debug netlink+udev events at the same time
-  allow RUN to send the environment to a local socket
-  fix GGC signed pointer warnings and switch volume_id to stdint
-
-
-Summary of changes from v063 to v064
-============================================
-
-Andre Masella:
-  volume_id: add OCFS (Oracle Cluster File System) support
-
-Hannes Reinecke:
-  usb_id: fix typo
-  add ID_BUS to *_id programs
-  create_floppy_devices: add tool to create floppy nodes based on sysfs info
-
-Kay Sievers:
-  move code to its own files
-  make SYSFS{} usable for all devices
-  add padding to rules structure
-  allow rules to have labels and skip to next label
-  thread unknown ENV{key} match as empty value
-
-
-Summary of changes from v062 to v063
-============================================
-
-Anton Farygin:
-  fix typo in GROUP value application
-
-Greg Kroah-Hartman:
-  add 'make tests' as I'm always typing that one wrong...
-  Really commit the udev_run_devd changes...
-  Fixed udev_run_devd to run the /etc/dev.d/DEVNAME/ files too
-  fix position of raw rules in gentoo config file
-
-Hannes Reinecke:
-  dasd_id: add s390 disk-label prober
-  fix usb_id and let scsi_id ignore "illegal request"
-
-Kay Sievers:
-  volume_id: remove s390 dasd handling, it is dasd_id now
-  trivial fixes for *_id programs
-  IMPORT: add {parent} to import the persistent data of the parent device
-  allow multiple values to be matched with KEY=="value1|value2"
-  udevd: set incoming socket buffer SO_RCVBUF to maximum
-  remember mapped rules state
-  ata_id: check for empty serial number
-  compile dasd only on s390
-
-Ville Skyttä:
-  correct default mode documentation in udev
-
-
-Summary of changes from v061 to v062
-============================================
-
-Kay Sievers:
-  fix symlink values separated by multiple spaces
-  update RELEASE-NOTES
-  fix typo in group assignment
-  fix default-name handling and NAME="" rules
-  add WAIT_FOR_SYSFS key to loop until a file in sysfs arrives
-  fix unquoted strings in udevinitsend
-
-Summary of changes from v060 to v061
-============================================
-
-Greg Kroah-Hartman:
-  Sync up the Debian rules files
-  fix cdrom symlink problem in gentoo rules
-  Fix ChangeLog titles
-
-Kay Sievers:
-  update RELEASE-NOTES
-  we want to provide OPTFLAGS
-  rename ALARM_TIMEOUT to UDEV_ALARM_TIMEOUT
-  udevd: optimize env-key parsing
-  don't resolve OWNER, GROUP on precompile if string contains %, $
-  set default device node to /dev
-  create udevdb files only if somehting interesting happened
-  pack parsed rules list
-  replace useless defines by inline text
-  move rule matches to function
-  add usb_id program to generate usb-storage device identifiers
-  add IEEE1394 rules to the gentoo rule file
-  fake also kernel-name if we renamed a netif
-  allow OPTIONS to be recognized for /sys/modules /sys/devices events
-  switch gentoo rules to new operators
-
-
-Summary of changes from v059 to v060
-============================================
-
-Greg Kroah-Hartman:
-  Fix the gentoo udev rules to allow the box to boot properly
-
-Gustavo Zacarias:
-  Udev doesn't properly build with $CROSS
-
-Kay Sievers:
-  Keep udevstart from skipping devices without a 'dev' file
-
-Marco d'Itri:
-  #define NETLINK_KOBJECT_UEVENT
-
-
-Summary of changes from v058 to v059
-============================================
-
-Greg Kroah-Hartman:
-  Update the gentoo rule file
-  Fix udevinfo for empty sysfs directories
-  Fix makefile to allow 'make release' to work with git
-
-Hannes Reinecke:
-  udev: fix netdev RUN handling
-  udevcontrol: fix exit code
-
-Kay Sievers:
-  prepare RELEASE-NOTES
-  add ID_TYPE to the id probers
-  add -x to scsi_id to export the queried values in env format
-  store the imported device information in the udevdb
-  rename udev_volume_id to vol_id and add --export option
-  add ata_id to read serial numbers from ATA drives
-  IMPORT allow to import program returned keys into the env
-  unify execute_command() and execute_program()
-  IMPORT=<file> allow to import a shell-var style config-file
-  allow rules to be compiled to one binary file
-  fix the fix and change the file to wait for to the "bus" link
-  fix udevstart and let all events trvel trough udev
-  prepare for module loading rules and add MODALIAS key
-  remove device node, when type block/char has changed
-  Makefile: remove dev.d/ hotplug.d/ from install target
-  udevcontrol: add max_childs command
-  udevd: control log-priority of the running daemon with udevcontrol
-  udeveventrecorder: add small program that writes an event to disk
-  klibc: add missing files
-  udevinitsend: handle replay messages correctly
-  udev man page: add operators
-  udevd: allow starting of udevd with stopped exec-queue
-  klibc: version 1.0.14
-  udev: handle all events - not only class and block devices
-  volume_id: use udev-provided log-level
-  udev: clear lists if a new value is assigned
-  udev: move dev.d/ handling to external helper
-  udev: allow final assignments :=
-  udevd: improve timeout handling
-  Makefile: fix DESTDIR
-  udevd: add initsend
-  udevd: add udevcontrol
-  udevd: listen for netlink events
-
-Stefan Schweizer:
-  Dialout group fix for capi devices in the gentoo rules file
-
-Summary of changes from v057 to v058
-============================================
-
-Daniel Drake:
-  o Writing udev rules docs update
-
-Darren Salt:
-  o update cdsymlinks to latest version
-
-Greg Kroah-Hartman:
-  o remove detach_state files from the sysfs test tree
-  o Update permissions on test scripts so they will run properly now
-  o hopefully fix up the symlinks in the test directory
-  o Removed klibc/klibc.spec as it is autogenerated
-  o Added symlinks thanks to Kay's script and git hacking
-  o add Red Hat/Fedora html documenation
-  o Update Red Hat default udev rules
-
-Kay Sievers:
-  o selinux: fix handling during creation of symlinks
-  o Fedora udev.rules update
-  o libsysfs: version 2.0
-  o klibc: version 1.0.7
-
-Masanao Igarashi:
-  o Fix libsysfs issue with relying on the detach_state file to be
-
-Summary of changes from v056 to v057
-============================================
-
-<tklauser:access.unizh.ch>:
-  o fix stupid all_partitions bug
-
-Kay Sievers:
-  o add test for make -j4 to build-check
-  o klibc: version 1.0.6
-  o update Debian rules
-  o apply default permissions only for devices that will need it
-  o adapt RELEASE-NOTES
-  o udev_volume_id: fix endianess macros
-  o udev-test.pl: add test for DEVNAME export to RUN environment
-  o update the man page to reflect the recent changes
-  o export DEVNAME to RUN-key executed programs
-  o fix make -j4 and the local klibc-install
-  o update RELEASE-NOTES
-  o add RUN key to be able to run rule based notification
-  o fix udevtest to print the error if logging is disabled
-  o move execute_program to utils + add action to init_device
-  o correct correction for error path for PROGRAM execution
-  o correct error path for PROGRAM execution
-  o klibc: version 1.0.5
-  o check for strlen()==0 before accessing strlen()-1
-  o allow to match against empty key values
-  o read %s{}-sysfs values at any device in the chain
-  o udev_rules.c: don't change sysfs_device while walking up the device chain
-  o klibc: strlcpy/strlcat - don't alter destination if size == 0
-  o fix klibc's broken strlcpy/strlcat
-  o udevinfo: print SYSFS attribute the same way we match it
-  o remove untrusted chars read from sysfs-values or returned by PROGRAM
-  o udevinfo: print errors to stderr instead of stdout
-  o klibc: version 1.0.4
-  o support log-priority levels in udev.conf
-  o test-suite: remove UDEV_TEST, it's not needed anymore
-  o libsysfs: remove trailing slash on SYSFS_PATH override
-
-
-Summary of changes from v055 to v056
-============================================
-
-<tklauser:access.unizh.ch>:
-  o fix header paths in udev_libc_wrapper.c
-
-Kay Sievers:
-  o udev-test.pl: use more common user/group names
-  o klibc: remove SCCS directories from the temporary klibc install
-  o udev-test.pl: add a test where the group cannot be found in /etc/passwd
-  o udev-test.pl: add check for textual uid/gid
-  o fix bad typo that prevents the GROUP to be applied
-  o udevd: don't delay events with TIMEOUT in the environment
-  o klibc: use klcc wrapper instead of our own Makefile
-  o change call_foreach_file to return a list
-
-
-Summary of changes from v054 to v055
-============================================
-
-<jkluebs:luebsphoto.com>:
-  o This patch causes the remove handler to check that each symlink actually points to the correct devnode and skip it if it does not.
-
-<pebenito:gentoo.org>:
-  o udev selinux fix
-
-<tklauser:access.unizh.ch>:
-  o The following patch fixes some warnings when compiling volume_id from udev with the -Wall compiler flag. Define _GNU_SOURCE for strnlen() and correct the path to logging.h
-  o The following patch fixes a warning when compiling chassis_id from udev with the -Wall compiler flag. There are too much conversions in the format string of sscanf(). One %d can be dropped.
-
-Greg Kroah-Hartman:
-  o fix raid rules
-  o added frugalware udev ruleset
-  o merge selinux and Kay's symlink fixes together
-
-Hannes Reinecke:
-  o volume_id: Fix label/uuid reading for reiserfs
-
-Kay Sievers:
-  o add udevstart to the RELEASE-NOTES
-  o volume_id: version 43
-  o clarify the shortcomings of %e
-  o correct rule match for devices without a physical device
-  o remove unneeded code, libsysfs does this for us
-  o add final release note
-  o add ENV{} key to match agains environment variables
-  o simplify sysfs_pair handling
-  o add a test and simplify debug statement
-  o support =, ==, !=, += for the key match and assignment
-  o add OPTION="last_rule" to skip any later rule
-  o rename namedev_dev to udev_rule
-  o correct enum device_type
-  o remove udevstart on make clean
-  o volume_id: version 42
-  o volume_id: version 41
-  o remove unneeded include
-  o The path to dlist.h is not correct
-  o udevinfo -d: use '=' as separator, cause ':' may be a part of the devpath
-  o klibc: version 1.0.3
-  o add RELEASE-NOTES file
-  o test suite: move "driver" link to physical device
-  o remove PLACE key match
-  o don't lookup "root" in the userdb
-  o fix ia64 compile
-  o fix segfaulting udev while DRIVER matching
-  o cleanup list.h
-  o klibc: version 0.214
-  o rename device_list->list to device_list->node
-  o replace strncpy()/strncat() by strlcpy()/strlcat()
-  o split udev and udevstart
-  o udev_volume_id: version 39
-  o rename LOG to USE_LOG in all places
-  o remove Makefile magic for klibc integration
-  o klibc_fixups: remove no longer needed stuff
-  o udev_volume_id: volume_id v38
-  o use numeric owner/group as default values to avoid parsing userdb
-  o fix up segfaulting binaries with new klibc
-  o udevinfo -d: speed-up device dump
-  o klibc: version 0.211
-  o klibc_fixups: remove unneeded stuff
-  o replace weird defines by real code
-  o udev-test.pl: remove useless tests
-  o allow unlimitied count of symlinks
-  o unmap db-file after use
-  o remove typedef for call_foreach_file() handler function
-  o correct udev_init_device
-  o rename attributes to options
-  o kill stupid gcc4 warning
-  o trivial clenaup of namedev code
-  o klibc: check for gcc4
-  o klibc: update v0.205
-
-Thierry Vignaud:
-  o gentoo rule update for raid devices
-
-
-Summary of changes from v053 to v054
-============================================
-
-<tklauser:access.unizh.ch>:
-  o udev_volume_id: add Reiser4 support
-
-Kay Sievers:
-  o namedev: skip backslashes only if followed by newline
-  o wait_for_sysfs: add joydev
-  o udevinfo: print devpath -> node relationship for all devices
-  o trivial rename of some variables
-  o klibc v0.199
-  o big libsysfs diet (pre 2.0 version)
-  o udev_volume_id: volume_id v35
-  o add "serio" to bus list
-  o determine device type in udev_init_device()
-  o move kernel name/number evaluation into udev_init_device()
-  o detect NAME="" as ignore_device rule
-  o trivial namedev cleanup
-  o cleanup db functions
-  o clean up match_place()
-  o switch device type to enum
-  o switch major/minor to dev_t
-  o remove the device node only if the major/minor number matches
-  o libsysfs: work around a klibc bug
-  o introduce OPTIONS=ignore_device, ignore_remove, all_partitions" key
-  o namedev: execute PROGRAM only once and not possibly for every physical device
-
-Patrick Mansfield:
-  o update scsi_id to work with libsysfs changes
-
-
-Summary of changes from v052 to v053
-============================================
-
-Greg Kroah-Hartman:
-  o fix gentoo fb permission issue
-  o allow simple-build-check.sh to go faster if MAKEOPTS is set
-  o make the release tarballs have writable files in them
-  o remove gentoo permission file as it's not valid anymore
-
-Kay Sievers:
-  o fix special file mode mask for temporary device node
-  o udevstart: simplify "dev" file searching
-  o udev_volume_id: remove temporary node creation and parent handling
-  o add %P modifier to query the node name of the parent device
-  o udev_volume_id: remove __packed__ from dasd structure as it does not work
-  o create /block/*/range count of partitons for all_partitions
-
-Patrick Mansfield:
-  o scsi_id changes for use with udev %N and %p
-
-
-Summary of changes from v051 to v052
-============================================
-
-<md:linux.it>:
-  o debian: update rules files
-  o raid-devfs.sh: devfs names for hardware RAID controllers
-  o scsi_id: when udevstart is started, /tmp is not writeable
-  o cdsymlinks.sh: trivial fix, the variable is initialized to '', not 0
-
-<sschweizer:gmail.com>:
-  o gentoo/udev.rules: add default permissions for sound devices
-
-Greg Kroah-Hartman:
-  o fix example comment in ide-devfs.sh
-  o Add infiniband to gentoo rules
-  o Another gentoo fix, adding dvb support
-  o Fix gentoo bug #76056 (fb device group permissions.)
-  o Fix gentoo bug #81102, device nodes for the pktcdvd device
-
-Kay Sievers:
-  o provide temporary device node for callouts to access the device
-  o udev_volume_id: fix dasd disklabel reading with -l option
-  o udev_volume_id: volume_id version 034
-  o udev_volume_id: rename probe_ibm into probe_dasd
-  o udev_volume_id: volume_id version 032
-  o Makefile: add some more warnings and prepare for clean gcc4 compile
-  o Makefile: cleanup conditional config option sections
-  o fix -Wsign-compare warnings
-  o chassis_id: clean compilation and fix bad function parameter passing
-  o simple_build_check: make it possible to pass KERNEL_DIR
-  o selinux: cleanup udev integration
-
-Michael Buesch:
-  o trivial: remove _all_ trailing slashes with no_trailing_slash()
-  o trivial: fix signedness
-  o namdev: allow symlink-only rules to specify node permissions
-  o udevd: fix valgrind warning
-
-
-Summary of changes from v050 to v051
-============================================
-
-<roland:digitalvampire.org>:
-  o This fixes a silly mistake in how udevinfo prints the major and minor numbers (right now it prints the minor next to "MAJOR" and the major next to "MINOR" ;)
-
-<tklauser:access.unizh.chbk>:
-  o I tried to compile udev 050plus with the GCC 4.0 snapshot 200412119 and got two errors about possibly uninitialized structs, so I fixed this. 
-
-Christian Bornträger:
-  o udev_volume_id: fix -d option
-
-Greg Kroah-Hartman:
-  o gentoo fb permission fix
-  o fix gcc 2.96 issue in libsysfs
-  o remove the lfs startup script on request of the author
-  o clean up the aoe char device rules, and delete the block one as it's not needed
-  o add aoe block and char device rules to the gentoo rule file
-  o fix udev_volume_id build error
-
-Hannes Reinecke:
-  o rearrange link order in Makefile
-
-Kay Sievers:
-  o udev_volume_id: new version of volume_id
-  o klibc: update to version 0.198
-  o udev_volume_id: fix FAT label reading
-  o klibc: update to version 0.196
-  o udevd: throttle the forking of processes
-  o udevd: add possible initialization of expected_seqnum
-  o udevd: it's obviously not the brightest idea to exit a device node manager if it doesn't find /dev/null
-  o udevd: separate socket handling to prepare for other event sources
-  o udevd: support -d switch to become a daemon
-  o udev_volume_id: version 27
-  o udevd: split up message receiving an queueing
-  o remove useless warning if udev.conf contains keys not read by udev itself
-  o improve event sequence serialization
-  o remove udevsend syslog noise on udevd startup
-  o limit the initial timeout of the udevd event handling
-  o correct detection of hotplug.d/ udevsend loop
-  o correct log statement
-  o remove default_* permissions from udev.conf file
-  o update Fedora config files and add some more tests
-  o allow permissions only rules
-  o add SUBSYSTEM rule to catch all block devices and apply the disk permissions
-  o update Fedora config files
-  o handle renamed network interfaces properly if we manage hotplug.d/
-  o allow multiline rules by backslash at the end of the line
-  o add OnStream tape drive rules
-  o simplify rules file by setting default mode to 0660
-  o simplify permission application
-  o I broke the extras/ again. Add simple build test script now
-  o Merge vrfy.org:/home/kay/src/udev into vrfy.org:/home/kay/src/udev.kay
-  o initial merge of fedora udev.permissions into udev.rules
-  o remove permissions file mentioning from the udev man page
-  o fix some typos in gentoo's udev.rules introduced by the merge
-
-Michael Buesch:
-  o The attached patch fixes the code path if namedev_name_device() fails
-
-Summary of changes from v049 to v050
-============================================
-
-<harald:redhat.com>:
-  o selinux patch
-
-<tklauser:access.unizh.ch>:
-  o I made some more changes to the manpage of udev including
-
-Kay Sievers:
-  o update libsysfs to CVS version and fix segfaulting attribute reading
-  o klibc supports LOG_PID now, so remove our own implementation
-  o avoid building klibc test programs and pass SUBDIRS= to klibc clean
-
-
-Summary of changes from v048 to v049
-============================================
-
-Greg Kroah-Hartman:
-  o fix 'make clean' error in klibc
-
-Kay Sievers:
-  o update klibc to 0.194
-  o export DEVNAME regardless of the state of udev_dev_d
-  o add class specific files for class/spi_transport and class/spi_host
-  o udevd-test.pl: remove wrong date calculation
-  o check earlier if we should run as udevstart
-  o remove double initialization
-  o include missing header to udevtest.c
-  o add -V option to udev to print the version number
-  o prevent udev node creatinon for "class" registration
-  o udevd: serialization of the event sequence of a chain of devices
-  o add a class/fc_host file to the list of what to wait for
-  o udev_volume_id: links sysfs.a instead of all objects
-
-Martin Schlemmer:
-  o remove leftover from udevinfo's -d option
-
-
-Summary of changes from v047 to v048
-============================================
-
-Greg Kroah-Hartman:
-  o fix udev_volume_id so it will now build properly
-  o fix scsi_id build errors due to changes in the main udev makefile
-
-
-Summary of changes from v046 to v047
-============================================
-
-<klauser:access.unizh.ch>:
-  o Various typos and other litte errors in udev.8.in
-
-<sjoerd:spring.luon.net>:
-  o DEVNAME on device removal
-
-<sschweizer:gmail.com>:
-  o Allow GROUP to have modifiers in it
-
-Greg Kroah-Hartman:
-  o add more debian rules files
-  o move distro specific config files into their own directories
-  o update debian rules files
-  o added asterix rules to the gentoo file
-  o use udevstart for udev.init.* files
-  o delete a bunch of files no longer needed
-  o fix gentoo scsi cdrom rule
-  o Fix the multithreaded build again
-  o merge
-  o comment out ability to run udev-test.pl with valgrind
-  o fix spurious valgrind warning in udev
-  o fix udevinfo '-q path' option as it was not working
-  o merge
-  o fix parallel build error
-
-Kay Sievers:
-  o update Fedora dev.d/ example and remove unused conf.d/ directory
-  o don't install distribution specific init script on "make install"
-  o restore OWNER/GROUP assignment in rule coming from RESULT
-  o make gcov compile scripts working with recent gcc
-  o fix udev-test/udev-test.pl to work with again
-  o add net/atml and class/ppdev to the wait_for_sysfs exception list
-  o add net/nlv* devices to the exception list
-  o add "pcmcia" and "fc_transport" to the wait_for_sysfs lists
-  o remove unused timestamp field
-  o simplify permission handling
-  o handle /etc/hotplug.d/ only if the event comes from udevd
-  o trivial cleanups and change some comments
-  o remove unused variables
-  o udevsend/udevd handle events without a subsystem
-  o use blacklist on device "remove" and remove dev.d/ call code duplication
-  o update the man pages and correct Usage: hints
-  o don't call the hotplug scripts with a test run
-  o don't call dev.d/ scripts twice, if directory = subsystem
-  o remove archive file if we changed something
-  o link archive insted of objects
-  o rename udev_lib to udev_utils and dev_d to udev_multiplex
-  o handle whole hotplug event with udevd/udev
-  o integrate wait_for_sysfs in udev
-  o make the searched multiplex directories conditionally
-  o add MANAGED_EVENT to the forked udev environment
-  o export DEVNAME on remove event
-  o export udev_log flag to the environment
-  o remove my test code
-  o add support for /devices-devices without any file to wait for
-  o Patch from Alex Riesen <raa.lkml@gmail.com>
-  o add a bunch of busses to the list of what to wait for
-  o close connection to syslog in forked udevd child
-  o udevd exit path cleanup
-  o fix network device naming bug
-
-
-Summary of changes from v045 to v046
-============================================
-
-Greg Kroah-Hartman:
-  o make spotless for releases
-
-Kay Sievers:
-  o Don't try to print major/minor for devices without a dev file
-  o remove get_device_type and merge that into udev_set_values()
-  o prevent udevd crash if DEVPATH is not set
-  o add ippp and bcrypt to the exception lists of wait_for_sysfs
-  o let klibc add the trailing newline to syslog conditionally
-  o disable logging for udevstart
-  o add NAME{ignore_remove} attribute
-  o remove historical SYSFS_attr="value" format
-  o don't wait for sysfs if the kernel(2.6.10-rc2) tells us what not to expect
-  o change key names in udevinfo sysfs walk to match the kernel
-  o support DRIVER as a rule key
-  o support SUBSYSTEM as a rule key
-  o rename udevdb* to udev_db*
-  o Make dev.d/ handling a separate processing stage
-  o make the udev object available to more processing stages
-  o remove udev_lib dependency from udevsend, which makes it smaller
-  o add ACTION to udev object to expose it to the whole process
-  o make udevinfo's -r option also workimg for symlink queries
-  o let udev act as udevstart if argv[1] == "udevstart"
-  o improve udevinfo sysfs info walk
-  o add sysfs info walk to udevinfo
-  o pass the whole event environment to udevd
-  o replace tdb database by simple lockless file database
-
-
-Summary of changes from v044 to v045
-============================================
-
-Martin Schlemmer:
-  o Some updates for Gentoo's udev rules
-
-
-Summary of changes from v043 to v044
-============================================
-
-Greg Kroah-Hartman:
-  o add cdsymlinks.sh support to gentoo rules file
-  o fix gentoo legacy tty rule
-  o remove 'sudo' usage from the Makefile
-  o make udev-test.pl test for root permissions before running
-
-Kay Sievers:
-  o reduce syslog noise of udevsend if multiple instances try to start udevd
-  o add i2c-dev to the list of devices without a bus
-
-
-Summary of changes from v042 to v043
-============================================
-
-Greg Kroah-Hartman:
-  o add test target to makefile
-  o add dumb script to show all sysfs devices in the system
-
-Kay Sievers:
-  o Shut up wait_for_sysfs class/net failure messages, as it's not possible to
-    get that right for all net devices. Kernels later than 2.6.10-rc1 will
-    handle that by carrying the neccessary information in the hotplug event.  
-  o wait() for specific pid to return from fork()
-  o Don't use any syslog() in signal handler, cause it may deadlock
-  o Add support for highpoint ataraid to volume_id to suppress label reading on raid set members.
-  o Add a bunch of devices without "device" symlinks
-  o Exit, if udevtest cannot open the device (segfault)
-  o Patches from Harald Hoyer <harald@redhat.com>
-  o Apply the default permissions even if we found a entry in the permissions
-    file. Correct one test, as the default is applied correctly now and the
-    mode will no longer be 0000.
-  o add test for format chars in multiple symlinks to replace
-  o Add net/vmnet and class/zaptel to the list of devices without physical device
-
-
-Summary of changes from v040 to v042
-============================================
-
-Greg Kroah-Hartman:
-  o add inotify to the rules for gentoo
-
-Kay Sievers:
-  o skip waiting for device if we get a bad event for class creation and not for a device underneath it
-  o add net/pan and net/bnep handling
-  o switch wait for bus_file to stat() instead of open() add net/tun device handling add ieee1394 device handling
-  o Remove the last klibc specific line from the main udev code Move _KLIBC_HAS_ARCH_SIG_ATOMIC_T to the fixup file which is automatically included by the Makefile is we build with klibc
-  o ignore *.rej files from failed patches
-  o update to libsysfs 1.2.0 and add some stuff klib_fixup Now we have only the sysfs.h file different from the upstream version to map our dbg() macro.
-  o improve klibc fixup integration
-  o cleanup udevd/udevstart
-  o expose sysfs functions for sharing it
-
-
-Summary of changes from v039 to v040
-============================================
-
-<jk:blackdown.de>:
-  o wait_for_sysfs update for dm devices
-
-Greg Kroah-Hartman:
-  o sparse cleanups on the tree
-  o fix stupid cut-and-paste error for msr devices on gentoo boxes
-  o add *~ to bk ignore list
-  o delete udevruler.c as per Kay's request
-  o fix up the wait_for_sysfs_test script a bit
-
-Kay Sievers:
-  o fix debug in volume id / fix clashing global var name
-  o volume_id fix
-  o $local user
-  o cleanup netif handling and netif-dev.d/ events
-  o big cleanup of internal udev api
-  o don't wait for dummy devices
-  o close the syslog
-  o Fix ppp net devices in wait_for_sysfs
-  o Fix wait_for_sysfs messages (more debugging info)
-
-
-Summary of changes from v038 to v039
-============================================
-
-Greg Kroah-Hartman:
-  o Hopefully fix the vcs issue in wait_for_sysfs
-  o take out & from wait_for_sysfs_test that I previously missed
-  o add very nice cdsymlinks scripts
-  o add some helper scripts for dvb and input devices
-  o add debian config files
-  o let the extras/ programs build "pretty" also
-  o tweak the ccdv program to handle files in subdirectories being built
-  o crap, I messed up the 'sed' instances pretty badly, this fixes the config and man page mess
-  o fix broken 'make -j5' functionality
-
-Kay Sievers:
-  o swich attribute open() to simple stat()
-  o wait_for_sysfs update for /class/firmware and /class/net/irda devices
-  o fix unusual sysfs behavior for pcmcia_socket
-  o remove sleeps from udev as it is external now
-  o delete udevruler?
-  o Makefile fix
-
-Patrick Mansfield:
-  o update udev to scsi_id 0.7
-  o pass SYSFS setting down for extras builds
-  o move assignments past local variables
-
-
-Summary of changes from v037 to v038
-============================================
-
-<andrew.patterson:hp.com>:
-  o Re: Problem parsing %s in udev rules
-
-Greg Kroah-Hartman:
-  o fix up error in building extras and libsysfs
-
-Summary of changes from v036 to v037
-============================================
-
-<md:linux.it>:
-  o small udev patch
-
-Greg Kroah-Hartman:
-  o fix compilation warning in tdb log message
-  o Fix build error with klibc due to recent changes
-  o merge
-  o add wait_for_sysfs test script to the tarball to help people debug their boxes
-  o add ipsec to wait_for_sysfs ignore list
-  o added ccdv to bk ignore list
-  o a few more Makefile tweaks for the quiet feature
-  o Make the build silent, thanks to a helper program from ncftp
-  o rename files to have '_' instead of '-' in them
-  o change max time to wait in wait_for_sysfs to 10 seconds to hopefully handle some slow machines
-  o add support for class/raw/ to wait_for_sysfs
-  o fix up Makefile for wait_for_sysfs udev_version.h dependancy
-  o remove the debian specific file, as they don't want to share with the rest of the world :(
-
-Kay Sievers:
-  o prevent deadlocks on an corrupt udev database
-  o wait_for_sysfs_update
-
-Michael Buesch:
-  o fix asmlinkage
-  o fix incompatible pointer type warning
-
-
-Summary of changes from v035 to v036
-============================================
-
-Greg Kroah-Hartman:
-  o add the error number to the error message in wait_for_sysfs to help out in debugging problems
-
-Summary of changes from v034 to v035
-============================================
-
-Greg Kroah-Hartman:
-  o added ieee1394 support to wait_for_sysfs
-  o update wait_for_sysfs with a bunch more devices thanks to user reports
-
-Summary of changes from v033 to v034
-============================================
-
-Kay Sievers:
-  o wait_for_sysfs bluetooth class update
-
-Greg Kroah-Hartman:
-  o add comment in wait_for_sysfs to explain the structure better
-  o Revert previous dev_d.c change, it's not what is causing HAL problems
-  o hm, somethings odd with DEVPATH, see if this fixes it
-  o 33_bk mark for the makefile
-  o wait_for_sysfs: clean up the logic for the list of devices that we do not expect device symlinks for
-  o get rid of annoying extra lines in the syslog for some libsysfs debug messages
-  o added support for i2c devices in wait_for_sysfs.c
-  o add support for i2c-adapter devices to wait_for_sysfs.c
-
-Summary of changes from v032 to v033
-============================================
-
-<harald:redhat.com>:
-  o udev close on exec
-  o some cleanups and security fixes
-  o some cleanups and security fixes
-  o selinux for udev
-  o cleanup PATCH for extras/chassis_id/Makefile
-
-<kpfleming:backtobasicsmgmt.com>:
-  o respect prefix= setting in built udev.conf (updated)
-
-Greg Kroah-Hartman:
-  o add support for usb interfaces to wait_for_sysfs to keep it quiet
-  o enable native tdb spinlocks on i386 platforms
-  o delete extras/multipath-tools as per the author's request
-  o be paranoid in dev_d.c
-  o add USE_SELINUX to README documentation so people have a chance to see what is going on
-  o update the selinux.h file to start to look sane
-  o update bk ignore list for the wait_for_sysfs binary
-  o kdetv wants to see device nodes in /dev
-  o update comments in scsi-devfs.sh
-  o fix up Makefiles to get the klibc build working properly
-  o update bk ignore list for new klibc generated files
-  o oops forgot to add the new klibc/include directory
-  o update klibc to version 0.181
-
-Kay Sievers:
-  o fix problems with dev.d and udevstart
-  o wait_for_sysfs debug cleanup
-  o fix problems using scsi_id with udevstart
-  o update volume_id
-  o finally solve the bad sysfs-timing for all of us
-  o volume-id build fix and update
-  o switch udev's seqnum to u64
-  o add enum tests
-  o fix udev segfaults with bad permissions file
-
-Patrick Mansfield:
-  o update udev to include scsi_id 0.6
-
-
-Summary of changes from v031 to v032
-============================================
-
-<harald:redhat.com>:
-  o udev parse bug
-
-Kay Sievers:
-  o handle only block and class devices
-  o fix udevstart badly broken in udev 031
-
-
-Summary of changes from v030 to v031
-============================================
-
-<arun:codemovers.org>:
-  o udev - read long lines from config files overflow fix
-
-<ballarin.marc:gmx.de>:
-  o Update the FAQ with info about hardlink security
-
-<david:fubar.dk>:
-  o compatibility symlinks for udev
-
-David Weinehall:
-  o Minor POSIX-fixes for udev
-
-Greg Kroah-Hartman:
-  o add symlink for video rule
-  o add a "first" list to udevstart and make it contain the class/mem/ devices
-  o fix compiler warning in udevtest.c
-  o Fix old-style pty breakage in rules file for tty device
-  o add rules for i386 cpu devices
-  o add permission for legotower usb devices
-
-Kay Sievers:
-  o Fix naming ethernet devices in udevstart
-  o update udev_volume_id
-  o let /sbin/hotplug execute udev earlier
-  o pass SEQNUM trough udevd
-  o fix manpages based on esr's spambot
-
-Martin Schlemmer:
-  o add microcode rule to permissions.gentoo file
-
-Michael Buesch:
-  o Try to provide a bit of security for hardlinks to /dev entries
-
-Olaf Hering:
-  o udevsend depends on udev_lib.o
-
-Tom Rini:
-  o fix UDEV_NO_SLEEP
-  o clean up start_udev a bit
-  o Make udev/udevstart be one binary
-  o Add 'asmlinkage' to udev-030
-
-
-Summary of changes from v029 to v030
-============================================
-
-Greg Kroah-Hartman:
-  o fix stupid off-by-one bug that caused udevstart to die on x86-64 boxes
-
-
-Summary of changes from v028 to v029
-============================================
-
-Greg Kroah-Hartman:
-  o add permission rule for jogdial device
-  o fix dumb bug I added to udevstart
-  o make a "last list" of devices for udevstart to operate on last
-  o fix permission problem with input event and ts nodes for gentoo
-  o change default perms of misc/rtc to be readable by anyone
-
-Olaf Hering:
-  o allow NAME_SIZE > SYSFS_PATH_MAX
-
-
-Summary of changes from v027 to v028
-============================================
-
-<atul.sabharwal:intel.com>:
-  o Patch for chassis_id exras module
-
-Daniel Drake:
-  o Writing udev rules doc update
-
-Greg Kroah-Hartman:
-  o clean up block whitelist search logic a bit
-  o reverse order of scanning of udevstart to look at class before block
-
-Kay Sievers:
-  o update udev_volume_id
-
-Leann Ogasawara:
-  o udevstart performance increase
-
-Patrick Mansfield:
-  o update udev scsi_id to scsi_id 0.5
-
-
-Summary of changes from v026 to v027
-============================================
-
-<fork0:users.sf.net>:
-  o fix handle leak in udev_lib.c
-
-Greg Kroah-Hartman:
-  o tweak the gentoo default permission rules as they are wrong for tty and misc devices
-
-
-Summary of changes from v025 to v026
-============================================
-
-Arnd Bergmann:
-  o udev rpm fix
-
-Greg Kroah-Hartman:
-  o add test for ! in partition name
-  o 025_bk mark
-  o Update to version 117 of klibc (from version 108)
-  o add volume_id ignore rule for bk
-  o add volume_id support to the udev.spec file
-  o remove dbus and selinux stuff from the udev.spec file
-  o delete udev_selinux as it doesn't work properly and is the wrong way to do it
-  o Deleted the udev_dbus extra as it didn't really work properly and HAL has a real solution now
-  o add udev.permissions.slackware file
-  o udevstart: close open directories
-
-Kay Sievers:
-  o fix udevd zombies
-  o catchup with recent klibc
-  o Re: udevsend fallback
-  o udev_volume_id update
-  o udev callout for reading filesystem labels
-  o udev callout for reading filesystem labels
-  o udev default config layout changes
-
-Leann Ogasawara:
-  o evaluate getenv() return value for udev_config.c
-
-Summary of changes from v024 to v025
-============================================
-
-<md:linux.it>:
-  o devfs.sh-ide-floppy
-
-<sjoerd:spring.luon.net>:
-  o DEVNODE -> DEVNAME transition fixes
-
-Daniel Drake:
-  o Update writing udev rules docs
-
-Greg Kroah-Hartman:
-  o make dev.d call each directory in the directory chain of the device name, instead of just the whole name
-  o add devd_test script
-  o add more permissions based on SuSE's recommendations
-  o added rules for tun and raw devices
-  o add udev conf.d file
-  o Switch the default config to point to a directory for the rules and permission files
-  o update the Red Hat .dev files to work on other distros
-  o add dbus.dev, pam_console.dev and selinux.dev files for /etc/dev.d/default/ usage
-  o add hints for red hat users from Leann Ogasawara <ogasawara@osdl.org>
-  o add scripts to run gcov for udev from Leann Ogasawara <ogasawara@osdl.org>
-  o change permissions on udevd test scripts
-  o Fix build process for users who have LC_ALL set to a non-english language
-  o Added expanded tests to the test framework from Leann Ogasawara <ogasawara@osdl.org>
-  o added execelent "writing udev rules" document from Daniel Drake <dan@reactivated.net>
-  o added rule to put USB printers in their proper places
-  o added rules for CAPI devices
-  o added a dev.d alsa script to help people out
-
-Kay Sievers:
-  o fix test regressions
-  o udev_selinux changes
-  o udevd test script
-  o udev_dbus changes
-  o fix devpath for netdev
-
-Leann Ogasawara:
-  o gcov for udev
-
-
-Summary of changes from v023 to v024
-============================================
-
-<atul.sabharwal:intel.com>:
-  o Add README for chassis_id
-  o Add chassis_id program to extras directory
-
-<chris_friesen:sympatico.ca>:
-  o udevd race conditions and performance,  assorted cleanups
-
-<hare:suse.de>:
-  o fix SEGV in libsysfs/dlist.c
-
-<maryedie:osdl.org>:
-  o add OSDL documentation for persistent naming
-
-<md:linux.it>:
-  o small ide-devfs.sh fix
-
-Greg Kroah-Hartman:
-  o remove compiler warning from udevd.c
-  o only generate udev.8 on the fly, not all other man pages
-  o update bk ignore list some more
-  o update bk ignore list
-  o switch to generate the man pages during the normal build, not during the install
-  o convert udev.8.in to use @udevdir@ macro for make install
-  o first step of making man pages dynamically generated
-  o add install and uninstall the etc/dev.d/net/hotplug.dev file to the Makefile
-  o tweak net_test a bit
-  o fix some segfaults when running udevtest for network devices
-  o make a net_test test script using udevtest
-  o handle the subsytem if provided in udevtest
-  o add hotplug.dev script to handle renamed network devices
-  o add a bunch of network class devices to the test sysfs tree
-  o add udevruler to the bk ignore list
-  o update RFC-dev.d docs due to DEVNODE to DEVNAME change
-  o clean up chassis_id coding style
-  o clean up the OSDL document formatting a bit
-  o add netlink rules to devfs and gentoo rules files
-  o added USB device rules to rules files
-  o clean up the gentoo rules file a bit more, adding dri rules
-  o fix up udev.rules to handle oss rules better
-  o 023_bk mark
-  o fix udev.spec file for where udevtest should be placed
-
-Kay Sievers:
-  o tweak node unlink handling
-  o switch udevd's msg_dump() to #define
-  o handle netdev in udevruler
-  o man page cleanup
-  o put config info in db for netdev
-  o increase udevd event timeout
-  o udevstart fix
-  o put netdev handling and dev.d/ in manpages
-  o DEVPATH for netdev
-  o netdev - udevdb+dev.d changes
-  o udevd race conditions and performance,  assorted cleanups - take 2
-  o udevinfo patch
-  o dev_d.c file sorting and cleanup
-  o apply all_partitions rule to main block device only
-
-
-Summary of changes from v022 to v023
-============================================
-
-Kay Sievers:
-  o hmm, handle net devices with udev?
-  o correct apply_format() for symlink only rules
-  o don't init namedev on remove
-  o first stupid try for a rule compose gui
-  o replace fgets() with mmap() and introduce udev_lib.[hc]
-  o make udevtest a real program :)
-
-Daniel E. F. Stekloff:
-  o udevinfo patch
-
-Greg Kroah-Hartman:
-  o create the /etc/dev.d/ directories in 'make install'
-  o actually have udev run files ending in .dev in the /etc/dev.d/ directory as documented
-  o added RFC-dev.d document detailing how /etc/dev.d/ works
-  o fixed up udev.spec to handle selinux stuff properly now
-  o remove USE_DBUS and USE_SELINUX flags from the README as they are no longer present
-  o remove selinux stuff from the main Makefile
-  o move udev_selinux into extras/selinux
-  o fix dbus build in the udev.spec file
-  o remove dbus stuff from main Makefile
-  o move udev_dbus to extras/dbus
-  o udev_dbus can now compile properly, but linnking is another story
-  o remove udev_dbus.h from Makefile
-  o first cut at standalone udev_selinux program
-  o remove selinux support from udev core as it's no longer needed
-  o first cut at standalone udev_dbus program
-  o add get_devnode() helper to udev_lib for udev_dbus program
-  o remove dbus code from core udev code as it's no longer needed to be there
-  o add /etc/dev.d/ support for udev add and remove events
-  o fix build error in namedev.c caused by previous patch
-  o 022_bk tag
-  o fix 'make spotless' to really do that in klibc
-  o add a question/answer about automounting usb devices to the FAQ
-  o mark scsi-devfs.sh as executable
-  o Increase the name size as requested by Richard Gooch <rgooch@ras.ucalgary.ca>
-  o fix udevtest to build properly after the big udev_lib change
-
-Olaf Hering:
-  o uninitialized variable for mknod and friend
-
-Richard Gooch:
-  o SCSI logical and physical names for udev
-
-Theodore Y. T'so:
-  o Trivial man page typo fixes to udev
-
-
-Summary of changes from v021 to v022
-============================================
-
-<ananth:in.ibm.com>:
-  o more Libsysfs updates
-  o Libsysfs updates
-
-<async:cc.gatech.edu>:
-  o fix HOWTO-udev_for_dev for udevdir
-
-Kay Sievers:
-  o udev-test.pl cleanup
-  o add dev node test to udev-test.pl
-  o add permission tests
-  o "symlink only" test
-  o callout part selector tweak
-  o cleanup callout fork
-  o allow to specify node permissions in the rule
-  o man page beauty
-  o put symlink only rules to the man page
-  o rename strn*() macros to strmax
-  o conditional remove of trailing sysfs whitespace
-  o clarify udevinfo text
-  o better fix for NAME="foo-%c{N}" gets a truncated name
-  o overall trivial trivial cleanup
-  o fix NAME="foo-%c{N}" gets a truncated name
-  o cleanup mult field string handling
-
-<ken:cgi101.com>:
-  o fix a type in docs/libsysfs.txt
-  o Added line to udev.permissions.redhat
-  o Include more examples in the docs area for gentoo and redhat
-
-<md:linux.it>:
-  o udevstart fixes
-
-Greg Kroah-Hartman:
-  o add big major tests to udev-test.pl
-  o add a test for a minor over 255
-  o udev-test.pl: print out major:minor and perm test "ok" if is ok
-  o make perm and major:minor test errors be reported properly
-  o remove extra ; in namedev_parse.c
-  o Added multipath-tools 0.1.1 release
-  o deleted current extras/multipath directory
-  o 021_bk mark
-  o fix the build for older versions of gcc
-
-Hanna V. Linder:
-  o Small fix to remove extra "will" in man page
-
-Olaf Hering:
-  o make spotless
-  o udev* segfaults with new klibc
-
-Patrick Mansfield:
-  o add tests for NAME="foo-%c{N}"
-
-Summary of changes from v020 to v021
-============================================
-
-Kay Sievers:
-  o install udevinfo in /usr/bin
-  o blacklist pcmcia_socket
-
-Greg Kroah-Hartman:
-  o fix udev.spec to find udevinfo now that it has moved to /usr/bin
-  o Fix another problem with Makefile installing initscript
-  o fix the Makefile to install the init script into the proper directory
-  o make spec file turn off selinux support by default
-
-
-Summary of changes from v019 to v020
-============================================
-
-<christophe.varoqui:free.fr>:
-  o multipath update
-
-Kay Sievers:
-  o man page udevstart
-  o cleanup udevstart
-  o bugfix for local user
-  o unlink bugfix
-  o TODO update
-  o clarify udevinfo device walk
-  o udevinfo symlink reverse query
-  o fix stroul endptr use
-  o add $local user spport for permissions
-  o udev - man page update
-  o udev - fix debug info for multiple rule file config
-  o udev - kill udevd on install
-  o udev - activate formt length attribute
-  o udev - safer sprintf() use
-
-<md:linux.it>:
-  o no error on enoent
-  o escape dashes in man pages
-  o remove usage of expr in ide-devfs.sh
-
-<rml:ximian.com>:
-  o automatically install correct initscript
-  o update documetation for $local
-
-Andrey Borzenkov:
-  o Add symlink only rules support
-
-Greg Kroah-Hartman:
-  o update the TODO list as we already have a devfs config file
-  o make start_udev use udevstart binary
-  o install udevstart
-  o Remove Debian permission files as the Debian maintainer doesn't seem to want to share :(
-  o update the Gentoo rules files
-  o Add Red Hat rules and permissions files
-  o add udevstart to the ignore list
-  o add udevstart program based on a old patch from Harald Hoyer <harald@redhat.com>
-  o unlink the file before we try to create it
-  o Merge greg@bucket:/home/greg/src/udev into kroah.com:/home/greg/src/udev
-
-
-Summary of changes from v018 to v019
-============================================
-
-Kay Sievers:
-  o TODO update
-  o udev - correct relative symlink
-  o udev - safer string handling - part four
-  o udev - safer string handling - part three
-  o udev - safer string handling - part two
-  o udev - man page update
-  o udev - safer string handling all over the place
-  o manpage update
-  o udev - allow all files in a directory as the config
-  o udev - simple klibc textual uid/gid handling
-
-Andrey Borzenkov:
-  o do not remove real .udev.tdb during RPM build
-
-Greg Kroah-Hartman:
-  o add new TODO item about local user permissions
-  o Add initial SELinux support for udev
-  o fix build for very old versions of make
-  o remove limit of the number of args passed to PROGRAM
-  o force udev to include the internal version of libsysfs and never the external one
-  o fix up libsysfs header file usage to fix bug reports from users that have sysfsutils installed already
-  o remove udevtest on 'make clean'
-  o remove udevd priority TODO item, as it's not needed at all
-
-Patrick Mansfield:
-  o update udev scsi_id to scsi_id 0.4
-
-
-Summary of changes from v017 to v018
-============================================
-
-<ext.devoteam.varoqui:sncf.fr>:
-  o [PATCH] symlink dm-[0-9]* rule
-  o update extras/multipath
-
-<john-hotplug:fjellstad.org>:
-  o init.d debian patch
-
-Kay Sievers:
-  o udev - TODO update
-  o udev - add %s{filename} to man page
-  o udev - udevd/udevsend man page
-  o udev - switch callout part selector to {attribute}
-  o udev - switch SYSFS_file to SYSFS{file}
-  o udev - create all partitions of blockdevice
-  o allow SYSFS{file}
-  o Adding '%s' format specifier to NAME and SYMLINK
-
-Greg Kroah-Hartman:
-  o added some scsi_id files to the bk ignore file
-  o added scsi_id and some more documentation to the udev.spec file
-  o update udev.rules.gentoo with new config file format
-  o Update the Gentoo udev.rules and udev.permissions files
-  o Create a udev.rules.examples file to hold odd udev.rules
-  o add udevd priority issue to the TODO list
-  o more HOWTO cleanups
-  o add HOWTO detailing how to use udev to manage /dev
-  o mv libsysfs/libsysfs.h to libsysfs/sysfs/libsysfs.h to make it easier to use
-  o add start_udev init script
-  o add support for UDEV_NO_SLEEP env variable so Gentoo people will be happy
-  o start up udevd ourselves in the init script to give it some good priorities
-  o update the red hat init script to handle nodes that are not present
-  o add a "old style" SYSFS_attribute test to udev-test.pl
-  o Have udevsend report more info in debug mode
-  o Have udevd report it's version in debug mode
-  o fix up bug created for udevtest in previous partition creation patch
-  o update the udev.spec to add udevtest and make some more Red Hat suggested changes
-  o add ability to install udevtest to Makefile
-  o 017_bk mark
-  o Add another test to udev-test.pl and fix a bug when only running 1 test
-  o Fix bug where we did not use the "converted" kernel name if we had no rule
-
-Patrick Mansfield:
-  o udev use new libsysfs header file location
-  o udev add some ID tests
-
-
-Summary of changes from v016 to v017
-============================================
-
-<azarah:nosferatu.za.org>:
-  o make logging a config option
-
-<christophe.varoqui:free.fr>:
-  o more udev-016/extras/multipath
-  o more udev-016/extras/multipath
-  o update extras/multipath
-
-Kay Sievers:
-  o udev - keep private data out of the database?
-  o better credential patch
-  o udevd - client access authorization
-  o compile udevd with klibc
-  o udev - fix "ignore method"
-  o udev - fix cdrom symlink rule
-  o convert udevsend/udevd to DGRAM and single-threaded
-  o udevd - kill the lockfile
-  o udevd - fix socket path length
-  o udevd - switch socket path to abstract namespace
-  o udevd - allow to bypass sequence number
-  o include used function
-
-Greg Kroah-Hartman:
-  o add udev_log to the documentation
-  o fix offsetof() define in klibc
-  o add some .spec file changes from Red Hat
-  o update the init.d udev script based on a patch from Red Hat
-  o remove the .udev.tdb when installing or uninstalling to be safe
-  o remove the database at startup
-  o fix bug in permission handling
-  o update klibc to version .107
-  o update the bitkeeper ignore file list
-  o add udevtest program to build
-  o fix problem where usb devices can be either the main device or the interface
-  o more logging.h cleanups to be a bit more flexible
-  o stop using mode_t as different libcs define it in different ways :(
-  o remove some more KLIBC fixups that are no longer needed
-  o let udev-test.pl run an individual test if you ask it to
-  o Handle the '!' character that some block devices have
-  o add a block device with a ! in the name, and a test for this
-  o fix up 'make release' to use bk to build the export tree
-  o fix log option code so that it actually works for all udev programs
-  o finish syncing up with klibc
-  o sync with latest version of klibc (0.107)
-  o fix up Makefile dependancies for udev_version.h
-
-Patrick Mansfield:
-  o udev add wild card compare for ID
-  o udev kill extra bus_id compares in match_id
-
-
-Summary of changes from v015 to v016
-============================================
-
-<elkropac:students.zcu.cz>:
-  o get_dev_number() in extras/ide-devfs.sh
-
-<rrm3:rrm3.org>:
-  o FAQ udev.rules.devfs
-
-Greg Kroah-Hartman:
-  o add udevd and udevsend to the spec file
-  o make /etc/hotplug.d/default/udev.hotplug symlink point to udevsend now
-  o add KERNEL_DIR option so that the distros will be happy
-  o make udevsend binary even smaller
-  o udevsend now almost compiles with klibc, struct sockaddr_un is only problem now
-  o fix up logging code so that it can be built without it being enabled
-  o rework the logging code so that each program logs with the proper name in the syslog
-  o remove logging.c as it's no longer needed
-  o kill the last examples that contained the %D option
-  o remove a __KLIBC__ tests in libsysfs, as klibc now supports getpagesize()
-  o udevd - remove stupid locking error I wrote
-  o update to klibc version 0.101, fixing the stdin bug
-  o fix Makefile typo for USE_LSB install
-  o allow dbus code to actually build again
-
-Kay Sievers:
-  o let udevsend build with klibc
-  o udevd - config cleanup
-  o udevd - cleanup and better timeout handling
-  o fix possible buffer overflow
-  o udevd - next round of fixes
-  o udevinfo - missing options for man page
-  o udev - trivial style cleanup
-
-
-Summary of changes from v014 to v015
-============================================
-
-<mbuesch:freenet.de>:
-  o LFS init script update
-
-Greg Kroah-Hartman:
-  o update klibc to version 0.98
-  o clean up udevinfo on 'make clean'
-  o add udevinfo man page to spec file
-  o remove command line documentation from udev man page
-  o create initial version of udevinfo man page
-  o added URL to spec file
-  o add udevinfo to udev.spec file
-  o add udevinfo to install target of Makefile
-  o rip out command line code from udev, now that we have udevinfo
-  o udevinfo doesn't need to declare main_envp
-  o move get_pair to udev_config.c because udevinfo doesn't need all of namedev.o
-  o more makefile cleanups
-  o move udevinfo into the main build and clean up the main Makefile a bit
-  o clean up compiler warnings if building using klibc
-  o make udevd only have one instance running at a time
-  o new testd.block script for debugging
-  o udevsnd : clean up message creation logic a bit
-  o make bk ignore udevd and udevsend binaries
-  o whitespace cleanups
-  o remove TODO item about BUS value, as it is now done
-  o add support for figuring out which device on the sysfs "chain" the rule applies to
-
-Kay Sievers:
-  o udevinfo - now a real program :)
-  o udevd - cleanup and better timeout handling
-  o udev - next round of udev event order daemon
-  o fix udevd exec
-  o udev - udevinfo with device chain walk
-  o spilt udev into pieces
-
-
-Summary of changes from v013 to v014
-============================================
-
-<ananthmg:rediffmail.com>:
-  o libsysfs update for refresh + namedev.c changes
-
-<christophe.varoqui:free.fr>:
-  o udev-013/extras/multipath update
-
-<flamingice:sourmilk.net>:
-  o minor patch for devfs rules
-
-Kay Sievers:
-  o udev - program to query all device attributes to build a rule
-  o set default owner/group in db - update
-  o udev - reverse user query options
-  o udev - kill %D from udev-test.pl
-  o add udev logging to info log
-  o udev - mention format string escape char in man page
-
-Greg Kroah-Hartman:
-  o misc code cleanups
-  o fixup logging.h to handle different logging options properly
-  o clean up the logging patch a bit to make the option more like the other options
-  o remove the %D modifier as it is not longer needed
-  o remove unneeded keyboard rule
-  o add usb_host and pci_bus to the class blacklist
-  o added input device rules to udev.rules and udev.rules.devfs
-  o 013_bk mark
-
-Hanna V. Linder:
-  o set default owner/group in db
-  o small cut n paste error fix
-
-Patrick Mansfield:
-  o update udev scsi_id to scsi_id 0.3
-
-
-Summary of changes from v012 to v013
-============================================
-
-<eike-hotplug:sf-tec.de>:
-  o LSB init script and other stuff
-
-<elkropac:students.zcu.cz>:
-  o fix udev directory for Debian init script
-
-<tiggi:infa.abo.fi>:
-  o udev 012 old gcc fixup
-
-Christophe Saout:
-  o add IGNORE rule type
-  o small cleanup
-
-Greg Kroah-Hartman:
-  o update TODO with some new, small items
-  o Cset exclude: greg@kroah.com|ChangeSet|20040113010256|48515
-  o update the README in a few places
-  o fix -d typo in the manpage update
-  o Fix stupid gcc "optimization" of 1 character printk() calls.... Ick
-  o oops, forgot to fix up the PROGRAM result from ID to RESULT in the config files
-  o Add alsa device rules and a few other devfs rules
-  o fix a few stale comments in namedev.c
-  o convert the default rules files to the new format
-  o convert the test shell scripts to the config file format
-  o add bus test for usb-serial bus
-  o Add some helpful messages if the user uses the older config file format
-  o added dri rule to the default config file
-  o added init.d udev script for debian
-  o add a script that tests the IGNORE rule
-  o add silly script that names cdrom drives based on the cd in them
-  o add cdrom rule for ide cdrom
-  o replace list_for_each with list_for_each_entry, saving a few lines of code
-  o add a blacklist of class devices we do not want to look at
-
-Kay Sievers:
-  o fix klibc with printf() and gcc
-  o udev - small script optimization
-  o udev - introduce format escape char
-  o udev - more CALLOUT is PROGRAM now
-  o udev - CALLOUT is PROGRAM now
-  o update documentation for new config file format
-  o more advanced user query options
-  o udev - simple debug tweak
-  o udev - drop all methods :)
-  o udev - advanced user query options
-  o udev - Makefile error
-  o udev - make exec_callout() reusable
-  o udev - exec status fix for klibc
-  o fix Silly udev script
-
-
-Summary of changes from v011 to v012
-============================================
-
-<azarah:nosferatu.za.org>:
-  o make symlink work properly if there is already a file in its place
-  o Fix udev gcc-2.95.4 compat
-
-<christophe.varoqui:free.fr>:
-  o extras multipath update
-  o extras multipath update
-
-Kay Sievers:
-  o mention user callable udev + options in man page
-  o make udev user callable to query the database
-  o depend on all .h files
-  o cleanup namedev_parse debug text
-  o extend exec_program[]
-  o ide-devfs.sh update
-  o fix for apply_format()
-  o check for empty symlink string
-  o 'ide' missing in bus_files[]
-  o small trivial cleanup of latest changes
-
-<mbuesch:freenet.de>:
-  o introduce signal handler
-
-<rml:ximian.com>:
-  o udev spec file update
-
-Greg Kroah-Hartman:
-  o minor grammer fixes for the udev_vs_devfs document
-  o move the dbus config file to etc/dbus-1/system.d/
-  o move the config files to etc/udev to clean up main directory a bit
-  o add Gentoo versions of the rules and permissions files
-  o if using glibc, link dynamically, as no one like 500Kb udev binaries
-  o minor change to udev_vs_devfs document
-  o added udev vs devfs supid document to the tree
-  o move the signal handling registration to after we have initialized enough stuff
-  o make ide-devfs.sh executable in the tree
-  o udev.permissions.debian - forgot the dm nodes
-  o update the udev.permissions.debian file with new entries
-  o added udev.init script for the Linux From Scratch project
-
-
-
-Summary of changes from v010 to v011
-============================================
-
-<mbuesch:freenet.de>:
-  o proper cleanup on udevdb_init() failure
-
-<mh:nadir.org>:
-  o patch udev 009-010 rpm spec file
-
-<svetljo:gmx.de>:
-  o fix udev sed Makefile usage
-
-Greg Kroah-Hartman:
-  o add documentation about the BUS key being optional for the LABEL rule
-  o add tests for LABEL rule with a device that has no bus
-  o Don't require the BUS value for the LABEL rule
-  o If a LABEL rule has a BUS id, then we must check to see if the device is on a bus
-  o add documentation about the BUS key being optional for the CALLOUT rule
-  o If a CALLOUT rule has a BUS id, then we must check to see if the device is on a bus
-  o Don't require the BUS value for the CALLOUT rule
-  o add test for callout rule with a device that has no bus
-  o 010_bk stamp
-  o added different build options to the rpm udev.spec file
-  o add pci to the bus_files list
-  o check for empty line a bit better in the parser
-  o more init script cleanups, the stop target now calls udev to cleanup instead of just removing the whole /udev directory
-  o make udev init script run udev in the background to let startup go much faster
-  o fix long delay for all devices in namedev
-
-
-Summary of changes from v009 to v010
-============================================
-
-<ananth:in.ibm.com>:
-  o change pgsize
-
-<christophe.varoqui:free.fr>:
-  o extras multipath update
-  o extras multipath update
-  o extras multipath update
-  o extras multipath update
-
-Kay Sievers:
-  o fix udev-test.pl
-  o small cleanup udev-remove.c
-  o experimental CALLOUT script for devfs ide node creation with cd, disc, part
-  o add any valid device
-  o introduce format char 'k' for kernel-name
-  o trivial make fixes
-  o don't overwrite old config on install
-  o udev-remove.c cleanups
-  o bug in udev-remove.c
-  o trivial cleanup parser changes
-
-<roman.kagan:itep.ru>:
-  o fix comment and whitespace handling in config files
-
-Adam Kropelin:
-  o Allow build with empty EXTRAS
-
-Daniel E. F. Stekloff:
-  o libsysfs 0.4.0 patch
-  o fix scsi_id segfault with udev-009
-  o add libsysfs docs
-
-David T. Hollis:
-  o mark config files as such in the rpm spec file
-
-Greg Kroah-Hartman:
-  o fix complier warning in namedev.c
-  o add documentation for the new '%k' modifier (kernel name replacement)
-  o add documentation about the multiple sysfs values that are now allowed for the LABEL rule
-  o add tests for multi-file LABEL rules
-  o add ability to have up to 5 SYSFS_ file/value pairs for the LABEL rule
-  o Just live with a sleep(1) in namedev for now until libsysfs is fixed up
-  o try to wait until the proper device file shows up in sysfs
-  o remove unneeded TODO and FIXME entry
-  o clean up the stand-alone tests to work properly on other people's machines
-  o add tests to catch whitespace and comment config file parsing errors
-
-
-Summary of changes from v008 to v009
-============================================
-
-<christophe.varoqui:free.fr>:
-  o more extras/multipath changes
-  o and more extras/multipath updates
-  o more extras/multipath updates
-  o yet more extras/multipath
-  o more extras/multipath updates
-  o extras/multipath update
-
-<david:fubar.dk>:
-  o D-BUS patch for udev-008
-
-<eike-hotplug:sf-tec.de>:
-  o add init.d/udev to "make install"
-  o add init.d/udev to the spec file
-
-Kay Sievers:
-  o don't rely on field order in namedev_parse
-  o get part of callout return string
-  o remove '\n' from end of callout return
-  o man-page mention multiple symlinks
-  o allow multiple symlinks
-  o cleanup man & remove symlink comment
-  o experimental (very simple) SYMLINK creation
-  o man page beauty
-  o pattern match for label method
-  o a bug in linefeed removal
-
-<rml:ximian.com>:
-  o remove udev from runlevels on uninstall
-  o install initscript in udev rpm
-
-Daniel E. F. Stekloff: