libhal-storage.h revision 2912:85ea316d9c18
1/***************************************************************************
2 * CVSID: $Id$
3 *
4 * libhal-storage.h : HAL convenience library for storage devices and volumes
5 *
6 * Copyright (C) 2004 Red Hat, Inc.
7 *
8 * Author: David Zeuthen <davidz@redhat.com>
9 *
10 * Licensed under the Academic Free License version 2.1
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 * GNU General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
25 *
26 **************************************************************************/
27
28#ifndef LIBHAL_STORAGE_H
29#define LIBHAL_STORAGE_H
30
31#include <libhal.h>
32
33#if defined(__cplusplus)
34extern "C" {
35#if 0
36} /* shut up emacs indenting */
37#endif
38#endif
39
40struct LibHalDrive_s;
41typedef struct LibHalDrive_s LibHalDrive;
42struct LibHalVolume_s;
43typedef struct LibHalVolume_s LibHalVolume;
44struct LibHalStoragePolicy_s;
45typedef struct LibHalStoragePolicy_s LibHalStoragePolicy;
46
47
48typedef enum {
49	LIBHAL_STORAGE_ICON_DRIVE_REMOVABLE_DISK           = 0x10000,
50	LIBHAL_STORAGE_ICON_DRIVE_REMOVABLE_DISK_IDE       = 0x10001,
51	LIBHAL_STORAGE_ICON_DRIVE_REMOVABLE_DISK_SCSI      = 0x10002,
52	LIBHAL_STORAGE_ICON_DRIVE_REMOVABLE_DISK_USB       = 0x10003,
53	LIBHAL_STORAGE_ICON_DRIVE_REMOVABLE_DISK_IEEE1394  = 0x10004,
54	LIBHAL_STORAGE_ICON_DRIVE_DISK                     = 0x10100,
55	LIBHAL_STORAGE_ICON_DRIVE_DISK_IDE                 = 0x10101,
56	LIBHAL_STORAGE_ICON_DRIVE_DISK_SCSI                = 0x10102,
57	LIBHAL_STORAGE_ICON_DRIVE_DISK_USB                 = 0x10103,
58	LIBHAL_STORAGE_ICON_DRIVE_DISK_IEEE1394            = 0x10104,
59	LIBHAL_STORAGE_ICON_DRIVE_CDROM                    = 0x10200,
60	LIBHAL_STORAGE_ICON_DRIVE_CDROM_IDE                = 0x10201,
61	LIBHAL_STORAGE_ICON_DRIVE_CDROM_SCSI               = 0x10202,
62	LIBHAL_STORAGE_ICON_DRIVE_CDROM_USB                = 0x10203,
63	LIBHAL_STORAGE_ICON_DRIVE_CDROM_IEEE1394           = 0x10204,
64	LIBHAL_STORAGE_ICON_DRIVE_FLOPPY                   = 0x10300,
65	LIBHAL_STORAGE_ICON_DRIVE_FLOPPY_IDE               = 0x10301,
66	LIBHAL_STORAGE_ICON_DRIVE_FLOPPY_SCSI              = 0x10302,
67	LIBHAL_STORAGE_ICON_DRIVE_FLOPPY_USB               = 0x10303,
68	LIBHAL_STORAGE_ICON_DRIVE_FLOPPY_IEEE1394          = 0x10304,
69	LIBHAL_STORAGE_ICON_DRIVE_TAPE                     = 0x10400,
70	LIBHAL_STORAGE_ICON_DRIVE_COMPACT_FLASH            = 0x10500,
71	LIBHAL_STORAGE_ICON_DRIVE_MEMORY_STICK             = 0x10600,
72	LIBHAL_STORAGE_ICON_DRIVE_SMART_MEDIA              = 0x10700,
73	LIBHAL_STORAGE_ICON_DRIVE_SD_MMC                   = 0x10800,
74	LIBHAL_STORAGE_ICON_DRIVE_CAMERA                   = 0x10900,
75	LIBHAL_STORAGE_ICON_DRIVE_PORTABLE_AUDIO_PLAYER    = 0x10a00,
76	LIBHAL_STORAGE_ICON_DRIVE_ZIP                      = 0x10b00,
77        LIBHAL_STORAGE_ICON_DRIVE_JAZ                      = 0x10c00,
78        LIBHAL_STORAGE_ICON_DRIVE_FLASH_KEY                = 0x10d00,
79
80	LIBHAL_STORAGE_ICON_VOLUME_REMOVABLE_DISK          = 0x20000,
81	LIBHAL_STORAGE_ICON_VOLUME_REMOVABLE_DISK_IDE      = 0x20001,
82	LIBHAL_STORAGE_ICON_VOLUME_REMOVABLE_DISK_SCSI     = 0x20002,
83	LIBHAL_STORAGE_ICON_VOLUME_REMOVABLE_DISK_USB      = 0x20003,
84	LIBHAL_STORAGE_ICON_VOLUME_REMOVABLE_DISK_IEEE1394 = 0x20004,
85	LIBHAL_STORAGE_ICON_VOLUME_DISK                    = 0x20100,
86	LIBHAL_STORAGE_ICON_VOLUME_DISK_IDE                = 0x20101,
87	LIBHAL_STORAGE_ICON_VOLUME_DISK_SCSI               = 0x20102,
88	LIBHAL_STORAGE_ICON_VOLUME_DISK_USB                = 0x20103,
89	LIBHAL_STORAGE_ICON_VOLUME_DISK_IEEE1394           = 0x20104,
90	LIBHAL_STORAGE_ICON_VOLUME_CDROM                   = 0x20200,
91	LIBHAL_STORAGE_ICON_VOLUME_CDROM_IDE               = 0x20201,
92	LIBHAL_STORAGE_ICON_VOLUME_CDROM_SCSI              = 0x20202,
93	LIBHAL_STORAGE_ICON_VOLUME_CDROM_USB               = 0x20203,
94	LIBHAL_STORAGE_ICON_VOLUME_CDROM_IEEE1394          = 0x20204,
95	LIBHAL_STORAGE_ICON_VOLUME_FLOPPY                  = 0x20300,
96	LIBHAL_STORAGE_ICON_VOLUME_FLOPPY_IDE              = 0x20301,
97	LIBHAL_STORAGE_ICON_VOLUME_FLOPPY_SCSI             = 0x20302,
98	LIBHAL_STORAGE_ICON_VOLUME_FLOPPY_USB              = 0x20303,
99	LIBHAL_STORAGE_ICON_VOLUME_FLOPPY_IEEE1394         = 0x20304,
100	LIBHAL_STORAGE_ICON_VOLUME_TAPE                    = 0x20400,
101	LIBHAL_STORAGE_ICON_VOLUME_COMPACT_FLASH           = 0x20500,
102	LIBHAL_STORAGE_ICON_VOLUME_MEMORY_STICK            = 0x20600,
103	LIBHAL_STORAGE_ICON_VOLUME_SMART_MEDIA             = 0x20700,
104	LIBHAL_STORAGE_ICON_VOLUME_SD_MMC                  = 0x20800,
105	LIBHAL_STORAGE_ICON_VOLUME_CAMERA                  = 0x20900,
106	LIBHAL_STORAGE_ICON_VOLUME_PORTABLE_AUDIO_PLAYER   = 0x20a00,
107	LIBHAL_STORAGE_ICON_VOLUME_ZIP                     = 0x20b00,
108        LIBHAL_STORAGE_ICON_VOLUME_JAZ                     = 0x20c00,
109        LIBHAL_STORAGE_ICON_VOLUME_FLASH_KEY               = 0x20d00,
110
111	LIBHAL_STORAGE_ICON_DISC_CDROM                     = 0x30000,
112	LIBHAL_STORAGE_ICON_DISC_CDR                       = 0x30001,
113	LIBHAL_STORAGE_ICON_DISC_CDRW                      = 0x30002,
114	LIBHAL_STORAGE_ICON_DISC_DVDROM                    = 0x30003,
115	LIBHAL_STORAGE_ICON_DISC_DVDRAM                    = 0x30004,
116	LIBHAL_STORAGE_ICON_DISC_DVDR                      = 0x30005,
117	LIBHAL_STORAGE_ICON_DISC_DVDRW                     = 0x30006,
118	LIBHAL_STORAGE_ICON_DISC_DVDPLUSR                  = 0x30007,
119	LIBHAL_STORAGE_ICON_DISC_DVDPLUSRW                 = 0x30008,
120	LIBHAL_STORAGE_ICON_DISC_DVDPLUSRWDL               = 0x30009,
121	LIBHAL_STORAGE_ICON_DISC_BDROM                     = 0x3000a,
122	LIBHAL_STORAGE_ICON_DISC_BDR                       = 0x3000b,
123	LIBHAL_STORAGE_ICON_DISC_BDRE                      = 0x3000c,
124	LIBHAL_STORAGE_ICON_DISC_HDDVDROM                  = 0x3000d,
125	LIBHAL_STORAGE_ICON_DISC_HDDVDR                    = 0x3000e,
126	LIBHAL_STORAGE_ICON_DISC_HDDVDRW                   = 0x3000f
127} LibHalStoragePolicyIcon;
128
129typedef struct {
130	LibHalStoragePolicyIcon icon;
131	const char *icon_path;
132} LibHalStoragePolicyIconPair;
133
134LibHalStoragePolicy *libhal_storage_policy_new		    (void) LIBHAL_DEPRECATED;
135void                 libhal_storage_policy_free		    (LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
136
137void                 libhal_storage_policy_set_icon_path    (LibHalStoragePolicy *policy,
138		   					     LibHalStoragePolicyIcon icon,
139							     const char *path) LIBHAL_DEPRECATED;
140
141void                 libhal_storage_policy_set_icon_mapping (LibHalStoragePolicy *policy,
142							     LibHalStoragePolicyIconPair *pairs) LIBHAL_DEPRECATED;
143const char  	    *libhal_storage_policy_lookup_icon	    (LibHalStoragePolicy *policy,
144						  	     LibHalStoragePolicyIcon icon) LIBHAL_DEPRECATED;
145
146typedef enum {
147	LIBHAL_DRIVE_BUS_UNKNOWN     = 0x00,
148	LIBHAL_DRIVE_BUS_IDE         = 0x01,
149	LIBHAL_DRIVE_BUS_SCSI        = 0x02,
150	LIBHAL_DRIVE_BUS_USB         = 0x03,
151	LIBHAL_DRIVE_BUS_IEEE1394    = 0x04,
152	LIBHAL_DRIVE_BUS_CCW         = 0x05
153} LibHalDriveBus;
154
155typedef enum {
156	LIBHAL_DRIVE_TYPE_REMOVABLE_DISK        = 0x00,
157	LIBHAL_DRIVE_TYPE_DISK                  = 0x01,
158	LIBHAL_DRIVE_TYPE_CDROM                 = 0x02,
159	LIBHAL_DRIVE_TYPE_FLOPPY                = 0x03,
160	LIBHAL_DRIVE_TYPE_TAPE                  = 0x04,
161	LIBHAL_DRIVE_TYPE_COMPACT_FLASH         = 0x05,
162	LIBHAL_DRIVE_TYPE_MEMORY_STICK          = 0x06,
163	LIBHAL_DRIVE_TYPE_SMART_MEDIA           = 0x07,
164	LIBHAL_DRIVE_TYPE_SD_MMC                = 0x08,
165	LIBHAL_DRIVE_TYPE_CAMERA                = 0x09,
166	LIBHAL_DRIVE_TYPE_PORTABLE_AUDIO_PLAYER = 0x0a,
167	LIBHAL_DRIVE_TYPE_ZIP                   = 0x0b,
168	LIBHAL_DRIVE_TYPE_JAZ                   = 0x0c,
169	LIBHAL_DRIVE_TYPE_FLASHKEY              = 0x0d
170} LibHalDriveType;
171
172typedef enum {
173	LIBHAL_DRIVE_CDROM_CAPS_CDROM       = 0x00001,
174	LIBHAL_DRIVE_CDROM_CAPS_CDR         = 0x00002,
175	LIBHAL_DRIVE_CDROM_CAPS_CDRW        = 0x00004,
176	LIBHAL_DRIVE_CDROM_CAPS_DVDRAM      = 0x00008,
177	LIBHAL_DRIVE_CDROM_CAPS_DVDROM      = 0x00010,
178	LIBHAL_DRIVE_CDROM_CAPS_DVDR        = 0x00020,
179	LIBHAL_DRIVE_CDROM_CAPS_DVDRW       = 0x00040,
180	LIBHAL_DRIVE_CDROM_CAPS_DVDPLUSR    = 0x00080,
181	LIBHAL_DRIVE_CDROM_CAPS_DVDPLUSRW   = 0x00100,
182	LIBHAL_DRIVE_CDROM_CAPS_DVDPLUSRDL  = 0x00200,
183	LIBHAL_DRIVE_CDROM_CAPS_DVDPLUSRWDL = 0x00400,
184	LIBHAL_DRIVE_CDROM_CAPS_BDROM       = 0x00800,
185	LIBHAL_DRIVE_CDROM_CAPS_BDR         = 0x01000,
186	LIBHAL_DRIVE_CDROM_CAPS_BDRE        = 0x02000,
187	LIBHAL_DRIVE_CDROM_CAPS_HDDVDROM    = 0x04000,
188	LIBHAL_DRIVE_CDROM_CAPS_HDDVDR      = 0x08000,
189	LIBHAL_DRIVE_CDROM_CAPS_HDDVDRW     = 0x10000
190} LibHalDriveCdromCaps;
191
192LibHalDrive         *libhal_drive_from_udi                    (LibHalContext *hal_ctx,
193							       const char *udi);
194LibHalDrive         *libhal_drive_from_device_file            (LibHalContext *hal_ctx,
195							       const char *device_file);
196void                 libhal_drive_free                        (LibHalDrive *drive);
197
198dbus_bool_t          libhal_drive_is_hotpluggable          (LibHalDrive      *drive);
199dbus_bool_t          libhal_drive_uses_removable_media     (LibHalDrive      *drive);
200dbus_bool_t          libhal_drive_is_media_detected        (LibHalDrive      *drive);
201dbus_uint64_t        libhal_drive_get_size                 (LibHalDrive      *drive);
202dbus_uint64_t        libhal_drive_get_media_size           (LibHalDrive      *drive);
203const char          *libhal_drive_get_partition_scheme     (LibHalDrive      *drive);
204dbus_bool_t          libhal_drive_no_partitions_hint       (LibHalDrive      *drive);
205dbus_bool_t          libhal_drive_requires_eject           (LibHalDrive      *drive);
206LibHalDriveType      libhal_drive_get_type                 (LibHalDrive      *drive);
207LibHalDriveBus       libhal_drive_get_bus                  (LibHalDrive      *drive);
208LibHalDriveCdromCaps libhal_drive_get_cdrom_caps           (LibHalDrive      *drive);
209unsigned int         libhal_drive_get_device_major         (LibHalDrive      *drive);
210unsigned int         libhal_drive_get_device_minor         (LibHalDrive      *drive);
211const char          *libhal_drive_get_type_textual         (LibHalDrive      *drive);
212const char          *libhal_drive_get_device_file          (LibHalDrive      *drive);
213const char          *libhal_drive_get_udi                  (LibHalDrive      *drive);
214const char          *libhal_drive_get_serial               (LibHalDrive      *drive);
215const char          *libhal_drive_get_firmware_version     (LibHalDrive      *drive);
216const char          *libhal_drive_get_model                (LibHalDrive      *drive);
217const char          *libhal_drive_get_vendor               (LibHalDrive      *drive);
218const char          *libhal_drive_get_physical_device_udi  (LibHalDrive      *drive);
219
220const char          *libhal_drive_get_dedicated_icon_drive    (LibHalDrive      *drive);
221const char          *libhal_drive_get_dedicated_icon_volume   (LibHalDrive      *drive);
222
223char                *libhal_drive_policy_compute_display_name (LibHalDrive        *drive,
224							       LibHalVolume        *volume,
225							       LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
226char                *libhal_drive_policy_compute_icon_name    (LibHalDrive         *drive,
227							       LibHalVolume        *volume,
228							       LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
229
230dbus_bool_t          libhal_drive_policy_is_mountable            (LibHalDrive         *drive,
231								  LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
232const char          *libhal_drive_policy_get_desired_mount_point (LibHalDrive         *drive,
233								  LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
234const char          *libhal_drive_policy_get_mount_options       (LibHalDrive         *drive,
235							          LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
236const char          *libhal_drive_policy_get_mount_fs            (LibHalDrive      *drive,
237								  LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
238
239char               **libhal_drive_find_all_volumes (LibHalContext *hal_ctx,
240						    LibHalDrive   *drive,
241						    int 	  *num_volumes);
242
243
244char        *libhal_drive_policy_default_get_mount_root                (LibHalContext *hal_ctx) LIBHAL_DEPRECATED;
245dbus_bool_t  libhal_drive_policy_default_use_managed_keyword           (LibHalContext *hal_ctx) LIBHAL_DEPRECATED;
246char        *libhal_drive_policy_default_get_managed_keyword_primary   (LibHalContext *hal_ctx) LIBHAL_DEPRECATED;
247char        *libhal_drive_policy_default_get_managed_keyword_secondary (LibHalContext *hal_ctx) LIBHAL_DEPRECATED;
248
249
250typedef enum {
251	LIBHAL_VOLUME_USAGE_MOUNTABLE_FILESYSTEM,
252	LIBHAL_VOLUME_USAGE_PARTITION_TABLE,
253	LIBHAL_VOLUME_USAGE_RAID_MEMBER,
254	LIBHAL_VOLUME_USAGE_CRYPTO,
255	LIBHAL_VOLUME_USAGE_UNKNOWN,
256	LIBHAL_VOLUME_USAGE_OTHER
257} LibHalVolumeUsage;
258
259typedef enum {
260	LIBHAL_VOLUME_DISC_TYPE_CDROM       = 0x00,
261	LIBHAL_VOLUME_DISC_TYPE_CDR         = 0x01,
262	LIBHAL_VOLUME_DISC_TYPE_CDRW        = 0x02,
263	LIBHAL_VOLUME_DISC_TYPE_DVDROM      = 0x03,
264	LIBHAL_VOLUME_DISC_TYPE_DVDRAM      = 0x04,
265	LIBHAL_VOLUME_DISC_TYPE_DVDR        = 0x05,
266	LIBHAL_VOLUME_DISC_TYPE_DVDRW       = 0x06,
267	LIBHAL_VOLUME_DISC_TYPE_DVDPLUSR    = 0x07,
268	LIBHAL_VOLUME_DISC_TYPE_DVDPLUSRW   = 0x08,
269	LIBHAL_VOLUME_DISC_TYPE_DVDPLUSR_DL = 0x09,
270	LIBHAL_VOLUME_DISC_TYPE_BDROM       = 0x0a,
271	LIBHAL_VOLUME_DISC_TYPE_BDR         = 0x0b,
272	LIBHAL_VOLUME_DISC_TYPE_BDRE        = 0x0c,
273	LIBHAL_VOLUME_DISC_TYPE_HDDVDROM    = 0x0d,
274	LIBHAL_VOLUME_DISC_TYPE_HDDVDR      = 0x0e,
275	LIBHAL_VOLUME_DISC_TYPE_HDDVDRW     = 0x0f
276} LibHalVolumeDiscType;
277
278LibHalVolume     *libhal_volume_from_udi                      (LibHalContext *hal_ctx,
279							       const char *udi);
280LibHalVolume     *libhal_volume_from_device_file              (LibHalContext *hal_ctx,
281							       const char *device_file);
282void              libhal_volume_free                          (LibHalVolume     *volume);
283dbus_uint64_t     libhal_volume_get_size                      (LibHalVolume     *volume);
284dbus_uint64_t     libhal_volume_get_disc_capacity             (LibHalVolume     *volume);
285
286const char          *libhal_volume_get_udi                       (LibHalVolume     *volume);
287const char          *libhal_volume_get_device_file               (LibHalVolume     *volume);
288unsigned int         libhal_volume_get_device_major              (LibHalVolume     *volume);
289unsigned int         libhal_volume_get_device_minor              (LibHalVolume     *volume);
290const char          *libhal_volume_get_fstype                    (LibHalVolume     *volume);
291const char          *libhal_volume_get_fsversion                 (LibHalVolume     *volume);
292LibHalVolumeUsage    libhal_volume_get_fsusage                   (LibHalVolume     *volume);
293dbus_bool_t          libhal_volume_is_mounted                    (LibHalVolume     *volume);
294dbus_bool_t          libhal_volume_is_mounted_read_only          (LibHalVolume     *volume);
295dbus_bool_t          libhal_volume_is_partition                  (LibHalVolume     *volume);
296dbus_bool_t          libhal_volume_is_disc                       (LibHalVolume     *volume);
297
298const char          *libhal_volume_get_partition_scheme          (LibHalVolume     *volume);
299const char          *libhal_volume_get_partition_type            (LibHalVolume     *volume);
300const char          *libhal_volume_get_partition_label           (LibHalVolume     *volume);
301const char          *libhal_volume_get_partition_uuid            (LibHalVolume     *volume);
302const char         **libhal_volume_get_partition_flags           (LibHalVolume     *volume);
303unsigned int         libhal_volume_get_partition_number          (LibHalVolume     *volume);
304dbus_uint64_t        libhal_volume_get_partition_start_offset    (LibHalVolume     *volume);
305dbus_uint64_t        libhal_volume_get_partition_media_size      (LibHalVolume     *volume);
306
307const char          *libhal_volume_get_label                     (LibHalVolume     *volume);
308const char          *libhal_volume_get_mount_point               (LibHalVolume     *volume);
309const char          *libhal_volume_get_uuid                      (LibHalVolume     *volume);
310const char          *libhal_volume_get_storage_device_udi        (LibHalVolume     *volume);
311
312const char          *libhal_volume_crypto_get_backing_volume_udi (LibHalVolume     *volume);
313char                *libhal_volume_crypto_get_clear_volume_udi   (LibHalContext    *hal_ctx, LibHalVolume *volume);
314
315
316dbus_bool_t          libhal_volume_disc_has_audio             (LibHalVolume     *volume);
317dbus_bool_t          libhal_volume_disc_has_data              (LibHalVolume     *volume);
318dbus_bool_t          libhal_volume_disc_is_blank              (LibHalVolume     *volume);
319dbus_bool_t          libhal_volume_disc_is_rewritable         (LibHalVolume     *volume);
320dbus_bool_t          libhal_volume_disc_is_appendable         (LibHalVolume     *volume);
321LibHalVolumeDiscType libhal_volume_get_disc_type              (LibHalVolume     *volume);
322
323int               libhal_volume_get_msdos_part_table_type     (LibHalVolume     *volume)  LIBHAL_DEPRECATED;
324dbus_uint64_t     libhal_volume_get_msdos_part_table_start    (LibHalVolume     *volume)  LIBHAL_DEPRECATED;
325dbus_uint64_t     libhal_volume_get_msdos_part_table_size     (LibHalVolume     *volume)  LIBHAL_DEPRECATED;
326
327
328dbus_bool_t       libhal_volume_should_ignore 	              (LibHalVolume     *volume);
329
330char             *libhal_volume_policy_compute_size_as_string (LibHalVolume     *volume) LIBHAL_DEPRECATED;
331
332char             *libhal_volume_policy_compute_display_name   (LibHalDrive         *drive,
333							       LibHalVolume        *volume,
334							       LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
335char             *libhal_volume_policy_compute_icon_name      (LibHalDrive         *drive,
336							       LibHalVolume        *volume,
337							       LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
338
339dbus_bool_t       libhal_volume_policy_should_be_visible      (LibHalDrive         *drive,
340							       LibHalVolume        *volume,
341							       LibHalStoragePolicy *policy,
342							       const char          *target_mount_point) LIBHAL_DEPRECATED;
343
344dbus_bool_t       libhal_volume_policy_is_mountable		(LibHalDrive         *drive,
345								 LibHalVolume        *volume,
346								 LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
347const char       *libhal_volume_policy_get_desired_mount_point  (LibHalDrive         *drive,
348								 LibHalVolume        *volume,
349								 LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
350const char       *libhal_volume_policy_get_mount_options   	(LibHalDrive         *drive,
351							    	 LibHalVolume        *volume,
352							    	 LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
353const char       *libhal_volume_policy_get_mount_fs        	(LibHalDrive         *drive,
354							    	 LibHalVolume        *volume,
355							    	 LibHalStoragePolicy *policy) LIBHAL_DEPRECATED;
356
357
358#if defined(__cplusplus)
359}
360#endif
361
362#endif /* LIBHAL_STORAGE_H */
363