Coverage Report

Created: 2026-01-25 06:28

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/work/build/src/udev/link-config-gperf.c
Line
Count
Source
1
/* ANSI-C code produced by gperf version 3.1 */
2
/* Command-line: /usr/bin/gperf --output-file src/udev/link-config-gperf.c ../../src/systemd/src/udev/net/link-config-gperf.gperf  */
3
/* Computed positions: -k'6,12,17-18,20,$' */
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/systemd/src/udev/net/link-config-gperf.gperf"
33
34
_Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"")
35
#if __GNUC__ >= 15
36
_Pragma("GCC diagnostic ignored \"-Wzero-as-null-pointer-constant\"")
37
#endif
38
#include <stddef.h>
39
#include "condition.h"
40
#include "conf-parser.h"
41
#include "ethtool-util.h"
42
#include "link-config.h"
43
#include "net-condition.h"
44
#include "netif-sriov.h"
45
#include "socket-util.h"
46
#include <string.h>
47
48
#define TOTAL_KEYWORDS 124
49
143k
#define MIN_WORD_LENGTH 8
50
286k
#define MAX_WORD_LENGTH 41
51
#define MIN_HASH_VALUE 10
52
142k
#define MAX_HASH_VALUE 211
53
/* maximum key range = 202, duplicates = 0 */
54
55
#ifdef __GNUC__
56
__inline
57
#else
58
#ifdef __cplusplus
59
inline
60
#endif
61
#endif
62
static unsigned int
63
link_config_gperf_hash (register const char *str, register size_t len)
64
142k
{
65
142k
  static const unsigned char asso_values[] =
66
142k
    {
67
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
68
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
69
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
70
142k
      212, 212,  30, 212, 212, 212, 212, 212, 212, 212,
71
142k
      212, 212,  25, 212, 212,  30,   0,   0, 212, 212,
72
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
73
142k
      212, 212, 212, 212, 212,  15,   0,   5,  40,   0,
74
142k
       65,  30,  10,  80, 212, 212,  90, 110,   0,   5,
75
142k
       60, 212,   0,   0,   5,  90,  10,  15, 212, 212,
76
142k
      212, 212, 212, 212, 212, 212, 212,   5, 212,  10,
77
142k
       15,   5,   5,   5,  65,   0, 212,  30,  30,  55,
78
142k
       20,  25,   0,   0,   0,   5,   0,  10,  35,  70,
79
142k
       10,  15,   0, 212, 212, 212, 212, 212, 212, 212,
80
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
81
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
82
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
83
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
84
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
85
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
86
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
87
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
88
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
89
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
90
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
91
142k
      212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
92
142k
      212, 212, 212, 212, 212, 212
93
142k
    };
94
142k
  register unsigned int hval = len;
95
96
142k
  switch (hval)
97
142k
    {
98
19.0k
      default:
99
19.0k
        hval += asso_values[(unsigned char)str[19]];
100
      /*FALLTHROUGH*/
101
20.1k
      case 19:
102
26.4k
      case 18:
103
26.4k
        hval += asso_values[(unsigned char)str[17]];
104
      /*FALLTHROUGH*/
105
29.8k
      case 17:
106
29.8k
        hval += asso_values[(unsigned char)str[16]];
107
      /*FALLTHROUGH*/
108
36.6k
      case 16:
109
39.4k
      case 15:
110
46.1k
      case 14:
111
54.6k
      case 13:
112
130k
      case 12:
113
130k
        hval += asso_values[(unsigned char)str[11]];
114
      /*FALLTHROUGH*/
115
131k
      case 11:
116
137k
      case 10:
117
140k
      case 9:
118
142k
      case 8:
119
142k
      case 7:
120
142k
      case 6:
121
142k
        hval += asso_values[(unsigned char)str[5]];
122
142k
        break;
123
142k
    }
124
142k
  return hval + asso_values[(unsigned char)str[len - 1]];
125
142k
}
126
127
const struct ConfigPerfItem *
128
link_config_gperf_lookup (register const char *str, register size_t len)
129
143k
{
130
143k
  static const struct ConfigPerfItem wordlist[] =
131
143k
    {
132
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
133
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
134
143k
      {(char*)0}, {(char*)0},
135
143k
#line 35 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
136
143k
      {"Match.Host",                                config_parse_net_condition,            CONDITION_HOST,                offsetof(LinkConfig, conditions)},
137
143k
      {(char*)0},
138
143k
#line 31 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
139
143k
      {"Match.Driver",                              config_parse_match_strv,               0,                             offsetof(LinkConfig, match.driver)},
140
143k
      {(char*)0},
141
143k
#line 52 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
142
143k
      {"Link.Name",                                 config_parse_ifname,                   0,                             offsetof(LinkConfig, name)},
143
143k
#line 32 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
144
143k
      {"Match.Type",                                config_parse_match_strv,               0,                             offsetof(LinkConfig, match.iftype)},
145
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
146
143k
#line 94 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
147
143k
      {"Link.ReceiveFCS",                           config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_RXFCS])},
