summaryrefslogtreecommitdiff
path: root/compat.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2000-05-09 11:02:59 +1000
committerDamien Miller <djm@mindrot.org>2000-05-09 11:02:59 +1000
commit30c3d429306bb4afe71c18db92816b981f7b6d9d (patch)
treea65f45e0073cb55ad42957a36b4636ff21405108 /compat.c
parent61e50f10c276009bf9472fdd797bf6be60fc2a83 (diff)
- OpenBSD CVS update
- markus@cvs.openbsd.org [cipher.h myproposal.h readconf.c readconf.h servconf.c ssh.1 ssh.c] [ssh.h sshconnect1.c sshconnect2.c sshd.8] - complain about invalid ciphers in SSH1 (e.g. arcfour is SSH2 only) - hugh@cvs.openbsd.org [ssh.1] - zap typo [ssh-keygen.1] - One last nit fix. (markus approved) [sshd.8] - some markus certified spelling adjustments - markus@cvs.openbsd.org [auth2.c channels.c clientloop.c compat compat.h dsa.c kex.c] [sshconnect2.c ] - bug compat w/ ssh-2.0.13 x11, split out bugs [nchan.c] - no drain if ibuf_empty, fixes x11fwd problems; tests by fries@ [ssh-keygen.c] - handle escapes in real and original key format, ok millert@ [version.h] - OpenSSH-2.1
Diffstat (limited to 'compat.c')
-rw-r--r--compat.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/compat.c b/compat.c
index 3bf45c122..00f031b8b 100644
--- a/compat.c
+++ b/compat.c
@@ -28,7 +28,7 @@
28 */ 28 */
29 29
30#include "includes.h" 30#include "includes.h"
31RCSID("$Id: compat.c,v 1.9 2000/04/29 13:57:10 damien Exp $"); 31RCSID("$Id: compat.c,v 1.10 2000/05/09 01:03:00 damien Exp $");
32 32
33#include "ssh.h" 33#include "ssh.h"
34#include "packet.h" 34#include "packet.h"
@@ -57,17 +57,20 @@ compat_datafellows(const char *version)
57{ 57{
58 int i; 58 int i;
59 size_t len; 59 size_t len;
60 static const char *check[] = { 60 struct {
61 "2.0.1", 61 char *version;
62 "2.1.0", 62 int bugs;
63 NULL 63 } check[] = {
64 {"2.1.0", SSH_BUG_SIGBLOB|SSH_BUG_HMAC},
65 {"2.0.1", SSH_BUG_SIGBLOB|SSH_BUG_HMAC|SSH_BUG_PUBKEYAUTH|SSH_BUG_X11FWD},
66 {NULL, 0}
64 }; 67 };
65 for (i = 0; check[i]; i++) { 68 for (i = 0; check[i].version; i++) {
66 len = strlen(check[i]); 69 len = strlen(check[i].version);
67 if (strlen(version) >= len && 70 if (strlen(version) >= len &&
68 (strncmp(version, check[i], len) == 0)) { 71 (strncmp(version, check[i].version, len) == 0)) {
69 verbose("datafellows: %.200s", version); 72 verbose("datafellows: %.200s", version);
70 datafellows = 1; 73 datafellows = check[i].bugs;
71 return; 74 return;
72 } 75 }
73 } 76 }