summaryrefslogtreecommitdiff
path: root/ssh-agent.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2008-06-30 00:05:48 +1000
committerDamien Miller <djm@mindrot.org>2008-06-30 00:05:48 +1000
commit471db5c2eb4c25b9e7c9257e811b07067ef731a4 (patch)
tree4f265ad36a0202a9b54c117c3a3a253c1a86f6cf /ssh-agent.c
parent1cfadabc0e84551a3caa87c24cba6a0f2db43945 (diff)
- djm@cvs.openbsd.org 2008/06/28 14:05:15
[ssh-agent.c] reset global compat flag after processing a protocol 2 signature request with the legacy DSA encoding flag set; ok markus
Diffstat (limited to 'ssh-agent.c')
-rw-r--r--ssh-agent.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/ssh-agent.c b/ssh-agent.c
index 8f9e2e8ce..b1c65fab6 100644
--- a/ssh-agent.c
+++ b/ssh-agent.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssh-agent.c,v 1.158 2008/06/28 13:58:23 djm Exp $ */ 1/* $OpenBSD: ssh-agent.c,v 1.159 2008/06/28 14:05:15 djm Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -312,6 +312,7 @@ process_sign_request2(SocketEntry *e)
312 u_char *blob, *data, *signature = NULL; 312 u_char *blob, *data, *signature = NULL;
313 u_int blen, dlen, slen = 0; 313 u_int blen, dlen, slen = 0;
314 extern int datafellows; 314 extern int datafellows;
315 int odatafellows;
315 int ok = -1, flags; 316 int ok = -1, flags;
316 Buffer msg; 317 Buffer msg;
317 Key *key; 318 Key *key;
@@ -322,6 +323,7 @@ process_sign_request2(SocketEntry *e)
322 data = buffer_get_string(&e->request, &dlen); 323 data = buffer_get_string(&e->request, &dlen);
323 324
324 flags = buffer_get_int(&e->request); 325 flags = buffer_get_int(&e->request);
326 odatafellows = datafellows;
325 if (flags & SSH_AGENT_OLD_SIGNATURE) 327 if (flags & SSH_AGENT_OLD_SIGNATURE)
326 datafellows = SSH_BUG_SIGBLOB; 328 datafellows = SSH_BUG_SIGBLOB;
327 329
@@ -347,6 +349,7 @@ process_sign_request2(SocketEntry *e)
347 xfree(blob); 349 xfree(blob);
348 if (signature != NULL) 350 if (signature != NULL)
349 xfree(signature); 351 xfree(signature);
352 datafellows = odatafellows;
350} 353}
351 354
352/* shared */ 355/* shared */