148
143k
      {(char*)0},
149
143k
#line 143 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
150
143k
      {"SR-IOV.Trust",                              config_parse_sr_iov_boolean,           0,                             offsetof(LinkConfig, sr_iov_by_section)},
151
143k
#line 75 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
152
143k
      {"Link.ScatterGather",                        config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_SG])},
153
143k
#line 42 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
154
143k
      {"Match.Firmware",                            config_parse_net_condition,            CONDITION_FIRMWARE,            offsetof(LinkConfig, conditions)},
155
143k
#line 33 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
156
143k
      {"Match.Kind",                                config_parse_match_strv,               0,                             offsetof(LinkConfig, match.kind)},
157
143k
#line 103 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
158
143k
      {"Link.RxMiniBufferSize",                     config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx_mini)},
159
143k
      {(char*)0},
160
143k
#line 41 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
161
143k
      {"Match.Architecture",                        config_parse_net_condition,            CONDITION_ARCHITECTURE,        offsetof(LinkConfig, conditions)},
162
143k
#line 34 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
163
143k
      {"Match.Property",                            config_parse_match_property,           0,                             offsetof(LinkConfig, match.property)},
164
143k
#line 55 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
165
143k
      {"Link.Alias",                                config_parse_ifalias,                  0,                             offsetof(LinkConfig, alias)},
166
143k
#line 144 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
167
143k
      {"SR-IOV.LinkState",                          config_parse_sr_iov_link_state,        0,                             offsetof(LinkConfig, sr_iov_by_section)},
168
143k
#line 102 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
169
143k
      {"Link.RxBufferSize",                         config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx)},
170
143k
      {(char*)0},
171
143k
#line 66 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
172
143k
      {"Link.Advertise",                            config_parse_advertise,                0,                             offsetof(LinkConfig, advertise)},
173
143k
#line 76 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
174
143k
      {"Link.ScatterGatherFragmentList",            config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_FRAGLIST])},
175
143k
#line 27 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
176
143k
      {"Match.MACAddress",                          config_parse_hw_addrs,                 0,                             offsetof(LinkConfig, match.hw_addr)},
177
143k
#line 105 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
178
143k
      {"Link.TxBufferSize",                         config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.tx)},
179
143k
#line 57 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
180
143k
      {"Link.ReceiveQueues",                        config_parse_rx_tx_queues,             0,                             offsetof(LinkConfig, rxqueues)},
181
143k
      {(char*)0},
182
143k
#line 97 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
183
143k
      {"Link.RxChannels",                           config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.rx)},
184
143k
#line 113 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
185
143k
      {"Link.RxCoalesceIrqSec",                     config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_irq)},
186
143k
#line 128 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
187
143k
      {"Link.RxCoalesceHighSec",                    config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_high)},
188
143k
      {(char*)0},
189
143k
#line 56 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
190
143k
      {"Link.TransmitQueues",                       config_parse_rx_tx_queues,             0,                             offsetof(LinkConfig, txqueues)},
191
143k
#line 98 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
192
143k
      {"Link.TxChannels",                           config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.tx)},
193
143k
#line 117 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
194
143k
      {"Link.TxCoalesceIrqSec",                     config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_irq)},
