Coverage Report

Created: 2025-11-25 07:00

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/util-linux/libblkid/src/superblocks/superblocks.h
Line
Count
Source
1
/*
2
 * Copyright (C) 2008-2009 Karel Zak <kzak@redhat.com>
3
 *
4
 * This file may be redistributed under the terms of the
5
 * GNU Lesser General Public License.
6
 */
7
#ifndef _BLKID_SUPERBLOCKS_H
8
#define _BLKID_SUPERBLOCKS_H
9
10
#include "blkidP.h"
11
12
enum blkid_endianness {
13
  BLKID_ENDIANNESS_LITTLE,
14
  BLKID_ENDIANNESS_BIG,
15
};
16
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
17
18
#define BLKID_ENDIANNESS_NATIVE BLKID_ENDIANNESS_LITTLE
18
44
#define BLKID_ENDIANNESS_OTHER BLKID_ENDIANNESS_BIG
19
#else
20
#define BLKID_ENDIANNESS_NATIVE BLKID_ENDIANNESS_BIG
21
#define BLKID_ENDIANNESS_OTHER BLKID_ENDIANNESS_LITTLE
22
#endif
23
24
extern const struct blkid_idinfo cramfs_idinfo;
25
extern const struct blkid_idinfo swap_idinfo;
26
extern const struct blkid_idinfo swsuspend_idinfo;
27
extern const struct blkid_idinfo adraid_idinfo;
28
extern const struct blkid_idinfo ddfraid_idinfo;
29
extern const struct blkid_idinfo iswraid_idinfo;
30
extern const struct blkid_idinfo jmraid_idinfo;
31
extern const struct blkid_idinfo lsiraid_idinfo;
32
extern const struct blkid_idinfo nvraid_idinfo;
33
extern const struct blkid_idinfo pdcraid_idinfo;
34
extern const struct blkid_idinfo silraid_idinfo;
35
extern const struct blkid_idinfo viaraid_idinfo;
36
extern const struct blkid_idinfo linuxraid_idinfo;
37
extern const struct blkid_idinfo ext4dev_idinfo;
38
extern const struct blkid_idinfo ext4_idinfo;
39
extern const struct blkid_idinfo ext3_idinfo;
40
extern const struct blkid_idinfo ext2_idinfo;
41
extern const struct blkid_idinfo jbd_idinfo;
42
extern const struct blkid_idinfo jfs_idinfo;
43
extern const struct blkid_idinfo xfs_idinfo;
44
extern const struct blkid_idinfo xfs_log_idinfo;
45
extern const struct blkid_idinfo exfs_idinfo;
46
extern const struct blkid_idinfo gfs_idinfo;
47
extern const struct blkid_idinfo gfs2_idinfo;
48
extern const struct blkid_idinfo romfs_idinfo;
49
extern const struct blkid_idinfo scoutfs_meta_idinfo;
50
extern const struct blkid_idinfo scoutfs_data_idinfo;
51
extern const struct blkid_idinfo ocfs_idinfo;
52
extern const struct blkid_idinfo ocfs2_idinfo;
53
extern const struct blkid_idinfo oracleasm_idinfo;
54
extern const struct blkid_idinfo reiser_idinfo;
55
extern const struct blkid_idinfo reiser4_idinfo;
56
extern const struct blkid_idinfo hfs_idinfo;
57
extern const struct blkid_idinfo hfsplus_idinfo;
58
extern const struct blkid_idinfo ntfs_idinfo;
59
extern const struct blkid_idinfo refs_idinfo;
60
extern const struct blkid_idinfo iso9660_idinfo;
61
extern const struct blkid_idinfo udf_idinfo;
62
extern const struct blkid_idinfo vxfs_idinfo;
63
extern const struct blkid_idinfo minix_idinfo;
64
extern const struct blkid_idinfo vfat_idinfo;
65
extern const struct blkid_idinfo ufs_idinfo;
66
extern const struct blkid_idinfo hpfs_idinfo;
67
extern const struct blkid_idinfo lvm2_idinfo;
68
extern const struct blkid_idinfo lvm1_idinfo;
69
extern const struct blkid_idinfo snapcow_idinfo;
70
extern const struct blkid_idinfo verity_hash_idinfo;
71
extern const struct blkid_idinfo integrity_idinfo;
72
extern const struct blkid_idinfo luks_idinfo;
73
extern const struct blkid_idinfo luks_opal_idinfo;
74
extern const struct blkid_idinfo highpoint37x_idinfo;
75
extern const struct blkid_idinfo highpoint45x_idinfo;
76
extern const struct blkid_idinfo squashfs_idinfo;
77
extern const struct blkid_idinfo squashfs3_idinfo;
78
extern const struct blkid_idinfo netware_idinfo;
79
extern const struct blkid_idinfo sysv_idinfo;
80
extern const struct blkid_idinfo xenix_idinfo;
81
extern const struct blkid_idinfo btrfs_idinfo;
82
extern const struct blkid_idinfo ubi_idinfo;
83
extern const struct blkid_idinfo ubifs_idinfo;
84
extern const struct blkid_idinfo zfs_idinfo;
85
extern const struct blkid_idinfo bfs_idinfo;
86
extern const struct blkid_idinfo vmfs_volume_idinfo;
87
extern const struct blkid_idinfo vmfs_fs_idinfo;
88
extern const struct blkid_idinfo bluestore_idinfo;
89
extern const struct blkid_idinfo drbd_idinfo;
90
extern const struct blkid_idinfo drbdmanage_idinfo;
91
extern const struct blkid_idinfo drbdproxy_datalog_idinfo;
92
extern const struct blkid_idinfo befs_idinfo;
93
extern const struct blkid_idinfo nilfs2_idinfo;
94
extern const struct blkid_idinfo exfat_idinfo;
95
extern const struct blkid_idinfo f2fs_idinfo;
96
extern const struct blkid_idinfo bcache_idinfo;
97
extern const struct blkid_idinfo bcachefs_idinfo;
98
extern const struct blkid_idinfo mpool_idinfo;
99
extern const struct blkid_idinfo vdo_idinfo;
100
extern const struct blkid_idinfo stratis_idinfo;
101
extern const struct blkid_idinfo bitlocker_idinfo;
102
extern const struct blkid_idinfo apfs_idinfo;
103
extern const struct blkid_idinfo zonefs_idinfo;
104
extern const struct blkid_idinfo erofs_idinfo;
105
extern const struct blkid_idinfo cs_fvault2_idinfo;
106
107
/*
108
 * superblock functions
109
 */
