diff options
author | Claudio Jeker <claudio@cvs.openbsd.org> | 2005-05-12 20:43:15 +0000 |
---|---|---|
committer | Claudio Jeker <claudio@cvs.openbsd.org> | 2005-05-12 20:43:15 +0000 |
commit | e22861f3593055ad845fb9a68f28a02921ab4a73 (patch) | |
tree | 16db694856e50c127aad14ce0ed7f989bb37856e /usr.sbin | |
parent | 688e938998d7cd153e787bb600806b0df2315826 (diff) |
Every time a LSA is returned from a lookup lsa_age() it.
Also move the lsa_age() prototype to rde.h so that we can access it from
the SPF code.
OK norby@
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/ospfd/rde.h | 3 | ||||
-rw-r--r-- | usr.sbin/ospfd/rde_lsdb.c | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/usr.sbin/ospfd/rde.h b/usr.sbin/ospfd/rde.h index 7ebba97a7db..6dff2d4a6f2 100644 --- a/usr.sbin/ospfd/rde.h +++ b/usr.sbin/ospfd/rde.h @@ -1,4 +1,4 @@ -/* $OpenBSD: rde.h,v 1.11 2005/05/12 19:10:12 norby Exp $ */ +/* $OpenBSD: rde.h,v 1.12 2005/05/12 20:43:13 claudio Exp $ */ /* * Copyright (c) 2004, 2005 Esben Norby <norby@openbsd.org> @@ -102,6 +102,7 @@ int lsa_check(struct rde_nbr *, struct lsa *, u_int16_t); int lsa_self(struct rde_nbr *, struct lsa *, struct vertex *); void lsa_add(struct rde_nbr *, struct lsa *); void lsa_del(struct rde_nbr *, struct lsa_hdr *); +void lsa_age(struct vertex *); struct vertex *lsa_find(struct area *, u_int8_t, u_int32_t, u_int32_t); struct vertex *lsa_find_net(struct area *area, u_int32_t); int lsa_num_links(struct vertex *); diff --git a/usr.sbin/ospfd/rde_lsdb.c b/usr.sbin/ospfd/rde_lsdb.c index 3f426af9305..93683fc3f5a 100644 --- a/usr.sbin/ospfd/rde_lsdb.c +++ b/usr.sbin/ospfd/rde_lsdb.c @@ -1,4 +1,4 @@ -/* $OpenBSD: rde_lsdb.c,v 1.12 2005/05/12 19:10:12 norby Exp $ */ +/* $OpenBSD: rde_lsdb.c,v 1.13 2005/05/12 20:43:14 claudio Exp $ */ /* * Copyright (c) 2004, 2005 Claudio Jeker <claudio@openbsd.org> @@ -30,7 +30,6 @@ struct vertex *vertex_get(struct lsa *, struct rde_nbr *); int lsa_router_check(struct lsa *, u_int16_t); -void lsa_age(struct vertex *); void lsa_timeout(int, short, void *); void lsa_refresh(struct vertex *); @@ -433,6 +432,7 @@ lsa_find_net(struct area *area, u_int32_t ls_id) RB_FOREACH(v, lsa_tree, tree) { if ((v->lsa->hdr.type == LSA_TYPE_NETWORK) && (v->lsa->hdr.ls_id == (ls_id))) { + lsa_age(v); return (v); } } |