Lines Matching defs:imsg
1 /* $OpenBSD: imsg.c,v 1.38 2024/11/29 04:35:13 tb Exp $ */
31 #include "imsg.h"
111 imsg_get(struct imsgbuf *imsgbuf, struct imsg *imsg)
113 struct imsg m;
129 *imsg = m;
134 imsg_get_ibuf(struct imsg *imsg, struct ibuf *ibuf)
136 if (ibuf_size(imsg->buf) == 0) {
140 return ibuf_get_ibuf(imsg->buf, ibuf_size(imsg->buf), ibuf);
144 imsg_get_data(struct imsg *imsg, void *data, size_t len)
150 if (ibuf_size(imsg->buf) != len) {
154 return ibuf_get(imsg->buf, data, len);
158 imsg_get_fd(struct imsg *imsg)
160 return ibuf_fd_get(imsg->buf);
164 imsg_get_id(struct imsg *imsg)
166 return (imsg->hdr.peerid);
170 imsg_get_len(struct imsg *imsg)
172 return ibuf_size(imsg->buf);
176 imsg_get_pid(struct imsg *imsg)
178 return (imsg->hdr.pid);
182 imsg_get_type(struct imsg *imsg)
184 return (imsg->hdr.type);
230 * Enqueue imsg with payload from ibuf buf. fd passing is not possible
270 * Forward imsg to another channel. Any attached fd is closed.
273 imsg_forward(struct imsgbuf *imsgbuf, struct imsg *msg)
347 imsg_free(struct imsg *imsg)
349 ibuf_free(imsg->buf);