195
143k
#line 130 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
196
143k
      {"Link.TxCoalesceHighSec",                    config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_high)},
197
143k
#line 111 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
198
143k
      {"Link.RxCoalesceSec",                        config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs)},
199
143k
      {(char*)0},
200
143k
#line 95 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
201
143k
      {"Link.ReceiveAll",                           config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_RXALL])},
202
143k
      {(char*)0},
203
143k
#line 145 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
204
143k
      {"SR-IOV.MACAddress",                         config_parse_sr_iov_mac,               0,                             offsetof(LinkConfig, sr_iov_by_section)},
205
143k
#line 115 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
206
143k
      {"Link.TxCoalesceSec",                        config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs)},
207
143k
      {(char*)0},
208
143k
#line 53 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
209
143k
      {"Link.AlternativeName",                      config_parse_ifnames,                  IFNAME_VALID_ALTERNATIVE,      offsetof(LinkConfig, alternative_names)},
210
143k
      {(char*)0},
211
143k
#line 104 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
212
143k
      {"Link.RxJumboBufferSize",                    config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx_jumbo)},
213
143k
#line 39 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
214
143k
      {"Match.Version",                             config_parse_net_condition,            CONDITION_VERSION,             offsetof(LinkConfig, conditions)},
215
143k
      {(char*)0},
216
143k
#line 51 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
217
143k
      {"Link.NamePolicy",                           config_parse_name_policy,              0,                             offsetof(LinkConfig, name_policy)},
218
143k
#line 64 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
219
143k
      {"Link.Duplex",                               config_parse_duplex,                   0,                             offsetof(LinkConfig, duplex)},
220
143k
      {(char*)0}, {(char*)0}, {(char*)0},
221
143k
#line 36 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
222
143k
      {"Match.Virtualization",                      config_parse_net_condition,            CONDITION_VIRTUALIZATION,      offsetof(LinkConfig, conditions)},
223
143k
#line 40 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
224
143k
      {"Match.Credential",                          config_parse_net_condition,            CONDITION_CREDENTIAL,          offsetof(LinkConfig, conditions)},
225
143k
      {(char*)0},
226
143k
#line 63 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
227
143k
      {"Link.BitsPerSecond",                        config_parse_si_uint64,                0,                             offsetof(LinkConfig, speed)},
228
143k
#line 67 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
229
143k
      {"Link.Port",                                 config_parse_port,                     0,                             offsetof(LinkConfig, port)},
230
143k
#line 79 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
231
143k
      {"Link.TCPECNSegmentationOffload",            config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TSO_ECN])},
232
143k
#line 91 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
233
143k
      {"Link.ReceiveVLANCTAGFilter",                config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_HW_VLAN_CTAG_FILTER])},
234
143k
#line 54 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
235
143k
      {"Link.AlternativeNamesPolicy",               config_parse_alternative_names_policy, 0,                             offsetof(LinkConfig, alternative_names_policy)},
236
143k
#line 134 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
237
143k
      {"Link.ReceivePacketSteeringCPUMask",         config_parse_rps_cpu_mask,             0,                             offsetof(LinkConfig, rps_cpu_mask)},
238
143k
      {(char*)0},
239
143k
#line 30 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
240
143k
      {"Match.Path",                                config_parse_match_strv,               0,                             offsetof(LinkConfig, match.path)},
241
143k
#line 43 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
242
143k
      {"Link.Description",                          config_parse_string,                   0,                             offsetof(LinkConfig, description)},
243
143k
      {(char*)0},
244
143k
#line 139 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
245
143k
      {"SR-IOV.QualityOfService",                   config_parse_sr_iov_uint32,            0,                             offsetof(LinkConfig, sr_iov_by_section)},
246
143k
#line 44 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
247
143k
      {"/* udev property */"},
248
143k
#line 65 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
249
143k
      {"Link.AutoNegotiation",                      config_parse_tristate,                 0,                             offsetof(LinkConfig, autonegotiation)},
250
143k
#line 92 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
251
143k
      {"Link.TransmitVLANSTAGHardwareAcceleration", config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_HW_VLAN_STAG_TX])},
