[PATCH 2/2] blkid: add all known fs-types for output

Hans Ulli Kroll elektroman at nas-portal.org
Sat May 30 11:21:43 UTC 2009


Signed-off-by: Hans Ulli Kroll <elektroman at nas-portal.org>
---
 util-linux/volume_id/cramfs.c             |    2 +-
 util-linux/volume_id/ext.c                |    8 ++++----
 util-linux/volume_id/fat.c                |    2 +-
 util-linux/volume_id/hfs.c                |    4 ++--
 util-linux/volume_id/iso9660.c            |    2 +-
 util-linux/volume_id/jfs.c                |    2 +-
 util-linux/volume_id/linux_raid.c         |    2 +-
 util-linux/volume_id/linux_swap.c         |    2 +-
 util-linux/volume_id/luks.c               |    2 +-
 util-linux/volume_id/ntfs.c               |    2 +-
 util-linux/volume_id/ocfs2.c              |    2 +-
 util-linux/volume_id/reiserfs.c           |   16 ++++++++++------
 util-linux/volume_id/romfs.c              |    2 +-
 util-linux/volume_id/udf.c                |    2 +-
 util-linux/volume_id/volume_id_internal.h |    2 +-
 util-linux/volume_id/xfs.c                |    4 ++--
 16 files changed, 30 insertions(+), 26 deletions(-)

diff --git a/util-linux/volume_id/cramfs.c b/util-linux/volume_id/cramfs.c
index dd939e4..87ba9bb 100644
--- a/util-linux/volume_id/cramfs.c
+++ b/util-linux/volume_id/cramfs.c
@@ -51,7 +51,7 @@ int volume_id_probe_cramfs(struct volume_id *id /*,uint64_t off*/)
 		volume_id_set_label_string(id, cs->name, 16);
 
 //		volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//		id->type = "cramfs";
+		strcpy (id->type_version, "cramfs");
 		return 0;
 	}
 
diff --git a/util-linux/volume_id/ext.c b/util-linux/volume_id/ext.c
index b052e04..9fc97b8 100644
--- a/util-linux/volume_id/ext.c
+++ b/util-linux/volume_id/ext.c
@@ -65,10 +65,10 @@ int volume_id_probe_ext(struct volume_id *id /*,uint64_t off*/)
 	volume_id_set_uuid(id, es->uuid, UUID_DCE);
 	dbg("ext: label '%s' uuid '%s'", id->label, id->uuid);
 
-//	if ((le32_to_cpu(es->feature_compat) & EXT3_FEATURE_COMPAT_HAS_JOURNAL) != 0)
-//		id->type = "ext3";
-//	else
-//		id->type = "ext2";
+	if ((le32_to_cpu(es->feature_compat) & EXT3_FEATURE_COMPAT_HAS_JOURNAL) != 0)
+		strcpy (id->type_version, "ext3/4");
+	else
+		strcpy (id->type_version, "ext2");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/fat.c b/util-linux/volume_id/fat.c
index 352040f..1124442 100644
--- a/util-linux/volume_id/fat.c
+++ b/util-linux/volume_id/fat.c
@@ -326,7 +326,7 @@ int volume_id_probe_vfat(struct volume_id *id /*,uint64_t fat_partition_off*/)
 
  ret:
 //	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "vfat";
+	strcpy (id->type_version, "vfat");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/hfs.c b/util-linux/volume_id/hfs.c
index f99b895..026ab89 100644
--- a/util-linux/volume_id/hfs.c
+++ b/util-linux/volume_id/hfs.c
@@ -195,7 +195,7 @@ int volume_id_probe_hfs_hfsplus(struct volume_id *id /*,uint64_t off*/)
 
 	volume_id_set_uuid(id, hfs->finder_info.id, UUID_HFS);
 //	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "hfs";
+	strcpy (id->type_version, "hfs");
 
 	return 0;
 
@@ -286,7 +286,7 @@ int volume_id_probe_hfs_hfsplus(struct volume_id *id /*,uint64_t off*/)
 
  found:
 //	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "hfsplus";
+	strcpy (id->type_version, "hfsplus");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/iso9660.c b/util-linux/volume_id/iso9660.c
index 82f5e48..0804326 100644
--- a/util-linux/volume_id/iso9660.c
+++ b/util-linux/volume_id/iso9660.c
@@ -114,7 +114,7 @@ int volume_id_probe_iso9660(struct volume_id *id /*,uint64_t off*/)
 
  found:
 //	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "iso9660";
