Download raw body.
bgpd: stop msgbuf abuse, just use msgbuf_init
Use msgbuf_init() instead of hand initalizing the msgbuf.
--
:wq Claudio
Index: rde.c
===================================================================
RCS file: /cvs/src/usr.sbin/bgpd/rde.c,v
diff -u -p -r1.627 rde.c
--- rde.c 20 Aug 2024 11:59:39 -0000 1.627
+++ rde.c 20 Aug 2024 14:10:48 -0000
@@ -3195,7 +3195,7 @@ rde_dump_mrt_new(struct mrt *mrt, pid_t
return;
}
memcpy(&ctx->mrt, mrt, sizeof(struct mrt));
- TAILQ_INIT(&ctx->mrt.wbuf.bufs);
+ msgbuf_init(&ctx->mrt.wbuf);
ctx->mrt.wbuf.fd = fd;
ctx->mrt.state = MRT_STATE_RUNNING;
rid = rib_find(ctx->mrt.rib);
Index: session.c
===================================================================
RCS file: /cvs/src/usr.sbin/bgpd/session.c,v
diff -u -p -r1.481 session.c
--- session.c 20 Aug 2024 11:59:39 -0000 1.481
+++ session.c 20 Aug 2024 14:10:48 -0000
@@ -3159,13 +3159,13 @@ session_dispatch_imsg(struct imsgbuf *im
if (mrt == NULL)
fatal("session_dispatch_imsg");
memcpy(mrt, &xmrt, sizeof(struct mrt));
- TAILQ_INIT(&mrt->wbuf.bufs);
+ msgbuf_init(&mrt->wbuf);
LIST_INSERT_HEAD(&mrthead, mrt, entry);
} else {
/* old dump reopened */
close(mrt->wbuf.fd);
- mrt->wbuf.fd = xmrt.wbuf.fd;
}
+ mrt->wbuf.fd = xmrt.wbuf.fd;
break;
case IMSG_MRT_CLOSE:
if (idx != PFD_PIPE_MAIN)
bgpd: stop msgbuf abuse, just use msgbuf_init