#define EXTENDEDSD_MOUNT_PATH "/opt/extendedsd"
+#define VFAT_NAME "vfat"
#define EXT4_NAME "ext4"
#define LUKS_NAME "crypto_LUKS"
#define EXTENDEDSD_NAME "extendedsd"
{
struct udev *udev;
struct udev_device *dev;
+ const char *fs_type;
+ const char *fs_usage;
int r;
int wait;
return -EPERM;
}
- if (!udev_device_get_property_value(dev, "ID_FS_TYPE"))
+ fs_type = udev_device_get_property_value(dev, "ID_FS_TYPE");
+ fs_usage = udev_device_get_property_value(dev, "ID_FS_USAGE");
+ /* fs_usage for crpto_LUKS is crypto */
+ if (!fs_type || (strncmp(fs_type, VFAT_NAME, strlen(VFAT_NAME)) && strncmp(fs_type, EXT4_NAME, strlen(EXT4_NAME))))
+ sleep(1);
+ else if (!fs_usage || strncmp(FILESYSTEM_NAME, fs_usage, strlen(FILESYSTEM_NAME)))
sleep(1);
else
break;