[AF_RXRPC/AFS]: Arch-specific fixes.
David Howells [Fri, 27 Apr 2007 22:28:45 +0000 (15:28 -0700)]
Fixes for various arch compilation problems:

 (*) Missing module exports.

 (*) Variable name collision when rxkad and af_rxrpc both built in
     (rxrpc_debug).

 (*) Large constant representation problem (AFS_UUID_TO_UNIX_TIME).

 (*) Configuration dependencies.

 (*) printk() format warnings.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

arch/ia64/lib/csum_partial_copy.c
fs/Kconfig
fs/afs/internal.h
fs/afs/rxrpc.c
fs/afs/use-rtnetlink.c
net/rxrpc/Kconfig
net/rxrpc/rxkad.c

index 503dfe6..118daf5 100644 (file)
@@ -128,6 +128,8 @@ csum_partial_copy_from_user(const void __user *src, void *dst,
        return (__force __wsum)result;
 }
 
+EXPORT_SYMBOL(csum_partial_copy_from_user);
+
 __wsum
 csum_partial_copy_nocheck(const void *src, void *dst, int len, __wsum sum)
 {
index e33c089..a42f767 100644 (file)
@@ -2020,6 +2020,7 @@ config AFS_FS
        tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
        depends on INET && EXPERIMENTAL
        select AF_RXRPC
+       select KEYS
        help
          If you say Y here, you will get an experimental Andrew File System
          driver. It currently only supports unsecured read-only AFS access.
index 6dd3197..34665f7 100644 (file)
@@ -367,7 +367,7 @@ struct afs_uuid {
        u32             time_low;                       /* low part of timestamp */
        u16             time_mid;                       /* mid part of timestamp */
        u16             time_hi_and_version;            /* high part of timestamp and version  */
-#define AFS_UUID_TO_UNIX_TIME  0x01b21dd213814000
+#define AFS_UUID_TO_UNIX_TIME  0x01b21dd213814000ULL
 #define AFS_UUID_TIMEHI_MASK   0x0fff
 #define AFS_UUID_VERSION_TIME  0x1000  /* time-based UUID */
 #define AFS_UUID_VERSION_NAME  0x3000  /* name-based UUID */
index e7b0473..222c1a3 100644 (file)
@@ -772,7 +772,7 @@ int afs_extract_data(struct afs_call *call, struct sk_buff *skb,
 
        if (call->offset < count) {
                if (last) {
-                       _leave(" = -EBADMSG [%d < %lu]", call->offset, count);
+                       _leave(" = -EBADMSG [%d < %zu]", call->offset, count);
                        return -EBADMSG;
                }
                _leave(" = -EAGAIN");
index 82f0daa..f8991c7 100644 (file)
@@ -243,7 +243,7 @@ static int afs_read_rtm(struct afs_rtm_desc *desc)
                desc->datalen = kernel_recvmsg(desc->nlsock, &msg, iov, 1,
                                               desc->datamax, 0);
                if (desc->datalen < 0) {
-                       _leave(" = %ld [recv]", desc->datalen);
+                       _leave(" = %zd [recv]", desc->datalen);
                        return desc->datalen;
                }
 
index d72380e..8750f6d 100644 (file)
@@ -30,6 +30,11 @@ config AF_RXRPC_DEBUG
 config RXKAD
        tristate "RxRPC Kerberos security"
        depends on AF_RXRPC && KEYS
+       select CRYPTO
+       select CRYPTO_MANAGER
+       select CRYPTO_BLKCIPHER
+       select CRYPTO_PCBC
+       select CRYPTO_FCRYPT
        help
          Provide kerberos 4 and AFS kaserver security handling for AF_RXRPC
          through the use of the key retention service.
index 1eaf529..5ec7051 100644 (file)
@@ -18,6 +18,7 @@
 #include <linux/ctype.h>
 #include <net/sock.h>
 #include <net/af_rxrpc.h>
+#define rxrpc_debug rxkad_debug
 #include "ar-internal.h"
 
 #define RXKAD_VERSION                  2