]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Linux: Get rid of !STRUCT_KEY_UID_IS_KUID_T case
authorAnders Kaseorg <andersk@mit.edu>
Thu, 7 Nov 2013 20:37:25 +0000 (15:37 -0500)
committerStephan Wiesand <stephan.wiesand@desy.de>
Thu, 14 Nov 2013 13:35:59 +0000 (05:35 -0800)
On the few kernel versions before struct key.uid was converted to
kuid_t (v3.7-rc1~147^2~76), it was not possible to enable both
CONFIG_KEYS and CONFIG_UIDGID_STRICT_TYPE_CHECKS, so this case was
impossible.  That’s good, because it also had a typo in its
implementation (and was confusing to deal with correctly).

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
Reviewed-on: http://gerrit.openafs.org/10443
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit d0a13fe678412464452afae9379d63fa48d41d83)

Change-Id: I081115d13b6deb3b10e6da442bed7a7bb9347296
Reviewed-on: http://gerrit.openafs.org/10458
Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Tested-by: Anders Kaseorg <andersk@mit.edu>
Reviewed-by: Anders Kaseorg <andersk@mit.edu>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
acinclude.m4
src/afs/LINUX/osi_compat.h
src/cf/linux-test4.m4

index 09b0747de524836564e5af2a58011b95e5b26311..bf9abe332ef12ca15c8c5df6b663e2da6bb45d8b 100644 (file)
@@ -996,7 +996,6 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                 LINUX_LINUX_KEYRING_SUPPORT
                 LINUX_KEY_ALLOC_NEEDS_STRUCT_TASK
                 LINUX_KEY_ALLOC_NEEDS_CRED
-                LINUX_STRUCT_KEY_UID_IS_KUID_T
                 LINUX_INIT_WORK_HAS_DATA
                 LINUX_REGISTER_SYSCTL_TABLE_NOFLAG
                 LINUX_HAVE_DCACHE_LOCK
index 783b92c3610762472acbc6db9924ef9c87457b63..61b4a09f2d7b49c327d2e4bfa7e8cbde85c4b4c6 100644 (file)
@@ -178,14 +178,6 @@ afs_linux_key_alloc(struct key_type *type, const char *desc, afs_kuid_t uid,
 {
 # if defined(KEY_ALLOC_NEEDS_STRUCT_TASK)
     return key_alloc(type, desc, uid, gid, current, perm, flags);
-# elif defined(KEY_ALLOC_NEEDS_CRED) && defined(HAVE_LINUX_KUID_T) && \
-    !defined(STRUCT_KEY_UID_IS_KUID_T)
-    /* In this case, uid and gid are specified relative to
-     * current_cred() */
-    return key_alloc(type, desc,
-                    from_kuid(afs_current_user_ns(), uid),
-                    from_guid(afs_current_user_ns(), gid),
-                    current_cred(), perm, flags);
 # elif defined(KEY_ALLOC_NEEDS_CRED)
     return key_alloc(type, desc, uid, gid, current_cred(), perm, flags);
 # else
index 5508a69fd171280d6df0c0d298befd4c49e767a2..b068af5a1022a00aed37dca38df183c7e5149f6c 100644 (file)
@@ -375,18 +375,6 @@ AC_DEFUN([LINUX_KEY_ALLOC_NEEDS_CRED], [
 ])
 
 
-AC_DEFUN([LINUX_STRUCT_KEY_UID_IS_KUID_T], [
-  AC_CHECK_LINUX_BUILD([if struct key.uid is kuid_t],
-                       [ac_cv_struct_key_uid_is_kuid_t],
-                       [#include <linux/rwsem.h>
-                       #include <linux/key.h>],
-                       [struct key k = {};
-                       kuid_t *kuid = &k.uid;],
-                       [STRUCT_KEY_UID_IS_KUID_T],
-                       [define if struct key.uid is kuid_t])
-])
-
-
 AC_DEFUN([LINUX_INIT_WORK_HAS_DATA], [
   AC_CHECK_LINUX_BUILD([whether INIT_WORK has a _data argument],
                       [ac_cv_linux_init_work_has_data],