Index: hal/ghalmount.c
===================================================================
--- hal/ghalmount.c	(revision 1371)
+++ hal/ghalmount.c	(working copy)
@@ -57,6 +57,8 @@
 
   HalDevice *device;
   HalDevice *drive_device;
+
+  gboolean is_encrypted;
 };
 
 static GFile *
@@ -417,6 +419,8 @@
       is_crypto_cleartext = TRUE;
     }
 
+  m->is_encrypted = is_crypto_cleartext;
+
   /*g_warning ("drive_type='%s'", drive_type); */
   /*g_warning ("drive_bus='%s'", drive_bus); */
   /*g_warning ("drive_uses_removable_media=%d", drive_uses_removable_media); */
@@ -879,7 +883,15 @@
   return can_eject;
 }
 
+static gboolean
+g_hal_mount_is_encrypted (GMount *mount)
+{
+  GHalMount *hal_mount = G_HAL_MOUNT (mount);
 
+  return hal_mount->is_encrypted;
+}
+
+
 typedef struct {
   GObject *object;
   GAsyncReadyCallback callback;
@@ -1110,6 +1122,7 @@
   iface->get_volume = g_hal_mount_get_volume;
   iface->can_unmount = g_hal_mount_can_unmount;
   iface->can_eject = g_hal_mount_can_eject;
+  iface->is_encrypted = g_hal_mount_is_encrypted;
   iface->unmount = g_hal_mount_unmount;
   iface->unmount_finish = g_hal_mount_unmount_finish;
   iface->eject = g_hal_mount_eject;
