From 6cf0f7bac44c66d0848b84fc31c1765c26512755 Mon Sep 17 00:00:00 2001 From: Claudio Jeker Date: Wed, 12 Apr 2006 14:05:47 +0000 Subject: 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@ --- usr.sbin/bgpd/rde.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'usr.sbin/bgpd/rde.h') 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 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) -- cgit v1.2.3