aboutsummaryrefslogtreecommitdiff
path: root/sys/compat
diff options
context:
space:
mode:
authorBrooks Davis <brooks@FreeBSD.org>2021-11-17 20:12:22 +0000
committerBrooks Davis <brooks@FreeBSD.org>2021-11-17 20:12:22 +0000
commit85d1d2a675c83d02591a96819c726fd597750d79 (patch)
tree19140c9001a043a1e19f8e114725b86ba3891044 /sys/compat
parentf503288262e53d068d397fe8681c5cc52760e332 (diff)
downloadsrc-85d1d2a675c83d02591a96819c726fd597750d79.tar.gz
src-85d1d2a675c83d02591a96819c726fd597750d79.zip
syscalls: use struct siginfo rather than siginfo_t
This allows freebsd32 to use struct siginfo32 with an automatable conversion. Reviewed by: kevans
Diffstat (limited to 'sys/compat')
-rw-r--r--sys/compat/freebsd32/freebsd32_proto.h8
-rw-r--r--sys/compat/freebsd32/freebsd32_systrace_args.c16
-rw-r--r--sys/compat/freebsd32/syscalls.master8
3 files changed, 16 insertions, 16 deletions
diff --git a/sys/compat/freebsd32/freebsd32_proto.h b/sys/compat/freebsd32/freebsd32_proto.h
index 2ddd5f472ccf..29bde63f4cec 100644
--- a/sys/compat/freebsd32/freebsd32_proto.h
+++ b/sys/compat/freebsd32/freebsd32_proto.h
@@ -297,12 +297,12 @@ struct freebsd32_jail_args {
};
struct freebsd32_sigtimedwait_args {
char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)];
- char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
+ char info_l_[PADL_(struct siginfo32 *)]; struct siginfo32 * info; char info_r_[PADR_(struct siginfo32 *)];
char timeout_l_[PADL_(const struct timespec *)]; const struct timespec * timeout; char timeout_r_[PADR_(const struct timespec *)];
};
struct freebsd32_sigwaitinfo_args {
char set_l_[PADL_(const sigset_t *)]; const sigset_t * set; char set_r_[PADR_(const sigset_t *)];
- char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
+ char info_l_[PADL_(struct siginfo32 *)]; struct siginfo32 * info; char info_r_[PADR_(struct siginfo32 *)];
};
struct freebsd32_aio_waitcomplete_args {
char aiocbp_l_[PADL_(struct aiocb32 **)]; struct aiocb32 ** aiocbp; char aiocbp_r_[PADR_(struct aiocb32 **)];
@@ -604,7 +604,7 @@ struct freebsd32_wait6_args {
char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
char wrusage_l_[PADL_(struct wrusage32 *)]; struct wrusage32 * wrusage; char wrusage_r_[PADR_(struct wrusage32 *)];
- char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
+ char info_l_[PADL_(struct siginfo32 *)]; struct siginfo32 * info; char info_r_[PADR_(struct siginfo32 *)];
};
#else
struct freebsd32_posix_fallocate_args {
@@ -629,7 +629,7 @@ struct freebsd32_wait6_args {
char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
char wrusage_l_[PADL_(struct wrusage32 *)]; struct wrusage32 * wrusage; char wrusage_r_[PADR_(struct wrusage32 *)];
- char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
+ char info_l_[PADL_(struct siginfo32 *)]; struct siginfo32 * info; char info_r_[PADR_(struct siginfo32 *)];
};
#endif
struct freebsd32_cap_ioctls_limit_args {
diff --git a/sys/compat/freebsd32/freebsd32_systrace_args.c b/sys/compat/freebsd32/freebsd32_systrace_args.c
index 96a67aef6255..64e500aaad25 100644
--- a/sys/compat/freebsd32/freebsd32_systrace_args.c
+++ b/sys/compat/freebsd32/freebsd32_systrace_args.c
@@ -1593,7 +1593,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
case 345: {
struct freebsd32_sigtimedwait_args *p = params;
uarg[0] = (intptr_t)p->set; /* const sigset_t * */
- uarg[1] = (intptr_t)p->info; /* siginfo_t * */
+ uarg[1] = (intptr_t)p->info; /* struct siginfo32 * */
uarg[2] = (intptr_t)p->timeout; /* const struct timespec * */
*n_args = 3;
break;
@@ -1602,7 +1602,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
case 346: {
struct freebsd32_sigwaitinfo_args *p = params;
uarg[0] = (intptr_t)p->set; /* const sigset_t * */
- uarg[1] = (intptr_t)p->info; /* siginfo_t * */
+ uarg[1] = (intptr_t)p->info; /* struct siginfo32 * */
*n_args = 2;
break;
}
@@ -2916,7 +2916,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
uarg[4] = (intptr_t)p->status; /* int * */
iarg[5] = p->options; /* int */
uarg[6] = (intptr_t)p->wrusage; /* struct wrusage32 * */
- uarg[7] = (intptr_t)p->info; /* siginfo_t * */
+ uarg[7] = (intptr_t)p->info; /* struct siginfo32 * */
*n_args = 8;
break;
}
@@ -2953,7 +2953,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
uarg[3] = (intptr_t)p->status; /* int * */
iarg[4] = p->options; /* int */
uarg[5] = (intptr_t)p->wrusage; /* struct wrusage32 * */
- uarg[6] = (intptr_t)p->info; /* siginfo_t * */
+ uarg[6] = (intptr_t)p->info; /* struct siginfo32 * */
*n_args = 7;
break;
}
@@ -5929,7 +5929,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
p = "userland const sigset_t *";
break;
case 1:
- p = "userland siginfo_t *";
+ p = "userland struct siginfo32 *";
break;
case 2:
p = "userland const struct timespec *";
@@ -5945,7 +5945,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
p = "userland const sigset_t *";
break;
case 1:
- p = "userland siginfo_t *";
+ p = "userland struct siginfo32 *";
break;
default:
break;
@@ -8298,7 +8298,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
p = "userland struct wrusage32 *";
break;
case 7:
- p = "userland siginfo_t *";
+ p = "userland struct siginfo32 *";
break;
default:
break;
@@ -8374,7 +8374,7 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
p = "userland struct wrusage32 *";
break;
case 6:
- p = "userland siginfo_t *";
+ p = "userland struct siginfo32 *";
break;
default:
break;
diff --git a/sys/compat/freebsd32/syscalls.master b/sys/compat/freebsd32/syscalls.master
index c76e6b426b2e..1cf37d777c25 100644
--- a/sys/compat/freebsd32/syscalls.master
+++ b/sys/compat/freebsd32/syscalls.master
@@ -627,10 +627,10 @@
344 AUE_SIGRETURN COMPAT4 { int freebsd32_sigreturn( \
const struct freebsd4_freebsd32_ucontext *sigcntxp); }
345 AUE_SIGWAIT STD { int freebsd32_sigtimedwait(const sigset_t *set, \
- siginfo_t *info, \
+ struct siginfo32 *info, \
const struct timespec *timeout); }
346 AUE_NULL STD { int freebsd32_sigwaitinfo(const sigset_t *set, \
- siginfo_t *info); }
+ struct siginfo32 *info); }
347 AUE_ACL_GET_FILE NOPROTO { int __acl_get_file(const char *path, \
acl_type_t type, struct acl *aclp); }
348 AUE_ACL_SET_FILE NOPROTO { int __acl_set_file(const char *path, \
@@ -1036,7 +1036,7 @@
uint32_t id1, uint32_t id2, \
int *status, int options, \
struct wrusage32 *wrusage, \
- siginfo_t *info); }
+ struct siginfo32 *info); }
#else
530 AUE_POSIX_FALLOCATE STD { int freebsd32_posix_fallocate(int fd,\
uint32_t offset1, uint32_t offset2,\
@@ -1049,7 +1049,7 @@
uint32_t id1, uint32_t id2, \
int *status, int options, \
struct wrusage32 *wrusage, \
- siginfo_t *info); }
+ struct siginfo32 *info); }
#endif
533 AUE_CAP_RIGHTS_LIMIT NOPROTO { \
int cap_rights_limit(int fd, \