platform/upstream/udisks2.git
14 years agoBug 23823 – NULL dereference
David Zeuthen [Fri, 18 Sep 2009 20:26:27 +0000 (16:26 -0400)]
Bug 23823 – NULL dereference

14 years agoBug 23824 – Unused variable
David Zeuthen [Fri, 18 Sep 2009 20:23:42 +0000 (16:23 -0400)]
Bug 23824 – Unused variable

14 years agoBug 23825 – Leak in update_info_mount_state
David Zeuthen [Fri, 18 Sep 2009 20:22:12 +0000 (16:22 -0400)]
Bug 23825 – Leak in update_info_mount_state

14 years agoBug 23826 – NULL dereference
David Zeuthen [Fri, 18 Sep 2009 20:19:44 +0000 (16:19 -0400)]
Bug 23826 – NULL dereference

14 years agoBug 23827 – Undefined value
David Zeuthen [Fri, 18 Sep 2009 20:15:59 +0000 (16:15 -0400)]
Bug 23827 – Undefined value

14 years agoBug 23828 – Undefined value in umount-devkit.c
David Zeuthen [Fri, 18 Sep 2009 20:13:31 +0000 (16:13 -0400)]
Bug 23828 – Undefined value in umount-devkit.c

14 years agoBug 23829 – Undefined value in partutil.c
David Zeuthen [Fri, 18 Sep 2009 20:11:46 +0000 (16:11 -0400)]
Bug 23829 – Undefined value in partutil.c

14 years agoUse WindowsStyleCaps for property names
David Zeuthen [Fri, 18 Sep 2009 16:23:39 +0000 (12:23 -0400)]
Use WindowsStyleCaps for property names

Technically any UTF-8 string can be used for a property name. However,
some tools are incapable of handling property names with dashes ('-')
in them. So change to using the recommending naming. See

http://lists.freedesktop.org/archives/devkit-devel/2009-September/000430.html

for discussion.

This is based on a patch from Davide Bettio <davide.bettio@kdemail.net>.

14 years agoAlso be paranoid about the UUID containing '/' characters
David Zeuthen [Tue, 15 Sep 2009 15:27:47 +0000 (11:27 -0400)]
Also be paranoid about the UUID containing '/' characters

This can't really happen (for known filesystems) so this "fix" is
really only for people playing along at home. See

 http://bugs.freedesktop.org/show_bug.cgi?id=23235

for more details.

14 years agoRework ATA SMART handling
David Zeuthen [Sun, 23 Aug 2009 18:12:49 +0000 (14:12 -0400)]
Rework ATA SMART handling

Basically make everything a lot simpler. Also don't store blobs in a
database. For now at least - we might want to add that feature back at
some point.

14 years agoBug 22914 – Require password to eject a CD or DVD mounted by the same user
David Zeuthen [Mon, 17 Aug 2009 20:48:09 +0000 (16:48 -0400)]
Bug 22914 – Require password to eject a CD or DVD mounted by the same user

Apparently this got messed up in the port to polkit1.

14 years agoPost-release version bump to 007
David Zeuthen [Mon, 17 Aug 2009 18:10:02 +0000 (14:10 -0400)]
Post-release version bump to 007

14 years agoUpdate NEWS for release
David Zeuthen [Mon, 17 Aug 2009 17:50:56 +0000 (13:50 -0400)]
Update NEWS for release

14 years agoBug 23235 – Cannot mount disc with / (slash) in label
David Zeuthen [Mon, 17 Aug 2009 17:02:29 +0000 (13:02 -0400)]
Bug 23235 – Cannot mount disc with / (slash) in label

14 years agoMake FilesystemMount() accept an 'auth_no_user_interaction' option
David Zeuthen [Mon, 17 Aug 2009 15:55:01 +0000 (11:55 -0400)]
Make FilesystemMount() accept an 'auth_no_user_interaction' option

This allows automounters to request that no user interaction should ever
take place. See

 https://bugs.freedesktop.org/show_bug.cgi?id=22652

for discussion.

14 years agoIgnore loop and ram devices for now
David Zeuthen [Mon, 17 Aug 2009 15:02:12 +0000 (11:02 -0400)]
Ignore loop and ram devices for now

14 years agoAdd a new :device-presentation-nopolicy property
David Zeuthen [Mon, 17 Aug 2009 14:50:36 +0000 (10:50 -0400)]
Add a new :device-presentation-nopolicy property

