diff options
author | Claudio Jeker <claudio@cvs.openbsd.org> | 2006-04-12 14:05:47 +0000 |
---|---|---|
committer | Claudio Jeker <claudio@cvs.openbsd.org> | 2006-04-12 14:05:47 +0000 |
commit | 6cf0f7bac44c66d0848b84fc31c1765c26512755 (patch) | |
tree | f1b03695159e0b851b94cfb23f66838025ec0aca /usr.sbin/bgpd/rde.h | |
parent | e54810bed86a8131621a36fd257e7cc9f07337e1 (diff) |
It is no longer allowed to change attributes in place. This corrupts the
attribute cache. Instead remove attribute and readd it after beeing changed.
This should fix the "att_diff: equal attributes encountered" error seen by
Tony Sarendal. OK henning@
Diffstat (limited to 'usr.sbin/bgpd/rde.h')
-rw-r--r-- | usr.sbin/bgpd/rde.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/usr.sbin/bgpd/rde.h b/usr.sbin/bgpd/rde.h index fc4a941d20e..198e8c4700c 100644 --- a/usr.sbin/bgpd/rde.h +++ b/usr.sbin/bgpd/rde.h @@ -1,4 +1,4 @@ -/* $OpenBSD: rde.h,v 1.92 2006/04/05 13:24:29 claudio Exp $ */ +/* $OpenBSD: rde.h,v 1.93 2006/04/12 14:05:46 claudio Exp $ */ /* * Copyright (c) 2003, 2004 Claudio Jeker <claudio@openbsd.org> and @@ -273,6 +273,7 @@ struct attr *attr_optget(const struct rde_aspath *, u_int8_t); void attr_copy(struct rde_aspath *, struct rde_aspath *); int attr_compare(struct rde_aspath *, struct rde_aspath *); void attr_freeall(struct rde_aspath *); +void attr_free(struct rde_aspath *, struct attr *); #define attr_optlen(x) \ ((x)->len > 255 ? (x)->len + 4 : (x)->len + 3) |