diff options
-rw-r--r-- | auth1.c | 14 | ||||
-rw-r--r-- | compat.c | 10 | ||||
-rw-r--r-- | compat.h | 3 |
3 files changed, 19 insertions, 8 deletions
@@ -10,7 +10,7 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | #include "includes.h" | 12 | #include "includes.h" |
13 | RCSID("$OpenBSD: auth1.c,v 1.39 2002/03/19 14:27:39 markus Exp $"); | 13 | RCSID("$OpenBSD: auth1.c,v 1.40 2002/04/10 08:21:47 markus Exp $"); |
14 | 14 | ||
15 | #include "xmalloc.h" | 15 | #include "xmalloc.h" |
16 | #include "rsa.h" | 16 | #include "rsa.h" |
@@ -345,7 +345,7 @@ do_authentication(void) | |||
345 | { | 345 | { |
346 | Authctxt *authctxt; | 346 | Authctxt *authctxt; |
347 | u_int ulen; | 347 | u_int ulen; |
348 | char *p, *user, *style = NULL; | 348 | char *user, *style = NULL; |
349 | 349 | ||
350 | /* Get the name of the user that we wish to log in as. */ | 350 | /* Get the name of the user that we wish to log in as. */ |
351 | packet_read_expect(SSH_CMSG_USER); | 351 | packet_read_expect(SSH_CMSG_USER); |
@@ -357,9 +357,15 @@ do_authentication(void) | |||
357 | if ((style = strchr(user, ':')) != NULL) | 357 | if ((style = strchr(user, ':')) != NULL) |
358 | *style++ = '\0'; | 358 | *style++ = '\0'; |
359 | 359 | ||
360 | #ifdef KRB5 | ||
360 | /* XXX - SSH.com Kerberos v5 braindeath. */ | 361 | /* XXX - SSH.com Kerberos v5 braindeath. */ |
361 | if ((p = strchr(user, '@')) != NULL) | 362 | if ((datafellows & SSH_BUG_K5USER) && |
362 | *p = '\0'; | 363 | options.kerberos_authentication) { |
364 | char *p; | ||
365 | if ((p = strchr(user, '@')) != NULL) | ||
366 | *p = '\0'; | ||
367 | } | ||
368 | #endif | ||
363 | 369 | ||
364 | authctxt = authctxt_new(); | 370 | authctxt = authctxt_new(); |
365 | authctxt->user = user; | 371 | authctxt->user = user; |
@@ -23,7 +23,7 @@ | |||
23 | */ | 23 | */ |
24 | 24 | ||
25 | #include "includes.h" | 25 | #include "includes.h" |
26 | RCSID("$OpenBSD: compat.c,v 1.62 2002/03/25 21:13:51 markus Exp $"); | 26 | RCSID("$OpenBSD: compat.c,v 1.63 2002/04/10 08:21:47 markus Exp $"); |
27 | 27 | ||
28 | #include "buffer.h" | 28 | #include "buffer.h" |
29 | #include "packet.h" | 29 | #include "packet.h" |
@@ -127,8 +127,12 @@ compat_datafellows(const char *version) | |||
127 | "1.2.19*," | 127 | "1.2.19*," |
128 | "1.2.20*," | 128 | "1.2.20*," |
129 | "1.2.21*," | 129 | "1.2.21*," |
130 | "1.2.22*", SSH_BUG_IGNOREMSG }, | 130 | "1.2.22*", SSH_BUG_IGNOREMSG|SSH_BUG_K5USER }, |
131 | { "1.3.2*", SSH_BUG_IGNOREMSG }, /* f-secure */ | 131 | { "1.3.2*", /* F-Secure */ |
132 | SSH_BUG_IGNOREMSG|SSH_BUG_K5USER }, | ||
133 | { "1.2.1*," | ||
134 | "1.2.2*," | ||
135 | "1.2.3*", SSH_BUG_K5USER }, | ||
132 | { "*SSH Compatible Server*", /* Netscreen */ | 136 | { "*SSH Compatible Server*", /* Netscreen */ |
133 | SSH_BUG_PASSWORDPAD }, | 137 | SSH_BUG_PASSWORDPAD }, |
134 | { "*OSU_0*," | 138 | { "*OSU_0*," |
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: compat.h,v 1.31 2002/03/25 21:13:51 markus Exp $ */ | 1 | /* $OpenBSD: compat.h,v 1.32 2002/04/10 08:21:47 markus Exp $ */ |
2 | 2 | ||
3 | /* | 3 | /* |
4 | * Copyright (c) 1999, 2000, 2001 Markus Friedl. All rights reserved. | 4 | * Copyright (c) 1999, 2000, 2001 Markus Friedl. All rights reserved. |
@@ -53,6 +53,7 @@ | |||
53 | #define SSH_BUG_DERIVEKEY 0x00040000 | 53 | #define SSH_BUG_DERIVEKEY 0x00040000 |
54 | #define SSH_BUG_DUMMYCHAN 0x00100000 | 54 | #define SSH_BUG_DUMMYCHAN 0x00100000 |
55 | #define SSH_BUG_EXTEOF 0x00200000 | 55 | #define SSH_BUG_EXTEOF 0x00200000 |
56 | #define SSH_BUG_K5USER 0x00400000 | ||
56 | 57 | ||
57 | void enable_compat13(void); | 58 | void enable_compat13(void); |
58 | void enable_compat20(void); | 59 | void enable_compat20(void); |