Coverage Report

Created: 2026-03-12 06:26

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