252
143k
#line 93 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
253
143k
      {"Link.NTupleFilter",                         config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_NTUPLE])},
254
143k
#line 81 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
255
143k
      {"Link.TCP6SegmentationOffload",              config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TSO6])},
256
143k
#line 129 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
257
143k
      {"Link.RxMaxCoalescedHighFrames",             config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_high)},
258
143k
#line 28 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
259
143k
      {"Match.PermanentMACAddress",                 config_parse_hw_addrs,                 0,                             offsetof(LinkConfig, match.permanent_hw_addr)},
260
143k
#line 90 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
261
143k
      {"Link.TransmitVLANCTAGHardwareAcceleration", config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_HW_VLAN_CTAG_TX])},
262
143k
#line 136 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
263
143k
      {"Link.SR-IOVVirtualFunctions",               config_parse_sr_iov_num_vfs,           0,                             offsetof(LinkConfig, sr_iov_num_vfs)},
264
143k
#line 45 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
265
143k
      {"Link.Property",                             config_parse_udev_property,            0,                             offsetof(LinkConfig, properties)},
266
143k
#line 131 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
267
143k
      {"Link.TxMaxCoalescedHighFrames",             config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_high)},
268
143k
      {(char*)0},
269
143k
#line 135 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
270
143k
      {"/* SR-IOV settings */"},
271
143k
#line 137 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
272
143k
      {"SR-IOV.VirtualFunction",                    config_parse_sr_iov_uint32,            0,                             offsetof(LinkConfig, sr_iov_by_section)},
273
143k
#line 48 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
274
143k
      {"/* rtnl setlink */"},
275
143k
#line 38 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
276
143k
      {"Match.KernelVersion",                       config_parse_net_condition,            CONDITION_VERSION,             offsetof(LinkConfig, conditions)},
277
143k
#line 142 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
278
143k
      {"SR-IOV.QueryReceiveSideScaling",            config_parse_sr_iov_boolean,           0,                             offsetof(LinkConfig, sr_iov_by_section)},
279
143k
#line 146 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
280
143k
      {"/* ethtool EEE settings */"},
281
143k
      {(char*)0},
282
143k
#line 74 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
283
143k
      {"Link.TransmitChecksumOffload",              config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TXCSUM])},
284
143k
      {(char*)0},
285
143k
#line 132 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
286
143k
      {"Link.CoalescePacketRateSampleIntervalSec",  config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rate_sample_interval)},
287
143k
#line 109 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
288
143k
      {"Link.AutoNegotiationFlowControl",           config_parse_tristate,                 0,                             offsetof(LinkConfig, autoneg_flow_control)},
289
143k
      {(char*)0},
290
143k
#line 29 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
291
143k
      {"Match.OriginalName",                        config_parse_match_ifnames,            0,                             offsetof(LinkConfig, match.ifname)},
292
143k
#line 101 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
293
143k
      {"/* ethtool ring parameters */"},
294
143k
#line 89 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
295
143k
      {"Link.ReceiveVLANCTAGHardwareAcceleration",  config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_HW_VLAN_CTAG_RX])},
296
143k
#line 100 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
297
143k
      {"Link.CombinedChannels",                     config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.combined)},
298
143k
      {(char*)0},
299
143k
#line 107 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
300
143k
      {"Link.RxFlowControl",                        config_parse_tristate,                 0,                             offsetof(LinkConfig, rx_flow_control)},
301
143k
#line 60 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
302
143k
      {"Link.GenericSegmentOffloadMaxBytes",        config_parse_iec_size,                 0,                             offsetof(LinkConfig, gso_max_size)},
303
143k
#line 86 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
304
143k
      {"Link.GenericReceiveOffloadList",            config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GRO_FRAGLIST])},
305
143k
#line 69 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
306
143k
      {"/* ethtool WoL settings */"},
307
143k
#line 61 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
308
143k
      {"Link.GenericSegmentOffloadMaxSegments",     config_parse_uint32,                   0,                             offsetof(LinkConfig, gso_max_segments)},
309
143k
#line 108 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
310
143k
      {"Link.TxFlowControl",                        config_parse_tristate,                 0,                             offsetof(LinkConfig, tx_flow_control)},
