Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0979292b authored by J. Bruce Fields's avatar J. Bruce Fields
Browse files

svcrpc: fix failures to handle -1 uid's



As of f025adf1 "sunrpc: Properly decode
kuids and kgids in RPC_AUTH_UNIX credentials" any rpc containing a -1
(0xffff) uid or gid would fail with a badcred error.

Commit afe3c3fd "svcrpc: fix failures to
handle -1 uid's and gid's" fixed part of the problem, but overlooked the
gid upcall--the kernel can request supplementary gid's for the -1 uid,
but mountd's attempt write a response will get -EINVAL.

Symptoms were nfsd failing to reply to the first attempt to use a newly
negotiated krb5 context.

Reported-by: default avatarSven Geggus <lists@fuchsschwanzdomain.de>
Tested-by: default avatarSven Geggus <lists@fuchsschwanzdomain.de>
Cc: stable@vger.kernel.org
Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
parent 0bebc633
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -493,8 +493,6 @@ static int unix_gid_parse(struct cache_detail *cd,
	if (rv)
		return -EINVAL;
	uid = make_kuid(&init_user_ns, id);
	if (!uid_valid(uid))
		return -EINVAL;
	ug.uid = uid;

	expiry = get_expiry(&mesg);