mirror of https://gitee.com/openkylin/linux.git
0ddc942394
I think this is unlikely but possible: svc_authenticate sets rq_authop and calls svcauth_gss_accept. The kmalloc(sizeof(*svcdata), GFP_KERNEL) fails, leaving rq_auth_data NULL, and returning SVC_DENIED. This causes svc_process_common to go to err_bad_auth, and eventually call svc_authorise. That calls ->release == svcauth_gss_release, which tries to dereference rq_auth_data. Signed-off-by: J. Bruce Fields <bfields@redhat.com> Link: https://lore.kernel.org/linux-nfs/3F1B347F-B809-478F-A1E9-0BE98E22B0F0@oracle.com/T/#t Signed-off-by: Chuck Lever <chuck.lever@oracle.com> |
||
---|---|---|
.. | ||
Makefile | ||
auth_gss.c | ||
auth_gss_internal.h | ||
gss_generic_token.c | ||
gss_krb5_crypto.c | ||
gss_krb5_keys.c | ||
gss_krb5_mech.c | ||
gss_krb5_seal.c | ||
gss_krb5_seqnum.c | ||
gss_krb5_unseal.c | ||
gss_krb5_wrap.c | ||
gss_mech_switch.c | ||
gss_rpc_upcall.c | ||
gss_rpc_upcall.h | ||
gss_rpc_xdr.c | ||
gss_rpc_xdr.h | ||
svcauth_gss.c | ||
trace.c |