]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Unix CM: Use macros for process name and id access
authorSimon Wilkinson <sxw@inf.ed.ac.uk>
Thu, 29 Apr 2010 18:06:37 +0000 (19:06 +0100)
committerDerrick Brashear <shadow@dementia.org>
Wed, 19 May 2010 12:08:12 +0000 (05:08 -0700)
This patch uses the new osi_procname() macro to obtain the process
name for setpag() warnings on BSD and Darwin, and osi_curproc() to
obtain the process identity, simplifying the code.

Change-Id: I1f8a4d4bbcdb09eaeea3712b1fffd1aaa3cd2fa7
Reviewed-on: http://gerrit.openafs.org/1878
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Matt Benjamin <matt@linuxbox.com>
Tested-by: Derrick Brashear <shadow@dementia.org>
src/afs/FBSD/osi_machdep.h
src/afs/afs_pag_cred.c
src/afs/afs_pioctl.c

index 15cea310b072aa314922ddd2a550f2a0e78c3f9f..68a462270f66e7da42c747001f45d903d58610c6 100644 (file)
@@ -108,6 +108,7 @@ extern void osi_fbsd_free(void *p);
 #define VROOT          VV_ROOT
 #define v_flag         v_vflag
 #define osi_curcred()  (curthread->td_ucred)
+#define osi_curproc()   (curthread)
 #define osi_getpid()   (curthread->td_proc->p_pid)
 #define simple_lock(x) mtx_lock(x)
 #define simple_unlock(x) mtx_unlock(x)
index 491a0368e1b7b07aa0af3118dafb7030bc046fcf..e08e8e7997bd44afd1ed9defb089732d39d8d2b3 100644 (file)
@@ -177,20 +177,12 @@ afspag_PSetTokens(char *ain, afs_int32 ainSize, afs_ucred_t **acred)
     if (!tcell) return ESRCH;
     if (set_parent_pag) {
 #if defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
-# if defined(AFS_DARWIN_ENV)
-       afs_proc_t *p = current_proc(); /* XXX */
        char procname[256];
-       proc_selfname(procname, 256);
-# elif defined(AFS_FBSD_ENV)
-       struct thread *p = curthread;
-       char *procname = p->td_proc->p_comm;
-# else
-       afs_proc_t *p = curproc;        /* XXX */
-       char *procname = p->p_comm;
-# endif
+       osi_procname(procname, 256);
+
        afs_warnuser("Process %d (%s) tried to change pags in PSetTokens\n",
                     MyPidxx2Pid(MyPidxx), procname);
-       setpag(p, acred, -1, &pag, 1);
+       setpag(osi_curproc(), acred, -1, &pag, 1);
 #else
        setpag(acred, -1, &pag, 1);
 #endif
index 57555d624e713cc89de409712ccfd05e5f82a955..df338d0b45fc96c3a4346b33e13fab8ccb01eaef 100644 (file)
@@ -1862,23 +1862,11 @@ DECL_PIOCTL(PSetTokens)
     if (set_parent_pag) {
        afs_uint32 pag;
 #if defined(AFS_DARWIN_ENV) || defined(AFS_XBSD_ENV)
-# if defined(AFS_DARWIN_ENV)
-       afs_proc_t *p = current_proc(); /* XXX */
        char procname[256];
-       proc_selfname(procname, 256);
-# elif defined(AFS_FBSD_ENV)
-       struct thread *p = curthread;
-       char *procname = p->td_proc->p_comm;
-# elif defined(AFS_NBSD40_ENV)
-       afs_proc_t *p = curproc;        /* XXX */
-       char *procname = p->l_proc->p_comm;
-# else
-       afs_proc_t *p = curproc;        /* XXX */
-       char *procname = p->p_comm;
-# endif
+       osi_procname(procname, 256);
        afs_warnuser("Process %d (%s) tried to change pags in PSetTokens\n",
                     MyPidxx2Pid(MyPidxx), procname);
-       if (!setpag(p, acred, -1, &pag, 1)) {
+       if (!setpag(osi_curproc(), acred, -1, &pag, 1)) {
 #else
        if (!setpag(acred, -1, &pag, 1)) {
 #endif