diff options
author | mlaier <mlaier@FreeBSD.org> | 2008-03-29 00:24:36 +0000 |
---|---|---|
committer | mlaier <mlaier@FreeBSD.org> | 2008-03-29 00:24:36 +0000 |
commit | 5cb64aae6314c928aa4d07409d7f9e057a1ade46 (patch) | |
tree | b0363f790c9c62f1567a85647536e62fccc84fb5 /sys/contrib/pf/net/pfvar.h | |
parent | 3ae2dd85c9a4f6b76d94bab696618df9eecef039 (diff) | |
download | FreeBSD-src-5cb64aae6314c928aa4d07409d7f9e057a1ade46.zip FreeBSD-src-5cb64aae6314c928aa4d07409d7f9e057a1ade46.tar.gz |
Make ALTQ cope with disappearing interfaces (particularly common with mpd
and netgraph in gernal). This also allows to add queues for an interface
that is not yet existing (you have to provide the bandwidth for the
interface, however).
PR: kern/106400, kern/117827
MFC after: 2 weeks
Diffstat (limited to 'sys/contrib/pf/net/pfvar.h')
-rw-r--r-- | sys/contrib/pf/net/pfvar.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/contrib/pf/net/pfvar.h b/sys/contrib/pf/net/pfvar.h index 6c5c23a..bd75bfc 100644 --- a/sys/contrib/pf/net/pfvar.h +++ b/sys/contrib/pf/net/pfvar.h @@ -1247,6 +1247,10 @@ struct pf_altq { u_int32_t parent_qid; /* parent queue id */ u_int32_t bandwidth; /* queue bandwidth */ u_int8_t priority; /* priority */ +#ifdef __FreeBSD__ + u_int8_t local_flags; /* dynamic interface */ +#define PFALTQ_FLAG_IF_REMOVED 0x01 +#endif u_int16_t qlimit; /* queue size limit */ u_int16_t flags; /* misc flags */ union { @@ -1574,6 +1578,9 @@ extern void pf_tbladdr_remove(struct pf_addr_wrap *); extern void pf_tbladdr_copyout(struct pf_addr_wrap *); extern void pf_calc_skip_steps(struct pf_rulequeue *); #ifdef __FreeBSD__ +#ifdef ALTQ +extern void pf_altq_ifnet_event(struct ifnet *, int); +#endif extern uma_zone_t pf_src_tree_pl, pf_rule_pl; extern uma_zone_t pf_state_pl, pf_altq_pl, pf_pooladdr_pl; extern uma_zone_t pfr_ktable_pl, pfr_kentry_pl, pfr_kentry_pl2; |