Lines Matching defs:exp

2204 			  const struct nf_conntrack_expect *exp)
2206 struct nf_conn *master = exp->master;
2207 long timeout = ((long)exp->timeout.expires - (long)jiffies) / HZ;
2218 if (ctnetlink_exp_dump_tuple(skb, &exp->tuple, CTA_EXPECT_TUPLE) < 0)
2220 if (ctnetlink_exp_dump_mask(skb, &exp->tuple, &exp->mask) < 0)
2228 if (!nf_inet_addr_cmp(&exp->saved_addr, &any_addr) ||
2229 exp->saved_proto.all) {
2234 if (nla_put_be32(skb, CTA_EXPECT_NAT_DIR, htonl(exp->dir)))
2238 nat_tuple.src.u3 = exp->saved_addr;
2240 nat_tuple.src.u = exp->saved_proto;
2249 nla_put_be32(skb, CTA_EXPECT_ID, htonl((unsigned long)exp)) ||
2250 nla_put_be32(skb, CTA_EXPECT_FLAGS, htonl(exp->flags)) ||
2251 nla_put_be32(skb, CTA_EXPECT_CLASS, htonl(exp->class)))
2262 expfn = nf_ct_helper_expectfn_find_by_symbol(exp->expectfn);
2275 int event, const struct nf_conntrack_expect *exp)
2287 nfmsg->nfgen_family = exp->tuple.src.l3num;
2291 if (ctnetlink_exp_dump_expect(skb, exp) < 0)
2307 struct nf_conntrack_expect *exp = item->exp;
2308 struct net *net = nf_ct_exp_net(exp);
2338 nfmsg->nfgen_family = exp->tuple.src.l3num;
2343 if (ctnetlink_exp_dump_expect(skb, exp) < 0)
2372 struct nf_conntrack_expect *exp, *last;
2380 hlist_for_each_entry(exp, &net->ct.expect_hash[cb->args[0]],
2382 if (l3proto && exp->tuple.src.l3num != l3proto)
2385 if (exp != last)
2393 exp) < 0) {
2394 if (!atomic_inc_not_zero(&exp->use))
2396 cb->args[1] = (unsigned long)exp;
2416 struct nf_conntrack_expect *exp, *last;
2428 hlist_for_each_entry(exp, &help->expectations, lnode) {
2429 if (l3proto && exp->tuple.src.l3num != l3proto)
2432 if (exp != last)
2439 exp) < 0) {
2440 if (!atomic_inc_not_zero(&exp->use))
2442 cb->args[1] = (unsigned long)exp;
2521 struct nf_conntrack_expect *exp;
2554 exp = nf_ct_expect_find_get(net, zone, &tuple);
2555 if (!exp)
2560 if (ntohl(id) != (u32)(unsigned long)exp) {
2561 nf_ct_expect_put(exp);
2569 nf_ct_expect_put(exp);
2575 nlh->nlmsg_seq, IPCTNL_MSG_EXP_NEW, exp);
2577 nf_ct_expect_put(exp);
2600 struct nf_conntrack_expect *exp;
2620 exp = nf_ct_expect_find_get(net, zone, &tuple);
2621 if (!exp)
2626 if (ntohl(id) != (u32)(unsigned long)exp) {
2627 nf_ct_expect_put(exp);
2634 if (del_timer(&exp->timeout)) {
2635 nf_ct_unlink_expect_report(exp, NETLINK_CB(skb).portid,
2637 nf_ct_expect_put(exp);
2642 nf_ct_expect_put(exp);
2650 hlist_for_each_entry_safe(exp, next,
2653 m_help = nfct_help(exp->master);
2655 del_timer(&exp->timeout)) {
2656 nf_ct_unlink_expect_report(exp,
2659 nf_ct_expect_put(exp);
2668 hlist_for_each_entry_safe(exp, next,
2671 if (del_timer(&exp->timeout)) {
2672 nf_ct_unlink_expect_report(exp,
2675 nf_ct_expect_put(exp);
2706 struct nf_conntrack_expect *exp,
2724 exp->saved_addr = nat_tuple.src.u3;
2725 exp->saved_proto = nat_tuple.src.u;
2726 exp->dir = ntohl(nla_get_be32(tb[CTA_EXPECT_NAT_DIR]));
2742 struct nf_conntrack_expect *exp;
2799 exp = nf_ct_expect_alloc(ct);
2800 if (!exp) {
2810 exp->timeout.expires =
2813 exp->flags = NF_CT_EXPECT_USERSPACE;
2815 exp->flags |=
2820 exp->flags = ntohl(nla_get_be32(cda[CTA_EXPECT_FLAGS]));
2821 exp->flags &= ~NF_CT_EXPECT_USERSPACE;
2823 exp->flags = 0;
2834 exp->expectfn = expfn->expectfn;
2836 exp->expectfn = NULL;
2838 exp->class = class;
2839 exp->master = ct;
2840 exp->helper = helper;
2841 memcpy(&exp->tuple, &tuple, sizeof(struct nf_conntrack_tuple));
2842 memcpy(&exp->mask.src.u3, &mask.src.u3, sizeof(exp->mask.src.u3));
2843 exp->mask.src.u.all = mask.src.u.all;
2847 exp, u3);
2851 err = nf_ct_expect_related_report(exp, portid, report);
2853 nf_ct_expect_put(exp);
2866 struct nf_conntrack_expect *exp;
2886 exp = __nf_ct_expect_find(net, zone, &tuple);
2888 if (!exp) {
2902 err = ctnetlink_change_expect(exp, cda);
3102 pr_err("ctnetlink_init: cannot register exp with nfnetlink.\n");