svcrpc: set cr_gss_mech from gss-proxy as well as legacy upcall
The change made to rsc_parse() in
0dc1531aca
"svcrpc: store gss mech in
svc_cred" should also have been propagated to the gss-proxy codepath.
This fixes a crash in the gss-proxy case.
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
743e217129
commit
7193bd17ea
|
@ -1180,6 +1180,7 @@ static int gss_proxy_save_rsc(struct cache_detail *cd,
|
||||||
gm = gss_mech_get_by_OID(&ud->mech_oid);
|
gm = gss_mech_get_by_OID(&ud->mech_oid);
|
||||||
if (!gm)
|
if (!gm)
|
||||||
goto out;
|
goto out;
|
||||||
|
rsci.cred.cr_gss_mech = gm;
|
||||||
|
|
||||||
status = -EINVAL;
|
status = -EINVAL;
|
||||||
/* mech-specific data: */
|
/* mech-specific data: */
|
||||||
|
@ -1195,7 +1196,6 @@ static int gss_proxy_save_rsc(struct cache_detail *cd,
|
||||||
rscp = rsc_update(cd, &rsci, rscp);
|
rscp = rsc_update(cd, &rsci, rscp);
|
||||||
status = 0;
|
status = 0;
|
||||||
out:
|
out:
|
||||||
gss_mech_put(gm);
|
|
||||||
rsc_free(&rsci);
|
rsc_free(&rsci);
|
||||||
if (rscp)
|
if (rscp)
|
||||||
cache_put(&rscp->h, cd);
|
cache_put(&rscp->h, cd);
|
||||||
|
|
Loading…
Reference in a new issue