Download raw body.
bgpctl: properly show extended messages capability
When adding the extended capabillity handling I forgot to add the
capability to the monster if check that validates that the peer has a
capability negotiated.
In general as4byte and rrefres are turned on by default so one needs to
really work hard to trigger this.
--
:wq Claudio
Index: output.c
===================================================================
RCS file: /cvs/src/usr.sbin/bgpctl/output.c,v
diff -u -p -r1.74 output.c
--- output.c 31 Mar 2026 09:32:12 -0000 1.74
+++ output.c 13 May 2026 15:31:35 -0000
@@ -345,7 +345,8 @@ show_neighbor_full(struct peer *p, struc
}
if (hascapamp || hascapaap || p->capa.peer.grestart.restart ||
p->capa.peer.refresh || p->capa.peer.enhanced_rr ||
- p->capa.peer.as4byte || p->capa.peer.policy) {
+ p->capa.peer.as4byte || p->capa.peer.policy ||
+ p->capa.peer.ext_msg) {
printf(" Neighbor capabilities:\n");
if (hascapamp)
show_neighbor_capa_mp(&p->capa.peer);
@@ -377,7 +378,8 @@ show_neighbor_full(struct peer *p, struc
}
if (hascapamp || hascapaap || p->capa.neg.grestart.restart ||
p->capa.neg.refresh || p->capa.neg.enhanced_rr ||
- p->capa.neg.as4byte || p->capa.neg.policy) {
+ p->capa.neg.as4byte || p->capa.neg.policy ||
+ p->capa.neg.ext_msg) {
printf(" Negotiated capabilities:\n");
if (hascapamp)
show_neighbor_capa_mp(&p->capa.neg);
Index: output_json.c
===================================================================
RCS file: /cvs/src/usr.sbin/bgpctl/output_json.c,v
diff -u -p -r1.63 output_json.c
--- output_json.c 17 Mar 2026 09:30:11 -0000 1.63
+++ output_json.c 13 May 2026 15:30:34 -0000
@@ -53,7 +53,8 @@ json_neighbor_capabilities(struct capabi
hascapaap = 1;
}
if (!hascapamp && !hascapaap && !capa->grestart.restart &&
- !capa->refresh && !capa->enhanced_rr && !capa->as4byte)
+ !capa->refresh && !capa->enhanced_rr && !capa->as4byte &&
+ !capa->ext_msg)
return;
json_do_object("capabilities", 0);
bgpctl: properly show extended messages capability