110
extern int blkid_probe_set_version(blkid_probe pr, const char *version);
111
extern int blkid_probe_sprintf_version(blkid_probe pr, const char *fmt, ...)
112
    __attribute__ ((__format__ (__printf__, 2, 3)));
113
114
extern int blkid_probe_set_label(blkid_probe pr, const unsigned char *label, size_t len);
115
extern int blkid_probe_set_utf8label(blkid_probe pr, const unsigned char *label,
116
                size_t len, int enc);
117
extern int blkid_probe_sprintf_uuid(blkid_probe pr, const unsigned char *uuid,
118
                size_t len, const char *fmt, ...)
119
    __attribute__ ((__format__ (__printf__, 4, 5)));
120
extern int blkid_probe_strncpy_uuid(blkid_probe pr, const unsigned char *str, size_t len);
121
122
extern int blkid_probe_set_uuid(blkid_probe pr, const unsigned char *uuid);
123
extern int blkid_probe_set_uuid_as(blkid_probe pr, const unsigned char *uuid, const char *name);
124
125
extern int blkid_probe_set_id_label(blkid_probe pr, const char *name,
126
           const unsigned char *data, size_t len);
127
extern int blkid_probe_set_utf8_id_label(blkid_probe pr, const char *name,
128
           const unsigned char *data, size_t len, int enc);
129
130
int blkid_probe_set_block_size(blkid_probe pr, unsigned block_size);
131
int blkid_probe_set_fssize(blkid_probe pr, uint64_t size);
132
int blkid_probe_set_fslastblock(blkid_probe pr, uint64_t lastblock);
133
int blkid_probe_set_fsblocksize(blkid_probe pr, uint32_t block_size);
134
int blkid_probe_set_fsendianness(blkid_probe pr, enum blkid_endianness endianness);
135
136
extern int blkid_probe_is_bitlocker(blkid_probe pr);
137
extern int blkid_probe_is_ntfs(blkid_probe pr);
138
139
/*
140
 * utility functions
141
 */
