mirror of
https://git.openafs.org/openafs.git
synced 2025-01-22 17:00:15 +00:00
FBSD: deal with kernel API rename
Upstream decided to rename the kernel functions that implement syscalls to have a sys_prefix (including afs3_syscall!). We use a couple of them, so we need to conditionalize accordingly. Unfortunately, __FreeBSD_version was not bumped with the change, so we use something close to it and hope it's close enough. Change-Id: I228805a813af70b30f94f659e4da602210a6d6df Reviewed-on: http://gerrit.openafs.org/5572 Reviewed-by: Derrick Brashear <shadow@dementix.org> Tested-by: Derrick Brashear <shadow@dementix.org>
This commit is contained in:
parent
26253df896
commit
4a1d319177
@ -48,9 +48,17 @@ Afs_xsetgroups(struct thread *td, struct setgroups_args *uap)
|
||||
AFS_GUNLOCK();
|
||||
crfree(cr);
|
||||
if (code)
|
||||
#if (__FreeBSD_version >= 900044)
|
||||
return sys_setgroups(td, uap); /* afs has shut down */
|
||||
#else
|
||||
return setgroups(td, uap); /* afs has shut down */
|
||||
#endif
|
||||
|
||||
#if (__FreeBSD_version >= 900044)
|
||||
code = sys_setgroups(td, uap);
|
||||
#else
|
||||
code = setgroups(td, uap);
|
||||
#endif
|
||||
/* Note that if there is a pag already in the new groups we don't
|
||||
* overwrite it with the old pag.
|
||||
*/
|
||||
|
@ -874,7 +874,11 @@ afs_xioctl(afs_proc_t *p, const struct ioctl_args *uap, register_t *retval)
|
||||
|
||||
if (!ioctlDone) {
|
||||
# if defined(AFS_FBSD_ENV)
|
||||
# if (__FreeBSD_version >= 900044)
|
||||
return sys_ioctl(td, uap);
|
||||
# else
|
||||
return ioctl(td, uap);
|
||||
# endif
|
||||
# elif defined(AFS_OBSD_ENV)
|
||||
code = sys_ioctl(p, uap, retval);
|
||||
# elif defined(AFS_NBSD_ENV)
|
||||
|
@ -935,8 +935,9 @@ extern int copyin_afs_ioctl(caddr_t cmarg, struct afs_ioctl *dst);
|
||||
#if defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
|
||||
#ifdef AFS_DARWIN100_ENV
|
||||
extern int afs3_syscall(afs_proc_t *p, void *args, unsigned int *retval);
|
||||
#elif defined(AFS_FBSD90_ENV) || defined(AFS_FBSD82_ENV)
|
||||
/* afs3_syscall prototype is in sys/sysproto.h */
|
||||
#elif (defined(AFS_FBSD90_ENV) || defined(AFS_FBSD82_ENV)) && (__FreeBSD_version < 900044)
|
||||
/* afs3_syscall prototype is in sys/sysproto.h
|
||||
Yes, they put it in, then took it out again (renamed with a sys_ prefix) */
|
||||
#elif defined(AFS_FBSD_ENV)
|
||||
extern int afs3_syscall(struct thread *p, void *args);
|
||||
#elif defined(AFS_NBSD50_ENV)
|
||||
|
@ -92,7 +92,11 @@ osi_StopListener(void)
|
||||
p = pfind(rxk_ListenerPid);
|
||||
if (p) {
|
||||
afs_warn("osi_StopListener: rxk_ListenerPid %u\n", rxk_ListenerPid);
|
||||
#if (__FreeBSD_version >= 90004)
|
||||
kern_psignal(p, SIGUSR1);
|
||||
#else
|
||||
psignal(p, SIGUSR1);
|
||||
#endif
|
||||
PROC_UNLOCK(p);
|
||||
} else
|
||||
afs_warn("osi_StopListener: rxk_Listener not found (pid %u)\n",
|
||||
|
Loading…
Reference in New Issue
Block a user