Coverage Report

Created: 2025-08-28 06:46

/work/build/src/basic/filesystems-gperf.h
Line
Count
Source (jump to first uncovered line)
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 96
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 196
53
/* maximum key range = 194, 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
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
68
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
69
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
70
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
71
0
      197, 197, 197, 197, 197, 197, 197, 197,  15, 197,
72
0
        5, 102,  30, 197,   5, 197, 197, 197,   0, 197,
73
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
74
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
75
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
76
0
      197, 197, 197, 197, 197, 197, 197,  40,  35,  10,
77
0
        5,  25,  10,   0,  90,   0,  65,   5,   0,  10,
78
0
        5,  90,   0,  10,  45,   0,  25,  55,  20,  15,
79
0
       65,  65,  95, 197, 197, 197, 197, 197, 197, 197,
80
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
81
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
82
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
83
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
84
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
85
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
86
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
87
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
88
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
89
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
90
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
91
0
      197, 197, 197, 197, 197, 197, 197, 197, 197, 197,
92
0
      197, 197, 197, 197, 197, 197, 197
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 107 "src/basic/filesystems-gperf.gperf"
107
0
      {"sockfs",          {SOCKFS_MAGIC}},
108
0
#line 103 "src/basic/filesystems-gperf.gperf"
109
0
      {"shiftfs",         {SHIFTFS_MAGIC}},
110
0
#line 78 "src/basic/filesystems-gperf.gperf"
111
0
      {"nfs",             {NFS_SUPER_MAGIC}},
112
0
#line 67 "src/basic/filesystems-gperf.gperf"
113
0
      {"gfs2",            {GFS2_MAGIC}},
114
0
#line 106 "src/basic/filesystems-gperf.gperf"
115
0
      {"smbfs",           {SMB_SUPER_MAGIC}},
116
0
      {""},
117
0
#line 104 "src/basic/filesystems-gperf.gperf"
118
0
      {"smackfs",         {SMACK_MAGIC}},
119
0
#line 76 "src/basic/filesystems-gperf.gperf"
120
0
      {"ncp",             {NCP_SUPER_MAGIC}},
121
0
#line 91 "src/basic/filesystems-gperf.gperf"
122
0
      {"proc",            {PROC_SUPER_MAGIC}},
123
0
#line 77 "src/basic/filesystems-gperf.gperf"
124
0
      {"ncpfs",           {NCP_SUPER_MAGIC}},
125
0
#line 47 "src/basic/filesystems-gperf.gperf"
126
0
      {"cramfs",          {CRAMFS_MAGIC}},
127
0
      {""},
128
0
#line 46 "src/basic/filesystems-gperf.gperf"
129
0
      {"configfs",        {CONFIGFS_MAGIC}},
130
0
#line 102 "src/basic/filesystems-gperf.gperf"
131
0
      {"selinuxfs",       {SELINUX_MAGIC}},
132
0
#line 101 "src/basic/filesystems-gperf.gperf"
133
0
      {"securityfs",      {SECURITYFS_MAGIC}},
134
0
#line 51 "src/basic/filesystems-gperf.gperf"
135
0
      {"devpts",          {DEVPTS_SUPER_MAGIC}},
136
0
#line 49 "src/basic/filesystems-gperf.gperf"
137
0
      {"debugfs",         {DEBUGFS_MAGIC}},
138
0
#line 52 "src/basic/filesystems-gperf.gperf"
139
0
      {"devtmpfs",        {TMPFS_MAGIC}},
140
0
#line 116 "src/basic/filesystems-gperf.gperf"
141
0
      {"v9fs",            {V9FS_MAGIC}},
142
0
#line 93 "src/basic/filesystems-gperf.gperf"
143
0
      {"pvfs2",           {ORANGEFS_DEVREQ_MAGIC}},
144
0
#line 53 "src/basic/filesystems-gperf.gperf"
145
0
      {"dmabuf",          {DMA_BUF_MAGIC}},
146
0
#line 90 "src/basic/filesystems-gperf.gperf"
147
0
      {"ppc-cmm",         {PPC_CMM_MAGIC}},
148
0
#line 56 "src/basic/filesystems-gperf.gperf"
149
0
      {"efs",             {EFS_SUPER_MAGIC}},
150
0
#line 100 "src/basic/filesystems-gperf.gperf"
151
0
      {"secretmem",       {SECRETMEM_MAGIC}},
152
0
#line 57 "src/basic/filesystems-gperf.gperf"
153
0
      {"erofs",           {EROFS_SUPER_MAGIC_V1}},
154
0
#line 50 "src/basic/filesystems-gperf.gperf"
155
0
      {"devmem",          {DEVMEM_MAGIC}},
156
0
#line 111 "src/basic/filesystems-gperf.gperf"
157
0
      {"tracefs",         {TRACEFS_MAGIC}},
158
0
#line 55 "src/basic/filesystems-gperf.gperf"
159
0
      {"efivarfs",        {EFIVARFS_MAGIC}},
160
0
#line 81 "src/basic/filesystems-gperf.gperf"
161
0
      {"nsfs",            {NSFS_MAGIC}},
162
0
#line 110 "src/basic/filesystems-gperf.gperf"
163
0
      {"tmpfs",           {TMPFS_MAGIC}},
164
0
      {""},
165
0
#line 65 "src/basic/filesystems-gperf.gperf"
166
0
      {"fusectl",         {FUSE_CTL_SUPER_MAGIC}},
167
0
#line 54 "src/basic/filesystems-gperf.gperf"
168
0
      {"ecryptfs",        {ECRYPTFS_SUPER_MAGIC}},
169
0
#line 79 "src/basic/filesystems-gperf.gperf"
170
0
      {"nfs4",            {NFS_SUPER_MAGIC}},
171
0
#line 75 "src/basic/filesystems-gperf.gperf"
172
0
      {"msdos",           {MSDOS_SUPER_MAGIC}},
173
0
      {""},
174
0
#line 63 "src/basic/filesystems-gperf.gperf"
175
0
      {"fuseblk",         {FUSE_SUPER_MAGIC}},
176
0
#line 29 "src/basic/filesystems-gperf.gperf"
177
0
      {"afs",             {AFS_FS_MAGIC, AFS_SUPER_MAGIC}},
178
0
#line 28 "src/basic/filesystems-gperf.gperf"
179
0
      {"affs",            {AFFS_SUPER_MAGIC}},
180
0
      {""},
181
0
#line 114 "src/basic/filesystems-gperf.gperf"
182
0
      {"vboxsf",          {VBOXSF_SUPER_MAGIC}},
183
0
#line 71 "src/basic/filesystems-gperf.gperf"
184
0
      {"iso9660",         {ISOFS_SUPER_MAGIC}},
185
0
#line 33 "src/basic/filesystems-gperf.gperf"
186
0
      {"bcachefs",        {BCACHEFS_SUPER_MAGIC}},
187
0
#line 115 "src/basic/filesystems-gperf.gperf"
188
0
      {"vfat",            {MSDOS_SUPER_MAGIC}},
189
0
      {""},
190
0
#line 40 "src/basic/filesystems-gperf.gperf"
191
0
      {"cpuset",          {CGROUP_SUPER_MAGIC}},
192
0
      {""},
193
0
#line 108 "src/basic/filesystems-gperf.gperf"
194
0
      {"squashfs",        {SQUASHFS_MAGIC}},
195
0
#line 45 "src/basic/filesystems-gperf.gperf"
196
0
      {"coda",            {CODA_SUPER_MAGIC}},
197
0
      {""},
198
0
#line 92 "src/basic/filesystems-gperf.gperf"
199
0
      {"pstore",          {PSTOREFS_MAGIC}},
200
0
      {""},
201
0
#line 37 "src/basic/filesystems-gperf.gperf"
202
0
      {"bpf",             {BPF_FS_MAGIC}},
203
0
#line 64 "src/basic/filesystems-gperf.gperf"
204
0
      {"fuse",            {FUSE_SUPER_MAGIC}},
205
0
#line 26 "src/basic/filesystems-gperf.gperf"
206
0
      {"apparmorfs",      {AAFS_MAGIC}},
207
0
      {""},
208
0
#line 97 "src/basic/filesystems-gperf.gperf"
209
0
      {"resctrl",         {RDTGROUP_SUPER_MAGIC}},
210
0
#line 98 "src/basic/filesystems-gperf.gperf"
211
0
      {"reiserfs",        {REISERFS_SUPER_MAGIC}},
212
0
#line 82 "src/basic/filesystems-gperf.gperf"
213
0
      {"ntfs",            {NTFS_SB_MAGIC}},
214
0
#line 99 "src/basic/filesystems-gperf.gperf"
215
0
      {"rpc_pipefs",      {RPC_PIPEFS_SUPER_MAGIC}},
216
0
#line 31 "src/basic/filesystems-gperf.gperf"
217
0
      {"autofs",          {AUTOFS_SUPER_MAGIC}},
218
0
      {""},
219
0
#line 118 "src/basic/filesystems-gperf.gperf"
220
0
      {"xfs",             {XFS_SUPER_MAGIC}},
221
0
#line 27 "src/basic/filesystems-gperf.gperf"
222
0
      {"adfs",            {ADFS_SUPER_MAGIC}},
223
0
#line 88 "src/basic/filesystems-gperf.gperf"
224
0
      {"pidfs",           {PID_FS_MAGIC}},
225
0
#line 89 "src/basic/filesystems-gperf.gperf"
226
0
      {"pipefs",          {PIPEFS_MAGIC}},
227
0
      {""}, {""}, {""},
228
0
#line 72 "src/basic/filesystems-gperf.gperf"
229
0
      {"jffs2",           {JFFS2_SUPER_MAGIC}},
230
0
      {""}, {""}, {""},
231
0
#line 44 "src/basic/filesystems-gperf.gperf"
232
0
      {"cifs",            {CIFS_SUPER_MAGIC, SMB2_SUPER_MAGIC}},
233
0
#line 117 "src/basic/filesystems-gperf.gperf"
234
0
      {"xenfs",           {XENFS_SUPER_MAGIC}},
235
0
#line 80 "src/basic/filesystems-gperf.gperf"
236
0
      {"nilfs2",          {NILFS_SUPER_MAGIC}},
237
0
      {""}, {""},
238
0
#line 34 "src/basic/filesystems-gperf.gperf"
239
0
      {"bdev",            {BDEVFS_MAGIC}},
240
0
#line 96 "src/basic/filesystems-gperf.gperf"
241
0
      {"ramfs",           {RAMFS_MAGIC}},
242
0
#line 74 "src/basic/filesystems-gperf.gperf"
243
0
      {"mqueue",          {MQUEUE_MAGIC}},
244
0
      {""},
245
0
#line 113 "src/basic/filesystems-gperf.gperf"
246
0
      {"usbdevfs",        {USBDEVICE_SUPER_MAGIC}},
247
0
      {""}, {""},
248
0
#line 32 "src/basic/filesystems-gperf.gperf"
249
0
      {"balloon-kvm",     {BALLOON_KVM_MAGIC}},
250
0
      {""},
251
0
#line 112 "src/basic/filesystems-gperf.gperf"
252
0
      {"udf",             {UDF_SUPER_MAGIC}},
253
0
      {""},
254
0
#line 38 "src/basic/filesystems-gperf.gperf"
255
0
      {"btrfs",           {BTRFS_SUPER_MAGIC}},
256
0
#line 68 "src/basic/filesystems-gperf.gperf"
257
0
      {"hostfs",          {HOSTFS_SUPER_MAGIC}},
258
0
      {""},
259
0
#line 86 "src/basic/filesystems-gperf.gperf"
260
0
      {"orangefs",        {ORANGEFS_DEVREQ_MAGIC}},
261
0
#line 58 "src/basic/filesystems-gperf.gperf"
262
0
      {"ext2",            {EXT2_SUPER_MAGIC}},
263
0
#line 109 "src/basic/filesystems-gperf.gperf"
264
0
      {"sysfs",           {SYSFS_MAGIC}},
265
0
#line 120 "src/basic/filesystems-gperf.gperf"
266
0
      {"zonefs",          {ZONEFS_MAGIC}},
267
0
      {""},
268
0
#line 39 "src/basic/filesystems-gperf.gperf"
269
0
      {"btrfs_test_fs",   {BTRFS_TEST_MAGIC}},
270
0
#line 69 "src/basic/filesystems-gperf.gperf"
271
0
      {"hpfs",            {HPFS_SUPER_MAGIC}},
272
0
#line 84 "src/basic/filesystems-gperf.gperf"
273
0
      {"ocfs2",           {OCFS2_SUPER_MAGIC}},
274
0
#line 43 "src/basic/filesystems-gperf.gperf"
275
0
      {"cgroup",          {CGROUP_SUPER_MAGIC}},
276
0
      {""},
277
0
#line 48 "src/basic/filesystems-gperf.gperf"
278
0
      {"dax",             {DAXFS_MAGIC}},
279
0
#line 95 "src/basic/filesystems-gperf.gperf"
280
0
      {"qnx6",            {QNX6_SUPER_MAGIC}},
281
0
#line 85 "src/basic/filesystems-gperf.gperf"
282
0
      {"openpromfs",      {OPENPROM_SUPER_MAGIC}},
283
0
#line 105 "src/basic/filesystems-gperf.gperf"
284
0
      {"smb3",            {CIFS_SUPER_MAGIC}},
285
0
#line 42 "src/basic/filesystems-gperf.gperf"
286
0
      {"cgroup2",         {CGROUP2_SUPER_MAGIC}},
287
0
      {""},
288
0
#line 41 "src/basic/filesystems-gperf.gperf"
289
0
      {"ceph",            {CEPH_SUPER_MAGIC}},
290
0
      {""},
291
0
#line 62 "src/basic/filesystems-gperf.gperf"
292
0
      {"f2fs",            {F2FS_SUPER_MAGIC}},
293
0
      {""}, {""},
294
0
#line 70 "src/basic/filesystems-gperf.gperf"
295
0
      {"hugetlbfs",       {HUGETLBFS_MAGIC}},
296
0
#line 61 "src/basic/filesystems-gperf.gperf"
297
0
      {"exfat",           {EXFAT_SUPER_MAGIC}},
298
0
#line 36 "src/basic/filesystems-gperf.gperf"
299
0
      {"binfmt_misc",     {BINFMTFS_MAGIC}},
300
0
      {""}, {""},
301
0
#line 60 "src/basic/filesystems-gperf.gperf"
302
0
      {"ext4",            {EXT4_SUPER_MAGIC}},
303
0
      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
304
0
#line 94 "src/basic/filesystems-gperf.gperf"
305
0
      {"qnx4",            {QNX4_SUPER_MAGIC}},
306
0
      {""},
307
0
#line 119 "src/basic/filesystems-gperf.gperf"
308
0
      {"z3fold",          {Z3FOLD_MAGIC}},
309
0
      {""},
310
0
#line 121 "src/basic/filesystems-gperf.gperf"
311
0
      {"zsmalloc",        {ZSMALLOC_MAGIC}},
312
0
      {""}, {""}, {""},
313
0
#line 30 "src/basic/filesystems-gperf.gperf"
314
0
      {"anon_inodefs",    {ANON_INODE_FS_MAGIC}},
315
0
      {""}, {""},
316
0
#line 73 "src/basic/filesystems-gperf.gperf"
317
0
      {"minix",           {MINIX_SUPER_MAGIC, MINIX_SUPER_MAGIC2, MINIX2_SUPER_MAGIC, MINIX2_SUPER_MAGIC2, MINIX3_SUPER_MAGIC}},
318
0
      {""}, {""}, {""}, {""}, {""},
319
0
#line 35 "src/basic/filesystems-gperf.gperf"
320
0
      {"binder",          {BINDERFS_SUPER_MAGIC}},
321
0
      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
322
0
      {""}, {""}, {""}, {""}, {""}, {""},
323
0
#line 83 "src/basic/filesystems-gperf.gperf"
324
0
      {"ntfs3",           {NTFS3_SUPER_MAGIC}},
325
0
      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
326
0
#line 87 "src/basic/filesystems-gperf.gperf"
327
0
      {"overlay",         {OVERLAYFS_SUPER_MAGIC}},
328
0
      {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
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
}