Coverage Report

Created: 2026-01-25 06:28

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/work/build/src/basic/filesystems-gperf.h
Line
Count
Source
1
/* ANSI-C code produced by gperf version 3.1 */
2
/* Command-line: /usr/bin/gperf --output-file src/basic/filesystems-gperf.h src/basic/filesystems-gperf.gperf  */
3
/* Computed positions: -k'1-2,$' */
4
5
#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
6
      && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
7
      && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \
8
      && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \
9
      && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \
10
      && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \
11
      && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \
12
      && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \
13
      && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \
14
      && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \
15
      && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \
16
      && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \
17
      && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \
18
      && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \
19
      && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \
20
      && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \
21
      && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \
22
      && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \
23
      && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \
24
      && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \
25
      && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \
26
      && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \
27
      && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126))
28
/* The character set is not based on ISO-646.  */
29
#error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gperf@gnu.org>."
30
#endif
31
32
#line 2 "src/basic/filesystems-gperf.gperf"
33
34
#if __GNUC__ >= 15
35
_Pragma("GCC diagnostic ignored \"-Wzero-as-null-pointer-constant\"")
36
#endif
37
#include <linux/magic.h>
38
39
#include "filesystems.h"
40
#include "stat-util.h"
41
42
struct FilesystemMagic {
43
        const char *name;
44
        statfs_f_type_t magic[FILESYSTEM_MAGIC_MAX];
45
};
46
#include <string.h>
47
48
#define TOTAL_KEYWORDS 97
49
0
#define MIN_WORD_LENGTH 3
50
0
#define MAX_WORD_LENGTH 13
51
#define MIN_HASH_VALUE 3
52
0
#define MAX_HASH_VALUE 174
53
/* maximum key range = 172, duplicates = 0 */
54
55
#ifdef __GNUC__
56
__inline
57
#else
58
#ifdef __cplusplus
59
inline
60
#endif
61
#endif
62
static unsigned int
63
filesystems_gperf_hash (register const char *str, register size_t len)
64
0
{
65
0
  static const unsigned char asso_values[] =
66
0
    {
67
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
68
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
69
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
70
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
71
0
      175, 175, 175, 175, 175, 175, 175, 175,  20, 175,
72
0
       70, 100,  85, 175,  35, 175, 175, 175,   0, 175,
73
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
74
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
75
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
76
0
      175, 175, 175, 175, 175, 175, 175,  40,  35,  10,
77
0
        5,  25,  10,   0,  75,   0,  65,  10,   5,  20,
78
0
        5,  70,   0,  10,  45,   0,  25,  55,  20,  30,
79
0
       65,  45,  70, 175, 175, 175, 175, 175, 175, 175,
80
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
81
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
82
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
83
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
84
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
85
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
86
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
87
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
88
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
89
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
90
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
91
0
      175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
92
0
      175, 175, 175, 175, 175, 175, 175
93
0
    };
94
0
  return len + asso_values[(unsigned char)str[1]+1] + asso_values[(unsigned char)str[0]] + asso_values[(unsigned char)str[len - 1]];
95
0
}
96
97
const struct FilesystemMagic *
98
filesystems_gperf_lookup (register const char *str, register size_t len)
99
0
{
100
0
  static const struct FilesystemMagic wordlist[] =
101
0
    {
102
0
      {""}, {""}, {""},
103
0
#line 66 "src/basic/filesystems-gperf.gperf"
104
0
      {"gfs",             {GFS2_MAGIC}},
105
0
      {""}, {""},
106
0
#line 108 "src/basic/filesystems-gperf.gperf"
107
0
      {"sockfs",          {SOCKFS_MAGIC}},
108
0
#line 104 "src/basic/filesystems-gperf.gperf"
109
0
      {"shiftfs",         {SHIFTFS_MAGIC}},
110
0
#line 79 "src/basic/filesystems-gperf.gperf"
111
0
      {"nfs",             {NFS_SUPER_MAGIC}},
112
0
      {""},
113
0
#line 107 "src/basic/filesystems-gperf.gperf"
114
0
      {"smbfs",           {SMB_SUPER_MAGIC}},
115
0
      {""},
116
0
#line 105 "src/basic/filesystems-gperf.gperf"
117
0
      {"smackfs",         {SMACK_MAGIC}},
118
0
#line 77 "src/basic/filesystems-gperf.gperf"
119
0
      {"ncp",             {NCP_SUPER_MAGIC}},
120
0
#line 92 "src/basic/filesystems-gperf.gperf"
121
0
      {"proc",            {PROC_SUPER_MAGIC}},
122
0
#line 78 "src/basic/filesystems-gperf.gperf"
123
0
      {"ncpfs",           {NCP_SUPER_MAGIC}},
124
0
#line 47 "src/basic/filesystems-gperf.gperf"
125
0
      {"cramfs",          {CRAMFS_MAGIC}},
126
0
      {""},
127
0
#line 46 "src/basic/filesystems-gperf.gperf"
128
0
      {"configfs",        {CONFIGFS_MAGIC}},
129
0
#line 103 "src/basic/filesystems-gperf.gperf"
130
0
      {"selinuxfs",       {SELINUX_MAGIC}},
131
0
#line 102 "src/basic/filesystems-gperf.gperf"
132
0
      {"securityfs",      {SECURITYFS_MAGIC}},
133
0
#line 51 "src/basic/filesystems-gperf.gperf"
134
0
      {"devpts",          {DEVPTS_SUPER_MAGIC}},
135
0
#line 49 "src/basic/filesystems-gperf.gperf"
136
0
      {"debugfs",         {DEBUGFS_MAGIC}},
137
0
#line 52 "src/basic/filesystems-gperf.gperf"
138
0
      {"devtmpfs",        {TMPFS_MAGIC}},
139
0
#line 117 "src/basic/filesystems-gperf.gperf"
140
0
      {"v9fs",            {V9FS_MAGIC}},
141
0
      {""},
142
0
#line 53 "src/basic/filesystems-gperf.gperf"
143
0
      {"dmabuf",          {DMA_BUF_MAGIC}},
144
0
      {""},
145
0
#line 56 "src/basic/filesystems-gperf.gperf"
146
0
      {"efs",             {EFS_SUPER_MAGIC}},
147
0
#line 68 "src/basic/filesystems-gperf.gperf"
148
0
      {"gmem",            {GUEST_MEMFD_MAGIC}},
149
0
#line 57 "src/basic/filesystems-gperf.gperf"
150
0
      {"erofs",           {EROFS_SUPER_MAGIC_V1}},
151
0
      {""},
152
0
#line 112 "src/basic/filesystems-gperf.gperf"
153
0
      {"tracefs",         {TRACEFS_MAGIC}},
154
0
#line 55 "src/basic/filesystems-gperf.gperf"
155
0
      {"efivarfs",        {EFIVARFS_MAGIC}},
156
0
#line 82 "src/basic/filesystems-gperf.gperf"
157
0
      {"nsfs",            {NSFS_MAGIC}},
158
0
#line 111 "src/basic/filesystems-gperf.gperf"
159
0
      {"tmpfs",           {TMPFS_MAGIC}},
160
0
      {""},
161
0
#line 91 "src/basic/filesystems-gperf.gperf"
162
0
      {"ppc-cmm",         {PPC_CMM_MAGIC}},
163
0
#line 54 "src/basic/filesystems-gperf.gperf"
164
0
      {"ecryptfs",        {ECRYPTFS_SUPER_MAGIC}},
165
0
#line 101 "src/basic/filesystems-gperf.gperf"
166
0
      {"secretmem",       {SECRETMEM_MAGIC}},
167
0
      {""},
168
0
#line 50 "src/basic/filesystems-gperf.gperf"
169
0
      {"devmem",          {DEVMEM_MAGIC}},
170
0
#line 65 "src/basic/filesystems-gperf.gperf"
171
0
      {"fusectl",         {FUSE_CTL_SUPER_MAGIC}},
172
0
#line 29 "src/basic/filesystems-gperf.gperf"
173
0
      {"afs",             {AFS_FS_MAGIC, AFS_SUPER_MAGIC}},
174
0
#line 28 "src/basic/filesystems-gperf.gperf"
175
0
      {"affs",            {AFFS_SUPER_MAGIC}},
176
0
      {""},
177
0
#line 115 "src/basic/filesystems-gperf.gperf"
178
0
      {"vboxsf",          {VBOXSF_SUPER_MAGIC}},
179
0
#line 63 "src/basic/filesystems-gperf.gperf"
180
0
      {"fuseblk",         {FUSE_SUPER_MAGIC}},
181
0
#line 33 "src/basic/filesystems-gperf.gperf"
182
0
      {"bcachefs",        {BCACHEFS_SUPER_MAGIC}},
183
0
#line 116 "src/basic/filesystems-gperf.gperf"
184
0
      {"vfat",            {MSDOS_SUPER_MAGIC}},
185
0
#line 76 "src/basic/filesystems-gperf.gperf"
186
0
      {"msdos",           {MSDOS_SUPER_MAGIC}},
187
0
#line 40 "src/basic/filesystems-gperf.gperf"
188
0
      {"cpuset",          {CGROUP_SUPER_MAGIC}},
189
0
#line 72 "src/basic/filesystems-gperf.gperf"
190
0
      {"iso9660",         {ISOFS_SUPER_MAGIC}},
191
0
#line 109 "src/basic/filesystems-gperf.gperf"
192
0
      {"squashfs",        {SQUASHFS_MAGIC}},
193
0
#line 45 "src/basic/filesystems-gperf.gperf"
194
0
      {"coda",            {CODA_SUPER_MAGIC}},
195
0
      {""},
196
0
#line 93 "src/basic/filesystems-gperf.gperf"
197
0
      {"pstore",          {PSTOREFS_MAGIC}},
198
0
      {""},
199
0
#line 37 "src/basic/filesystems-gperf.gperf"
200
0
      {"bpf",             {BPF_FS_MAGIC}},
201
0
#line 64 "src/basic/filesystems-gperf.gperf"
202
0
      {"fuse",            {FUSE_SUPER_MAGIC}},
203
0
#line 26 "src/basic/filesystems-gperf.gperf"
204
0
      {"apparmorfs",      {AAFS_MAGIC}},
205
0
      {""}, {""},
206
0
#line 99 "src/basic/filesystems-gperf.gperf"
207
0
      {"reiserfs",        {REISERFS_SUPER_MAGIC}},
208
0
#line 83 "src/basic/filesystems-gperf.gperf"
209
0
      {"ntfs",            {NTFS_SB_MAGIC}},
210
0
#line 100 "src/basic/filesystems-gperf.gperf"
211
0
      {"rpc_pipefs",      {RPC_PIPEFS_SUPER_MAGIC}},
212
0
#line 31 "src/basic/filesystems-gperf.gperf"
213
0
      {"autofs",          {AUTOFS_SUPER_MAGIC}},
214
0
#line 98 "src/basic/filesystems-gperf.gperf"
215
0
      {"resctrl",         {RDTGROUP_SUPER_MAGIC}},
216
0
#line 119 "src/basic/filesystems-gperf.gperf"
217
0
      {"xfs",             {XFS_SUPER_MAGIC}},
218
0
#line 27 "src/basic/filesystems-gperf.gperf"
219
0
      {"adfs",            {ADFS_SUPER_MAGIC}},
220
0
#line 89 "src/basic/filesystems-gperf.gperf"
221
0
      {"pidfs",           {PID_FS_MAGIC}},
222
0
#line 90 "src/basic/filesystems-gperf.gperf"
223
0
      {"pipefs",          {PIPEFS_MAGIC}},
224
0
      {""}, {""},
225
0
#line 67 "src/basic/filesystems-gperf.gperf"
226
0
      {"gfs2",            {GFS2_MAGIC}},
227
0
#line 110 "src/basic/filesystems-gperf.gperf"
228
0
      {"sysfs",           {SYSFS_MAGIC}},
229
0
#line 121 "src/basic/filesystems-gperf.gperf"
230
0
      {"zonefs",          {ZONEFS_MAGIC}},
231
0
      {""},
232
0
#line 87 "src/basic/filesystems-gperf.gperf"
233
0
      {"orangefs",        {ORANGEFS_DEVREQ_MAGIC}},
234
0
#line 44 "src/basic/filesystems-gperf.gperf"
235
0
      {"cifs",            {CIFS_SUPER_MAGIC, SMB2_SUPER_MAGIC}},
236
0
#line 118 "src/basic/filesystems-gperf.gperf"
237
0
      {"xenfs",           {XENFS_SUPER_MAGIC}},
238
0
#line 69 "src/basic/filesystems-gperf.gperf"
239
0
      {"hostfs",          {HOSTFS_SUPER_MAGIC}},
240
0
      {""}, {""},
241
0
#line 34 "src/basic/filesystems-gperf.gperf"
242
0
      {"bdev",            {BDEVFS_MAGIC}},
243
0
#line 97 "src/basic/filesystems-gperf.gperf"
244
0
      {"ramfs",           {RAMFS_MAGIC}},
245
0
      {""}, {""},
246
0
#line 114 "src/basic/filesystems-gperf.gperf"
247
0
      {"usbdevfs",        {USBDEVICE_SUPER_MAGIC}},
248
0
#line 70 "src/basic/filesystems-gperf.gperf"
249
0
      {"hpfs",            {HPFS_SUPER_MAGIC}},
250
0
#line 86 "src/basic/filesystems-gperf.gperf"
251
0
      {"openpromfs",      {OPENPROM_SUPER_MAGIC}},
252
0
#line 43 "src/basic/filesystems-gperf.gperf"
253
0
      {"cgroup",          {CGROUP_SUPER_MAGIC}},
254
0
      {""},
255
0
#line 113 "src/basic/filesystems-gperf.gperf"
256
0
      {"udf",             {UDF_SUPER_MAGIC}},
257
0
#line 80 "src/basic/filesystems-gperf.gperf"
258
0
      {"nfs4",            {NFS_SUPER_MAGIC}},
259
0
#line 38 "src/basic/filesystems-gperf.gperf"
260
0
      {"btrfs",           {BTRFS_SUPER_MAGIC}},
261
0
#line 75 "src/basic/filesystems-gperf.gperf"
262
0
      {"mqueue",          {MQUEUE_MAGIC}},
263
0
      {""}, {""},
264
0
#line 41 "src/basic/filesystems-gperf.gperf"
265
0
      {"ceph",            {CEPH_SUPER_MAGIC}},
266
0
#line 61 "src/basic/filesystems-gperf.gperf"
267
0
      {"exfat",           {EXFAT_SUPER_MAGIC}},
268
0
#line 32 "src/basic/filesystems-gperf.gperf"
269
0
      {"balloon-kvm",     {BALLOON_KVM_MAGIC}},
270
0
      {""},
271
0
#line 39 "src/basic/filesystems-gperf.gperf"
272
0
      {"btrfs_test_fs",   {BTRFS_TEST_MAGIC}},
273
0
#line 71 "src/basic/filesystems-gperf.gperf"
274
0
      {"hugetlbfs",       {HUGETLBFS_MAGIC}},
275
0
#line 94 "src/basic/filesystems-gperf.gperf"
276
0
      {"pvfs2",           {ORANGEFS_DEVREQ_MAGIC}},
277
0
      {""}, {""},
278
0
#line 48 "src/basic/filesystems-gperf.gperf"
279
0
      {"dax",             {DAXFS_MAGIC}},
280
0
#line 106 "src/basic/filesystems-gperf.gperf"
281
0
      {"smb3",            {CIFS_SUPER_MAGIC}},
282
0
      {""}, {""}, {""},
283
0
#line 122 "src/basic/filesystems-gperf.gperf"
284
0
      {"zsmalloc",        {ZSMALLOC_MAGIC}},
285
0
#line 62 "src/basic/filesystems-gperf.gperf"
286
0
      {"f2fs",            {F2FS_SUPER_MAGIC}},
287
0
      {""}, {""}, {""}, {""},
288
0
#line 96 "src/basic/filesystems-gperf.gperf"
289
0
      {"qnx6",            {QNX6_SUPER_MAGIC}},
290
0
      {""},
291
0
#line 36 "src/basic/filesystems-gperf.gperf"
292
0
      {"binfmt_misc",     {BINFMTFS_MAGIC}},
293
0
#line 30 "src/basic/filesystems-gperf.gperf"
294
0
      {"anon_inodefs",    {ANON_INODE_FS_MAGIC}},
295
0
      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
296
0
      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
297
0
#line 73 "src/basic/filesystems-gperf.gperf"
298
0
      {"jffs2",           {JFFS2_SUPER_MAGIC}},
299
0
      {""}, {""}, {""},
300
0
#line 58 "src/basic/filesystems-gperf.gperf"
301
0
      {"ext2",            {EXT2_SUPER_MAGIC}},
302
0
      {""},
303
0
#line 81 "src/basic/filesystems-gperf.gperf"
304
0
      {"nilfs2",          {NILFS_SUPER_MAGIC}},
305
0
      {""}, {""}, {""},
306
0
#line 85 "src/basic/filesystems-gperf.gperf"
307
0
      {"ocfs2",           {OCFS2_SUPER_MAGIC}},
308
0
#line 35 "src/basic/filesystems-gperf.gperf"
309
0
      {"binder",          {BINDERFS_SUPER_MAGIC}},
310
0
#line 88 "src/basic/filesystems-gperf.gperf"
311
0
      {"overlay",         {OVERLAYFS_SUPER_MAGIC}},
312
0
      {""}, {""},
313
0
#line 74 "src/basic/filesystems-gperf.gperf"
314
0
      {"minix",           {MINIX_SUPER_MAGIC, MINIX_SUPER_MAGIC2, MINIX2_SUPER_MAGIC, MINIX2_SUPER_MAGIC2, MINIX3_SUPER_MAGIC}},
315
0
      {""}, {""}, {""},
316
0
#line 60 "src/basic/filesystems-gperf.gperf"
317
0
      {"ext4",            {EXT4_SUPER_MAGIC}},
318
0
      {""}, {""},
319
0
#line 42 "src/basic/filesystems-gperf.gperf"
320
0
      {"cgroup2",         {CGROUP2_SUPER_MAGIC}},
321
0
      {""}, {""},
322
0
#line 84 "src/basic/filesystems-gperf.gperf"
323
0
      {"ntfs3",           {NTFS3_SUPER_MAGIC}},
324
0
#line 120 "src/basic/filesystems-gperf.gperf"
325
0
      {"z3fold",          {Z3FOLD_MAGIC}},
326
0
      {""}, {""},
327
0
#line 95 "src/basic/filesystems-gperf.gperf"
328
0
      {"qnx4",            {QNX4_SUPER_MAGIC}},
329
0
      {""}, {""}, {""}, {""},
330
0
#line 59 "src/basic/filesystems-gperf.gperf"
331
0
      {"ext3",            {EXT3_SUPER_MAGIC}}
332
0
    };
333
334
0
  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
335
0
    {
336
0
      register unsigned int key = filesystems_gperf_hash (str, len);
337
338
0
      if (key <= MAX_HASH_VALUE)
339
0
        {
340
0
          register const char *s = wordlist[key].name;
341
342
0
          if (*str == *s && !strcmp (str + 1, s + 1))
343
0
            return &wordlist[key];
344
0
        }
345
0
    }
346
0
  return 0;
347
0
}