------------
udisks 1.0.2
------------

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.

Changes from udisks 1.0.1:

David Zeuthen (5):
      Post-release version bump to 1.0.2
      Update to latest LVM2 API
      Don't probe non-data discs for partition tables
      Avoid using entities in introspection XML
      Also export UDISKS_DM_TARGET_PARAMS for 'multipath' target

Jiro SEKIBA (4):
      Add nilfs2 file system support
      Add nilfs2 label rename
      udisks: fix a bug of unquoted/unescaped label string
      udisks: escape backslash for label string

Marti Raudsepp (1):
      udisks: Avoid deprecated polkit_authority_get() function

Martin Pitt (24):
      testsuite: Check file permissions
      Bug 28075 — Do not have all files executable on vfat
      testsuite: mkfs() code cleanup
      Fix long hangs on probing nonexistant floppy drives
      Bug 28075 — Do not have files executable on NTFS
      Bug 26258 — initial btrfs support
      Fix btrfs properties
      profile.h: Add missing include
      testsuite: fix race with SMART data
      testsuite: Fix SMART test for SSDs
      testsuite: LVM: fix naming assumptions
      Fix mkfs.ext* arguments
      Fix creating NTFS on raw devices
      testsuite: Move to scsi_debug
      partutil: Explicitly use PART_TYPE_UNKNOWN
      Fix uninitialized variable in part-id
      testsuite: Check forced removal of LUKS encrypted device
      testsuite: Test forced removal of standard devices
      Fix building with Linux 2.6.37
      testsuite: Check correct handling of labels with funny characters
      testsuite: use shorter label for renaming
      Escape NTFS labels properly
      simplify validate_and_escape_label()
      Fix hang on setting invalid VFAT labels

Mathieu Trudel-Lapierre (1):
      Bug 30332 — udisks does not tear down LUKS devices when the slave is forci

Matt Zimmerman (1):
      Add udisks --eject option

Thanks to all our contributors.

Martin Pitt,
December 2, 2010

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