]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
Check for negative poll timeout in k5_sendto_kdc
authorGreg Hudson <ghudson@mit.edu>
Fri, 25 Jan 2013 18:11:27 +0000 (13:11 -0500)
committerTom Yu <tlyu@mit.edu>
Fri, 22 Feb 2013 22:56:12 +0000 (17:56 -0500)
(cherry picked from commit 74bee54227deb64a41c2e79f57dd2a2c5ea010a3)

ticket: 7578 (new)
version_fixed: 1.10.4
status: resolved

src/lib/krb5/os/sendto_kdc.c

index 63dbcd8f41ef6971f2ba0f29432228c16893cab1..7ee595130115cadcda355c52aa423fdb8cba8d54 100644 (file)
@@ -523,6 +523,10 @@ cm_select_or_poll(const struct select_state *in, struct select_state *out,
             return e;
         timeout = (in->end_time.tv_sec - now.tv_sec) * 1000 +
             (in->end_time.tv_usec - now.tv_usec) / 1000;
+        if (timeout < 0) {
+            *sret = 0;
+            return 0;
+        }
     }
     /* We don't need a separate copy of the selstate for poll, but use one
      * anyone for consistency with the select wrapper. */