diff options
author | Darren Tucker <dtucker@zip.com.au> | 2005-07-07 11:50:20 +1000 |
---|---|---|
committer | Darren Tucker <dtucker@zip.com.au> | 2005-07-07 11:50:20 +1000 |
commit | a916d143a16c59a6bc82df5e1d6b046e17d31848 (patch) | |
tree | e1d10bb44cf7af70845fbb927f2b8ed92e4f1468 /gss-serv-krb5.c | |
parent | f92c0794ec9162f4e0d5291fe58e4fcb5a00f6d3 (diff) | |
download | openssh-git-a916d143a16c59a6bc82df5e1d6b046e17d31848.tar.gz |
- [auth-krb5.c auth.h gss-serv-krb5.c] Move KRB5CCNAME generation for the MIT
Kerberos code path into a common function and expand mkstemp template to be
consistent with the rest of OpenSSH. From sxw at inf.ed.ac.uk, ok djm@
Diffstat (limited to 'gss-serv-krb5.c')
-rw-r--r-- | gss-serv-krb5.c | 32 |
1 files changed, 4 insertions, 28 deletions
diff --git a/gss-serv-krb5.c b/gss-serv-krb5.c index 91d87f79..c642a83f 100644 --- a/gss-serv-krb5.c +++ b/gss-serv-krb5.c @@ -131,34 +131,10 @@ ssh_gssapi_krb5_storecreds(ssh_gssapi_client *client) return; } #else - { - int tmpfd; - char ccname[40]; - mode_t old_umask; - - snprintf(ccname, sizeof(ccname), - "FILE:/tmp/krb5cc_%d_XXXXXX", geteuid()); - - old_umask = umask(0177); - tmpfd = mkstemp(ccname + strlen("FILE:")); - umask(old_umask); - if (tmpfd == -1) { - logit("mkstemp(): %.100s", strerror(errno)); - problem = errno; - return; - } - if (fchmod(tmpfd, S_IRUSR | S_IWUSR) == -1) { - logit("fchmod(): %.100s", strerror(errno)); - close(tmpfd); - problem = errno; - return; - } - close(tmpfd); - if ((problem = krb5_cc_resolve(krb_context, ccname, &ccache))) { - logit("krb5_cc_resolve(): %.100s", - krb5_get_err_text(krb_context, problem)); - return; - } + if ((problem = ssh_krb5_cc_gen(krb_context, &ccache))) { + logit("ssh_krb5_cc_gen(): %.100s", + krb5_get_err_text(krb_context, problem)); + return; } #endif /* #ifdef HEIMDAL */ |