------------ udisks 1.0.1 ------------ udisks provides a daemon, D-Bus API and command line tools for managing disks and storage devices. All releases in the udisks 1.0 series will retain ABI compatibility at the D-Bus interface level. This means that any application built against udisks 1.0.x will work with udisks 1.0.y provided that y >= x. At this point we do not provide any ABI guarantees for the udisks(1) command-line tool (neither options nor the name). See the README file for more discussion of ABI guarantees. ATTENTION: This release fixes a local information disclosure: The device-mapper udev prober exposed the plaintext password of encrypted LUKS devices as an udev property "UDISKS_DM_TARGETS_PARAMS", which all local users can read without restriction. (CVE-2010-1149) The only affected version is udisks 1.0.0 (it was introduced in commit 2f0154); No release of DeviceKit-Disks is affected. See fdo #27494 for more details. Changes from udisks 1.0.0: David Zeuthen (3): Update NEWS for release Post-release version bump to 1.0.1 Update NEWS for release Martin Pitt (11): Set multimedia-player-ipod icon for iPod media players Allow other rules to set a more specific presentation icon Fix exit code of umount.udisks testsuite: Check that our udev probers do not leak key information testsuite: Test detection of kpartx LVM partitions Bug 27494 — publicly exports dm key information testsuite: Check presence and properties of loop devices part-id: Fix DM partition table detection job-drive-benchmark.c: Fix data types in error messages Hide Sony E-Book launcher partition add information about CVE-2010-1149 to NEWS Thanks to all our contributors. David Zeuthen, April 9, 2010 ------------ udisks 1.0.0 ------------ udisks provides a daemon, D-Bus API and command line tools for managing disks and storage devices. All releases in the udisks 1.0 series will retain ABI compatibility at the D-Bus interface level. This means that any application built against udisks 1.0.x will work with udisks 1.0.y provided that y >= x. At this point we do not provide any ABI guarantees for the udisks(1) command-line tool (neither options nor the name). See the README file for more discussion of ABI guarantees. Major changes from DeviceKit-disks 009: o The project has been renamed from DeviceKit-disks to udisks o Host Adapters, Ports and Expanders are now exported as D-Bus objects o A program for bridging D-Bus over TCP/IP over SSH has been provided (udisks-tcp-bridge). The udisks daemon is also announced via the Avahi mDNS/DNS-SD framework. o An API for benchmarking drives has been added o Support for LVM2 and Multipath has been added ABI incompatible changes from DeviceKit-disks 009: o The well-known system bus name has been changed from org.freedesktop.DeviceKit.Disks to org.freedesktop.UDisks o The well-known object path /org/freedesktop/DeviceKit/Disks has been changed to /org/freedesktop/UDisks. o The org.freedesktop.DeviceKit.Disks D-Bus interface name has been changed to org.freedesktop.UDisks o The org.freedesktop.DeviceKit.Disks.Device D-Bus interface name has been changed to org.freedesktop.UDisks.Device o The udev properties that udisks-daemon reads has been renamed from DKD_* to UDISKS_*. Detailed changes from DeviceKit-disks 009: Daniele Napolitano (1): Bug 26822 — Fix benchmarking for large files David Zeuthen (87): Post-release version bump to 010 Update udev rules to cope better with device-mapper Add a method to benchmark drives Add DriveWwn, DriveRotationalRate and DriveWriteCache properties Abort benchmark on IO errors Guesstimate the buffer size to use for benchmarking Initial stab at exporting storage controllers via D-Bus Fix type in udev rules for pci-id Also generate D-Bus docs for the Controller interface Add support for Port objects Rename Controller interface to Adapter Fix doc fallout from the Controller -> Adapter rename Export Fabric and NumPorts for ATA For SAS, report number of PHYs for the NumPorts property on Adapter Change Device::DrivePort (of type 'o') to Device::DrivePorts (of type 'ao') Export Port objects for SAS PHYs on the HBA Add support for SAS expanders Forgot to add prober for SAS expanders Fix typos in udev rules Rename from DeviceKit-disks to udisks, part 1 Rename to udisks - udev property names Rename to udisks - move helpers and probers to separate subdirs Rename to udisks - rename source files and symbols Update/add mode lines to all source files Reindent source code to adhere to the GNU-style Rename to udisks - nuke remaining references to Device-disks Update HACKING, README and COPYING files Update bug tracker address Update udev property names in the udisks(7) man page Add experimental bridging program for providing D-Bus access over TCP/IP Handle ATA controllers with only one port Remove debugging spew Avoid multiple inconsistent checks for adapter fabric type Fix up SATA/PATA detection slightly Export connector type on Port objects Make udisks-tcp-bridge connect to a DBusServer, not be a DBusServer Install udisks-tcp-bridge in $prefix/lib/udisks Take a secret from the client via stdin and use this to authorize ourselves Make Avahi announce a service of type _udisks-ssh._tcp for us Install udisks-tcp-bridge in /usr/bin Add a man page for udisks-tcp-bridge(1) Update NEWS Add media type udev rule for SD card reader in MacbookPro5,4 Use SUBSYSTEMS whenever using ATTRS First cut at LVM2 support Fix typo in udev rule for udisks-lvm-pv-export Get the LVM LV UUIDs from sysfs to avoid using liblvm2 in the dm prober Add methods for setting LVM2 VG and LV names Add method to remove/delete a LVM LV Add a method to create LVM2 Logical Volumes Minor update to LVM2 PV export routines Add methods for adding/removing PVs to a VG Use the PV UUID in LinuxLvm2VGRemovePV() to identify the PV First cut at device-mapper multipath support Add a DriveSimilarDevices property Make sure to fsync(2) the main block device when scrubbing signatures Tighten up checks for detecting kpartx partitions for dm-multipath Add udev rules for detecting some common USB card readers Require both SERIAL and WWN to be non-empty when matching up similar drives Don't copy data from each path into the virtual multipath device Copy identifying data from multipath components onto the multipath device Export multipath parameters as a textual string Make sure all devices are returned, even when handling change events When creating a LV, ensure that it is part of PV metadata until returning Add LinuxMdExpand method and rename LinuxMdAddComponent to LinuxMdAddSpare Rework partition table probing Export alignment offset for a partition Fix compiler warning Add doc/udisks-overrides.txt so 'make dist' works Update for new liblvm2app library Use DM_NAME instead of DM_UUID when determining partition number Improve debug output and support for the detach helper Update detach helper for current sysfs interface Add a --disable-remote-access option We're using the UDISKS_ prefix, not DKD_ Bug 24424 - Move UDISKS_MEDIA_AVAILABLE out of the part table prober Include stdout in mkfs error output Initialize variable before use Update TODO Revert "Bug 26996 — wrongly detects partition on unpartitioned VFAT device" Handle loopback devices Fix partition table probing during coldplug Update TODO Make it possible to disable LVM2 and dm-multipath support Guarantee that DeviceFilePresentation always contain something meaningful Add TODO item about UTF-8 and D-Bus properties Update NEWS for release Linus Torvalds (1): Speed up DeviceKit device probing on really slow devices Martin Pitt (32): Bug 24885 — LVM LVs now have NOPOLICY=0 Bug 25034 — PartitionModify() for GUID partitions does not work Bug 25043 — Crashes with atasmart.c:2701: sk_disk_set_blob: Assertion `blob' failed. Bug 25009 — ignore Western Digital SmartWare partitions Bug 24772 — Allow simulated SMART data on non-SMART devices Bug 24999 — Hide Compaq recovery partition type 0x12 Support building without lvm2app Bug 24446 — Add --helper-dir option Bug 24446 — Add a test suite Bug 24446 — automake integration of test suite Robustify evaluation of DM_SUSPEND testsuite: check --localstatedir configuration Add support for "disable polling" udev property testsuite: Fix LVM tests fix media detection of CD-ROMs Bug 26725 — add profiling in maintainer mode, build with -Werror fix compiler warnings Update .gitignore files testsuite: Ensure that volumes on raw partitions don't have a partition table Bug 26996 — wrongly detects partition on unpartitioned VFAT device testsuite: Add TODO item to test new support for loop devices testsuite: Get along with running gvfs/nautilus testsuite: Check partitions with filesystems udisks-part-id: Shuffle code to keep udev_device in main() Bug 26996 — wrongly detects partition on unpartitioned VFAT device udisks-part-id: Check ID_FS_TYPE from environment first testsuite: Use loop devices instead of ram disks testsuite: Add option to disable workarounds for race conditions TODO update for property update race conditions Bug 27072 — does not force-unmount for drives in fstab udisks-part-id: Simplify code Michael Biebl (8): Bug 24606 — Add support for ReiserFS Make sure udisks-helper-mdadm-expand is included in the dist tarball Include profile.h in dist tarball Include udisks-tcp-bridge.xml in dist tarball Respect DM_UDEV_DISABLE_DISK_RULES_FLAG from current LVM Drop obsolete rules for private LVM devices Drop obsolete rule for suspended LVM devices Bug 25424 — Update to stable API of udev/gudev/dbus tuxce (1): Bug 25012 ­Add "usefree" to vfat available options Thanks to all our contributors. David Zeuthen, March 15, 2010 ------------------- DeviceKit-disks 009 ------------------- DeviceKit-disks is a daemon that provide interfaces to obtain information and perform operations on storage devices. NOTE NOTE NOTE: This is an unstable release of DeviceKit-disks, all API is subject to change. David Zeuthen (15): Post-release version bump to 009 Various device-mapper and cryptsetup fixes Pass -T to cryptsetup to handle incorrect passphrases When updating holders/slaves, defer the updates to an idle handler Work around blkid incorrectly detecting FAT on extended partitions Use 'udevadm settle' instead of 15-second timeout Allow creating a partition table with same scheme as existing one Pass -F to mkfs.ext[234] to allow creating a filesystem on the whole disk Use unregister facility in dbus-glib 0.82 and misc life-cycle fixes Add new LinuxMdComponentPosition property Also ignore a device if DM_UDEV_DISABLE_OTHER_RULES_FLAG is set Use BLKPG_DEL_PARTITION when deleting partitions instead of libparted Use BLKPG_ADD_PARTITION when adding a partition Don't use hyphens in param names Update NEWS for release Martin Pitt (6): Bug 24673 — Support creating swap fs with labels Bug 24778 — throw_error() segfaults for daemon-internally called methods Bug 24757 — Bashism in luks helper breaks password changing Bug 24757 – Simplify helper-change-luks-password Bug 24679 — Support creating minix file systems Bug 24718 — Proper handling of missing mkfs.*/fsck.* David Zeuthen, November 2, 2009 ------------------- DeviceKit-disks 008 ------------------- DeviceKit-disks is a daemon that provide interfaces to obtain information and perform operations on storage devices. NOTE NOTE NOTE: This is an unstable release of DeviceKit-disks, all API is subject to change. David Zeuthen (6): Post-release version bump to 008 Actually inhibit the daemon when Inhibit() is called Bug 24054 – Devickit-disks doesn't support changing ntfs label Bug 24343 – Unintended side-effect when calling DriveDetach() Bug 24264 – Crash on removing NULL value from hash in device_remove() Update NEWS for release Martin Pitt (5): Bug 24052 – CDROM eject button is locked while CDROM is mounted Bug 24129 – Please mount vfat disks with shortname=mixed Bug 24351 – Firewire hard drive is considered system-internal Bug 24468 – part-id crashes if drive device node does not exist Bug 24499 – media players have USB drive icon Maxim Levitsky (1): Bug 24053 – MMC cards aren't automounted. David Zeuthen, October 16, 2009 ------------------- DeviceKit-disks 007 ------------------- DeviceKit-disks is a daemon that provide interfaces to obtain information and perform operations on storage devices. NOTE NOTE NOTE: This is an unstable release of DeviceKit-disks, all API is subject to change. David Zeuthen (17): Post-release version bump to 007 Bug 22914 – Require password to eject a CD or DVD mounted by the same user Rework ATA SMART handling Also be paranoid about the UUID containing '/' characters Use WindowsStyleCaps for property names Bug 23829 – Undefined value in partutil.c Bug 23828 – Undefined value in umount-devkit.c Bug 23827 – Undefined value Bug 23826 – NULL dereference Bug 23825 – Leak in update_info_mount_state Bug 23824 – Unused variable Bug 23823 – NULL dereference Bug 23764 – Small leak in update_drive_properties_from_sysfs Bug 23762 – Fix typo Bug 23579 – Must allow DBus Properties interface for g-d-u to work Bug 23926 – Error creating partition Update NEWS for release Evan Dandrea (1): Bug 23541 – PartitionTableCreate method times out Matthias Clasen (1): Bug 23761 – Some leaks David Zeuthen, September 18, 2009 ------------------- DeviceKit-disks 006 ------------------- DeviceKit-disks is a daemon that provide interfaces to obtain information and perform operations on storage devices. NOTE NOTE NOTE: This is an unstable release of DeviceKit-disks, all API is subject to change. David Zeuthen (22): Post-release version bump to 006 Add a way to spin down drives Fix segfault when starting a Linux MD array Fix polling process title and turn off noisy debugging spew Pass size of buffer to avoid Z_BUF_ERROR when compressing ATA SMART blob Add --poll-for-media option to devkit-disks(1) Work around media detection problems Move implementation of DrivePollMedia into a separate process Move data files into a separate directory Misc fixes for optical disc detection Fix up ATA SMART detection Add Device:drive-is-rotational property Add LinuxMdCreate method Rely on the disk to spin itself down Require latest libatasmart Fix up object path mapping Bug 23309 – Udev rules probe floppy drives when they shouldn't Add a new :device-presentation-nopolicy property Ignore loop and ram devices for now Make FilesystemMount() accept an 'auth_no_user_interaction' option Bug 23235 – Cannot mount disc with / (slash) in label Update NEWS for release Martin Pitt (1): Hide recovery, boot, and hidden partitions from desktops David Zeuthen, August 17, 2009 ------------------- DeviceKit-disks 005 ------------------- DeviceKit-disks is a daemon that provide interfaces to obtain information and perform operations on storage devices. NOTE NOTE NOTE: This is an unstable release of DeviceKit-disks, all API is subject to change. David Zeuthen (28): Move to using a capital letter for commit messages Port to polkit-1 Post-release version bump Remove unneeded code for PolicyKit Update to latest PolicyKit API Update to latest polkit API where PolkitAuthorizationResult is an object Catch up with latest polkit API changes Only check for ATA SMART if the device reports non-removable media Use PolkitDetails, not GHashTable to pass details to PolicyKit Add a pkg-config file The PolicyKit extensions dir has moved Add a DriveDetach() method to properly power down USB hard disk enclosures Don't insert NULL pointers in details Suspend USB device on DriveDetach() if it only has one interface Remove :drive-requires-eject and read udev props for detached/ejectable Use gudev-1.0 instead of devkit-gobject Fix bug when retrieving historical ATA SMART data Bug 22149 – Do not poll floppy drives Better handling of Floppy and Zip drives GIO modules, for the polkit action lookup module, need to be prefixed with Update udev rules Use ID_CDROM_MEDIA to detect optical drives Add API to check/repair Linux MD RAID arrays Sort out dbus-glib registration mess Remove unused SMART test files Clean up build a bit Use AM_SILENT_RULES if available Update NEWS for release David Zeuthen, June 19, 2009 ------------------- DeviceKit-disks 004 ------------------- DeviceKit-disks is a daemon that provide interfaces to obtain information and perform operations on storage devices. NOTE NOTE NOTE: This is an unstable release of DeviceKit-disks, all API is subject to change. David Zeuthen (54): use dev_t to identify mounts, not device files allow users with appropriate authorizations to unmount all fstab mounts add a --dump option to devkit-disks(1) only export holders/slaves if the devices are in our db only use a single PolicyKit action for Linux MD operations add newline for debug message export all linux-md raid devices (except ones marked as 'clear') avoid taking action if a component is removed from an array rework default mount options don't poll SATA AN drives fix up how device-is-system-internal is computed port to libatasmart forgot to add ATA SMART prober in last commit if BLKRRPART fails with EBUSY, just try a few more times allow job-num-tasks to be 0 (meaning "unknown") ensure a MS-DOS extended partition is busy if logical partitions are busy rework partition table handling print the scheme of the main partition table, never the nested one use /proc/self/mountinfo and handle a device being mounted in multiple pla export device-major and device-minor properties remove device-is-busy property remove a lot of unnecessary errors remove erase= option and the notion of tasks within jobs rework some of the ATA SMART stuff, go back to using sqlite fix udev rules to keep udev from complaining prefix all D-Bus objects paths with /org/freedesktop/DeviceKit/Disks add FindDeviceByMajorMinor() to look up a device by dev_t also move umount.devkit over to use the correct object paths change devkit-disks(1) to use device node paths instead of object paths install udev rules into /lib/udev/rules.d not /etc/udev/rules.d fix grammar/spelling for ATA SMART output in devkit-disks(1) remove debug spew from mount monitor remove hack for working around broken USB card reader use /var/run/DeviceKit-disks, not /tmp as a temporary directory bump version fix a race where /etc/fstab mount points where sometimes removed change default mount options for vfat to utf8=1 and shortname=lower fix some bugs in the man page add command line options to devkit-disks for refreshing ATA SMART data use correct dmode for iso9660 mounts also check if partitions on a device is busy remove debug spew add temporary workaround for btrfs rework how we detect whether a device is busy be more careful when probing for ATA SMART add device-presentation-hide property document influential udev properties in the DeviceKit-disks man page add property device-detection-time fix up some warnings allow the 'flush' mount option for vfat properly detect devices with vfat on the whole disk add support for ext2 add :device-media-detection-time property only consider Prefail attibutes when checking for bad attributes Matthias Clasen (3): fix up inhibit parameter handling fix typo in error name make umount work on mount points David Zeuthen, May 1st, 2009 ------------------- DeviceKit-disks 003 ------------------- DeviceKit-disks is a daemon that provide interfaces to obtain information and perform operations on storage devices. NOTE NOTE NOTE: This is an unstable release of DeviceKit-disks, all API is subject to change. David Zeuthen, March 2, 2009