diff options
author | Kyle Evans <kevans@FreeBSD.org> | 2020-04-14 18:07:42 +0000 |
---|---|---|
committer | Kyle Evans <kevans@FreeBSD.org> | 2020-04-14 18:07:42 +0000 |
commit | 7d03e0811239d6f413d313214dab463af86d2a82 (patch) | |
tree | 45a3243ef22615031b4478b5e9272899bfc28c75 /sys/kern/kern_descrip.c | |
parent | a1af70e58ba5e89b5449947b168769125981dec2 (diff) | |
download | src-7d03e0811239d6f413d313214dab463af86d2a82.tar.gz src-7d03e0811239d6f413d313214dab463af86d2a82.zip |
Mark closefrom(2) COMPAT12, reimplement in libc to wrap close_range
Include a temporarily compatibility shim as well for kernels predating
close_range, since closefrom is used in some critical areas.
Reviewed by: markj (previous version), kib
Differential Revision: https://reviews.freebsd.org/D24399
Notes
Notes:
svn path=/head/; revision=359930
Diffstat (limited to 'sys/kern/kern_descrip.c')
-rw-r--r-- | sys/kern/kern_descrip.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index dce930b09fe6..d11618a3a6a2 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -1372,17 +1372,18 @@ sys_close_range(struct thread *td, struct close_range_args *uap) return (kern_close_range(td, uap->lowfd, uap->highfd)); } +#ifdef COMPAT_FREEBSD12 /* * Close open file descriptors. */ #ifndef _SYS_SYSPROTO_H_ -struct closefrom_args { +struct freebsd12_closefrom_args { int lowfd; }; #endif /* ARGSUSED */ int -sys_closefrom(struct thread *td, struct closefrom_args *uap) +freebsd12_closefrom(struct thread *td, struct freebsd12_closefrom_args *uap) { u_int lowfd; @@ -1395,6 +1396,7 @@ sys_closefrom(struct thread *td, struct closefrom_args *uap) lowfd = MAX(0, uap->lowfd); return (kern_close_range(td, lowfd, ~0U)); } +#endif /* COMPAT_FREEBSD12 */ #if defined(COMPAT_43) /* |