| /kernel/linux/linux-5.10/net/core/ |
| D | fib_rules.c | 37 bool fib_rule_matchall(const struct fib_rule *rule) in fib_rule_matchall() argument 39 if (rule->iifindex || rule->oifindex || rule->mark || rule->tun_id || in fib_rule_matchall() 40 rule->flags) in fib_rule_matchall() 42 if (rule->suppress_ifgroup != -1 || rule->suppress_prefixlen != -1) in fib_rule_matchall() 44 if (!uid_eq(rule->uid_range.start, fib_kuid_range_unset.start) || in fib_rule_matchall() 45 !uid_eq(rule->uid_range.end, fib_kuid_range_unset.end)) in fib_rule_matchall() 47 if (fib_rule_port_range_set(&rule->sport_range)) in fib_rule_matchall() 49 if (fib_rule_port_range_set(&rule->dport_range)) in fib_rule_matchall() 86 struct fib_rule *rule; in fib_default_rule_pref() local 91 rule = list_entry(pos->next, struct fib_rule, list); in fib_default_rule_pref() [all …]
|
| D | flow_offload.c | 11 struct flow_rule *rule; in flow_rule_alloc() local 14 rule = kzalloc(struct_size(rule, action.entries, num_actions), in flow_rule_alloc() 16 if (!rule) in flow_rule_alloc() 19 rule->action.num_entries = num_actions; in flow_rule_alloc() 24 rule->action.entries[i].hw_stats = FLOW_ACTION_HW_STATS_DONT_CARE; in flow_rule_alloc() 26 return rule; in flow_rule_alloc() 37 void flow_rule_match_meta(const struct flow_rule *rule, in flow_rule_match_meta() argument 40 FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_META, out); in flow_rule_match_meta() 44 void flow_rule_match_basic(const struct flow_rule *rule, in flow_rule_match_basic() argument 47 FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_BASIC, out); in flow_rule_match_basic() [all …]
|
| /kernel/linux/linux-6.6/net/core/ |
| D | fib_rules.c | 37 bool fib_rule_matchall(const struct fib_rule *rule) in fib_rule_matchall() argument 39 if (rule->iifindex || rule->oifindex || rule->mark || rule->tun_id || in fib_rule_matchall() 40 rule->flags) in fib_rule_matchall() 42 if (rule->suppress_ifgroup != -1 || rule->suppress_prefixlen != -1) in fib_rule_matchall() 44 if (!uid_eq(rule->uid_range.start, fib_kuid_range_unset.start) || in fib_rule_matchall() 45 !uid_eq(rule->uid_range.end, fib_kuid_range_unset.end)) in fib_rule_matchall() 47 if (fib_rule_port_range_set(&rule->sport_range)) in fib_rule_matchall() 49 if (fib_rule_port_range_set(&rule->dport_range)) in fib_rule_matchall() 86 struct fib_rule *rule; in fib_default_rule_pref() local 91 rule = list_entry(pos->next, struct fib_rule, list); in fib_default_rule_pref() [all …]
|
| D | flow_offload.c | 12 struct flow_rule *rule; in flow_rule_alloc() local 15 rule = kzalloc(struct_size(rule, action.entries, num_actions), in flow_rule_alloc() 17 if (!rule) in flow_rule_alloc() 20 rule->action.num_entries = num_actions; in flow_rule_alloc() 25 rule->action.entries[i].hw_stats = FLOW_ACTION_HW_STATS_DONT_CARE; in flow_rule_alloc() 27 return rule; in flow_rule_alloc() 58 void flow_rule_match_meta(const struct flow_rule *rule, in flow_rule_match_meta() argument 61 FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_META, out); in flow_rule_match_meta() 65 void flow_rule_match_basic(const struct flow_rule *rule, in flow_rule_match_basic() argument 68 FLOW_DISSECTOR_MATCH(rule, FLOW_DISSECTOR_KEY_BASIC, out); in flow_rule_match_basic() [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/engleder/ |
| D | tsnep_rxnfc.c | 9 struct tsnep_rxnfc_rule *rule) in tsnep_enable_rule() argument 15 rx_assign |= (rule->queue_index << TSNEP_RX_ASSIGN_QUEUE_SHIFT) & in tsnep_enable_rule() 19 TSNEP_RX_ASSIGN_ETHER_TYPE_OFFSET * rule->location; in tsnep_enable_rule() 20 iowrite16(rule->filter.ether_type, addr); in tsnep_enable_rule() 22 /* enable rule after all settings are done */ in tsnep_enable_rule() 24 TSNEP_RX_ASSIGN_OFFSET * rule->location; in tsnep_enable_rule() 29 struct tsnep_rxnfc_rule *rule) in tsnep_disable_rule() argument 34 TSNEP_RX_ASSIGN_OFFSET * rule->location; in tsnep_disable_rule() 41 struct tsnep_rxnfc_rule *rule; in tsnep_get_rule() local 43 list_for_each_entry(rule, &adapter->rxnfc_rules, list) { in tsnep_get_rule() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/dsa/sja1105/ |
| D | sja1105_flower.c | 10 struct sja1105_rule *rule; in sja1105_rule_find() local 12 list_for_each_entry(rule, &priv->flow_block.rules, list) in sja1105_rule_find() 13 if (rule->cookie == cookie) in sja1105_rule_find() 14 return rule; in sja1105_rule_find() 36 struct sja1105_rule *rule = sja1105_rule_find(priv, cookie); in sja1105_setup_bcast_policer() local 42 if (!rule) { in sja1105_setup_bcast_policer() 43 rule = kzalloc(sizeof(*rule), GFP_KERNEL); in sja1105_setup_bcast_policer() 44 if (!rule) in sja1105_setup_bcast_policer() 47 rule->cookie = cookie; in sja1105_setup_bcast_policer() 48 rule->type = SJA1105_RULE_BCAST_POLICER; in sja1105_setup_bcast_policer() [all …]
|
| D | sja1105_vl.c | 12 struct sja1105_rule *rule, in sja1105_insert_gate_entry() argument 23 e->rule = rule; in sja1105_insert_gate_entry() 95 struct sja1105_rule *rule; in sja1105_compose_gating_subschedule() local 102 list_for_each_entry(rule, &priv->flow_block.rules, list) { in sja1105_compose_gating_subschedule() 103 if (rule->type != SJA1105_RULE_VL) in sja1105_compose_gating_subschedule() 105 if (rule->vl.type != SJA1105_VL_TIME_TRIGGERED) in sja1105_compose_gating_subschedule() 108 if (max_cycle_time < rule->vl.cycle_time) { in sja1105_compose_gating_subschedule() 109 max_cycle_time = rule->vl.cycle_time; in sja1105_compose_gating_subschedule() 110 its_base_time = rule->vl.base_time; in sja1105_compose_gating_subschedule() 124 list_for_each_entry(rule, &priv->flow_block.rules, list) { in sja1105_compose_gating_subschedule() [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/microchip/vcap/ |
| D | vcap_api_client.h | 16 /* Client supplied VCAP rule key control part */ 18 struct list_head list; /* For insertion into a rule */ 63 /* Client supplied VCAP rule field data */ 77 /* Client supplied VCAP rule key (value, mask) */ 83 /* Client supplied VCAP rule action control part */ 85 struct list_head list; /* For insertion into a rule */ 156 /* VCAP rule operations */ 157 /* Allocate a rule and fill in the basic information */ 164 /* Free mem of a rule owned by client */ 165 void vcap_free_rule(struct vcap_rule *rule); [all …]
|
| /kernel/linux/linux-6.6/security/selinux/include/ |
| D | audit.h | 19 * selinux_audit_rule_init - alloc/init an selinux audit rule structure. 20 * @field: the field this rule refers to 21 * @op: the operator the rule uses 22 * @rulestr: the text "target" of the rule 23 * @rule: pointer to the new rule structure returned via this 26 * Returns 0 if successful, -errno if not. On success, the rule structure 30 int selinux_audit_rule_init(u32 field, u32 op, char *rulestr, void **rule, 34 * selinux_audit_rule_free - free an selinux audit rule structure. 35 * @rule: pointer to the audit rule to be freed 37 * This will free all memory associated with the given rule. [all …]
|
| /kernel/linux/linux-6.6/drivers/net/dsa/sja1105/ |
| D | sja1105_flower.c | 10 struct sja1105_rule *rule; in sja1105_rule_find() local 12 list_for_each_entry(rule, &priv->flow_block.rules, list) in sja1105_rule_find() 13 if (rule->cookie == cookie) in sja1105_rule_find() 14 return rule; in sja1105_rule_find() 36 struct sja1105_rule *rule = sja1105_rule_find(priv, cookie); in sja1105_setup_bcast_policer() local 43 if (!rule) { in sja1105_setup_bcast_policer() 44 rule = kzalloc(sizeof(*rule), GFP_KERNEL); in sja1105_setup_bcast_policer() 45 if (!rule) in sja1105_setup_bcast_policer() 48 rule->cookie = cookie; in sja1105_setup_bcast_policer() 49 rule->type = SJA1105_RULE_BCAST_POLICER; in sja1105_setup_bcast_policer() [all …]
|
| D | sja1105_vl.c | 12 struct sja1105_rule *rule, in sja1105_insert_gate_entry() argument 23 e->rule = rule; in sja1105_insert_gate_entry() 95 struct sja1105_rule *rule; in sja1105_compose_gating_subschedule() local 102 list_for_each_entry(rule, &priv->flow_block.rules, list) { in sja1105_compose_gating_subschedule() 103 if (rule->type != SJA1105_RULE_VL) in sja1105_compose_gating_subschedule() 105 if (rule->vl.type != SJA1105_VL_TIME_TRIGGERED) in sja1105_compose_gating_subschedule() 108 if (max_cycle_time < rule->vl.cycle_time) { in sja1105_compose_gating_subschedule() 109 max_cycle_time = rule->vl.cycle_time; in sja1105_compose_gating_subschedule() 110 its_base_time = rule->vl.base_time; in sja1105_compose_gating_subschedule() 124 list_for_each_entry(rule, &priv->flow_block.rules, list) { in sja1105_compose_gating_subschedule() [all …]
|
| /kernel/linux/linux-5.10/security/selinux/include/ |
| D | audit.h | 16 * selinux_audit_rule_init - alloc/init an selinux audit rule structure. 17 * @field: the field this rule refers to 18 * @op: the operater the rule uses 19 * @rulestr: the text "target" of the rule 20 * @rule: pointer to the new rule structure returned via this 22 * Returns 0 if successful, -errno if not. On success, the rule structure 26 int selinux_audit_rule_init(u32 field, u32 op, char *rulestr, void **rule); 29 * selinux_audit_rule_free - free an selinux audit rule structure. 30 * @rule: pointer to the audit rule to be freed 32 * This will free all memory associated with the given rule. [all …]
|
| /kernel/linux/linux-6.6/drivers/net/ethernet/netronome/nfp/flower/ |
| D | match.c | 25 struct flow_rule *rule) in nfp_flower_compile_tci() argument 29 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) { in nfp_flower_compile_tci() 32 flow_rule_match_vlan(rule, &match); in nfp_flower_compile_tci() 54 struct flow_rule *rule, u8 key_type, bool qinq_sup) in nfp_flower_compile_meta_tci() argument 62 nfp_flower_compile_tci(ext, msk, rule); in nfp_flower_compile_meta_tci() 97 struct flow_rule *rule) in nfp_flower_compile_mac() argument 99 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) { in nfp_flower_compile_mac() 104 flow_rule_match_eth_addrs(rule, &match); in nfp_flower_compile_mac() 121 struct flow_rule *rule, in nfp_flower_compile_mpls() argument 124 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_MPLS)) { in nfp_flower_compile_mpls() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/ethernet/netronome/nfp/flower/ |
| D | match.c | 13 struct flow_rule *rule, u8 key_type, bool qinq_sup) in nfp_flower_compile_meta_tci() argument 27 if (!qinq_sup && flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_VLAN)) { in nfp_flower_compile_meta_tci() 30 flow_rule_match_vlan(rule, &match); in nfp_flower_compile_meta_tci() 79 struct nfp_flower_mac_mpls *msk, struct flow_rule *rule, in nfp_flower_compile_mac() argument 85 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_ETH_ADDRS)) { in nfp_flower_compile_mac() 88 flow_rule_match_eth_addrs(rule, &match); in nfp_flower_compile_mac() 96 if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_MPLS)) { in nfp_flower_compile_mac() 100 flow_rule_match_mpls(rule, &match); in nfp_flower_compile_mac() 125 } else if (flow_rule_match_key(rule, FLOW_DISSECTOR_KEY_BASIC)) { in nfp_flower_compile_mac() 132 flow_rule_match_basic(rule, &match); in nfp_flower_compile_mac() [all …]
|
| /kernel/linux/linux-6.6/net/ipv6/ |
| D | fib6_rules.c | 32 static bool fib6_rule_matchall(const struct fib_rule *rule) in fib6_rule_matchall() argument 34 struct fib6_rule *r = container_of(rule, struct fib6_rule, common); in fib6_rule_matchall() 38 return fib_rule_matchall(rule); in fib6_rule_matchall() 41 bool fib6_rule_default(const struct fib_rule *rule) in fib6_rule_default() argument 43 if (!fib6_rule_matchall(rule) || rule->action != FR_ACT_TO_TBL || in fib6_rule_default() 44 rule->l3mdev) in fib6_rule_default() 46 if (rule->table != RT6_TABLE_LOCAL && rule->table != RT6_TABLE_MAIN) in fib6_rule_default() 133 static int fib6_rule_saddr(struct net *net, struct fib_rule *rule, int flags, in fib6_rule_saddr() argument 136 struct fib6_rule *r = (struct fib6_rule *)rule; in fib6_rule_saddr() 139 * we check the result if it meets requirement of the rule. in fib6_rule_saddr() [all …]
|
| /kernel/linux/linux-5.10/net/ipv6/ |
| D | fib6_rules.c | 31 static bool fib6_rule_matchall(const struct fib_rule *rule) in fib6_rule_matchall() argument 33 struct fib6_rule *r = container_of(rule, struct fib6_rule, common); in fib6_rule_matchall() 37 return fib_rule_matchall(rule); in fib6_rule_matchall() 40 bool fib6_rule_default(const struct fib_rule *rule) in fib6_rule_default() argument 42 if (!fib6_rule_matchall(rule) || rule->action != FR_ACT_TO_TBL || in fib6_rule_default() 43 rule->l3mdev) in fib6_rule_default() 45 if (rule->table != RT6_TABLE_LOCAL && rule->table != RT6_TABLE_MAIN) in fib6_rule_default() 132 static int fib6_rule_saddr(struct net *net, struct fib_rule *rule, int flags, in fib6_rule_saddr() argument 135 struct fib6_rule *r = (struct fib6_rule *)rule; in fib6_rule_saddr() 138 * we check the result if it meets requirement of the rule. in fib6_rule_saddr() [all …]
|
| /kernel/linux/linux-5.10/security/safesetid/ |
| D | securityfs.c | 32 struct setid_rule *rule) in parse_policy_line() argument 53 if (rule->type == UID){ in parse_policy_line() 54 rule->src_id.uid = make_kuid(file->f_cred->user_ns, parsed_parent); in parse_policy_line() 55 rule->dst_id.uid = make_kuid(file->f_cred->user_ns, parsed_child); in parse_policy_line() 56 if (!uid_valid(rule->src_id.uid) || !uid_valid(rule->dst_id.uid)) in parse_policy_line() 58 } else if (rule->type == GID){ in parse_policy_line() 59 rule->src_id.gid = make_kgid(file->f_cred->user_ns, parsed_parent); in parse_policy_line() 60 rule->dst_id.gid = make_kgid(file->f_cred->user_ns, parsed_child); in parse_policy_line() 61 if (!gid_valid(rule->src_id.gid) || !gid_valid(rule->dst_id.gid)) in parse_policy_line() 64 /* Error, rule->type is an invalid type */ in parse_policy_line() [all …]
|
| /kernel/linux/linux-6.6/net/ipv4/ |
| D | fib_rules.c | 49 static bool fib4_rule_matchall(const struct fib_rule *rule) in fib4_rule_matchall() argument 51 struct fib4_rule *r = container_of(rule, struct fib4_rule, common); in fib4_rule_matchall() 55 return fib_rule_matchall(rule); in fib4_rule_matchall() 58 bool fib4_rule_default(const struct fib_rule *rule) in fib4_rule_default() argument 60 if (!fib4_rule_matchall(rule) || rule->action != FR_ACT_TO_TBL || in fib4_rule_default() 61 rule->l3mdev) in fib4_rule_default() 63 if (rule->table != RT_TABLE_LOCAL && rule->table != RT_TABLE_MAIN && in fib4_rule_default() 64 rule->table != RT_TABLE_DEFAULT) in fib4_rule_default() 95 if (arg.rule) in __fib_lookup() 96 res->tclassid = ((struct fib4_rule *)arg.rule)->tclassid; in __fib_lookup() [all …]
|
| /kernel/linux/linux-5.10/net/ipv4/ |
| D | fib_rules.c | 48 static bool fib4_rule_matchall(const struct fib_rule *rule) in fib4_rule_matchall() argument 50 struct fib4_rule *r = container_of(rule, struct fib4_rule, common); in fib4_rule_matchall() 54 return fib_rule_matchall(rule); in fib4_rule_matchall() 57 bool fib4_rule_default(const struct fib_rule *rule) in fib4_rule_default() argument 59 if (!fib4_rule_matchall(rule) || rule->action != FR_ACT_TO_TBL || in fib4_rule_default() 60 rule->l3mdev) in fib4_rule_default() 62 if (rule->table != RT_TABLE_LOCAL && rule->table != RT_TABLE_MAIN && in fib4_rule_default() 63 rule->table != RT_TABLE_DEFAULT) in fib4_rule_default() 94 if (arg.rule) in __fib_lookup() 95 res->tclassid = ((struct fib4_rule *)arg.rule)->tclassid; in __fib_lookup() [all …]
|
| /kernel/linux/linux-6.6/security/safesetid/ |
| D | securityfs.c | 32 struct setid_rule *rule) in parse_policy_line() argument 53 if (rule->type == UID){ in parse_policy_line() 54 rule->src_id.uid = make_kuid(file->f_cred->user_ns, parsed_parent); in parse_policy_line() 55 rule->dst_id.uid = make_kuid(file->f_cred->user_ns, parsed_child); in parse_policy_line() 56 if (!uid_valid(rule->src_id.uid) || !uid_valid(rule->dst_id.uid)) in parse_policy_line() 58 } else if (rule->type == GID){ in parse_policy_line() 59 rule->src_id.gid = make_kgid(file->f_cred->user_ns, parsed_parent); in parse_policy_line() 60 rule->dst_id.gid = make_kgid(file->f_cred->user_ns, parsed_child); in parse_policy_line() 61 if (!gid_valid(rule->src_id.gid) || !gid_valid(rule->dst_id.gid)) in parse_policy_line() 64 /* Error, rule->type is an invalid type */ in parse_policy_line() [all …]
|
| /kernel/linux/linux-6.6/kernel/ |
| D | auditfilter.c | 86 struct audit_krule *erule = &e->rule; in audit_free_rule() 120 entry->rule.fields = fields; in audit_init_entry() 213 struct audit_field *arch = entry->rule.arch_f; in audit_match_signal() 219 entry->rule.mask) && in audit_match_signal() 221 entry->rule.mask)); in audit_match_signal() 227 entry->rule.mask)); in audit_match_signal() 230 entry->rule.mask)); in audit_match_signal() 237 /* Common user-space to kernel rule translation. */ 238 static inline struct audit_entry *audit_to_entry_common(struct audit_rule_data *rule) in audit_to_entry_common() argument 245 listnr = rule->flags & ~AUDIT_FILTER_PREPEND; in audit_to_entry_common() [all …]
|
| /kernel/linux/linux-5.10/kernel/ |
| D | auditfilter.c | 84 struct audit_krule *erule = &e->rule; in audit_free_rule() 118 entry->rule.fields = fields; in audit_init_entry() 210 struct audit_field *arch = entry->rule.arch_f; in audit_match_signal() 216 entry->rule.mask) && in audit_match_signal() 218 entry->rule.mask)); in audit_match_signal() 224 entry->rule.mask)); in audit_match_signal() 227 entry->rule.mask)); in audit_match_signal() 234 /* Common user-space to kernel rule translation. */ 235 static inline struct audit_entry *audit_to_entry_common(struct audit_rule_data *rule) in audit_to_entry_common() argument 242 listnr = rule->flags & ~AUDIT_FILTER_PREPEND; in audit_to_entry_common() [all …]
|
| /kernel/linux/linux-6.6/include/net/ |
| D | fib_rules.h | 53 struct fib_rule *rule; member 102 struct fib_rule *rule; member 105 static inline void fib_rule_get(struct fib_rule *rule) in fib_rule_get() argument 107 refcount_inc(&rule->refcnt); in fib_rule_get() 110 static inline void fib_rule_put(struct fib_rule *rule) in fib_rule_put() argument 112 if (refcount_dec_and_test(&rule->refcnt)) in fib_rule_put() 113 kfree_rcu(rule, rcu); in fib_rule_put() 117 static inline u32 fib_rule_get_table(struct fib_rule *rule, in fib_rule_get_table() argument 120 return rule->l3mdev ? arg->table : rule->table; in fib_rule_get_table() 123 static inline u32 fib_rule_get_table(struct fib_rule *rule, in fib_rule_get_table() argument [all …]
|
| /kernel/linux/linux-5.10/drivers/pnp/ |
| D | manager.c | 23 unsigned char rule, in pnp_find_resource() argument 29 /* when the resource already exists, set its resource bits from rule */ in pnp_find_resource() 32 res->flags |= rule & IORESOURCE_BITS; in pnp_find_resource() 38 static int pnp_assign_port(struct pnp_dev *dev, struct pnp_port *rule, int idx) in pnp_assign_port() argument 42 res = pnp_find_resource(dev, rule->flags, IORESOURCE_IO, idx); in pnp_assign_port() 51 res->flags = rule->flags | IORESOURCE_AUTO; in pnp_assign_port() 55 if (!rule->size) { in pnp_assign_port() 61 res->start = rule->min; in pnp_assign_port() 62 res->end = res->start + rule->size - 1; in pnp_assign_port() 65 res->start += rule->align; in pnp_assign_port() [all …]
|
| /kernel/linux/linux-6.6/drivers/pnp/ |
| D | manager.c | 23 unsigned char rule, in pnp_find_resource() argument 29 /* when the resource already exists, set its resource bits from rule */ in pnp_find_resource() 32 res->flags |= rule & IORESOURCE_BITS; in pnp_find_resource() 38 static int pnp_assign_port(struct pnp_dev *dev, struct pnp_port *rule, int idx) in pnp_assign_port() argument 42 res = pnp_find_resource(dev, rule->flags, IORESOURCE_IO, idx); in pnp_assign_port() 51 res->flags = rule->flags | IORESOURCE_AUTO; in pnp_assign_port() 55 if (!rule->size) { in pnp_assign_port() 61 res->start = rule->min; in pnp_assign_port() 62 res->end = res->start + rule->size - 1; in pnp_assign_port() 65 res->start += rule->align; in pnp_assign_port() [all …]
|