chiark / gitweb /
volume_id: add squashfs detection
[elogind.git] / extras / volume_id / libvolume_id / volume_id.h
index edeb225faf9551c30eab34e8c108eb8f91e1945d..15f1ac01f82587fa09062e78567eee0dd11007ee 100644 (file)
 #include <stdint.h>
 #include <stddef.h>
 
-#define VOLUME_ID_VERSION              56
+#define VOLUME_ID_VERSION              59
+
+#ifndef PACKED
+#define PACKED                         __attribute__((packed))
+#endif
 
 #define VOLUME_ID_LABEL_SIZE           64
 #define VOLUME_ID_UUID_SIZE            36
@@ -69,6 +73,8 @@ struct volume_id {
 extern struct volume_id *volume_id_open_fd(int fd);
 extern struct volume_id *volume_id_open_node(const char *path);
 extern int volume_id_probe_all(struct volume_id *id, uint64_t off, uint64_t size);
+extern int volume_id_probe_filesystem(struct volume_id *id, uint64_t off, uint64_t size);
+extern int volume_id_probe_raid(struct volume_id *id, uint64_t off, uint64_t size);
 extern void volume_id_close(struct volume_id *id);
 
 /* filesystems */
@@ -90,6 +96,7 @@ extern int volume_id_probe_udf(struct volume_id *id, uint64_t off);
 extern int volume_id_probe_ufs(struct volume_id *id, uint64_t off);
 extern int volume_id_probe_vxfs(struct volume_id *id, uint64_t off);
 extern int volume_id_probe_xfs(struct volume_id *id, uint64_t off);
+extern int volume_id_probe_squashfs(struct volume_id *id, uint64_t off);
 
 /* special formats */
 extern int volume_id_probe_linux_swap(struct volume_id *id, uint64_t off);