projects
/
krb5.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
183a4d7
)
If select returns EINTR, recompute the expiration time and call it again
author
Ken Raeburn
<raeburn@mit.edu>
Fri, 13 Apr 2007 04:22:14 +0000
(
04:22
+0000)
committer
Ken Raeburn
<raeburn@mit.edu>
Fri, 13 Apr 2007 04:22:14 +0000
(
04:22
+0000)
ticket: 5440
status: open
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@19452
dc483132
-0cff-0310-8789-
dd5450dbe970
src/lib/krb5/os/sendto_kdc.c
patch
|
blob
|
history
diff --git
a/src/lib/krb5/os/sendto_kdc.c
b/src/lib/krb5/os/sendto_kdc.c
index 78bb419bdd22bb397b365b6c86b4b65081df1ebd..b133ec7d22376a0b4a1a5ed2aeef4d95bf5c8915 100644
(file)
--- a/
src/lib/krb5/os/sendto_kdc.c
+++ b/
src/lib/krb5/os/sendto_kdc.c
@@
-497,6
+497,7
@@
krb5int_cm_call_select (const struct select_state *in,
e = getcurtime(&now);
if (e)
return e;
+try_again:
if (out->end_time.tv_sec == 0)
timo = 0;
else {
@@
-527,8
+528,11
@@
krb5int_cm_call_select (const struct select_state *in,
else
dprint(":%F\n", &out->rfds, &out->wfds, &out->xfds, out->max);
- if (*sret < 0)
+ if (*sret < 0) {
+ if (e == EINTR)
+ goto try_again;
return e;
+ }
return 0;
}