/work/build/src/network/networkd-gperf.c
Line  | Count  | Source (jump to first uncovered line)  | 
1  |  | /* ANSI-C code produced by gperf version 3.0.4 */  | 
2  |  | /* Command-line: /usr/bin/gperf --output-file src/network/networkd-gperf.c ../../src/systemd/src/network/networkd-gperf.gperf  */  | 
3  |  | /* Computed positions: -k'' */  | 
4  |  |  | 
5  |  | #line 1 "../../src/systemd/src/network/networkd-gperf.gperf"  | 
6  |  |  | 
7  |  | #if __GNUC__ >= 7  | 
8  |  | _Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"") | 
9  |  | #endif  | 
10  |  | #include <stddef.h>  | 
11  |  | #include "conf-parser.h"  | 
12  |  | #include "networkd-conf.h"  | 
13  |  | #include "networkd-manager.h"  | 
14  |  | #include <string.h>  | 
15  |  |  | 
16  |  | #define TOTAL_KEYWORDS 4  | 
17  | 0  | #define MIN_WORD_LENGTH 13  | 
18  | 0  | #define MAX_WORD_LENGTH 29  | 
19  |  | #define MIN_HASH_VALUE 13  | 
20  | 0  | #define MAX_HASH_VALUE 29  | 
21  |  | /* maximum key range = 17, duplicates = 0 */  | 
22  |  |  | 
23  |  | #ifdef __GNUC__  | 
24  |  | __inline  | 
25  |  | #else  | 
26  |  | #ifdef __cplusplus  | 
27  |  | inline  | 
28  |  | #endif  | 
29  |  | #endif  | 
30  |  | /*ARGSUSED*/  | 
31  |  | static unsigned int  | 
32  |  | networkd_gperf_hash (register const char *str, register unsigned int len)  | 
33  | 0  | { | 
34  | 0  |   return len;  | 
35  | 0  | }  | 
36  |  |  | 
37  |  | #ifdef __GNUC__  | 
38  |  | __inline  | 
39  |  | #if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__  | 
40  |  | __attribute__ ((__gnu_inline__))  | 
41  |  | #endif  | 
42  |  | #endif  | 
43  |  | const struct ConfigPerfItem *  | 
44  |  | networkd_gperf_lookup (register const char *str, register unsigned int len)  | 
45  | 0  | { | 
46  | 0  |   static const struct ConfigPerfItem wordlist[] =  | 
47  | 0  |     { | 
48  | 0  |       {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0}, | 
49  | 0  |       {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0}, | 
50  | 0  |       {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0}, | 
51  | 0  |       {(char*)0}, | 
52  | 0  | #line 23 "../../src/systemd/src/network/networkd-gperf.gperf"  | 
53  | 0  |       {"DHCP.DUIDType",                 config_parse_duid_type,                 0,          offsetof(Manager, duid)}, | 
54  | 0  |       {(char*)0}, {(char*)0}, | 
55  | 0  | #line 24 "../../src/systemd/src/network/networkd-gperf.gperf"  | 
56  | 0  |       {"DHCP.DUIDRawData",              config_parse_duid_rawdata,              0,          offsetof(Manager, duid)}, | 
57  | 0  |       {(char*)0}, | 
58  | 0  | #line 21 "../../src/systemd/src/network/networkd-gperf.gperf"  | 
59  | 0  |       {"Network.SpeedMeter",            config_parse_bool,                      0,          offsetof(Manager, use_speed_meter)}, | 
60  | 0  |       {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0}, | 
61  | 0  |       {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0}, | 
62  | 0  |       {(char*)0}, {(char*)0}, | 
63  | 0  | #line 22 "../../src/systemd/src/network/networkd-gperf.gperf"  | 
64  | 0  |       {"Network.SpeedMeterIntervalSec", config_parse_sec,                       0,          offsetof(Manager, speed_meter_interval_usec)} | 
65  | 0  |     };  | 
66  | 0  | 
  | 
67  | 0  |   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)  | 
68  | 0  |     { | 
69  | 0  |       register int key = networkd_gperf_hash (str, len);  | 
70  | 0  | 
  | 
71  | 0  |       if (key <= MAX_HASH_VALUE && key >= 0)  | 
72  | 0  |         { | 
73  | 0  |           register const char *s = wordlist[key].section_and_lvalue;  | 
74  | 0  | 
  | 
75  | 0  |           if (s && *str == *s && !strcmp (str + 1, s + 1))  | 
76  | 0  |             return &wordlist[key];  | 
77  | 0  |         }  | 
78  | 0  |     }  | 
79  | 0  |   return 0;  | 
80  | 0  | }  |