+	strcpy (id->type_version, "iso9660");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/jfs.c b/util-linux/volume_id/jfs.c
index 4c39e53..5970438 100644
--- a/util-linux/volume_id/jfs.c
+++ b/util-linux/volume_id/jfs.c
@@ -54,7 +54,7 @@ int volume_id_probe_jfs(struct volume_id *id /*,uint64_t off*/)
 	volume_id_set_uuid(id, js->uuid, UUID_DCE);
 
 //	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "jfs";
+	strcpy (id->type_version, "jfs");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/linux_raid.c b/util-linux/volume_id/linux_raid.c
index cc02469..57654c3 100644
--- a/util-linux/volume_id/linux_raid.c
+++ b/util-linux/volume_id/linux_raid.c
@@ -74,7 +74,7 @@ int volume_id_probe_linux_raid(struct volume_id *id /*,uint64_t off*/, uint64_t
 
 	dbg("found raid signature");
 //	volume_id_set_usage(id, VOLUME_ID_RAID);
-//	id->type = "linux_raid_member";
+	strcpy (id->type_version, "linux_raid_member");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/linux_swap.c b/util-linux/volume_id/linux_swap.c
index c9b62e9..e59b575 100644
--- a/util-linux/volume_id/linux_swap.c
+++ b/util-linux/volume_id/linux_swap.c
@@ -68,7 +68,7 @@ int volume_id_probe_linux_swap(struct volume_id *id /*,uint64_t off*/)
 
 found:
 //	volume_id_set_usage(id, VOLUME_ID_OTHER);
-//	id->type = "swap";
+	strcpy (id->type_version, "swap");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/luks.c b/util-linux/volume_id/luks.c
index ebc7d16..9262065 100644
--- a/util-linux/volume_id/luks.c
+++ b/util-linux/volume_id/luks.c
@@ -94,7 +94,7 @@ int volume_id_probe_luks(struct volume_id *id /*,uint64_t off*/)
 
 //	volume_id_set_usage(id, VOLUME_ID_CRYPTO);
 	volume_id_set_uuid(id, header->uuid, UUID_DCE_STRING);
-//	id->type = "crypto_LUKS";
+	strcpy (id->type_version, "crypto_LUKS");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/ntfs.c b/util-linux/volume_id/ntfs.c
index 6e8f1dd..8b5857a 100644
--- a/util-linux/volume_id/ntfs.c
+++ b/util-linux/volume_id/ntfs.c
@@ -188,7 +188,7 @@ int volume_id_probe_ntfs(struct volume_id *id /*,uint64_t off*/)
 
  found:
 //	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "ntfs";
+	strcpy (id->type_version, "ntfs");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/ocfs2.c b/util-linux/volume_id/ocfs2.c
index 8417d91..1f31f4c 100644
--- a/util-linux/volume_id/ocfs2.c
+++ b/util-linux/volume_id/ocfs2.c
@@ -101,6 +101,6 @@ int volume_id_probe_ocfs2(struct volume_id *id /*,uint64_t off*/)
 	volume_id_set_label_string(id, os->s_label, OCFS2_MAX_VOL_LABEL_LEN < VOLUME_ID_LABEL_SIZE ?
 					OCFS2_MAX_VOL_LABEL_LEN : VOLUME_ID_LABEL_SIZE);
 	volume_id_set_uuid(id, os->s_uuid, UUID_DCE);
-//	id->type = "ocfs2";
+	strcpy (id->type_version, "ocfs2");
 	return 0;
 }
diff --git a/util-linux/volume_id/reiserfs.c b/util-linux/volume_id/reiserfs.c
index b8cdc98..663c17b 100644
--- a/util-linux/volume_id/reiserfs.c
+++ b/util-linux/volume_id/reiserfs.c
@@ -45,6 +45,9 @@ struct reiser4_super_block {
 	uint64_t	dummy2;
 } __attribute__((__packed__));
 
+static char type_reiserfs[] = "reiserfs";
+static char type_reiser4[]  = "reiser4";
+
 #define REISERFS1_SUPERBLOCK_OFFSET		0x2000
 #define REISERFS_SUPERBLOCK_OFFSET		0x10000
 
@@ -53,6 +56,7 @@ int volume_id_probe_reiserfs(struct volume_id *id /*,uint64_t off*/)
 #define off ((uint64_t)0)
 	struct reiserfs_super_block *rs;
 	struct reiser4_super_block *rs4;
+	char *type_version;
 
 	dbg("reiserfs: probing at offset 0x%llx", (unsigned long long) off);
 
