pf_status
struct pf_status s;
struct pf_status s;
struct pf_status s;
struct pf_status s;
struct pf_status s;
pf_get_stats(struct pf_status *s)
int pf_get_stats(struct pf_status *);
struct pf_status status;
struct pf_status status;
struct pf_status status;
struct pf_status status;
print_status(struct pf_status *s, struct pfctl_watermarks *synflwats, int opts)
void print_status(struct pf_status *, struct pfctl_watermarks *, int);
(*(p)->mii_funcs->pf_status)((p))
void (*pf_status)(struct mii_softc *);
h->bus.creatorid = pf_status.hostid;
if (!pf_status.running)
struct pf_status pf_status;
if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_DEBUG) {
st->id = htobe64(pf_status.stateid++);
st->creatorid = pf_status.hostid;
if (pf_status.debug >= LOG_NOTICE) {
pf_status.states++;
if (pf_status.debug >= LOG_ERR) {
if (pf_status.debug >= LOG_DEBUG) {
unsigned int limit = pf_status.states;
states = pf_status.states;
pf_status.states--;
pf_status.lcounters[LCNT_STATES]++;
atomic_inc_int(&pf_status.states_halfopen);
if (pf_status.debug >= LOG_NOTICE) {
} else if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_NOTICE) {
if (st->creatorid == pf_status.hostid &&
if (pf_status.debug >= LOG_NOTICE) {
atomic_dec_int(&pf_status.states_halfopen);
if (pf_status.debug >= LOG_DEBUG) {
pf_status.lcounters[LCNT_SRCCONN]++;
pf_status.lcounters[LCNT_SRCCONNRATE]++;
pf_status.lcounters[LCNT_OVERLOAD_TABLE]++;
if (pf_status.debug >= LOG_NOTICE) {
pf_status.lcounters[LCNT_OVERLOAD_FLUSH]++;
if (!pf_status.running)
if (pf_status.reass && pd.virtual_proto == PF_VPROTO_FRAGMENT) {
if (pf_status.debug >= LOG_NOTICE)
if (pf_status.debug >= LOG_NOTICE)
pf_status.scounters[SCNT_SRC_NODE_SEARCH]++;
pf_status.lcounters[LCNT_SRCNODES]++;
if (pf_status.reass && action == PF_PASS && pd.m && fwdir == PF_FWD &&
if (pf_status.debug >= LOG_NOTICE) {
pf_status.scounters[SCNT_SRC_NODE_INSERT]++;
pf_status.src_nodes++;
pf_status.lcounters[LCNT_SRCSTATES]++;
memset(&pf_status, 0, sizeof(pf_status));
pf_status.debug = LOG_ERR;
pf_status.reass = PF_REASS_ENABLED;
pf_status.hostid = arc4random();
pf_status_read(struct pf_status *pfs)
memcpy(pfs, &pf_status, sizeof(struct pf_status));
pf_status.scounters[SCNT_SRC_NODE_REMOVALS]++;
pf_status.src_nodes--;
pfi_update_status(const char *name, struct pf_status *pfs)
pfsync_clear_states(pf_status.hostid, psk->psk_ifname);
nr = pf_status.states;
if (pf_status.running)
pf_status.running = 1;
pf_status.since = getuptime();
if (pf_status.stateid == 0) {
pf_status.stateid = gettime();
pf_status.stateid = pf_status.stateid << 32;
if (!pf_status.running)
pf_status.running = 0;
pf_status.since = getuptime();
psk->psk_pfcmp.creatorid = pf_status.hostid;
pf_status_read((struct pf_status *)addr);
memset(pf_status.ifname, 0, IFNAMSIZ);
memset(pf_status.counters, 0, sizeof(pf_status.counters));
memset(pf_status.scounters, 0, sizeof(pf_status.scounters));
memset(pf_status.ncounters, 0, sizeof(pf_status.ncounters));
pf_status.since = getuptime();
strlcpy(pf_status.ifname, pf_trans_set.statusif, IFNAMSIZ);
pf_status.debug = pf_trans_set.debug;
pf_status.hostid = pf_trans_set.hostid;
pf_status.reass = pf_trans_set.reass;
struct pf_status pfs;
memcpy(pf_status.pf_chksum, digest, sizeof(pf_status.pf_chksum));
pf_status.scounters[SCNT_SRC_NODE_SEARCH]++;
if (pf_status.debug >= LOG_DEBUG) {
if (pf_status.debug >= LOG_DEBUG) {
if (pf_status.debug >= LOG_INFO &&
if (pf_status.debug >= LOG_DEBUG) {
if (pf_status.debug >= LOG_DEBUG) {
if (pf_status.debug >= LOG_INFO) {
if (pf_status.debug >= LOG_INFO) {
if (pf_status.debug >= LOG_DEBUG) {
if (pf_status.debug >= LOG_DEBUG) {
if (pf_status.debug >= LOG_INFO) {
if (pf_status.reass & PF_REASS_NODF && h->ip_off & htons(IP_DF))
if (!pf_status.reass)
if (!pf_status.reass)
if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_NOTICE) {
if (pf_status.debug >= LOG_NOTICE && dst->scrub &&
goal = pf_status.fragments * 9 / 10;
pf_status.fragments - goal);
while (goal < pf_status.fragments) {
pf_status.ncounters[NCNT_FRAG_REMOVALS]++;
pf_status.fragments--;
pf_status.ncounters[NCNT_FRAG_SEARCH]++;
pf_status.fragments++;
pf_status.ncounters[NCNT_FRAG_INSERT]++;
pf_status.ncounters[NCNT_FRAG_REMOVALS]++;
pf_status.fragments--;
pf_status.fragments--;
pf_status.fragments--;
pf_status.ncounters[NCNT_FRAG_REMOVALS]++;
pf_status.fragments--;
pf_status.ncounters[NCNT_FRAG_REMOVALS]++;
pf_status.fragments--;
if (pf_status.syncookies_mode == mode)
pf_status.syncookies_mode = mode;
if (pf_status.syncookies_mode == PF_SYNCOOKIES_ALWAYS) {
pf_status.syncookies_active = 1;
if (pf_status.syncookies_mode != PF_SYNCOOKIES_ADAPTIVE)
return (pf_status.syncookies_mode);
if (!pf_status.syncookies_active &&
pf_status.states_halfopen > pf_syncookie_status.hiwat) {
pf_status.syncookies_active = 1;
pf_status.lcounters[LCNT_SYNFLOODS]++;
return (pf_status.syncookies_active);
pf_status.syncookies_inflight[pf_syncookie_status.oddeven]++;
pf_status.lcounters[LCNT_SYNCOOKIES_SENT]++;
if (pf_status.syncookies_inflight[cookie.flags.oddeven] == 0)
pf_status.syncookies_inflight[cookie.flags.oddeven]--;
pf_status.lcounters[LCNT_SYNCOOKIES_VALID]++;
if (pf_status.syncookies_active &&
((pf_status.syncookies_mode == PF_SYNCOOKIES_ADAPTIVE &&
pf_status.states_halfopen + pf_status.syncookies_inflight[0] +
pf_status.syncookies_inflight[1] < pf_syncookie_status.lowat) ||
pf_status.syncookies_mode == PF_SYNCOOKIES_NEVER)) {
pf_status.syncookies_active = 0;
if (!pf_status.syncookies_active &&
pf_status.syncookies_inflight[0] == 0 &&
pf_status.syncookies_inflight[1] == 0) {
pf_status.syncookies_inflight[pf_syncookie_status.oddeven] = 0;
pf_status.counters[x]++; \
#define DIOCGETSTATUS _IOWR('D', 21, struct pf_status)
void pfi_update_status(const char *, struct pf_status *);
extern struct pf_status pf_status;
if (pf_status.debug >= (n)) { \
void pf_status_read(struct pf_status *);
struct pf_status *s = &status;
static struct pf_status status;
struct pf_status status;
struct pf_status status;
struct pf_status status;
struct pf_status status;