142
static inline int blkid32_to_cpu(enum blkid_endianness e, uint32_t i)
143
330
{
144
330
  if (e == BLKID_ENDIANNESS_LITTLE)
145
213
    return le32_to_cpu(i);
146
117
  else if (e == BLKID_ENDIANNESS_BIG)
147
117
    return be32_to_cpu(i);
148
0
  abort();
149
330
}
Unexecuted instantiation: superblocks.c:blkid32_to_cpu
Unexecuted instantiation: swap.c:blkid32_to_cpu
Unexecuted instantiation: sysv.c:blkid32_to_cpu
Unexecuted instantiation: ubi.c:blkid32_to_cpu
Unexecuted instantiation: ubifs.c:blkid32_to_cpu
Unexecuted instantiation: udf.c:blkid32_to_cpu
Unexecuted instantiation: ufs.c:blkid32_to_cpu
Unexecuted instantiation: vdo.c:blkid32_to_cpu
Unexecuted instantiation: vfat.c:blkid32_to_cpu
Unexecuted instantiation: via_raid.c:blkid32_to_cpu
Unexecuted instantiation: vmfs.c:blkid32_to_cpu
vxfs.c:blkid32_to_cpu
Line
Count
Source
143
330
{
144
330
  if (e == BLKID_ENDIANNESS_LITTLE)
145
213
    return le32_to_cpu(i);
146
117
  else if (e == BLKID_ENDIANNESS_BIG)
147
117
    return be32_to_cpu(i);
148
0
  abort();
149
330
}
Unexecuted instantiation: xfs.c:blkid32_to_cpu
Unexecuted instantiation: zfs.c:blkid32_to_cpu
Unexecuted instantiation: zonefs.c:blkid32_to_cpu
Unexecuted instantiation: erofs.c:blkid32_to_cpu
Unexecuted instantiation: dos.c:blkid32_to_cpu
Unexecuted instantiation: adaptec_raid.c:blkid32_to_cpu
Unexecuted instantiation: apfs.c:blkid32_to_cpu
Unexecuted instantiation: bcache.c:blkid32_to_cpu
Unexecuted instantiation: befs.c:blkid32_to_cpu
Unexecuted instantiation: bfs.c:blkid32_to_cpu
Unexecuted instantiation: bitlocker.c:blkid32_to_cpu
Unexecuted instantiation: bluestore.c:blkid32_to_cpu
Unexecuted instantiation: btrfs.c:blkid32_to_cpu
Unexecuted instantiation: cs_fvault2.c:blkid32_to_cpu
Unexecuted instantiation: cramfs.c:blkid32_to_cpu
Unexecuted instantiation: ddf_raid.c:blkid32_to_cpu
Unexecuted instantiation: drbd.c:blkid32_to_cpu
Unexecuted instantiation: drbdproxy_datalog.c:blkid32_to_cpu
Unexecuted instantiation: drbdmanage.c:blkid32_to_cpu
Unexecuted instantiation: exfat.c:blkid32_to_cpu
Unexecuted instantiation: exfs.c:blkid32_to_cpu
Unexecuted instantiation: ext.c:blkid32_to_cpu
Unexecuted instantiation: f2fs.c:blkid32_to_cpu
Unexecuted instantiation: gfs.c:blkid32_to_cpu
Unexecuted instantiation: hfs.c:blkid32_to_cpu
Unexecuted instantiation: highpoint_raid.c:blkid32_to_cpu
Unexecuted instantiation: hpfs.c:blkid32_to_cpu
Unexecuted instantiation: iso9660.c:blkid32_to_cpu
Unexecuted instantiation: isw_raid.c:blkid32_to_cpu
Unexecuted instantiation: jfs.c:blkid32_to_cpu
Unexecuted instantiation: jmicron_raid.c:blkid32_to_cpu
Unexecuted instantiation: linux_raid.c:blkid32_to_cpu
Unexecuted instantiation: lsi_raid.c:blkid32_to_cpu
Unexecuted instantiation: luks.c:blkid32_to_cpu
Unexecuted instantiation: lvm.c:blkid32_to_cpu
Unexecuted instantiation: minix.c:blkid32_to_cpu
Unexecuted instantiation: mpool.c:blkid32_to_cpu
Unexecuted instantiation: netware.c:blkid32_to_cpu
Unexecuted instantiation: nilfs.c:blkid32_to_cpu
Unexecuted instantiation: ntfs.c:blkid32_to_cpu
Unexecuted instantiation: refs.c:blkid32_to_cpu
Unexecuted instantiation: nvidia_raid.c:blkid32_to_cpu
Unexecuted instantiation: ocfs.c:blkid32_to_cpu
Unexecuted instantiation: promise_raid.c:blkid32_to_cpu
Unexecuted instantiation: reiserfs.c:blkid32_to_cpu
Unexecuted instantiation: romfs.c:blkid32_to_cpu
Unexecuted instantiation: scoutfs.c:blkid32_to_cpu
Unexecuted instantiation: silicon_raid.c:blkid32_to_cpu
Unexecuted instantiation: squashfs.c:blkid32_to_cpu
Unexecuted instantiation: stratis.c:blkid32_to_cpu
150
151
#endif /* _BLKID_SUPERBLOCKS_H */