aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/mrouted/prune.h
diff options
context:
space:
mode:
authorBill Fenner <fenner@FreeBSD.org>1999-01-20 07:44:18 +0000
committerBill Fenner <fenner@FreeBSD.org>1999-01-20 07:44:18 +0000
commit1f25327484733d0bec3b33044da7bd5d82ad007f (patch)
tree19c94eeb7ba2b59b0ad53ae0864ebf06723a8afa /usr.sbin/mrouted/prune.h
parentce595def0708b60ce4dde9002ac206fae20be240 (diff)
Import mrouted version 3.9-beta3+IOS12 . This is a version of 3.9-beta3vendor/mrouted
with minor changes to work around a bug in Cisco's IOS version 12.0 . 3.9-beta3 is much improved over 3.8, and is only labelled "beta" because of missing features, as opposed to instability or known bugs.
Notes
Notes: svn path=/cvs2svn/branches/XEROX/; revision=42888
Diffstat (limited to 'usr.sbin/mrouted/prune.h')
-rw-r--r--usr.sbin/mrouted/prune.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/usr.sbin/mrouted/prune.h b/usr.sbin/mrouted/prune.h
index 57ae067ce74f..11740cf94c21 100644
--- a/usr.sbin/mrouted/prune.h
+++ b/usr.sbin/mrouted/prune.h
@@ -7,7 +7,7 @@
* Leland Stanford Junior University.
*
*
- * $Id: prune.h,v 3.8 1995/11/29 22:36:57 fenner Rel $
+ * prune.h,v 3.8.4.5 1998/02/27 22:45:43 fenner Exp
*/
/*
@@ -32,11 +32,14 @@ struct gtable {
vifbitmap_t gt_grpmems; /* forw. vifs for src, grp */
int gt_prsent_timer; /* prune timer for this group */
int gt_timer; /* timer for this group entry */
- time_t gt_ctime; /* time of entry creation */
+ time_t gt_ctime; /* time of entry creation */
u_char gt_grftsnt; /* graft sent/retransmit timer */
+ nbrbitmap_t gt_prunes; /* bitmap of neighbors who pruned */
struct stable *gt_srctbl; /* source table */
struct ptable *gt_pruntbl; /* prune table */
struct rtentry *gt_route; /* parent route */
+ int gt_rexmit_timer; /* timer for prune retransmission */
+ int gt_prune_rexmit; /* time til prune retransmission */
#ifdef RSRR
struct rsrr_cache *gt_rsrr_cache; /* RSRR cache */
#endif /* RSRR */
@@ -52,6 +55,8 @@ struct stable
struct stable *st_next; /* pointer to the next entry */
u_int32 st_origin; /* host origin of multicasts */
u_long st_pktcnt; /* packet count for src-grp entry */
+ u_long st_savpkt; /* saved pkt cnt when no krnl entry */
+ time_t st_ctime; /* kernel entry creation time */
};
/*
@@ -62,9 +67,12 @@ struct ptable
struct ptable *pt_next; /* pointer to the next entry */
u_int32 pt_router; /* router that sent this prune */
vifi_t pt_vifi; /* vif prune received on */
+ int pt_index; /* neighbor index of router */
int pt_timer; /* timer for prune */
};
+#define MIN_PRUNE_LIFE TIMER_INTERVAL /* min prune lifetime to bother with */
+
/*
* The packet format for a traceroute request.
*/
@@ -137,7 +145,7 @@ struct tr_resp {
};
#define VAL_TO_MASK(x, i) { \
- x = htonl(~((1 << (32 - (i))) - 1)); \
+ x = i ? htonl(~((1 << (32 - (i))) - 1)) : 0; \
};
#define NBR_VERS(n) (((n)->al_pv << 8) + (n)->al_mv)