summaryrefslogtreecommitdiffstats
path: root/auth1.c
diff options
context:
space:
mode:
authorBen Lindstrom <mouring@eviladmin.org>2002-04-10 16:22:09 +0000
committerBen Lindstrom <mouring@eviladmin.org>2002-04-10 16:22:09 +0000
commitc8226387944156fdc609d31537bc2f196028d667 (patch)
tree16d478546afc760502beb364af39541c72a21052 /auth1.c
parentb5115eaf804b6137da2ceb58a603b1ec9b93e9af (diff)
- markus@cvs.openbsd.org 2002/04/10 08:21:47
[auth1.c compat.c compat.h] strip '@' from username only for KerbV and known broken clients, bug #204 Don't mind me.. I just commited a changelog with no patch. <sigh>
Diffstat (limited to 'auth1.c')
-rw-r--r--auth1.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/auth1.c b/auth1.c
index 55dbf78f..c2a8936a 100644
--- a/auth1.c
+++ b/auth1.c
@@ -10,7 +10,7 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: auth1.c,v 1.39 2002/03/19 14:27:39 markus Exp $");
+RCSID("$OpenBSD: auth1.c,v 1.40 2002/04/10 08:21:47 markus Exp $");
#include "xmalloc.h"
#include "rsa.h"
@@ -345,7 +345,7 @@ do_authentication(void)
{
Authctxt *authctxt;
u_int ulen;
- char *p, *user, *style = NULL;
+ char *user, *style = NULL;
/* Get the name of the user that we wish to log in as. */
packet_read_expect(SSH_CMSG_USER);
@@ -357,9 +357,15 @@ do_authentication(void)
if ((style = strchr(user, ':')) != NULL)
*style++ = '\0';
+#ifdef KRB5
/* XXX - SSH.com Kerberos v5 braindeath. */
- if ((p = strchr(user, '@')) != NULL)
- *p = '\0';
+ if ((datafellows & SSH_BUG_K5USER) &&
+ options.kerberos_authentication) {
+ char *p;
+ if ((p = strchr(user, '@')) != NULL)
+ *p = '\0';
+ }
+#endif
authctxt = authctxt_new();
authctxt->user = user;