← Commit list

7c67f1e9a

Denys Vlasenko
Denys Vlasenko
2017-02-17
SUCCESS Duration: 236s

Subject

udhcpc: make sure we do not overflow poll timeout

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

networking/udhcp/d6_dhcpc.c+1 -1
@@ -1085,7 +1085,7 @@ int udhcpc6_main(int argc UNUSED_PARAM, char **argv)
if (tv > 0) {
log1("waiting on select %u seconds", tv);
timestamp_before_wait = (unsigned)monotonic_sec();
- retval = poll(pfds, 2, tv * 1000);
+ retval = poll(pfds, 2, tv < INT_MAX/1000 ? tv * 1000 : INT_MAX);
if (retval < 0) {
/* EINTR? A signal was caught, don't panic */
if (errno == EINTR) {
networking/udhcp/dhcpc.c+1 -1
@@ -1453,7 +1453,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
if (tv > 0) {
log1("waiting on select %u seconds", tv);
timestamp_before_wait = (unsigned)monotonic_sec();
- retval = poll(pfds, 2, tv * 1000);
+ retval = poll(pfds, 2, tv < INT_MAX/1000 ? tv * 1000 : INT_MAX);
if (retval < 0) {
/* EINTR? A signal was caught, don't panic */
if (errno == EINTR) {