diff options
| author | Chuck Lever <chuck.lever@oracle.com> | 2026-04-27 09:50:56 -0400 |
|---|---|---|
| committer | Chuck Lever <chuck.lever@oracle.com> | 2026-05-28 11:31:26 -0400 |
| commit | fecac367b089be86ba241e66a54a0a74e9316823 (patch) | |
| tree | 158683dde9bbcb21c80295d7f5a89a63dc3d730a /net | |
| parent | 81089e434b3258cac2988107b977d3e951d833e9 (diff) | |
| download | linux-next-history-fecac367b089be86ba241e66a54a0a74e9316823.tar.gz | |
SUNRPC: Remove wrap/unwrap function pointers from enctype table
Every enctype points .wrap and .unwrap at gss_krb5_wrap_v2()
and gss_krb5_unwrap_v2(). As with get_mic/verify_mic, the
indirection dates from when v1 enctypes had different wrap
implementations. Call the functions directly and remove the
pointers from struct gss_krb5_enctype.
Assisted-by: Claude:claude-opus-4-6
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Acked-by: Anna Schumaker <anna.schumaker@hammerspace.com>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Diffstat (limited to 'net')
| -rw-r--r-- | net/sunrpc/auth_gss/gss_krb5_internal.h | 5 | ||||
| -rw-r--r-- | net/sunrpc/auth_gss/gss_krb5_mech.c | 18 |
2 files changed, 2 insertions, 21 deletions
diff --git a/net/sunrpc/auth_gss/gss_krb5_internal.h b/net/sunrpc/auth_gss/gss_krb5_internal.h index a63f8d465b63e..92b0baed920ce 100644 --- a/net/sunrpc/auth_gss/gss_krb5_internal.h +++ b/net/sunrpc/auth_gss/gss_krb5_internal.h @@ -44,11 +44,6 @@ struct gss_krb5_enctype { struct xdr_buf *buf, struct page **pages); u32 (*decrypt)(struct krb5_ctx *kctx, u32 offset, u32 len, struct xdr_buf *buf, u32 *headskip, u32 *tailskip); - u32 (*wrap)(struct krb5_ctx *kctx, int offset, - struct xdr_buf *buf, struct page **pages); - u32 (*unwrap)(struct krb5_ctx *kctx, int offset, int len, - struct xdr_buf *buf, unsigned int *slack, - unsigned int *align); }; /* krb5_ctx flags definitions */ diff --git a/net/sunrpc/auth_gss/gss_krb5_mech.c b/net/sunrpc/auth_gss/gss_krb5_mech.c index 511e19e0e7863..d027ddab132f7 100644 --- a/net/sunrpc/auth_gss/gss_krb5_mech.c +++ b/net/sunrpc/auth_gss/gss_krb5_mech.c @@ -46,9 +46,6 @@ static const struct gss_krb5_enctype supported_gss_krb5_enctypes[] = { .encrypt = gss_krb5_aead_encrypt, .decrypt = gss_krb5_aead_decrypt, - .wrap = gss_krb5_wrap_v2, - .unwrap = gss_krb5_unwrap_v2, - .signalg = -1, .sealalg = -1, .keybytes = 16, @@ -73,9 +70,6 @@ static const struct gss_krb5_enctype supported_gss_krb5_enctypes[] = { .encrypt = gss_krb5_aead_encrypt, .decrypt = gss_krb5_aead_decrypt, - .wrap = gss_krb5_wrap_v2, - .unwrap = gss_krb5_unwrap_v2, - .signalg = -1, .sealalg = -1, .keybytes = 32, @@ -110,8 +104,6 @@ static const struct gss_krb5_enctype supported_gss_krb5_enctypes[] = { .encrypt = gss_krb5_aead_encrypt, .decrypt = gss_krb5_aead_decrypt, - .wrap = gss_krb5_wrap_v2, - .unwrap = gss_krb5_unwrap_v2, }, /* * Camellia-256 with CMAC (RFC 6803) @@ -134,8 +126,6 @@ static const struct gss_krb5_enctype supported_gss_krb5_enctypes[] = { .encrypt = gss_krb5_aead_encrypt, .decrypt = gss_krb5_aead_decrypt, - .wrap = gss_krb5_wrap_v2, - .unwrap = gss_krb5_unwrap_v2, }, #endif @@ -161,8 +151,6 @@ static const struct gss_krb5_enctype supported_gss_krb5_enctypes[] = { .encrypt = gss_krb5_aead_encrypt, .decrypt = gss_krb5_aead_decrypt, - .wrap = gss_krb5_wrap_v2, - .unwrap = gss_krb5_unwrap_v2, }, /* * AES-256 with SHA-384 (RFC 8009) @@ -185,8 +173,6 @@ static const struct gss_krb5_enctype supported_gss_krb5_enctypes[] = { .encrypt = gss_krb5_aead_encrypt, .decrypt = gss_krb5_aead_decrypt, - .wrap = gss_krb5_wrap_v2, - .unwrap = gss_krb5_unwrap_v2, }, #endif }; @@ -631,7 +617,7 @@ static u32 gss_krb5_wrap(struct gss_ctx *gctx, int offset, { struct krb5_ctx *kctx = gctx->internal_ctx_id; - return kctx->gk5e->wrap(kctx, offset, buf, pages); + return gss_krb5_wrap_v2(kctx, offset, buf, pages); } /** @@ -653,7 +639,7 @@ static u32 gss_krb5_unwrap(struct gss_ctx *gctx, int offset, { struct krb5_ctx *kctx = gctx->internal_ctx_id; - return kctx->gk5e->unwrap(kctx, offset, len, buf, + return gss_krb5_unwrap_v2(kctx, offset, len, buf, &gctx->slack, &gctx->align); } |