Desktops should read this property and avoid automounting etc. if it
is set to 1.

14 years agoBug 23309 – Udev rules probe floppy drives when they shouldn't
David Zeuthen [Fri, 14 Aug 2009 15:07:24 +0000 (11:07 -0400)]
Bug 23309 – Udev rules probe floppy drives when they shouldn't

14 years agoFix up object path mapping
David Zeuthen [Mon, 10 Aug 2009 17:05:06 +0000 (13:05 -0400)]
Fix up object path mapping

In particular this failed with AoE devices which has basenames of the
form "etherd!e0.1". Should work for everything now.

14 years agoHide recovery, boot, and hidden partitions from desktops
Martin Pitt [Fri, 10 Jul 2009 16:31:07 +0000 (18:31 +0200)]
Hide recovery, boot, and hidden partitions from desktops

Set DKD_PRESENTATION_HIDE for partitions which desktops should hide, such as
EFI, Apple bootstrap, or recovery partitions.

For recovery partitions is a direct port of the earlier hal fdis:
http://cgit.freedesktop.org/hal/tree/fdi/policy/10osvendor/20-storage-methods.fdi#n80

Apple boostrap, EFI, and hidden partitions now don't rely on labels any more,
but directly check partitioning schema (mbr, GUID) and types.

libgdu evaluates this and exports it as device-presentation-hide
property, which gvfs respects.

https://bugs.freedesktop.org/show_bug.cgi?id=22707

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoRequire latest libatasmart
David Zeuthen [Sun, 9 Aug 2009 22:07:53 +0000 (18:07 -0400)]
Require latest libatasmart

This version of libatasmart has a new ABI/API with new features. We
won't initially take advantage of these new features so just do a
simple port for now.

14 years agoRely on the disk to spin itself down
David Zeuthen [Sun, 9 Aug 2009 18:39:47 +0000 (14:39 -0400)]
Rely on the disk to spin itself down

In other words, instead of playing games with watching
/sys/block/sdX/stat files and sending a STANDBY IMMEDIATE command when
these haven't changed for a while, just use the STANDBY command itself
with the timeout value.

This avoids having to wake up the daemon every five seconds. In
addition, this change ensures that device specific minimums are
respected.

We didn't do this in the original commit because while testing the
feature, some of disks, notably ones from WD, appeared to not respect
the STANDBY command. However, when moved to another enclosure (the
disks was initially in a SATA PM enclosure, it got moved to a SAS
enclosure) things started working again. Also turns out the WD disk in
question has a device specific timeout of 10 minutes.

14 years agoAdd LinuxMdCreate method
David Zeuthen [Sat, 8 Aug 2009 18:52:50 +0000 (14:52 -0400)]
Add LinuxMdCreate method

Also fix a bug in PartitionTableCreate so we don't return until the
partition table has actually been created.

14 years agoAdd Device:drive-is-rotational property
David Zeuthen [Wed, 5 Aug 2009 16:00:10 +0000 (12:00 -0400)]
Add Device:drive-is-rotational property

This new property can be used to make a distinction between hard disks
and SSDs, see

http://people.freedesktop.org/~david/palimpsest-new-treeview.png

for an example.

15 years agoFix up ATA SMART detection
David Zeuthen [Wed, 22 Jul 2009 14:53:54 +0000 (10:53 -0400)]
Fix up ATA SMART detection

Recent udev started using ata_id instead of scsi_id.

Also migrate from SYSFS to ATTR/ATTRS.

15 years agoMisc fixes for optical disc detection
David Zeuthen [Wed, 8 Jul 2009 20:14:27 +0000 (16:14 -0400)]
Misc fixes for optical disc detection

15 years agoMove data files into a separate directory
David Zeuthen [Tue, 7 Jul 2009 18:34:44 +0000 (14:34 -0400)]
Move data files into a separate directory

15 years agoMove implementation of DrivePollMedia into a separate process
David Zeuthen [Tue, 7 Jul 2009 01:24:50 +0000 (21:24 -0400)]
Move implementation of DrivePollMedia into a separate process

Much much better to do this from a helper process since some
devices/drivers may hang the process in state D (uninterruptible IO)
until the device was removed. This was the last place where we opened
the device from the daemon.

15 years agoWork around media detection problems
David Zeuthen [Tue, 7 Jul 2009 00:57:28 +0000 (20:57 -0400)]
Work around media detection problems

