/work/build/src/nspawn/nspawn-gperf.c
Line  | Count  | Source  | 
1  |  | /* ANSI-C code produced by gperf version 3.0.4 */  | 
2  |  | /* Command-line: /usr/bin/gperf --output-file src/nspawn/nspawn-gperf.c ../../src/systemd/src/nspawn/nspawn-gperf.gperf  */  | 
3  |  | /* Computed positions: -k'12,$' */  | 
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-gnu-gperf@gnu.org>."  | 
30  |  | #endif  | 
31  |  |  | 
32  |  | #line 1 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
33  |  |  | 
34  |  | #if __GNUC__ >= 7  | 
35  |  | _Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"") | 
36  |  | #endif  | 
37  |  | #include <stddef.h>  | 
38  |  | #include "conf-parser.h"  | 
39  |  | #include "nspawn-settings.h"  | 
40  |  | #include "nspawn-expose-ports.h"  | 
41  |  | #include <string.h>  | 
42  |  |  | 
43  |  | #define TOTAL_KEYWORDS 57  | 
44  | 630k  | #define MIN_WORD_LENGTH 9  | 
45  | 1.26M  | #define MAX_WORD_LENGTH 28  | 
46  |  | #define MIN_HASH_VALUE 9  | 
47  | 364k  | #define MAX_HASH_VALUE 85  | 
48  |  | /* maximum key range = 77, duplicates = 0 */  | 
49  |  |  | 
50  |  | #ifdef __GNUC__  | 
51  |  | __inline  | 
52  |  | #else  | 
53  |  | #ifdef __cplusplus  | 
54  |  | inline  | 
55  |  | #endif  | 
56  |  | #endif  | 
57  |  | static unsigned int  | 
58  |  | nspawn_gperf_hash (register const char *str, register unsigned int len)  | 
59  | 182k  | { | 
60  | 182k  |   static const unsigned char asso_values[] =  | 
61  | 182k  |     { | 
62  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
63  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
64  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
65  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
66  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
67  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
68  | 182k  |       86, 86, 86, 86, 86, 30, 86,  0, 50, 15,  | 
69  | 182k  |       86, 30, 86, 35, 86,  5, 10, 86, 30,  5,  | 
70  | 182k  |       55, 86, 40, 25, 20,  5, 30, 86, 86, 86,  | 
71  | 182k  |       86, 86, 86, 86, 86, 86, 86, 20, 86, 86,  | 
72  | 182k  |       40,  5,  0, 25, 86, 10, 86, 86, 25, 50,  | 
73  | 182k  |       15,  5,  0, 86,  5, 10,  0, 30,  0, 86,  | 
74  | 182k  |       86, 20, 86, 86, 86, 86, 86, 86, 86, 86,  | 
75  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
76  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
77  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
78  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
79  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
80  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
81  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
82  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
83  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
84  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
85  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
86  | 182k  |       86, 86, 86, 86, 86, 86, 86, 86, 86, 86,  | 
87  | 182k  |       86, 86, 86, 86, 86, 86  | 
88  | 182k  |     };  | 
89  | 182k  |   register int hval = len;  | 
90  | 182k  |  | 
91  | 182k  |   switch (hval)  | 
92  | 182k  |     { | 
93  | 182k  |       default:  | 
94  | 119k  |         hval += asso_values[(unsigned char)str[11]];  | 
95  | 119k  |       /*FALLTHROUGH*/  | 
96  | 182k  |       case 11:  | 
97  | 182k  |       case 10:  | 
98  | 182k  |       case 9:  | 
99  | 182k  |         break;  | 
100  | 182k  |     }  | 
101  | 182k  |   return hval + asso_values[(unsigned char)str[len - 1]];  | 
102  | 182k  | }  | 
103  |  |  | 
104  |  | #ifdef __GNUC__  | 
105  |  | __inline  | 
106  |  | #if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__  | 
107  |  | __attribute__ ((__gnu_inline__))  | 
108  |  | #endif  | 
109  |  | #endif  | 
110  |  | const struct ConfigPerfItem *  | 
111  |  | nspawn_gperf_lookup (register const char *str, register unsigned int len)  | 
112  | 634k  | { | 
113  | 634k  |   static const struct ConfigPerfItem wordlist[] =  | 
114  | 634k  |     { | 
115  | 634k  |       {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0}, | 
116  | 634k  |       {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0}, | 
117  | 634k  |       {(char*)0}, | 
118  | 634k  | #line 21 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
119  | 634k  |       {"Exec.Boot",                    config_parse_boot,           0,                 0}, | 
120  | 634k  |       {(char*)0}, {(char*)0}, | 
121  | 634k  | #line 77 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
122  | 634k  |       {"Network.Port",                 config_parse_expose_port,    0,                 0}, | 
123  | 634k  |       {(char*)0}, | 
124  | 634k  | #line 26 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
125  | 634k  |       {"Exec.User",                    config_parse_string,         0,                 offsetof(Settings, user)}, | 
126  | 634k  | #line 57 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
127  | 634k  |       {"Exec.ResolvConf",              config_parse_resolv_conf,    0,                 offsetof(Settings, resolv_conf)}, | 
128  | 634k  |       {(char*)0}, {(char*)0}, {(char*)0}, | 
129  | 634k  | #line 33 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
130  | 634k  |       {"Exec.PivotRoot",               config_parse_pivot_root,     0,                 0}, | 
131  | 634k  | #line 69 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
132  | 634k  |       {"Network.Private",              config_parse_tristate,       0,                 offsetof(Settings, private_network)}, | 
133  | 634k  |       {(char*)0}, | 
134  | 634k  | #line 76 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
135  | 634k  |       {"Network.Zone",                 config_parse_network_zone,   0,                 0}, | 
136  | 634k  | #line 73 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
137  | 634k  |       {"Network.VirtualEthernet",      config_parse_tristate,       0,                 offsetof(Settings, network_veth)}, | 
138  | 634k  | #line 55 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
139  | 634k  |       {"Exec.OOMScoreAdjust",          config_parse_oom_score_adjust, 0,               0}, | 
140  | 634k  | #line 24 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
141  | 634k  |       {"Exec.Parameters",              config_parse_strv,           0,                 offsetof(Settings, parameters)}, | 
142  | 634k  | #line 36 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
143  | 634k  |       {"Exec.SystemCallFilter",        config_parse_syscall_filter, 0,                 0,}, | 
144  | 634k  | #line 70 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
145  | 634k  |       {"Network.Interface",            config_parse_strv,           0,                 offsetof(Settings, network_interfaces)}, | 
146  | 634k  | #line 65 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
147  | 634k  |       {"Files.Inaccessible",           config_parse_inaccessible,   0,                 0}, | 
148  | 634k  | #line 61 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
149  | 634k  |       {"Files.Volatile",               config_parse_volatile_mode,  0,                 offsetof(Settings, volatile_mode)}, | 
150  | 634k  | #line 23 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
151  | 634k  |       {"Exec.ProcessTwo",              config_parse_pid2,           0,                 0}, | 
152  | 634k  | #line 25 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
153  | 634k  |       {"Exec.Environment",             config_parse_strv,           0,                 offsetof(Settings, environment)}, | 
154  | 634k  | #line 34 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
155  | 634k  |       {"Exec.PrivateUsers",            config_parse_private_users,  0,                 0}, | 
156  | 634k  | #line 59 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
157  | 634k  |       {"Exec.Timezone",                config_parse_timezone,       0,                 offsetof(Settings, timezone)}, | 
158  | 634k  | #line 41 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
159  | 634k  |       {"Exec.LimitCORE",               config_parse_rlimit,         RLIMIT_CORE,       offsetof(Settings, rlimit)}, | 
160  | 634k  | #line 54 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
161  | 634k  |       {"Exec.NoNewPrivileges",         config_parse_tristate,       0,                 offsetof(Settings, no_new_privileges)}, | 
162  | 634k  | #line 43 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
163  | 634k  |       {"Exec.LimitNOFILE",             config_parse_rlimit,         RLIMIT_NOFILE,     offsetof(Settings, rlimit)}, | 
164  | 634k  | #line 46 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
165  | 634k  |       {"Exec.LimitMEMLOCK",            config_parse_rlimit,         RLIMIT_MEMLOCK,    offsetof(Settings, rlimit)}, | 
166  | 634k  | #line 68 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
167  | 634k  |       {"Files.PrivateUsersChown",      config_parse_tristate,       0,                 offsetof(Settings, userns_chown)}, | 
168  | 634k  | #line 28 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
169  | 634k  |       {"Exec.DropCapability",          config_parse_capability,     0,                 offsetof(Settings, drop_capability)}, | 
170  | 634k  | #line 40 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
171  | 634k  |       {"Exec.LimitSTACK",              config_parse_rlimit,         RLIMIT_STACK,      offsetof(Settings, rlimit)}, | 
172  | 634k  | #line 51 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
173  | 634k  |       {"Exec.LimitRTPRIO",             config_parse_rlimit,         RLIMIT_RTPRIO,     offsetof(Settings, rlimit)}, | 
174  | 634k  |       {(char*)0}, | 
175  | 634k  | #line 63 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
176  | 634k  |       {"Files.BindReadOnly",           config_parse_bind,           1,                 0}, | 
177  | 634k  | #line 22 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
178  | 634k  |       {"Exec.Ephemeral",               config_parse_bool,           0,                 offsetof(Settings, ephemeral)}, | 
179  | 634k  | #line 47 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
180  | 634k  |       {"Exec.LimitLOCKS",              config_parse_rlimit,         RLIMIT_LOCKS,      offsetof(Settings, rlimit)}, | 
181  | 634k  | #line 56 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
182  | 634k  |       {"Exec.CPUAffinity",             config_parse_cpu_affinity,   0,                 0}, | 
183  | 634k  |       {(char*)0}, | 
184  | 634k  | #line 74 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
185  | 634k  |       {"Network.VirtualEthernetExtra", config_parse_veth_extra,     0,                 0}, | 
186  | 634k  | #line 60 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
187  | 634k  |       {"Files.ReadOnly",               config_parse_tristate,       0,                 offsetof(Settings, read_only)}, | 
188  | 634k  | #line 62 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
189  | 634k  |       {"Files.Bind",                   config_parse_bind,           0,                 0}, | 
190  | 634k  | #line 52 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
191  | 634k  |       {"Exec.LimitRTTIME",             config_parse_rlimit,         RLIMIT_RTTIME,     offsetof(Settings, rlimit)}, | 
192  | 634k  |       {(char*)0}, | 
193  | 634k  | #line 66 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
194  | 634k  |       {"Files.Overlay",                config_parse_overlay,        0,                 0}, | 
195  | 634k  | #line 72 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
196  | 634k  |       {"Network.IPVLAN",               config_parse_strv,           0,                 offsetof(Settings, network_ipvlan)}, | 
197  | 634k  | #line 38 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
198  | 634k  |       {"Exec.LimitFSIZE",              config_parse_rlimit,         RLIMIT_FSIZE,      offsetof(Settings, rlimit)}, | 
199  | 634k  | #line 30 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
200  | 634k  |       {"Exec.Personality",             config_parse_personality,    0,                 offsetof(Settings, personality)}, | 
201  | 634k  |       {(char*)0}, | 
202  | 634k  | #line 49 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
203  | 634k  |       {"Exec.LimitMSGQUEUE",           config_parse_rlimit,         RLIMIT_MSGQUEUE,   offsetof(Settings, rlimit)}, | 
204  | 634k  | #line 75 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
205  | 634k  |       {"Network.Bridge",               config_parse_ifname,         0,                 offsetof(Settings, network_bridge)}, | 
206  | 634k  | #line 27 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
207  | 634k  |       {"Exec.Capability",              config_parse_capability,     0,                 offsetof(Settings, capability)}, | 
208  | 634k  | #line 67 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
209  | 634k  |       {"Files.OverlayReadOnly",        config_parse_overlay,        1,                 0}, | 
210  | 634k  | #line 44 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
211  | 634k  |       {"Exec.LimitAS",                 config_parse_rlimit,         RLIMIT_AS,         offsetof(Settings, rlimit)}, | 
212  | 634k  | #line 42 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
213  | 634k  |       {"Exec.LimitRSS",                config_parse_rlimit,         RLIMIT_RSS,        offsetof(Settings, rlimit)}, | 
214  | 634k  | #line 50 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
215  | 634k  |       {"Exec.LimitNICE",               config_parse_rlimit,         RLIMIT_NICE,       offsetof(Settings, rlimit)}, | 
216  | 634k  | #line 29 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
217  | 634k  |       {"Exec.KillSignal",              config_parse_signal,         0,                 offsetof(Settings, kill_signal)}, | 
218  | 634k  | #line 32 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
219  | 634k  |       {"Exec.WorkingDirectory",        config_parse_path,           0,                 offsetof(Settings, working_directory)}, | 
220  | 634k  |       {(char*)0}, | 
221  | 634k  | #line 53 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
222  | 634k  |       {"Exec.Hostname",                config_parse_hostname,       0,                 offsetof(Settings, hostname)}, | 
223  | 634k  | #line 31 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
224  | 634k  |       {"Exec.MachineID",               config_parse_id128,          0,                 offsetof(Settings, machine_id)}, | 
225  | 634k  | #line 45 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
226  | 634k  |       {"Exec.LimitNPROC",              config_parse_rlimit,         RLIMIT_NPROC,      offsetof(Settings, rlimit)}, | 
227  | 634k  | #line 58 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
228  | 634k  |       {"Exec.LinkJournal",             config_parse_link_journal,   0,                 0}, | 
229  | 634k  |       {(char*)0}, | 
230  | 634k  | #line 37 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
231  | 634k  |       {"Exec.LimitCPU",                config_parse_rlimit,         RLIMIT_CPU,        offsetof(Settings, rlimit)}, | 
232  | 634k  | #line 39 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
233  | 634k  |       {"Exec.LimitDATA",               config_parse_rlimit,         RLIMIT_DATA,       offsetof(Settings, rlimit)}, | 
234  | 634k  | #line 71 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
235  | 634k  |       {"Network.MACVLAN",              config_parse_strv,           0,                 offsetof(Settings, network_macvlan)}, | 
236  | 634k  | #line 35 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
237  | 634k  |       {"Exec.NotifyReady",             config_parse_bool,           0,                 offsetof(Settings, notify_ready)}, | 
238  | 634k  |       {(char*)0}, {(char*)0}, {(char*)0}, | 
239  | 634k  | #line 64 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
240  | 634k  |       {"Files.TemporaryFileSystem",    config_parse_tmpfs,          0,                 0}, | 
241  | 634k  |       {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0}, | 
242  | 634k  | #line 48 "../../src/systemd/src/nspawn/nspawn-gperf.gperf"  | 
243  | 634k  |       {"Exec.LimitSIGPENDING",         config_parse_rlimit,         RLIMIT_SIGPENDING, offsetof(Settings, rlimit)} | 
244  | 634k  |     };  | 
245  | 634k  |  | 
246  | 634k  |   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)  | 
247  | 634k  |     { | 
248  | 182k  |       register int key = nspawn_gperf_hash (str, len);  | 
249  | 182k  |  | 
250  | 182k  |       if (key <= MAX_HASH_VALUE && key >= 0)  | 
251  | 177k  |         { | 
252  | 177k  |           register const char *s = wordlist[key].section_and_lvalue;  | 
253  | 177k  |  | 
254  | 177k  |           if (s && *str == *s && !strcmp (str + 1, s + 1))  | 
255  | 177k  |             return &wordlist[key];  | 
256  | 476k  |         }  | 
257  | 182k  |     }  | 
258  | 476k  |   return 0;  | 
259  | 476k  | }  |