MCPcopy Create free account
hub / github.com/F-Stack/f-stack / acl_ipv4vlan_config

Function acl_ipv4vlan_config

dpdk/app/test/test_acl.c:172–244  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

170}
171
172static void
173acl_ipv4vlan_config(struct rte_acl_config *cfg,
174 const uint32_t layout[RTE_ACL_IPV4VLAN_NUM],
175 uint32_t num_categories)
176{
177 static const struct rte_acl_field_def
178 ipv4_defs[RTE_ACL_IPV4VLAN_NUM_FIELDS] = {
179 {
180 .type = RTE_ACL_FIELD_TYPE_BITMASK,
181 .size = sizeof(uint8_t),
182 .field_index = RTE_ACL_IPV4VLAN_PROTO_FIELD,
183 .input_index = RTE_ACL_IPV4VLAN_PROTO,
184 },
185 {
186 .type = RTE_ACL_FIELD_TYPE_BITMASK,
187 .size = sizeof(uint16_t),
188 .field_index = RTE_ACL_IPV4VLAN_VLAN1_FIELD,
189 .input_index = RTE_ACL_IPV4VLAN_VLAN,
190 },
191 {
192 .type = RTE_ACL_FIELD_TYPE_BITMASK,
193 .size = sizeof(uint16_t),
194 .field_index = RTE_ACL_IPV4VLAN_VLAN2_FIELD,
195 .input_index = RTE_ACL_IPV4VLAN_VLAN,
196 },
197 {
198 .type = RTE_ACL_FIELD_TYPE_MASK,
199 .size = sizeof(uint32_t),
200 .field_index = RTE_ACL_IPV4VLAN_SRC_FIELD,
201 .input_index = RTE_ACL_IPV4VLAN_SRC,
202 },
203 {
204 .type = RTE_ACL_FIELD_TYPE_MASK,
205 .size = sizeof(uint32_t),
206 .field_index = RTE_ACL_IPV4VLAN_DST_FIELD,
207 .input_index = RTE_ACL_IPV4VLAN_DST,
208 },
209 {
210 .type = RTE_ACL_FIELD_TYPE_RANGE,
211 .size = sizeof(uint16_t),
212 .field_index = RTE_ACL_IPV4VLAN_SRCP_FIELD,
213 .input_index = RTE_ACL_IPV4VLAN_PORTS,
214 },
215 {
216 .type = RTE_ACL_FIELD_TYPE_RANGE,
217 .size = sizeof(uint16_t),
218 .field_index = RTE_ACL_IPV4VLAN_DSTP_FIELD,
219 .input_index = RTE_ACL_IPV4VLAN_PORTS,
220 },
221 };
222
223 memcpy(&cfg->defs, ipv4_defs, sizeof(ipv4_defs));
224 cfg->num_fields = RTE_DIM(ipv4_defs);
225
226 cfg->defs[RTE_ACL_IPV4VLAN_PROTO_FIELD].offset =
227 layout[RTE_ACL_IPV4VLAN_PROTO];
228 cfg->defs[RTE_ACL_IPV4VLAN_VLAN1_FIELD].offset =
229 layout[RTE_ACL_IPV4VLAN_VLAN];

Callers 1

rte_acl_ipv4vlan_buildFunction · 0.85

Calls 1

memcpyFunction · 0.50

Tested by

no test coverage detected