X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=dummynet%2Finclude%2Fnetinet%2Fip_dummynet.h;h=81ebb335af33c2880942f388813b9c33eef29c1d;hb=5ad9fec40da13c449d50def12f9cea6e24b6a708;hp=c6a65752c3bd73a1971df607995908f545439126;hpb=1c3dc9f45532c25adc21f297422f0f5a7420b8ca;p=ipfw.git diff --git a/dummynet/include/netinet/ip_dummynet.h b/dummynet/include/netinet/ip_dummynet.h index c6a6575..81ebb33 100644 --- a/dummynet/include/netinet/ip_dummynet.h +++ b/dummynet/include/netinet/ip_dummynet.h @@ -113,6 +113,8 @@ struct dn_heap { */ struct dn_pkt_tag { struct ip_fw *rule; /* matching rule */ + uint32_t rule_id; /* matching rule id */ + uint32_t chain_id; /* ruleset id */ int dn_dir; /* action when packet comes out. */ #define DN_TO_IP_OUT 1 #define DN_TO_IP_IN 2 @@ -339,8 +341,10 @@ struct dn_pipe { /* a pipe */ /* Same as in dn_flow_queue, numbytes can become large */ int64_t numbytes; /* bits I can transmit (more or less). */ + uint64_t burst; /* burst size, scaled: bits * hz */ dn_key sched_time ; /* time pipe was scheduled in ready_heap */ + dn_key idle_time; /* start of pipe idle time */ /* * When the tx clock come from an interface (if_name[0] != '\0'), its name @@ -373,13 +377,8 @@ struct dn_pipe_max { SLIST_HEAD(dn_pipe_head, dn_pipe); #ifdef _KERNEL -typedef int ip_dn_ctl_t(struct sockopt *); /* raw_ip.c */ typedef void ip_dn_ruledel_t(void *); /* ip_fw.c */ -typedef int ip_dn_io_t(struct mbuf **m, int dir, struct ip_fw_args *fwa); -extern ip_dn_ctl_t *ip_dn_ctl_ptr; extern ip_dn_ruledel_t *ip_dn_ruledel_ptr; -extern ip_dn_io_t *ip_dn_io_ptr; -#define DUMMYNET_LOADED (ip_dn_io_ptr != NULL) /* * Return the IPFW rule associated with the dummynet tag; if any.