Re: git: a5e6bee5a0bf - main - hastd: Use void pointers for opaque data
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 20 Oct 2026 14:49:35 UTC
On 20/10/26 10:29, Dag-Erling Smørg rav wrote:
> The branch main has been updated by des:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=a5e6bee5a0bff9e9c12037e0b2c76c4f2ab5e046
>
> commit a5e6bee5a0bff9e9c12037e0b2c76c4f2ab5e046
> Author: Dag-Erling Smørgrav <des@FreeBSD.org>
> AuthorDate: 2026-10-20 13:28:42 +0000
> Commit: Dag-Erling Smørgrav <des@FreeBSD.org>
> CommitDate: 2026-10-20 13:28:42 +0000
>
> hastd: Use void pointers for opaque data
>
> Use void, not char, for pointers to opaque data in our send and receive
> functions.
>
> Sponsored by: Klara, Inc.
> Reviewed by: allanjude
> Differential Revision: https://reviews.freebsd.org/D60729
> ---
> sbin/hastd/proto_common.c | 4 ++--
> sbin/hastd/proto_impl.h | 8 ++++----
> sbin/hastd/proto_socketpair.c | 4 ++--
> sbin/hastd/proto_tcp.c | 4 ++--
> sbin/hastd/proto_uds.c | 4 ++--
> 5 files changed, 12 insertions(+), 12 deletions(-)
>
> diff --git a/sbin/hastd/proto_common.c b/sbin/hastd/proto_common.c
> index 39ef696f5b69..c96b325a4130 100644
> --- a/sbin/hastd/proto_common.c
> +++ b/sbin/hastd/proto_common.c
> @@ -89,7 +89,7 @@ proto_descriptor_send(int sock, int fd)
> }
>
> int
> -proto_common_send(int sock, const unsigned char *data, size_t size, int fd)
> +proto_common_send(int sock, const void *data, size_t size, int fd)
> {
> ssize_t done;
> size_t sendsize;
> @@ -190,7 +190,7 @@ proto_descriptor_recv(int sock, int *fdp)
> }
>
> int
> -proto_common_recv(int sock, unsigned char *data, size_t size, int *fdp)
> +proto_common_recv(int sock, void *data, size_t size, int *fdp)
> {
> ssize_t done;
>
> diff --git a/sbin/hastd/proto_impl.h b/sbin/hastd/proto_impl.h
> index 181a4cd4a17d..449ab4097397 100644
> --- a/sbin/hastd/proto_impl.h
> +++ b/sbin/hastd/proto_impl.h
> @@ -44,8 +44,8 @@ typedef int prt_connect_wait_t(void *, int);
> typedef int prt_server_t(const char *, void **);
> typedef int prt_accept_t(void *, void **);
> typedef int prt_wrap_t(int, bool, void **);
> -typedef int prt_send_t(void *, const unsigned char *, size_t, int);
> -typedef int prt_recv_t(void *, unsigned char *, size_t, int *);
> +typedef int prt_send_t(void *, const void *, size_t, int);
> +typedef int prt_recv_t(void *, void *, size_t, int *);
> typedef int prt_descriptor_t(const void *);
> typedef bool prt_address_match_t(const void *, const char *);
> typedef void prt_local_address_t(const void *, char *, size_t);
> @@ -72,7 +72,7 @@ struct proto {
>
> void proto_register(struct proto *proto, bool isdefault);
>
> -int proto_common_send(int sock, const unsigned char *data, size_t size, int fd);
> -int proto_common_recv(int sock, unsigned char *data, size_t size, int *fdp);
> +int proto_common_send(int sock, const void *data, size_t size, int fd);
> +int proto_common_recv(int sock, void *data, size_t size, int *fdp);
>
> #endif /* !_PROTO_IMPL_H_ */
> diff --git a/sbin/hastd/proto_socketpair.c b/sbin/hastd/proto_socketpair.c
> index 31b657f17c32..a5f47acc7272 100644
> --- a/sbin/hastd/proto_socketpair.c
> +++ b/sbin/hastd/proto_socketpair.c
> @@ -82,7 +82,7 @@ sp_client(const char *srcaddr, const char *dstaddr, void **ctxp)
> }
>
> static int
> -sp_send(void *ctx, const unsigned char *data, size_t size, int fd)
> +sp_send(void *ctx, const void *data, size_t size, int fd)
> {
> struct sp_ctx *spctx = ctx;
> int sock;
> @@ -121,7 +121,7 @@ sp_send(void *ctx, const unsigned char *data, size_t size, int fd)
> }
>
> static int
> -sp_recv(void *ctx, unsigned char *data, size_t size, int *fdp)
> +sp_recv(void *ctx, void *data, size_t size, int *fdp)
> {
> struct sp_ctx *spctx = ctx;
> int fd;
> diff --git a/sbin/hastd/proto_tcp.c b/sbin/hastd/proto_tcp.c
> index aeec887433f8..be1205ba3733 100644
> --- a/sbin/hastd/proto_tcp.c
> +++ b/sbin/hastd/proto_tcp.c
> @@ -479,7 +479,7 @@ tcp_wrap(int fd, bool client, void **ctxp)
> }
>
> static int
> -tcp_send(void *ctx, const unsigned char *data, size_t size, int fd)
> +tcp_send(void *ctx, const void *data, size_t size, int fd)
> {
> struct tcp_ctx *tctx = ctx;
>
> @@ -492,7 +492,7 @@ tcp_send(void *ctx, const unsigned char *data, size_t size, int fd)
> }
>
> static int
> -tcp_recv(void *ctx, unsigned char *data, size_t size, int *fdp)
> +tcp_recv(void *ctx, void *data, size_t size, int *fdp)
> {
> struct tcp_ctx *tctx = ctx;
>
> diff --git a/sbin/hastd/proto_uds.c b/sbin/hastd/proto_uds.c
> index acb61a360180..5a14eb353c30 100644
> --- a/sbin/hastd/proto_uds.c
> +++ b/sbin/hastd/proto_uds.c
> @@ -227,7 +227,7 @@ uds_accept(void *ctx, void **newctxp)
> }
>
> static int
> -uds_send(void *ctx, const unsigned char *data, size_t size, int fd)
> +uds_send(void *ctx, const void *data, size_t size, int fd)
> {
> struct uds_ctx *uctx = ctx;
>
> @@ -239,7 +239,7 @@ uds_send(void *ctx, const unsigned char *data, size_t size, int fd)
> }
>
> static int
> -uds_recv(void *ctx, unsigned char *data, size_t size, int *fdp)
> +uds_recv(void *ctx, void *data, size_t size, int *fdp)
> {
> struct uds_ctx *uctx = ctx;
>
I've got a build error after that:
/usr/src/sbin/hastd/proto_common.c:148:8: error: arithmetic on a pointer
to void is a GNU extension [-Werror,-Wgnu-pointer-arith]
148 | data += done;
| ~~~~ ^
--
Renato Botelho