summaryrefslogtreecommitdiff
path: root/libhal-storage
diff options
context:
space:
mode:
authorDavid Zeuthen <david@fubar.dk>2006-01-15 16:54:06 +0000
committerDavid Zeuthen <david@fubar.dk>2006-01-15 16:54:06 +0000
commitccc75e03b02752fc8b24effd1e9ba1d5426a320c (patch)
tree32dc601647136d33f4b5638209ab5e19559698ea /libhal-storage
parentb9c710ac864074be92b88c4deb2ae88944927d62 (diff)
Respect volume.ignore and refuse to mount if set to TRUE
Export libhal_volume_should_ignore as a public method (API addition, no breakage) New function. (libhal_volume_from_udi): Set vol->ignore_volume from property Introduce volume.ignore as a way for vendors and admins to signify a volume should be ignored. Add an entry for my Firewire card reader (yes, it works perfectly on my PB 12" G4 running Fedora Rawhide - it's fast too.. vroom vroom).
Diffstat (limited to 'libhal-storage')
-rw-r--r--libhal-storage/libhal-storage.c11
-rw-r--r--libhal-storage/libhal-storage.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/libhal-storage/libhal-storage.c b/libhal-storage/libhal-storage.c
index 22982785..00c2e3a9 100644
--- a/libhal-storage/libhal-storage.c
+++ b/libhal-storage/libhal-storage.c
@@ -714,6 +714,9 @@ struct LibHalVolume_s {
char *mount_filesystem;
dbus_bool_t should_mount;
+ dbus_bool_t ignore_volume;
+
+
char mount_options[MOUNT_OPTIONS_SIZE];
};
@@ -1055,6 +1058,8 @@ libhal_volume_from_udi (LibHalContext *hal_ctx, const char *udi)
LIBHAL_PROP_EXTRACT_BOOL ("volume.is_mounted", vol->is_mounted);
LIBHAL_PROP_EXTRACT_STRING ("volume.fsusage", vol_fsusage_textual);
+ LIBHAL_PROP_EXTRACT_BOOL ("volume.ignore", vol->ignore_volume);
+
LIBHAL_PROP_EXTRACT_BOOL ("volume.is_disc", vol->is_disc);
LIBHAL_PROP_EXTRACT_STRING ("volume.disc.type", disc_type_textual);
LIBHAL_PROP_EXTRACT_BOOL ("volume.disc.has_audio", vol->disc_has_audio);
@@ -1454,6 +1459,12 @@ libhal_volume_get_disc_type (LibHalVolume *volume)
return volume->disc_type;
}
+dbus_bool_t
+libhal_volume_should_ignore (LibHalVolume *volume)
+{
+ return volume->ignore_volume;
+}
+
char **
libhal_drive_find_all_volumes (LibHalContext *hal_ctx, LibHalDrive *drive, int *num_volumes)
{
diff --git a/libhal-storage/libhal-storage.h b/libhal-storage/libhal-storage.h
index 73c18746..28604fe1 100644
--- a/libhal-storage/libhal-storage.h
+++ b/libhal-storage/libhal-storage.h
@@ -288,6 +288,8 @@ LibHalVolumeDiscType libhal_volume_get_disc_type (LibHalVolume
int libhal_volume_get_msdos_part_table_type (LibHalVolume *volume);
+dbus_bool_t libhal_volume_should_ignore (LibHalVolume *volume);
+
char *libhal_volume_policy_compute_size_as_string (LibHalVolume *volume);
char *libhal_volume_policy_compute_display_name (LibHalDrive *drive,