Download raw body.
relayd convert to imsg_get_fd()
Here is the imsg_get_fd change for relayd.
Very similar to other reykd's.
--
:wq Claudio
Index: agentx_control.c
===================================================================
RCS file: /cvs/src/usr.sbin/relayd/agentx_control.c,v
diff -u -p -r1.6 agentx_control.c
--- agentx_control.c 31 Aug 2022 16:17:18 -0000 1.6
+++ agentx_control.c 13 Dec 2023 13:15:31 -0000
@@ -462,16 +462,18 @@ void
agentx_getsock(struct imsg *imsg)
{
struct timeval tv = AGENTX_RECONNECT_TIMEOUT;
+ int fd;
- if (imsg->fd == -1)
+ fd = imsg_get_fd(imsg);
+ if (fd == -1)
goto retry;
event_del(&(env->sc_agentxev));
- event_set(&(env->sc_agentxev), imsg->fd, EV_READ | EV_PERSIST,
+ event_set(&(env->sc_agentxev), fd, EV_READ | EV_PERSIST,
agentx_sock, env);
event_add(&(env->sc_agentxev), NULL);
- agentx_connect(sa, imsg->fd);
+ agentx_connect(sa, fd);
retry:
evtimer_set(&env->sc_agentxev, agentx_sock, env);
Index: config.c
===================================================================
RCS file: /cvs/src/usr.sbin/relayd/config.c,v
diff -u -p -r1.44 config.c
--- config.c 25 Jun 2023 08:07:38 -0000 1.44
+++ config.c 13 Dec 2023 13:14:26 -0000
@@ -1030,7 +1030,7 @@ config_getrelay(struct relayd *env, stru
memcpy(&rlay->rl_conf, p, sizeof(rlay->rl_conf));
s = sizeof(rlay->rl_conf);
- rlay->rl_s = imsg->fd;
+ rlay->rl_s = imsg_get_fd(imsg);
rlay->rl_tls_ca_fd = -1;
rlay->rl_tls_cacert_fd = -1;
@@ -1148,19 +1148,19 @@ config_getrelayfd(struct relayd *env, st
switch (crfd.type) {
case RELAY_FD_CERT:
- cert->cert_fd = imsg->fd;
+ cert->cert_fd = imsg_get_fd(imsg);
break;
case RELAY_FD_KEY:
- cert->cert_key_fd = imsg->fd;
+ cert->cert_key_fd = imsg_get_fd(imsg);
break;
case RELAY_FD_OCSP:
- cert->cert_ocsp_fd = imsg->fd;
+ cert->cert_ocsp_fd = imsg_get_fd(imsg);
break;
case RELAY_FD_CACERT:
- rlay->rl_tls_ca_fd = imsg->fd;
+ rlay->rl_tls_ca_fd = imsg_get_fd(imsg);
break;
case RELAY_FD_CAFILE:
- rlay->rl_tls_cacert_fd = imsg->fd;
+ rlay->rl_tls_cacert_fd = imsg_get_fd(imsg);
break;
}
Index: proc.c
===================================================================
RCS file: /cvs/src/usr.sbin/relayd/proc.c,v
diff -u -p -r1.44 proc.c
--- proc.c 15 Feb 2023 20:44:01 -0000 1.44
+++ proc.c 13 Dec 2023 13:16:18 -0000
@@ -655,7 +655,7 @@ proc_dispatch(int fd, short event, void
case IMSG_CTL_PROCFD:
IMSG_SIZE_CHECK(&imsg, &pf);
memcpy(&pf, imsg.data, sizeof(pf));
- proc_accept(ps, imsg.fd, pf.pf_procid,
+ proc_accept(ps, imsg_get_fd(&imsg), pf.pf_procid,
pf.pf_instance);
break;
default:
@@ -786,7 +786,7 @@ proc_forward_imsg(struct privsep *ps, st
enum privsep_procid id, int n)
{
return (proc_compose_imsg(ps, id, n, imsg->hdr.type,
- imsg->hdr.peerid, imsg->fd, imsg->data, IMSG_DATA_SIZE(imsg)));
+ imsg->hdr.peerid, -1, imsg->data, IMSG_DATA_SIZE(imsg)));
}
struct imsgbuf *
Index: relay.c
===================================================================
RCS file: /cvs/src/usr.sbin/relayd/relay.c,v
diff -u -p -r1.258 relay.c
--- relay.c 29 Oct 2023 11:27:11 -0000 1.258
+++ relay.c 13 Dec 2023 13:14:46 -0000
@@ -1993,7 +1993,7 @@ relay_dispatch_parent(int fd, struct pri
}
/* Will validate the result later */
- con->se_bnds = imsg->fd;
+ con->se_bnds = imsg_get_fd(imsg);
evtimer_del(&con->se_ev);
evtimer_set(&con->se_ev, relay_bindany, con);
relayd convert to imsg_get_fd()