Seems that the kernel won't revalidate media unless O_NONBLOCK is
passed. This contradicts how things are supposed to work (O_NONBLOCK
is a hint to avoid testing things like media state), see
http://bugzilla.kernel.org/show_bug.cgi?id=13029 for more information.

So to be on the safe side, open the device both with and without
O_NONBLOCK.

15 years agoAdd --poll-for-media option to devkit-disks(1)
David Zeuthen [Tue, 7 Jul 2009 00:44:03 +0000 (20:44 -0400)]
Add --poll-for-media option to devkit-disks(1)

15 years agoPass size of buffer to avoid Z_BUF_ERROR when compressing ATA SMART blob
David Zeuthen [Sat, 4 Jul 2009 22:31:24 +0000 (18:31 -0400)]
Pass size of buffer to avoid Z_BUF_ERROR when compressing ATA SMART blob

15 years agoFix polling process title and turn off noisy debugging spew
David Zeuthen [Sat, 4 Jul 2009 19:44:26 +0000 (15:44 -0400)]
Fix polling process title and turn off noisy debugging spew

15 years agoFix segfault when starting a Linux MD array
David Zeuthen [Sat, 4 Jul 2009 19:41:47 +0000 (15:41 -0400)]
Fix segfault when starting a Linux MD array

15 years agoAdd a way to spin down drives
David Zeuthen [Sun, 21 Jun 2009 23:07:20 +0000 (19:07 -0400)]
Add a way to spin down drives

15 years agoPost-release version bump to 006
David Zeuthen [Fri, 19 Jun 2009 23:12:59 +0000 (19:12 -0400)]
Post-release version bump to 006

15 years agoUpdate NEWS for release
David Zeuthen [Fri, 19 Jun 2009 23:10:15 +0000 (19:10 -0400)]
Update NEWS for release

Also includes news about the 004 release since that slipped in the
previous release...

15 years agoUse AM_SILENT_RULES if available
David Zeuthen [Fri, 19 Jun 2009 22:55:20 +0000 (18:55 -0400)]
Use AM_SILENT_RULES if available

15 years agoClean up build a bit
David Zeuthen [Fri, 19 Jun 2009 22:51:26 +0000 (18:51 -0400)]
Clean up build a bit

15 years agoRemove unused SMART test files
David Zeuthen [Fri, 19 Jun 2009 22:41:03 +0000 (18:41 -0400)]
Remove unused SMART test files

15 years agoSort out dbus-glib registration mess
David Zeuthen [Fri, 19 Jun 2009 22:26:01 +0000 (18:26 -0400)]
Sort out dbus-glib registration mess

We sometimes segfaulted when stopping a RAID device. The problem here
was that we kept the exported D-Bus object around until it was
finalized (by using weak refs). This was problematic because several
change events were treated as add events but the state of the RAID
device was such that we didn't want to add the object anyway. So we
ended up unreffing the object. Which means that the job completion
func accessed a unreferenced object.

The solution here is to remove the object from our hashes as soon as
we want to remove it.

Since we don't have dbus_g_connection_unregister_g_object() just yet
(available in dbus-glib >= 0.81) we just keep the object on the
bus. If we later wants to add a new object but the old object is still
around we use an undocumented hack to unregister the object.

You will also need eggdbus >= 0.5, otherwise introspection won't work.

15 years agoAdd API to check/repair Linux MD RAID arrays
David Zeuthen [Thu, 18 Jun 2009 20:02:14 +0000 (16:02 -0400)]
Add API to check/repair Linux MD RAID arrays

15 years agoUse ID_CDROM_MEDIA to detect optical drives
David Zeuthen [Thu, 18 Jun 2009 17:16:57 +0000 (13:16 -0400)]
Use ID_CDROM_MEDIA to detect optical drives

This is available since udev 142 that we already depend on. This
change makes my USB stick from Sandisk "work" as "expected":

http://people.freedesktop.org/~david/thanks-sandisk.png

15 years agoUpdate udev rules
David Zeuthen [Thu, 18 Jun 2009 16:59:43 +0000 (12:59 -0400)]
Update udev rules

 - depend on udev >= 142 since that will pull in /sbin/blkid
 - avoid probing dm or md if it has been done already
 - don't create symlinks for dm

