Added extra argument to rt_update hook which contains a pointer to the

temporary attribute list.
This commit is contained in:
Martin Mares 1999-05-31 18:55:35 +00:00
parent 75b84c34e3
commit bb027be1e2
4 changed files with 5 additions and 4 deletions

View file

@ -22,6 +22,7 @@ struct proto_config;
struct config; struct config;
struct proto; struct proto;
struct event; struct event;
struct ea_list;
/* /*
* Routing Protocol * Routing Protocol
@ -111,7 +112,7 @@ struct proto {
void (*if_notify)(struct proto *, unsigned flags, struct iface *i); void (*if_notify)(struct proto *, unsigned flags, struct iface *i);
void (*ifa_notify)(struct proto *, unsigned flags, struct ifa *a); void (*ifa_notify)(struct proto *, unsigned flags, struct ifa *a);
void (*rt_notify)(struct proto *, struct network *net, struct rte *new, struct rte *old); void (*rt_notify)(struct proto *, struct network *net, struct rte *new, struct rte *old, struct ea_list *tmpa);
void (*neigh_notify)(struct neighbor *neigh); void (*neigh_notify)(struct neighbor *neigh);
struct ea_list *(*make_tmp_attrs)(struct rte *rt, struct linpool *pool); struct ea_list *(*make_tmp_attrs)(struct rte *rt, struct linpool *pool);
void (*store_tmp_attrs)(struct rte *rt, struct ea_list *attrs); void (*store_tmp_attrs)(struct rte *rt, struct ea_list *attrs);

View file

@ -127,7 +127,7 @@ do_rte_announce(struct announce_hook *a, net *net, rte *new, rte *old, ea_list *
} }
} }
if (new || old) if (new || old)
p->rt_notify(p, net, new, old); p->rt_notify(p, net, new, old, tmpa);
if (new && new != new0) /* Discard temporary rte's */ if (new && new != new0) /* Discard temporary rte's */
rte_free(new); rte_free(new);
if (old && old != old0) if (old && old != old0)

View file

@ -528,7 +528,7 @@ rip_if_notify(struct proto *p, unsigned c, struct iface *iface)
} }
static void static void
rip_rt_notify(struct proto *p, struct network *net, struct rte *new, struct rte *old) rip_rt_notify(struct proto *p, struct network *net, struct rte *new, struct rte *old, struct ea_list *tmpa)
{ {
CHK_MAGIC; CHK_MAGIC;

View file

@ -574,7 +574,7 @@ krt_scan(timer *t)
*/ */
static void static void
krt_notify(struct proto *P, net *net, rte *new, rte *old) krt_notify(struct proto *P, net *net, rte *new, rte *old, struct ea_list *tmpa)
{ {
struct krt_proto *p = (struct krt_proto *) P; struct krt_proto *p = (struct krt_proto *) P;