]> andersk Git - openssh.git/blobdiff - auth-krb5.c
- (tim) [configure.ac] Autoconf didn't define HAVE_LIBIAF because we
[openssh.git] / auth-krb5.c
index 6ae4f5fc4a32df682f85c142d728c6e2570d217e..8682881262173fd528748af232d58e5e3afaa6a1 100644 (file)
@@ -1,3 +1,4 @@
+/* $OpenBSD: auth-krb5.c,v 1.19 2006/08/03 03:34:41 deraadt Exp $ */
 /*
  *    Kerberos v5 authentication and ticket-passing routines.
  *
  */
 
 #include "includes.h"
-RCSID("$OpenBSD: auth-krb5.c,v 1.15 2003/11/21 11:57:02 djm Exp $");
 
+#include <sys/types.h>
+#include <pwd.h>
+#include <stdarg.h>
+
+#include "xmalloc.h"
 #include "ssh.h"
 #include "ssh1.h"
 #include "packet.h"
-#include "xmalloc.h"
 #include "log.h"
+#include "buffer.h"
 #include "servconf.h"
 #include "uidswap.h"
+#include "key.h"
+#include "hostfile.h"
 #include "auth.h"
 
 #ifdef KRB5
+#include <errno.h>
+#include <unistd.h>
+#include <string.h>
 #include <krb5.h>
 
 extern ServerOptions    options;
@@ -54,9 +64,6 @@ krb5_init(void *context)
                problem = krb5_init_context(&authctxt->krb5_ctx);
                if (problem)
                        return (problem);
-#ifdef KRB5_INIT_ETS
-               krb5_init_ets(authctxt->krb5_ctx);
-#endif
        }
        return (0);
 }
@@ -72,9 +79,6 @@ auth_krb5_password(Authctxt *authctxt, const char *password)
        krb5_ccache ccache = NULL;
        int len;
 
-       if (!authctxt->valid)
-               return (0);
-
        temporarily_use_uid(authctxt->pw);
 
        problem = krb5_init(authctxt);
@@ -191,7 +195,7 @@ auth_krb5_password(Authctxt *authctxt, const char *password)
                else
                        return (0);
        }
-       return (1);
+       return (authctxt->valid ? 1 : 0);
 }
 
 void
@@ -221,7 +225,7 @@ ssh_krb5_cc_gen(krb5_context ctx, krb5_ccache *ccache) {
 
        ret = snprintf(ccname, sizeof(ccname),
            "FILE:/tmp/krb5cc_%d_XXXXXXXXXX", geteuid());
-       if (ret == -1 || ret >= sizeof(ccname))
+       if (ret < 0 || (size_t)ret >= sizeof(ccname))
                return ENOMEM;
 
        old_umask = umask(0177);
This page took 0.034222 seconds and 4 git commands to generate.