-.\" $OpenBSD: bgpd.conf.5,v 1.239 2024/04/09 09:03:18 claudio Exp $
+.\" $OpenBSD: bgpd.conf.5,v 1.240 2024/04/24 10:41:34 claudio Exp $
.\"
.\" Copyright (c) 2004 Claudio Jeker <claudio@openbsd.org>
.\" Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd $Mdocdate: April 9 2024 $
+.Dd $Mdocdate: April 24 2024 $
.Dt BGPD.CONF 5
.Os
.Sh NAME
.Ic yes .
.Pp
.It Xo
-.Ic announce capabilities
-.Pq Ic yes Ns | Ns Ic no
-.Xc
-If set to
-.Ic no ,
-capability negotiation is disabled during the establishment of the session.
-This can be helpful to connect to old or broken BGP implementations.
-The default is
-.Ic yes .
-.Pp
-.It Xo
.Ic announce enhanced refresh
.Pq Ic yes Ns | Ns Ic no Ns | Ns Ic enforce
.Xc
-/* $OpenBSD: bgpd.h,v 1.491 2024/04/09 12:09:19 claudio Exp $ */
+/* $OpenBSD: bgpd.h,v 1.492 2024/04/24 10:41:34 claudio Exp $ */
/*
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
uint8_t distance; /* 1 = direct, >1 = multihop */
uint8_t passive;
uint8_t down;
- uint8_t announce_capa;
uint8_t reflector_client;
uint8_t ttlsec; /* TTL security hack */
uint8_t flags;
-/* $OpenBSD: parse.y,v 1.461 2024/04/11 18:07:55 tb Exp $ */
+/* $OpenBSD: parse.y,v 1.462 2024/04/24 10:41:34 claudio Exp $ */
/*
* Copyright (c) 2002, 2003, 2004 Henning Brauer <henning@openbsd.org>
%token EBGP IBGP
%token FLOWSPEC PROTO FLAGS FRAGMENT TOS LENGTH ICMPTYPE CODE
%token LOCALAS REMOTEAS DESCR LOCALADDR MULTIHOP PASSIVE MAXPREFIX RESTART
-%token ANNOUNCE CAPABILITIES REFRESH AS4BYTE CONNECTRETRY ENHANCED ADDPATH
+%token ANNOUNCE REFRESH AS4BYTE CONNECTRETRY ENHANCED ADDPATH
%token SEND RECV PLUS POLICY ROLE
%token DEMOTE ENFORCE NEIGHBORAS ASOVERRIDE REFLECTOR DEPEND DOWN
%token DUMP IN OUT SOCKET RESTRICTED
curpeer->conf.capabilities.mp[aid] = 1;
}
}
- | ANNOUNCE CAPABILITIES yesno {
- curpeer->conf.announce_capa = $3;
- }
| ANNOUNCE REFRESH yesnoenforce {
curpeer->conf.capabilities.refresh = $3;
}
{ "aspa-set", ASPASET},
{ "avs", AVS},
{ "blackhole", BLACKHOLE},
- { "capabilities", CAPABILITIES},
{ "community", COMMUNITY},
{ "compare", COMPARE},
{ "connect-retry", CONNECTRETRY},
p->reconf_action = RECONF_REINIT;
p->conf.distance = 1;
p->conf.export_type = EXPORT_UNSET;
- p->conf.announce_capa = 1;
p->conf.capabilities.refresh = 1;
p->conf.capabilities.grestart.restart = 1;
p->conf.capabilities.as4byte = 1;
-/* $OpenBSD: printconf.c,v 1.171 2024/04/09 09:03:18 claudio Exp $ */
+/* $OpenBSD: printconf.c,v 1.172 2024/04/24 10:41:34 claudio Exp $ */
/*
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
uint8_t aid;
int match = 0;
- if (p->announce_capa == 0)
- printf("%s\tannounce capabilities no\n", c);
-
for (aid = AID_MIN; aid < AID_MAX; aid++)
if (p->capabilities.mp[aid] == 2) {
printf("%s\tannounce %s enforce\n", c, aid2str(aid));
-/* $OpenBSD: session.c,v 1.473 2024/04/22 09:43:11 claudio Exp $ */
+/* $OpenBSD: session.c,v 1.474 2024/04/24 10:41:34 claudio Exp $ */
/*
* Copyright (c) 2003, 2004, 2005 Henning Brauer <henning@openbsd.org>
void session_accept(int);
int session_connect(struct peer *);
void session_tcp_established(struct peer *);
-void session_capa_ann_none(struct peer *);
int session_capa_add(struct ibuf *, uint8_t, uint8_t);
int session_capa_add_mp(struct ibuf *, uint8_t);
int session_capa_add_afi(struct ibuf *, uint8_t, uint8_t);
/* initialize capability negotiation structures */
memcpy(&peer->capa.ann, &peer->conf.capabilities,
sizeof(peer->capa.ann));
- if (!peer->conf.announce_capa)
- session_capa_ann_none(peer);
}
break;
case STATE_CONNECT:
&peer->if_scope);
}
-void
-session_capa_ann_none(struct peer *peer)
-{
- memset(&peer->capa.ann, 0, sizeof(peer->capa.ann));
-}
-
int
session_capa_add(struct ibuf *opb, uint8_t capa_code, uint8_t capa_len)
{