summaryrefslogtreecommitdiff
path: root/sshconnect.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2006-10-24 03:02:23 +1000
committerDamien Miller <djm@mindrot.org>2006-10-24 03:02:23 +1000
commitf4bcd10c4c9b53e7c0c2821825addaf3a13d7c1a (patch)
treef5057a64ea7acfc62d45457ec820ad7c042989b0 /sshconnect.c
parent990b1a80b59eb52ae401ed28b0e3a4d5a0963661 (diff)
- markus@cvs.openbsd.org 2006/10/10 10:12:45
[sshconnect.c] sleep before retrying (not after) since sleep changes errno; fixes pr 5250; rad@twig.com; ok dtucker djm
Diffstat (limited to 'sshconnect.c')
-rw-r--r--sshconnect.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/sshconnect.c b/sshconnect.c
index a7a4e8a96..a222233d0 100644
--- a/sshconnect.c
+++ b/sshconnect.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: sshconnect.c,v 1.199 2006/08/03 03:34:42 deraadt Exp $ */ 1/* $OpenBSD: sshconnect.c,v 1.200 2006/10/10 10:12:45 markus 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
@@ -324,9 +324,11 @@ ssh_connect(const char *host, struct sockaddr_storage * hostaddr,
324 gai_strerror(gaierr)); 324 gai_strerror(gaierr));
325 325
326 for (attempt = 0; attempt < connection_attempts; attempt++) { 326 for (attempt = 0; attempt < connection_attempts; attempt++) {
327 if (attempt > 0) 327 if (attempt > 0) {
328 /* Sleep a moment before retrying. */
329 sleep(1);
328 debug("Trying again..."); 330 debug("Trying again...");
329 331 }
330 /* 332 /*
331 * Loop through addresses for this host, and try each one in 333 * Loop through addresses for this host, and try each one in
332 * sequence until the connection succeeds. 334 * sequence until the connection succeeds.
@@ -363,9 +365,6 @@ ssh_connect(const char *host, struct sockaddr_storage * hostaddr,
363 } 365 }
364 if (sock != -1) 366 if (sock != -1)
365 break; /* Successful connection. */ 367 break; /* Successful connection. */
366
367 /* Sleep a moment before retrying. */
368 sleep(1);
369 } 368 }
370 369
371 freeaddrinfo(aitop); 370 freeaddrinfo(aitop);