![]() |
![]() |
![]() |
exo Reference Manual | ![]() |
---|---|---|---|---|
#include <exo/exo.h> enum ExoMountPointFlags; ExoMountPoint; ExoMountPoint* exo_mount_point_dup (const ExoMountPoint *mount_point); void exo_mount_point_free (ExoMountPoint *mount_point); enum ExoMountPointMatchMask; GSList* exo_mount_point_list_matched (ExoMountPointMatchMask mask, const gchar *device, const gchar *folder, const gchar *fstype, GError **error); #define exo_mount_point_list_active (error) #define exo_mount_point_list_configured (error)
This module provides functions to query active and configured mount points from the system. This is commonly required in file and volume management, and hence it was added to the library. For example, exo-mount, Thunar and thunar-volman make use of this.
typedef enum /*< flags >*/ { EXO_MOUNT_POINT_READ_ONLY = (1L << 0), } ExoMountPointFlags;
Identifies options of ExoMountPoints.
Since 0.3.1.13
typedef struct { ExoMountPointFlags flags; gchar *device; gchar *folder; gchar *fstype; } ExoMountPoint;
Structure to represent a mount point, which can be either an
active mount point, queried from the kernel's internal mount
table, or a configured mount point queried from the file
system table (usually /etc/fstab
or
/etc/vfstab
).
ExoMountPointFlags |
see ExoMountPointFlags. |
gchar * |
the device file path. |
gchar * |
the folder where the device is mounted (or may be mounted). |
gchar * |
the type of the file system used for the device. |
ExoMountPoint* exo_mount_point_dup (const ExoMountPoint *mount_point);
Duplicates the specified mount_point
and returns
the duplicate. If mount_point
is NULL
, this simply
returns NULL
.
The caller is responsible to free the returned mount
point using exo_mount_point_free()
when no longer
needed.
|
an ExoMountPoint. |
Returns : |
a copy of the specified mount_point .
|
Since 0.3.1.13
void exo_mount_point_free (ExoMountPoint *mount_point);
Frees the resources allocated to the specified mount_point
.
If mount_point
is NULL
, this function does nothing.
|
an ExoMountPoint. |
Since 0.3.1.13
typedef enum /*< skip >*/ { EXO_MOUNT_POINT_MATCH_ACTIVE = (0L << 0), EXO_MOUNT_POINT_MATCH_CONFIGURED = (1L << 0), EXO_MOUNT_POINT_MATCH_DEVICE = (1L << 1), EXO_MOUNT_POINT_MATCH_FOLDER = (1L << 2), EXO_MOUNT_POINT_MATCH_FSTYPE = (1L << 3), } ExoMountPointMatchMask;
Flags for exo_mount_point_list_matched()
, that control which mount points
will be returned. The fewer match options are specified, the more mount
points will usually match (surprising, eh?).
Since 0.3.1.13
GSList* exo_mount_point_list_matched (ExoMountPointMatchMask mask, const gchar *device, const gchar *folder, const gchar *fstype, GError **error);
Lists mount points matching the given mask
and optionally the parameters device
,
folder
and fstype
. If an error occurrs and error
is non-NULL
, the error
will
be set to point to a GError describing the problem, and NULL
will be returned.
Note, however, that NULL
may also be returned if no mount points match.
If mask
includes EXO_MOUNT_POINT_MATCH_ACTIVE
, the currently active mount points will
be matched, that is, the currently mounted file systems, queried from the kernel. Otherwise
if EXO_MOUNT_POINT_MATCH_CONFIGURED
is specified, the configured mount points from the
file system table (usually /etc/fstab
or /etc/vfstab
)
will be matched.
The caller is responsible to free the returned list using
g_slist_foreach (list, (GFunc) exo_mount_point_free, NULL); g_slist_free (list);
when no longer needed.
|
the mask of flags that have to match for a mount point to be returned. |
|
the device file to match if EXO_MOUNT_POINT_MATCH_DEVICE is specified.
|
|
the folder to match if EXO_MOUNT_POINT_MATCH_FOLDER is specified.
|
|
the file system type to match if EXO_MOUNT_POINT_MATCH_FSTYPE is specified.
|
|
return location for errors or NULL .
|
Returns : |
the list of matching ExoMountPoints. |
Since 0.3.1.13
#define exo_mount_point_list_active(error) (exo_mount_point_list_matched (EXO_MOUNT_POINT_MATCH_ACTIVE, NULL, NULL, NULL, (error)))
Convenience wrapper for exo_mount_point_list_matched()
, that returns the
currently active mount points, or NULL
in case of an error.
The caller is responsible to free the returned list using
g_slist_foreach (list, (GFunc) exo_mount_point_free, NULL); g_slist_free (list);
when no longer needed.
|
return location for errors or NULL .
|
Since 0.3.1.13
#define exo_mount_point_list_configured(error) (exo_mount_point_list_matched (EXO_MOUNT_POINT_MATCH_CONFIGURED, NULL, NULL, NULL, (error)))
Convenience wrapper for exo_mount_point_list_matched()
, that returns the
configured mount points, i.e. the entries from the file system table (which
is usually specified in /etc/fstab
).
The caller is responsible to free the returned list using
g_slist_foreach (list, (GFunc) exo_mount_point_free, NULL); g_slist_free (list);
when no longer needed.
|
return location for errors or NULL .
|
Since 0.3.1.13