@@ -62,23 +66,23 @@ int volume_id_probe_reiserfs(struct volume_id *id /*,uint64_t off*/)
 
 	if (memcmp(rs->magic, "ReIsErFs", 8) == 0) {
 		dbg("reiserfs: ReIsErFs, no label");
-//		strcpy(id->type_version, "3.5");
+		type_version = type_reiserfs;
 		goto found;
 	}
 	if (memcmp(rs->magic, "ReIsEr2Fs", 9) == 0) {
 		dbg("reiserfs: ReIsEr2Fs");
-//		strcpy(id->type_version, "3.6");
+		type_version = type_reiserfs;
 		goto found_label;
 	}
 	if (memcmp(rs->magic, "ReIsEr3Fs", 9) == 0) {
 		dbg("reiserfs: ReIsEr3Fs");
-//		strcpy(id->type_version, "JR");
+		type_version = type_reiserfs;
 		goto found_label;
 	}
 
 	rs4 = (struct reiser4_super_block *) rs;
 	if (memcmp(rs4->magic, "ReIsEr4", 7) == 0) {
-//		strcpy(id->type_version, "4");
+		type_version = type_reiser4;
 //		volume_id_set_label_raw(id, rs4->label, 16);
 		volume_id_set_label_string(id, rs4->label, 16);
 		volume_id_set_uuid(id, rs4->uuid, UUID_DCE);
@@ -92,7 +96,7 @@ int volume_id_probe_reiserfs(struct volume_id *id /*,uint64_t off*/)
 
 	if (memcmp(rs->magic, "ReIsErFs", 8) == 0) {
 		dbg("reiserfs: ReIsErFs, no label");
-//		strcpy(id->type_version, "3.5");
+		type_version = type_reiserfs;
 		goto found;
 	}
 
@@ -107,7 +111,7 @@ int volume_id_probe_reiserfs(struct volume_id *id /*,uint64_t off*/)
 
  found:
 //	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "reiserfs";
+	strcpy (id->type_version, type_version);
 
 	return 0;
 }
diff --git a/util-linux/volume_id/romfs.c b/util-linux/volume_id/romfs.c
index 2c061bd..8e54a2b 100644
--- a/util-linux/volume_id/romfs.c
+++ b/util-linux/volume_id/romfs.c
@@ -47,7 +47,7 @@ int volume_id_probe_romfs(struct volume_id *id /*,uint64_t off*/)
 		}
 
 //		volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//		id->type = "romfs";
+		strcpy (id->type_version, "romfs");
 		return 0;
 	}
 
diff --git a/util-linux/volume_id/udf.c b/util-linux/volume_id/udf.c
index e272e19..64e4200 100644
--- a/util-linux/volume_id/udf.c
+++ b/util-linux/volume_id/udf.c
@@ -167,7 +167,7 @@ anchor:
 
  found:
 //	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "udf";
+	strcpy (id->type_version , "udf");
 
 	return 0;
 }
diff --git a/util-linux/volume_id/volume_id_internal.h b/util-linux/volume_id/volume_id_internal.h
index d0a56d5..0032746 100644
--- a/util-linux/volume_id/volume_id_internal.h
+++ b/util-linux/volume_id/volume_id_internal.h
@@ -148,7 +148,7 @@ enum endian {
 };
 
 void volume_id_set_unicode16(char *str, size_t len, const uint8_t *buf, enum endian endianess, size_t count);
-// void volume_id_set_usage(struct volume_id *id, enum volume_id_usage usage_id);
+//void volume_id_set_usage(struct volume_id *id, enum volume_id_usage usage_id);
 //void volume_id_set_usage_part(struct volume_id_partition *part, enum volume_id_usage usage_id);
 //void volume_id_set_label_raw(struct volume_id *id, const uint8_t *buf, size_t count);
 void volume_id_set_label_string(struct volume_id *id, const uint8_t *buf, size_t count);
diff --git a/util-linux/volume_id/xfs.c b/util-linux/volume_id/xfs.c
index 646c81d..b3ae55a 100644
--- a/util-linux/volume_id/xfs.c
+++ b/util-linux/volume_id/xfs.c
@@ -53,8 +53,8 @@ int volume_id_probe_xfs(struct volume_id *id /*,uint64_t off*/)
 	volume_id_set_label_string(id, xs->fname, 12);
 	volume_id_set_uuid(id, xs->uuid, UUID_DCE);
 
-//	volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
-//	id->type = "xfs";
+//     volume_id_set_usage(id, VOLUME_ID_FILESYSTEM);
+	strcpy (id->type_version, "xfs");
 
 	return 0;
 }
-- 
1.6.3.1



More information about the busybox mailing list