rpc.gssd truncates 32-bit UIDs/GIDs to 16 bits, leading to "Key has expired" errors when using kerberos
Bug #1779962 reported by
Sree
This bug affects 3 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
nfs-utils (Ubuntu) |
Fix Released
|
Undecided
|
Adam Conrad | ||
Bionic |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
utils/gssd_proc.c uses SYS_setresuid and SYS_setresgid in change_identity when it should use SYS_setresuid32 and SYS_setresgid32 instead. This causes it to truncate UIDs/GIDs > 65536.
Symptoms: rpc.gssd is unable to read kerberos credentials files after changing identity, failing with a cryptic error message:
CC 'FILE:/
(note the UID 100001 here, rpc.gssd was actually using UID 34465 to access this file, and failing in krb5_util.c when calling krb5_cc_
The attached patch fixes the bug.
I'm using Ubuntu 18.04 LTS on an Odroid XU4 (armhf). This bug does not exist in Ubuntu 16.04 LTS.
tags: | added: id-5bbd0cbaade2f22d9608ca95 |
Changed in nfs-utils (Ubuntu): | |
status: | Confirmed → Fix Committed |
assignee: | nobody → Adam Conrad (adconrad) |
To post a comment you must log in.
The attachment "Changes the syscalls to use the 32-bit variants." seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.
[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]