nfacct 18 include/linux/netfilter/nfnetlink_acct.h void nfnl_acct_update(const struct sk_buff *skb, struct nf_acct *nfacct); nfacct 19 include/linux/netfilter/nfnetlink_acct.h int nfnl_acct_overquota(struct net *net, struct nf_acct *nfacct); nfacct 11 include/uapi/linux/netfilter/xt_nfacct.h struct nf_acct *nfacct; nfacct 16 include/uapi/linux/netfilter/xt_nfacct.h struct nf_acct *nfacct __attribute__((aligned(8))); nfacct 52 net/netfilter/nfnetlink_acct.c struct nf_acct *nfacct, *matching = NULL; nfacct 64 net/netfilter/nfnetlink_acct.c list_for_each_entry(nfacct, &net->nfnl_acct_list, head) { nfacct 65 net/netfilter/nfnetlink_acct.c if (strncmp(nfacct->name, acct_name, NFACCT_NAME_MAX) != 0) nfacct 71 net/netfilter/nfnetlink_acct.c matching = nfacct; nfacct 104 net/netfilter/nfnetlink_acct.c nfacct = kzalloc(sizeof(struct nf_acct) + size, GFP_KERNEL); nfacct 105 net/netfilter/nfnetlink_acct.c if (nfacct == NULL) nfacct 109 net/netfilter/nfnetlink_acct.c u64 *quota = (u64 *)nfacct->data; nfacct 112 net/netfilter/nfnetlink_acct.c nfacct->flags = flags; nfacct 115 net/netfilter/nfnetlink_acct.c nla_strlcpy(nfacct->name, tb[NFACCT_NAME], NFACCT_NAME_MAX); nfacct 118 net/netfilter/nfnetlink_acct.c atomic64_set(&nfacct->bytes, nfacct 122 net/netfilter/nfnetlink_acct.c atomic64_set(&nfacct->pkts, nfacct 125 net/netfilter/nfnetlink_acct.c refcount_set(&nfacct->refcnt, 1); nfacct 126 net/netfilter/nfnetlink_acct.c list_add_tail_rcu(&nfacct->head, &net->nfnl_acct_list); nfacct 438 net/netfilter/nfnetlink_acct.c void nfnl_acct_update(const struct sk_buff *skb, struct nf_acct *nfacct) nfacct 440 net/netfilter/nfnetlink_acct.c atomic64_inc(&nfacct->pkts); nfacct 441 net/netfilter/nfnetlink_acct.c atomic64_add(skb->len, &nfacct->bytes); nfacct 445 net/netfilter/nfnetlink_acct.c static void nfnl_overquota_report(struct net *net, struct nf_acct *nfacct) nfacct 455 net/netfilter/nfnetlink_acct.c nfacct); nfacct 464 net/netfilter/nfnetlink_acct.c int nfnl_acct_overquota(struct net *net, struct nf_acct *nfacct) nfacct 471 net/netfilter/nfnetlink_acct.c if (!(nfacct->flags & NFACCT_F_QUOTA)) nfacct 474 net/netfilter/nfnetlink_acct.c quota = (u64 *)nfacct->data; nfacct 475 net/netfilter/nfnetlink_acct.c now = (nfacct->flags & NFACCT_F_QUOTA_PKTS) ? nfacct 476 net/netfilter/nfnetlink_acct.c atomic64_read(&nfacct->pkts) : atomic64_read(&nfacct->bytes); nfacct 481 net/netfilter/nfnetlink_acct.c !test_and_set_bit(NFACCT_OVERQUOTA_BIT, &nfacct->flags)) { nfacct 482 net/netfilter/nfnetlink_acct.c nfnl_overquota_report(net, nfacct); nfacct 26 net/netfilter/xt_nfacct.c nfnl_acct_update(skb, info->nfacct); nfacct 28 net/netfilter/xt_nfacct.c overquota = nfnl_acct_overquota(xt_net(par), info->nfacct); nfacct 37 net/netfilter/xt_nfacct.c struct nf_acct *nfacct; nfacct 39 net/netfilter/xt_nfacct.c nfacct = nfnl_acct_find_get(par->net, info->name); nfacct 40 net/netfilter/xt_nfacct.c if (nfacct == NULL) { nfacct 45 net/netfilter/xt_nfacct.c info->nfacct = nfacct; nfacct 54 net/netfilter/xt_nfacct.c nfnl_acct_put(info->nfacct); nfacct 66 net/netfilter/xt_nfacct.c .usersize = offsetof(struct xt_nfacct_match_info, nfacct), nfacct 77 net/netfilter/xt_nfacct.c .usersize = offsetof(struct xt_nfacct_match_info_v1, nfacct),