diff options
author | 2004-04-27 04:06:58 +0000 | |
---|---|---|
committer | 2004-04-27 04:06:58 +0000 | |
commit | 3f82f47991615aeb40359b139318b6dc14b47e68 (patch) | |
tree | 1b303c9d99c0a05439fba69f194ed72273d54dc6 | |
parent | print route refresh capability if present (diff) | |
download | wireguard-openbsd-3f82f47991615aeb40359b139318b6dc14b47e68.tar.xz wireguard-openbsd-3f82f47991615aeb40359b139318b6dc14b47e68.zip |
announce route refresh capability, and parse announced route refresh capa
-rw-r--r-- | usr.sbin/bgpd/session.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/usr.sbin/bgpd/session.c b/usr.sbin/bgpd/session.c index c6fd6c01845..d00069e1026 100644 --- a/usr.sbin/bgpd/session.c +++ b/usr.sbin/bgpd/session.c @@ -1,4 +1,4 @@ -/* $OpenBSD: session.c,v 1.153 2004/04/27 03:53:43 henning Exp $ */ +/* $OpenBSD: session.c,v 1.154 2004/04/27 04:06:58 henning Exp $ */ /* * Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org> @@ -1026,7 +1026,12 @@ session_open(struct peer *p) errs += buf_add(buf, &capa_mp_v4.afi, sizeof(capa_mp_v4.afi)); errs += buf_add(buf, &capa_mp_v4.pad, sizeof(capa_mp_v4.pad)); errs += buf_add(buf, &capa_mp_v4.safi, sizeof(capa_mp_v4.safi)); + /* route refresh, RFC 2918 */ + capa_code = CAPA_REFRESH; + capa_len = 0; + errs += buf_add(buf, &capa_code, sizeof(capa_code)); + errs += buf_add(buf, &capa_len, sizeof(capa_len)); } if (errs == 0) { @@ -1772,6 +1777,9 @@ parse_capabilities(struct peer *peer, u_char *d, u_int16_t dlen) break; } break; + case CAPA_REFRESH: + peer->capa.refresh = 1; + break; default: break; } |