From f264acc6f862608f3097a862511f0b4bce298f8b Mon Sep 17 00:00:00 2001 From: Claudio Jeker Date: Tue, 17 Feb 2004 19:12:59 +0000 Subject: Somehow size needs some time to settle. The direct inline call of attr_error caused troubles on my test machines which manifested in garbage size values. OK henning@ --- usr.sbin/bgpd/rde.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'usr.sbin/bgpd') diff --git a/usr.sbin/bgpd/rde.c b/usr.sbin/bgpd/rde.c index 9911475c453..3a29605272c 100644 --- a/usr.sbin/bgpd/rde.c +++ b/usr.sbin/bgpd/rde.c @@ -1,4 +1,4 @@ -/* $OpenBSD: rde.c,v 1.78 2004/02/16 14:26:29 claudio Exp $ */ +/* $OpenBSD: rde.c,v 1.79 2004/02/17 19:12:58 claudio Exp $ */ /* * Copyright (c) 2003, 2004 Henning Brauer @@ -344,7 +344,7 @@ int rde_update_dispatch(struct imsg *imsg) { struct rde_peer *peer; - u_char *p; + u_char *p, *emsg; int pos; u_int16_t len; u_int16_t withdrawn_len; @@ -409,8 +409,8 @@ rde_update_dispatch(struct imsg *imsg) while (attrpath_len > 0) { if ((pos = attr_parse(p, attrpath_len, &attrs, peer->conf.ebgp, conf->as)) < 0) { - rde_update_err(peer, ERR_UPDATE, subtype, - attr_error(p, attrpath_len, &subtype, &size), size); + emsg = attr_error(p, attrpath_len, &subtype, &size); + rde_update_err(peer, ERR_UPDATE, subtype, emsg, size); aspath_destroy(attrs.aspath); attr_optfree(&attrs); return (-1); -- cgit v1.2.3