sunrpc/auth_gss: fix decoder callback prototypes
authorChristoph Hellwig <hch@lst.de>
Mon, 8 May 2017 13:03:02 +0000 (15:03 +0200)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Thu, 13 Jul 2017 19:57:55 +0000 (15:57 -0400)
Declare the p_decode callbacks with the proper prototype instead of
casting to kxdrdproc_t and losing all type safety.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Acked-by: Trond Myklebust <trond.myklebust@primarydata.com>
net/sunrpc/auth_gss/gss_rpc_upcall.c
net/sunrpc/auth_gss/gss_rpc_xdr.c
net/sunrpc/auth_gss/gss_rpc_xdr.h

index 45ab924..a80b8e6 100644 (file)
@@ -56,7 +56,7 @@ enum {
 [GSSX_##proc] = {                                      \
        .p_proc   = GSSX_##proc,                        \
        .p_encode = gssx_enc_##name,    \
-       .p_decode = (kxdrdproc_t)gssx_dec_##name,       \
+       .p_decode = gssx_dec_##name,    \
        .p_arglen = GSSX_ARG_##name##_sz,               \
        .p_replen = GSSX_RES_##name##_sz,               \
        .p_statidx = GSSX_##proc,                       \
index 5e54f47..c4778ca 100644 (file)
@@ -790,8 +790,9 @@ done:
 
 int gssx_dec_accept_sec_context(struct rpc_rqst *rqstp,
                                struct xdr_stream *xdr,
-                               struct gssx_res_accept_sec_context *res)
+                               void *data)
 {
+       struct gssx_res_accept_sec_context *res = data;
        u32 value_follows;
        int err;
        struct page *scratch;
index 87cd719..146c310 100644 (file)
@@ -182,7 +182,7 @@ void gssx_enc_accept_sec_context(struct rpc_rqst *req,
                                 const void *data);
 int gssx_dec_accept_sec_context(struct rpc_rqst *rqstp,
                                struct xdr_stream *xdr,
-                               struct gssx_res_accept_sec_context *res);
+                               void *data);
 #define gssx_enc_release_handle NULL
 #define gssx_dec_release_handle NULL
 #define gssx_enc_get_mic NULL