@samitouri / QOSamiQemu / commits / 1f58a7c8a1

bsd-user: Add target_sockaddr and safe_ioctl to syscall_defs.h

Add struct target_sockaddr and target_in_addr definitions for socket address handling and safe_ioctl macro for safe ioctl system calls. Signed-off-by: Stacey Son <sson@FreeBSD.org> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> Signed-off-by: Warner Losh <imp@bsdimp.com>

Stacey Son committed Mar 13, 2026 at 22:15 UTC 1f58a7c8a18f6c82d220e5837ae181a6b8843f3a
1 file changed +14
bsd-user/syscall_defs.h
+14
@@ -537,6 +537,20 @@ type safe_##name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, \
537 return safe_syscall(SYS_##name, arg1, arg2, arg3, arg4, arg5, arg6); \
538 }
539
540 +/*
541 + * sys/socket.h
542 + */
543 +struct target_sockaddr {
544 + uint8_t sa_len;
545 + uint8_t sa_family;
546 + uint8_t sa_data[14];
547 +} QEMU_PACKED;
548 +
549 +struct target_in_addr {
550 + uint32_t s_addr; /* big endian */
551 +};
552 +
553 +#define safe_ioctl(...) safe_syscall(SYS_ioctl, __VA_ARGS__)
554 #define safe_fcntl(...) safe_syscall(SYS_fcntl, __VA_ARGS__)
555
556 /* So far all target and host bitmasks are the same */