15 years agoGIO modules, for the polkit action lookup module, need to be prefixed with lib
David Zeuthen [Wed, 17 Jun 2009 19:32:02 +0000 (15:32 -0400)]
GIO modules, for the polkit action lookup module, need to be prefixed with lib

15 years agoBetter handling of Floppy and Zip drives
David Zeuthen [Tue, 16 Jun 2009 23:47:20 +0000 (19:47 -0400)]
Better handling of Floppy and Zip drives

Welcome to the 1980s

15 years agoBug 22149 – Do not poll floppy drives
David Zeuthen [Tue, 16 Jun 2009 20:41:03 +0000 (16:41 -0400)]
Bug 22149 – Do not poll floppy drives

Avoid polling PC floppy drives since that makes a lot of
noise. DrivePollMedia() still works, e.g.

 dbus-send --system --print-reply --dest=org.freedesktop.DeviceKit.Disks  \
           /org/freedesktop/DeviceKit/Disks/devices/fd0                   \
           org.freedesktop.DeviceKit.Disks.Device.DrivePollMedia

Note, though, that udev will not run /sbin/blkid on the device. So
desktops wanting to support this needs to ignore the fstype for floppy
drives and just attempt to mount it anyway.

15 years agoFix bug when retrieving historical ATA SMART data
David Zeuthen [Mon, 15 Jun 2009 19:51:54 +0000 (15:51 -0400)]
Fix bug when retrieving historical ATA SMART data

15 years agoUse gudev-1.0 instead of devkit-gobject
David Zeuthen [Mon, 15 Jun 2009 16:00:39 +0000 (12:00 -0400)]
Use gudev-1.0 instead of devkit-gobject

Can't believe how easy this port was...

15 years agoRemove :drive-requires-eject and read udev props for detached/ejectable
David Zeuthen [Mon, 15 Jun 2009 15:30:07 +0000 (11:30 -0400)]
Remove :drive-requires-eject and read udev props for detached/ejectable

15 years agoSuspend USB device on DriveDetach() if it only has one interface
David Zeuthen [Sun, 14 Jun 2009 17:12:33 +0000 (13:12 -0400)]
Suspend USB device on DriveDetach() if it only has one interface

This is nice for turning the lights off...

15 years agoDon't insert NULL pointers in details
David Zeuthen [Fri, 12 Jun 2009 15:44:43 +0000 (11:44 -0400)]
Don't insert NULL pointers in details

15 years agoAdd a DriveDetach() method to properly power down USB hard disk enclosures
David Zeuthen [Tue, 9 Jun 2009 00:13:01 +0000 (20:13 -0400)]
Add a DriveDetach() method to properly power down USB hard disk enclosures

This work is inspired by this thread

 http://thread.gmane.org/gmane.linux.hotplug.devel/14079

that is referencing this blog entry

 http://elliotli.blogspot.com/2009/01/safely-remove-usb-hard-drive-in-linux.html

The only difference here is that instead of unbinding the usb driver
from the usb device, we unbind the usb-storage driver from the usb
interface in question. This is to better handle multi-function devices
(e.g. multiple USB interfaces).

