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.
*/
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)
#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)
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",