diff options
| author | Theodore Tso <tytso@mit.edu> | 1993-12-01 22:14:09 +0000 |
|---|---|---|
| committer | Theodore Tso <tytso@mit.edu> | 1993-12-01 22:14:09 +0000 |
| commit | 6b50ce396e5dfcf7b4b8c169ca076485ac256466 (patch) | |
| tree | 1ec3bd591192b37d305c32daaac0e202c51ae5b4 /src/lib | |
| parent | 875c1214865914b338392b9da1890567d2bdff18 (diff) | |
| download | krb5-6b50ce396e5dfcf7b4b8c169ca076485ac256466.tar.gz krb5-6b50ce396e5dfcf7b4b8c169ca076485ac256466.tar.xz krb5-6b50ce396e5dfcf7b4b8c169ca076485ac256466.zip | |
If the select gets an EINTR error, retry with that host immediately, instead
of backing off through the exponential timeout.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@3055 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/krb5/os/sendto_kdc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/krb5/os/sendto_kdc.c b/src/lib/krb5/os/sendto_kdc.c index f8dc24cab..64b964292 100644 --- a/src/lib/krb5/os/sendto_kdc.c +++ b/src/lib/krb5/os/sendto_kdc.c @@ -132,6 +132,7 @@ OLDDECLARG(krb5_data *, reply) if (send(socklist[addr[host].sa_family], message->data, message->length, 0) != message->length) continue; + retry: waitlen.tv_usec = 0; waitlen.tv_sec = timeout; FD_ZERO(&readable); @@ -143,7 +144,7 @@ OLDDECLARG(krb5_data *, reply) &waitlen)) { if (nready == -1) { if (errno == EINTR) - continue; + goto retry; retval = errno; goto out; } |