Things like GVfs (ie. Nautilus) can use this new method to offer an
"Eject" option for USB enclosures that can invoke DriveDetach() on
this service. (In GVfs, such devices currently have no eject option
since they don't support removable media).

15 years agoThe PolicyKit extensions dir has moved
David Zeuthen [Mon, 8 Jun 2009 17:33:17 +0000 (13:33 -0400)]
The PolicyKit extensions dir has moved

15 years agoAdd a pkg-config file
David Zeuthen [Tue, 2 Jun 2009 19:55:22 +0000 (15:55 -0400)]
Add a pkg-config file

15 years agoUse PolkitDetails, not GHashTable to pass details to PolicyKit
David Zeuthen [Tue, 26 May 2009 20:33:09 +0000 (16:33 -0400)]
Use PolkitDetails, not GHashTable to pass details to PolicyKit

15 years agoOnly check for ATA SMART if the device reports non-removable media
David Zeuthen [Tue, 19 May 2009 21:43:25 +0000 (17:43 -0400)]
Only check for ATA SMART if the device reports non-removable media

15 years agoCatch up with latest polkit API changes
David Zeuthen [Tue, 19 May 2009 16:09:57 +0000 (12:09 -0400)]
Catch up with latest polkit API changes

15 years agoUpdate to latest polkit API where PolkitAuthorizationResult is an object
David Zeuthen [Wed, 13 May 2009 16:21:08 +0000 (12:21 -0400)]
Update to latest polkit API where PolkitAuthorizationResult is an object

15 years agoUpdate to latest PolicyKit API
David Zeuthen [Wed, 13 May 2009 15:00:53 +0000 (11:00 -0400)]
Update to latest PolicyKit API

15 years agoRemove unneeded code for PolicyKit
David Zeuthen [Mon, 11 May 2009 21:14:37 +0000 (17:14 -0400)]
Remove unneeded code for PolicyKit

15 years agoPost-release version bump
David Zeuthen [Mon, 11 May 2009 21:03:02 +0000 (17:03 -0400)]
Post-release version bump

15 years agoPort to polkit-1
David Zeuthen [Mon, 11 May 2009 20:27:15 +0000 (16:27 -0400)]
Port to polkit-1

15 years agoMove to using a capital letter for commit messages
David Zeuthen [Mon, 11 May 2009 20:26:35 +0000 (16:26 -0400)]
Move to using a capital letter for commit messages

15 years agoonly consider Prefail attibutes when checking for bad attributes
David Zeuthen [Fri, 1 May 2009 21:54:12 +0000 (17:54 -0400)]
only consider Prefail attibutes when checking for bad attributes

15 years agoadd :device-media-detection-time property
David Zeuthen [Fri, 1 May 2009 20:02:18 +0000 (16:02 -0400)]
add :device-media-detection-time property

This property aids desktop automounters in determining they shouldn't
automount devices that are created as a result of
formatting/partitioning.

15 years agoadd support for ext2
David Zeuthen [Wed, 29 Apr 2009 16:48:52 +0000 (12:48 -0400)]
add support for ext2

This is sometimes wanted for filesystems on flash devices.

15 years agoproperly detect devices with vfat on the whole disk
David Zeuthen [Thu, 16 Apr 2009 17:04:33 +0000 (13:04 -0400)]
properly detect devices with vfat on the whole disk

See https://bugzilla.redhat.com/show_bug.cgi?id=495876

15 years agoallow the 'flush' mount option for vfat
David Zeuthen [Wed, 15 Apr 2009 18:39:18 +0000 (14:39 -0400)]
allow the 'flush' mount option for vfat

15 years agofix up some warnings
David Zeuthen [Wed, 15 Apr 2009 16:56:02 +0000 (12:56 -0400)]
fix up some warnings

15 years agoadd property device-detection-time
David Zeuthen [Wed, 15 Apr 2009 15:16:58 +0000 (11:16 -0400)]
add property device-detection-time

15 years agodocument influential udev properties in the DeviceKit-disks man page
David Zeuthen [Wed, 15 Apr 2009 14:48:00 +0000 (10:48 -0400)]
document influential udev properties in the DeviceKit-disks man page

15 years agoadd device-presentation-hide property
David Zeuthen [Wed, 15 Apr 2009 14:47:24 +0000 (10:47 -0400)]
add device-presentation-hide property

This is useful for a number of things

 - hiding firmware/update partitions (similar to how volume.ignore is used
   in HAL to hide e.g. HP_RECOVERY, RECOVERY etc. partitions)

 - hiding unwanted things used in things like live cd environments, cf.
   https://bugzilla.redhat.com/show_bug.cgi?id=495170

15 years agobe more careful when probing for ATA SMART
David Zeuthen [Sun, 12 Apr 2009 19:25:41 +0000 (15:25 -0400)]
be more careful when probing for ATA SMART

See https://bugzilla.redhat.com/show_bug.cgi?id=495286 for where we
trash a CD-RW medium when running off a live cd.

15 years agorework how we detect whether a device is busy
David Zeuthen [Sun, 12 Apr 2009 16:14:36 +0000 (12:14 -0400)]
rework how we detect whether a device is busy

Commit c1447a2e8a0d83347330bbfd2810f98172e8b962 was a bit overeager
insofor that it made it impossible to create/delete/modify partitions
if other partitions on the same device are busy.

15 years agoadd temporary workaround for btrfs
David Zeuthen [Sun, 12 Apr 2009 15:39:23 +0000 (11:39 -0400)]
add temporary workaround for btrfs

See

 https://bugzilla.redhat.com/show_bug.cgi?id=495152#c31
 http://article.gmane.org/gmane.comp.file-systems.btrfs/2851

for details.

15 years agoremove debug spew
David Zeuthen [Sun, 12 Apr 2009 15:38:32 +0000 (11:38 -0400)]
remove debug spew

15 years agoalso check if partitions on a device is busy
David Zeuthen [Thu, 9 Apr 2009 17:58:19 +0000 (13:58 -0400)]
also check if partitions on a device is busy

This fixes a bug where it was possible to erase /dev/sdb while
/dev/sdb1 was mounted.

15 years agouse correct dmode for iso9660 mounts
David Zeuthen [Thu, 9 Apr 2009 15:13:41 +0000 (11:13 -0400)]
use correct dmode for iso9660 mounts

Reported by yaneti@declera.com

https://bugzilla.redhat.com/show_bug.cgi?id=495018

15 years agoadd command line options to devkit-disks for refreshing ATA SMART data
David Zeuthen [Wed, 8 Apr 2009 18:35:24 +0000 (14:35 -0400)]
add command line options to devkit-disks for refreshing ATA SMART data

15 years agofix some bugs in the man page
David Zeuthen [Wed, 8 Apr 2009 18:20:57 +0000 (14:20 -0400)]
fix some bugs in the man page

15 years agochange default mount options for vfat to utf8=1 and shortname=lower
David Zeuthen [Wed, 8 Apr 2009 17:18:19 +0000 (13:18 -0400)]
change default mount options for vfat to utf8=1 and shortname=lower

See https://bugzilla.redhat.com/show_bug.cgi?id=489222 for details.

15 years agofix a race where /etc/fstab mount points where sometimes removed
David Zeuthen [Wed, 8 Apr 2009 16:55:51 +0000 (12:55 -0400)]
fix a race where /etc/fstab mount points where sometimes removed

15 years agobump version
David Zeuthen [Mon, 6 Apr 2009 23:50:35 +0000 (19:50 -0400)]
bump version

Should have done this right after releasing 003 but meh.

15 years agouse /var/run/DeviceKit-disks, not /tmp as a temporary directory
David Zeuthen [Mon, 6 Apr 2009 23:47:22 +0000 (19:47 -0400)]
use /var/run/DeviceKit-disks, not /tmp as a temporary directory

https://bugzilla.redhat.com/show_bug.cgi?id=491744

15 years agoremove hack for working around broken USB card reader
David Zeuthen [Mon, 6 Apr 2009 23:27:23 +0000 (19:27 -0400)]
remove hack for working around broken USB card reader

This add was added since one of my card readers appear to be broken;
other devices are fine.

On closer investigation this looks like a kernel bug. Filed here for
now

http://bugzilla.kernel.org/show_bug.cgi?id=13029

If needed we can add code to do the equivalent of 'touch /dev/sdXXX'
in the poller on the first ENOMEDIUM for a device being polled. But
let's see what the kernel guys says before resorting to such hacks.

15 years agoremove debug spew from mount monitor
David Zeuthen [Mon, 6 Apr 2009 21:38:57 +0000 (17:38 -0400)]
remove debug spew from mount monitor

15 years agofix grammar/spelling for ATA SMART output in devkit-disks(1)
David Zeuthen [Mon, 6 Apr 2009 21:08:51 +0000 (17:08 -0400)]
fix grammar/spelling for ATA SMART output in devkit-disks(1)

15 years agoinstall udev rules into /lib/udev/rules.d not /etc/udev/rules.d
David Zeuthen [Mon, 6 Apr 2009 19:11:52 +0000 (15:11 -0400)]
install udev rules into /lib/udev/rules.d not /etc/udev/rules.d

15 years agochange devkit-disks(1) to use device node paths instead of object paths
David Zeuthen [Mon, 6 Apr 2009 19:08:24 +0000 (15:08 -0400)]
change devkit-disks(1) to use device node paths instead of object paths

15 years agoalso move umount.devkit over to use the correct object paths
David Zeuthen [Mon, 6 Apr 2009 19:06:10 +0000 (15:06 -0400)]
also move umount.devkit over to use the correct object paths

15 years agoadd FindDeviceByMajorMinor() to look up a device by dev_t
David Zeuthen [Mon, 6 Apr 2009 18:36:35 +0000 (14:36 -0400)]
add FindDeviceByMajorMinor() to look up a device by dev_t

15 years agoprefix all D-Bus objects paths with /org/freedesktop/DeviceKit/Disks
David Zeuthen [Mon, 6 Apr 2009 16:59:47 +0000 (12:59 -0400)]
prefix all D-Bus objects paths with /org/freedesktop/DeviceKit/Disks

15 years agofix udev rules to keep udev from complaining
David Zeuthen [Mon, 6 Apr 2009 15:59:52 +0000 (11:59 -0400)]
fix udev rules to keep udev from complaining

15 years agorework some of the ATA SMART stuff, go back to using sqlite
David Zeuthen [Mon, 6 Apr 2009 15:51:15 +0000 (11:51 -0400)]
rework some of the ATA SMART stuff, go back to using sqlite

15 years agoremove erase= option and the notion of tasks within jobs
David Zeuthen [Thu, 2 Apr 2009 21:26:34 +0000 (17:26 -0400)]
remove erase= option and the notion of tasks within jobs

Secure erase is a bit K-rad and we never really implemented anything
but 0 and 1 passes. If we want this feature back (and I think we do;
e.g. it is useful to scrub the disks before selling a computer) we
should add a dedicated SecureErase() method that (optionally) can take
advantage of things like the ATA Secure Erase command-set.

While it is cute that jobs consist of tasks it is not used anymore now
that erase= is gone. So remove it to simplify the code.

15 years agoremove a lot of unnecessary errors
David Zeuthen [Thu, 2 Apr 2009 19:37:43 +0000 (15:37 -0400)]
remove a lot of unnecessary errors

For example it doesn't make sense to return this error

 org.freedesktop.DeviceKit.Disks.Error.NotPartition

since the client is already able to check in advance if the given
object really is a partition. So trim the error list to only contain
errors that the client can't predict. This leaves us with

 DEVKIT_DISKS_ERROR_FAILED,
 DEVKIT_DISKS_ERROR_BUSY,
 DEVKIT_DISKS_ERROR_CANCELLED,
 DEVKIT_DISKS_ERROR_INHIBITED,
 DEVKIT_DISKS_ERROR_INVALID_OPTION,
 DEVKIT_DISKS_ERROR_NOT_SUPPORTED,
 DEVKIT_DISKS_ERROR_ATA_SMART_WOULD_WAKEUP,

15 years agoremove device-is-busy property
David Zeuthen [Thu, 2 Apr 2009 19:14:43 +0000 (15:14 -0400)]
remove device-is-busy property

This should never have been a property since

 - we are not really ready to make that kind of guarantee; another
   program may have the device open and then we're going to fail
   with EBUSY and return a Busy D-Bus error

 - it is computed on demand and that makes it difficult to determine
   when it changes value and thus trigger a PropertyChanged event

Currently this property is not used by gnome-disk-utility. If it turns
out that we need something like this we can add a Device.IsBusy()
method.

15 years agoexport device-major and device-minor properties
David Zeuthen [Thu, 2 Apr 2009 18:37:57 +0000 (14:37 -0400)]
export device-major and device-minor properties

This makes it easier for clients wanting to fool around with
/proc/self/mountinfo themselves.

15 years agouse /proc/self/mountinfo and handle a device being mounted in multiple places
David Zeuthen [Thu, 2 Apr 2009 17:54:20 +0000 (13:54 -0400)]
use /proc/self/mountinfo and handle a device being mounted in multiple places

This is an effort to fix

 https://bugzilla.redhat.com/show_bug.cgi?id=491924

Basically we have to somehow cope with a device being mounted in
multiple places. So we replace the property

 String device-mount-path

with an array of mount paths

 String device-mount-paths[]

We also try to make an effort to ensure that the shortest mount point
is shown before others. E.g. if you bind mount / on /foo then

 device-mount-paths = ["/", "/foo"]

This means that desktop clients can just take the first mount path.

Also make a note that this is the mount point in the root
namespace. On systems clients running in other namespaces care has to
be taken; in this case the client probably needs to examine
/proc/self/mountinfo on his own to determine if a given block device
is mounted or not.

Also drop support for the 'remount' option; we might add it back later
but since we now support multiple mount points it makes everything a
bit weird.

15 years agoprint the scheme of the main partition table, never the nested one
David Zeuthen [Tue, 31 Mar 2009 20:54:33 +0000 (16:54 -0400)]
print the scheme of the main partition table, never the nested one

To avoid e.g. 'embr' for the scheme for logical partitions.