This is just some additional ibuf cleanup in relayd.
Mostly use ibuf_data() instead of direct access to ibuf->buf.
--
:wq Claudio
Index: check_tcp.c
===================================================================
RCS file: /cvs/src/usr.sbin/relayd/check_tcp.c,v
retrieving revision 1.60
diff -u -p -r1.60 check_tcp.c
--- check_tcp.c 21 Jun 2023 07:54:54 -0000 1.60
+++ check_tcp.c 30 Jun 2023 08:52:36 -0000
@@ -214,7 +214,7 @@ tcp_send_req(int s, short event, void *a
req = ibuf_data(cte->table->sendbinbuf);
log_debug("%s: table %s sending binary", __func__,
cte->table->conf.name);
- print_hex(cte->table->sendbinbuf->buf, 0, len);
+ print_hex(req, 0, len);
} else {
len = strlen(cte->table->sendbuf);
req = cte->table->sendbuf;
@@ -323,7 +323,7 @@ check_send_expect(struct ctl_tcp_event *
/*
* ensure string is nul-terminated.
*/
- b = strndup(cte->buf->buf, ibuf_size(cte->buf));
+ b = strndup(ibuf_data(cte->buf), ibuf_size(cte->buf));
if (b == NULL)
fatal("out of memory");
if (fnmatch(cte->table->conf.exbuf, b, 0) == 0) {
Index: check_tls.c
===================================================================
RCS file: /cvs/src/usr.sbin/relayd/check_tls.c,v
retrieving revision 1.2
diff -u -p -r1.2 check_tls.c
--- check_tls.c 15 Sep 2019 19:23:29 -0000 1.2
+++ check_tls.c 3 Sep 2021 15:58:41 -0000
@@ -104,10 +104,10 @@ check_tls_write(int s, short event, void
if (cte->table->sendbinbuf != NULL) {
len = ibuf_size(cte->table->sendbinbuf);
- buf = cte->table->sendbinbuf->buf;
+ buf = ibuf_data(cte->table->sendbinbuf);
log_debug("%s: table %s sending binary", __func__,
cte->table->conf.name);
- print_hex(cte->table->sendbinbuf->buf, 0, len);
+ print_hex(buf, 0, len);
} else {
len = strlen(cte->table->sendbuf);
buf = cte->table->sendbuf;
Index: parse.y
===================================================================
RCS file: /cvs/src/usr.sbin/relayd/parse.y,v
retrieving revision 1.253
diff -u -p -r1.253 parse.y
--- parse.y 15 Oct 2021 15:01:28 -0000 1.253
+++ parse.y 23 Oct 2021 15:16:33 -0000
@@ -996,7 +996,7 @@ tablecheck : ICMP { table->conf.check
free($5);
YYERROR;
}
- memcpy(table->conf.exbinbuf, ibuf->buf,
+ memcpy(table->conf.exbinbuf, ibuf_data(ibuf),
ibuf_size(ibuf));
ibuf_free(ibuf);
free($5);