setuid(0) before calling krb_kuserok()

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@4171 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Johan Danielsson
1997-12-08 23:34:23 +00:00
parent 970c137f3a
commit cc4a9f5f80

View File

@@ -221,8 +221,7 @@ common_auth(sia_collect_func_t *collect,
#else #else
ouid = getuid(); ouid = getuid();
#endif #endif
if(getpwuid_r(ouid, &fpw, if(getpwuid_r(ouid, &fpw, fpwbuf, sizeof(fpwbuf), &fpwd) != 0)
fpwbuf, sizeof(fpwbuf), &fpwd) != 0)
return SIADFAIL; return SIADFAIL;
snprintf(s->ticket, sizeof(s->ticket), TKT_ROOT "_%s_to_%s_%d", snprintf(s->ticket, sizeof(s->ticket), TKT_ROOT "_%s_to_%s_%d",
fpwd->pw_name, pwd->pw_name, getpid()); fpwd->pw_name, pwd->pw_name, getpid());
@@ -234,6 +233,7 @@ common_auth(sia_collect_func_t *collect,
krb_set_tkt_string(s->ticket); krb_set_tkt_string(s->ticket);
setuid(0); /* XXX fix for fix in tf_util.c */
if(krb_kuserok(toname, toinst, realm, entity->name)) if(krb_kuserok(toname, toinst, realm, entity->name))
return SIADFAIL; return SIADFAIL;
ret = krb_verify_user(toname, toinst, realm, ret = krb_verify_user(toname, toinst, realm,