+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
============================================