311
143k
#line 58 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
312
143k
      {"Link.TransmitQueueLength",                  config_parse_txqueuelen,               0,                             offsetof(LinkConfig, txqueuelen)},
313
143k
#line 147 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
314
143k
      {"EnergyEfficientEthernet.Enable",            config_parse_tristate,                 0,                             offsetof(LinkConfig, eee_enabled)},
315
143k
#line 77 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
316
143k
      {"Link.GenericSegmentationOffload",           config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GSO])},
317
143k
#line 150 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
318
143k
      {"EnergyEfficientEthernet.LinkMode",          config_parse_advertise,                0,                             offsetof(LinkConfig, eee_advertise)},
319
143k
#line 138 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
320
143k
      {"SR-IOV.VLANId",                             config_parse_sr_iov_uint32,            0,                             offsetof(LinkConfig, sr_iov_by_section)},
321
143k
#line 85 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
322
143k
      {"Link.GenericReceiveOffloadHardware",        config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GRO_HW])},
323
143k
#line 80 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
324
143k
      {"Link.TCPMangleIdSegmentationOffload",       config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TSO_MANGLEID])},
325
143k
#line 84 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
326
143k
      {"Link.GenericReceiveOffload",                config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GRO])},
327
143k
#line 78 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
328
143k
      {"Link.TCPSegmentationOffload",               config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TSO])},
329
143k
#line 148 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
330
143k
      {"EnergyEfficientEthernet.TxLowPowerIdle",    config_parse_tristate,                 0,                             offsetof(LinkConfig, eee_tx_lpi_enabled)},
331
143k
#line 87 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
332
143k
      {"Link.GenericReceiveOffloadUDPForwarding",   config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GRO_UDP_FWD])},
333
143k
#line 106 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
334
143k
      {"/* ethtool pause parameters */"},
335
143k
#line 119 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
336
143k
      {"Link.StatisticsBlockCoalesceSec",           config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.stats_block_coalesce_usecs)},
337
143k
#line 72 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
338
143k
      {"/* ethtool features */"},
339
143k
#line 99 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
340
143k
      {"Link.OtherChannels",                        config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.other)},
341
143k
      {(char*)0},
342
143k
#line 50 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
343
143k
      {"Link.MACAddress",                           config_parse_hw_addr,                  0,                             offsetof(LinkConfig, hw_addr)},
344
143k
#line 149 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
345
143k
      {"EnergyEfficientEthernet.TxLowPowerIdleSec", config_parse_sec,                      0,                             offsetof(LinkConfig, eee_tx_lpi_timer_usec)},
346
143k
#line 62 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
347
143k
      {"/* ethtool link settings */"},
348
143k
#line 59 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
349
143k
      {"Link.MTUBytes",                             config_parse_mtu,                      AF_UNSPEC,                     offsetof(LinkConfig, mtu)},
350
143k
      {(char*)0},
351
143k
#line 112 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
352
143k
      {"Link.RxMaxCoalescedFrames",                 config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames)},
353
143k
#line 123 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
354
143k
      {"Link.RxCoalesceLowSec",                     config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_low)},
355
143k
#line 73 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
356
143k
      {"Link.ReceiveChecksumOffload",               config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_RXCSUM])},
357
143k
#line 47 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
358
143k
      {"Link.UnsetProperty",                        config_parse_udev_property_name,       0,                             offsetof(LinkConfig, unset_properties)},
359
143k
#line 70 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
360
143k
      {"Link.WakeOnLan",                            config_parse_wol,                      0,                             offsetof(LinkConfig, wol)},
361
143k
#line 116 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
362
143k
      {"Link.TxMaxCoalescedFrames",                 config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames)},
363
143k
#line 125 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
364
143k
      {"Link.TxCoalesceLowSec",                     config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_low)},
365
143k
#line 127 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
366
143k
      {"Link.CoalescePacketRateHigh",               config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.pkt_rate_high)},
367
143k
#line 82 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
368
143k
      {"Link.PartialGenericSegmentationOffload",    config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GSO_PARTIAL])},
