summaryrefslogtreecommitdiffstats
path: root/utils/gssd/gssd.c
diff options
context:
space:
mode:
authorAndy Adamson <andros@netapp.com>2015-09-23 15:52:15 -0400
committerSteve Dickson <steved@redhat.com>2015-09-23 17:12:53 -0400
commit30c37b2dd6decdd65a33b956a5ae4b548de63a6d (patch)
tree32af4a76026c64443642f7e86bca413a140d31c4 /utils/gssd/gssd.c
parentcbe19a1d34d4d13f41337047da26ec1ef82ed44c (diff)
downloadnfs-utils-30c37b2dd6decdd65a33b956a5ae4b548de63a6d.tar.gz
nfs-utils-30c37b2dd6decdd65a33b956a5ae4b548de63a6d.tar.xz
nfs-utils-30c37b2dd6decdd65a33b956a5ae4b548de63a6d.zip
GSSD only fork when uid is not zero
commit f9cac65972da588d5218236de60a7be11247a8aa added the fork to process_krb5_upcall so that the child assumes the uid of the principal requesting service. When machine credentials are used, a gssd_k5_kt_princ entry is added to a global list and used by future upcalls to note when valid machine credentials have been obtained. When a child process performs this task, the entry to the global list is lost upon exit, and all upcalls for machine credentials re-fetch a TGT, even when a valid TGT is in the machine kerberos credential cache. Since forking is not necessary when the principal has uid=0, solve the gssd_k5_kt_princ_list issue by only forking when the uid != 0. Acked-by: Jeff Layton <jlayton@poochiereds.net> Signed-off-by: Andy Adamson <andros@netapp.com> Signed-off-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'utils/gssd/gssd.c')
0 files changed, 0 insertions, 0 deletions