untrusted comment: verify with openbsd-73-base.pub
RWQS90bYzZ4XFh+9JTTZzJapAglwCzqNR6cUONf1CZZnOHV/6NwCSUZAfUwPDAxmtL+I8KK78fX83HCJ/7+yYURHpxIufrHWPAY=

OpenBSD 7.3 errata 009, July 12, 2023:

When tracking nexthops over IPv6 multipath routes, or when receiving
a NOTIFICATION while reaching an internal limit, bgpd(8) could crash.

Apply by doing:
   signify -Vep /etc/signify/openbsd-73-base.pub -x 009_bgpd.patch.sig \
       -m - | (cd /usr/src && patch -p0)

And then rebuild and install bgpd(8):
   cd /usr/src/usr.sbin/bgpd
   make obj
   make
   make install

Index: usr.sbin/bgpd/kroute.c
===================================================================
RCS file: /cvs/src/usr.sbin/bgpd/kroute.c,v
diff -u -p -u -r1.304 kroute.c
--- usr.sbin/bgpd/kroute.c      7 Mar 2023 10:30:38 -0000       1.304
+++ usr.sbin/bgpd/kroute.c      10 Jul 2023 12:42:37 -0000
@@ -1864,7 +1864,7 @@ kroute6_remove(struct ktable *kt, struct
       }

       /* check whether a nexthop depends on this kroute */
-       if (kr->flags & F_NEXTHOP) {
+       if (krm->flags & F_NEXTHOP) {
               RB_FOREACH(n, knexthop_tree, KT2KNT(kt)) {
                       if (n->kroute == krm)
                               knexthop_validate(kt, n);
Index: usr.sbin/bgpd/session.c
===================================================================
RCS file: /cvs/src/usr.sbin/bgpd/session.c,v
diff -u -p -u -r1.442 session.c
--- usr.sbin/bgpd/session.c     9 Mar 2023 13:12:19 -0000       1.442
+++ usr.sbin/bgpd/session.c     10 Jul 2023 12:42:37 -0000
@@ -2003,6 +2003,8 @@ session_process_msg(struct peer *p)
               }
       }

+       if (p->rbuf == NULL)
+               return;
       if (rpos < av) {
               left = av - rpos;
               memmove(&p->rbuf->buf, p->rbuf->buf + rpos, left);