369
143k
      {(char*)0}, {(char*)0},
370
143k
#line 122 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
371
143k
      {"Link.CoalescePacketRateLow",                config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.pkt_rate_low)},
372
143k
      {(char*)0}, {(char*)0},
373
143k
#line 88 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
374
143k
      {"Link.LargeReceiveOffload",                  config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_LRO])},
375
143k
      {(char*)0},
376
143k
#line 110 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
377
143k
      {"/* ethtool coalesce settings */"},
378
143k
      {(char*)0},
379
143k
#line 114 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
380
143k
      {"Link.RxMaxCoalescedIrqFrames",              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_irq)},
381
143k
#line 140 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
382
143k
      {"SR-IOV.VLANProtocol",                       config_parse_sr_iov_vlan_proto,        0,                             offsetof(LinkConfig, sr_iov_by_section)},
383
143k
      {(char*)0},
384
143k
#line 120 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
385
143k
      {"Link.UseAdaptiveRxCoalesce",                config_parse_tristate,                 0,                             offsetof(LinkConfig, coalesce.use_adaptive_rx_coalesce)},
386
143k
      {(char*)0},
387
143k
#line 118 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
388
143k
      {"Link.TxMaxCoalescedIrqFrames",              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_irq)},
389
143k
      {(char*)0},
390
143k
#line 141 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
391
143k
      {"SR-IOV.MACSpoofCheck",                      config_parse_sr_iov_boolean,           0,                             offsetof(LinkConfig, sr_iov_by_section)},
392
143k
#line 121 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
393
143k
      {"Link.UseAdaptiveTxCoalesce",                config_parse_tristate,                 0,                             offsetof(LinkConfig, coalesce.use_adaptive_tx_coalesce)},
394
143k
#line 96 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
395
143k
      {"/* ethtool channels */"},
396
143k
#line 124 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
397
143k
      {"Link.RxMaxCoalescedLowFrames",              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_low)},
398
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
399
143k
#line 126 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
400
143k
      {"Link.TxMaxCoalescedLowFrames",              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_low)},
401
143k
      {(char*)0}, {(char*)0},
402
143k
#line 133 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
403
143k
      {"/* Rx RPS CPU mask */"},
404
143k
      {(char*)0},
405
143k
#line 37 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
406
143k
      {"Match.KernelCommandLine",                   config_parse_net_condition,            CONDITION_KERNEL_COMMAND_LINE, offsetof(LinkConfig, conditions)},
407
143k
#line 46 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
408
143k
      {"Link.ImportProperty",                       config_parse_udev_property_name,       0,                             offsetof(LinkConfig, import_properties)},
409
143k
      {(char*)0}, {(char*)0},
410
143k
#line 71 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
411
143k
      {"Link.WakeOnLanPassword",                    config_parse_wol_password,             0,                             0},
412
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
413
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
414
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
415
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
416
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
417
143k
#line 68 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
418
143k
      {"Link.MDI",                                  config_parse_mdi,                      0,                             offsetof(LinkConfig, mdi)},
419
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
420
143k
      {(char*)0}, {(char*)0}, {(char*)0}, {(char*)0},
421
143k
#line 83 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
422
143k
      {"Link.UDPSegmentationOffload",               config_parse_warn_compat,              DISABLED_LEGACY,               0},
423
143k
      {(char*)0}, {(char*)0}, {(char*)0},
424
143k
#line 49 "../../src/systemd/src/udev/net/link-config-gperf.gperf"
425
143k
      {"Link.MACAddressPolicy",                     config_parse_mac_address_policy,       0,                             offsetof(LinkConfig, mac_address_policy)}
426
143k
    };
427
428
143k
  if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
429
142k
    {
430
142k
      register unsigned int key = link_config_gperf_hash (str, len);
431
432
142k
      if (key <= MAX_HASH_VALUE)
433
141k
        {
434
141k
          register const char *s = wordlist[key].section_and_lvalue;
435
436
141k
          if (s && *str == *s && !strcmp (str + 1, s + 1))
437
136k
            return &wordlist[key];
438
141k
        }
439
142k
    }
440
7.38k
  return 0;
441
143k
}