summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd/rde.h
diff options
context:
space:
mode:
authorClaudio Jeker <claudio@cvs.openbsd.org>2006-04-12 14:05:47 +0000
committerClaudio Jeker <claudio@cvs.openbsd.org>2006-04-12 14:05:47 +0000
commit6cf0f7bac44c66d0848b84fc31c1765c26512755 (patch)
treef1b03695159e0b851b94cfb23f66838025ec0aca /usr.sbin/bgpd/rde.h
parente54810bed86a8131621a36fd257e7cc9f07337e1 (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.h3
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)