]> git.karo-electronics.de Git - karo-tx-linux.git/commit
RxRPC: Fix v1 keys
authorAnton Blanchard <anton@au1.ibm.com>
Mon, 28 Feb 2011 03:27:53 +0000 (03:27 +0000)
committerAK <andi@firstfloor.org>
Thu, 31 Mar 2011 18:58:19 +0000 (11:58 -0700)
commitd97f1cbed8f5b7aaf11a51d7bd5e4674f3d822c4
treefcfc02e1efb13c36ce016f94d3373d4ee1113bfb
parent4e6c91302a8e7073d69adca8100a1f7361050f6f
RxRPC: Fix v1 keys

commit f009918a1c1bbf8607b8aab3959876913a30193a upstream.

commit 339412841d7 (RxRPC: Allow key payloads to be passed in XDR form)
broke klog for me. I notice the v1 key struct had a kif_version field
added:

-struct rxkad_key {
-       u16     security_index;         /* RxRPC header security index */
-       u16     ticket_len;             /* length of ticket[] */
-       u32     expiry;                 /* time at which expires */
-       u32     kvno;                   /* key version number */
-       u8      session_key[8];         /* DES session key */
-       u8      ticket[0];              /* the encrypted ticket */
-};

+struct rxrpc_key_data_v1 {
+       u32             kif_version;            /* 1 */
+       u16             security_index;
+       u16             ticket_length;
+       u32             expiry;                 /* time_t */
+       u32             kvno;
+       u8              session_key[8];
+       u8              ticket[0];
+};

However the code in rxrpc_instantiate strips it away:

data += sizeof(kver);
datalen -= sizeof(kver);

Removing kif_version fixes my problem.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
include/keys/rxrpc-type.h