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

Function pfr_copyout_astats

freebsd/netpfil/pf/pf_table.c:1024–1049  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1022}
1023
1024static void
1025pfr_copyout_astats(struct pfr_astats *as, const struct pfr_kentry *ke,
1026 const struct pfr_walktree *w)
1027{
1028 int dir, op;
1029 const struct pfr_kcounters *kc = &ke->pfrke_counters;
1030
1031 pfr_copyout_addr(&as->pfras_a, ke);
1032 as->pfras_tzero = kc->pfrkc_tzero;
1033
1034 if (! (w->pfrw_flags & PFR_TFLAG_COUNTERS)) {
1035 bzero(as->pfras_packets, sizeof(as->pfras_packets));
1036 bzero(as->pfras_bytes, sizeof(as->pfras_bytes));
1037 as->pfras_a.pfra_fback = PFR_FB_NOCOUNT;
1038 return;
1039 }
1040
1041 for (dir = 0; dir < PFR_DIR_MAX; dir++) {
1042 for (op = 0; op < PFR_OP_ADDR_MAX; op ++) {
1043 as->pfras_packets[dir][op] = counter_u64_fetch(
1044 pfr_kentry_counter(kc, dir, op, PFR_TYPE_PACKETS));
1045 as->pfras_bytes[dir][op] = counter_u64_fetch(
1046 pfr_kentry_counter(kc, dir, op, PFR_TYPE_BYTES));
1047 }
1048 }
1049}
1050
1051static int
1052pfr_walktree(struct radix_node *rn, void *arg)

Callers 1

pfr_walktreeFunction · 0.85

Calls 3

pfr_copyout_addrFunction · 0.85
bzeroFunction · 0.85
counter_u64_fetchFunction · 0.85

Tested by

no test coverage detected