diff options
author | 2002-11-27 19:39:15 +0000 | |
---|---|---|
committer | 2002-11-27 19:39:15 +0000 | |
commit | d603139af7d182d0af8e5b8f25a1c01564959e9c (patch) | |
tree | b784e9028434688521fd41b3f30e461af338024a | |
parent | more altq testing (diff) | |
download | wireguard-openbsd-d603139af7d182d0af8e5b8f25a1c01564959e9c.tar.xz wireguard-openbsd-d603139af7d182d0af8e5b8f25a1c01564959e9c.zip |
Avoid possible wraparound when checking timeout size; mickey@ OK
-rw-r--r-- | sys/kern/uipc_socket.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index c23b7f07ee4..9b5c5bf7624 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uipc_socket.c,v 1.47 2002/11/27 13:31:09 mickey Exp $ */ +/* $OpenBSD: uipc_socket.c,v 1.48 2002/11/27 19:39:15 millert Exp $ */ /* $NetBSD: uipc_socket.c,v 1.21 1996/02/04 02:17:52 christos Exp $ */ /* @@ -1079,7 +1079,7 @@ sosetopt(so, level, optname, m0) goto bad; } tv = mtod(m, struct timeval *); - if (tv->tv_sec * hz + tv->tv_usec / tick > SHRT_MAX) { + if (tv->tv_sec > (SHRT_MAX - tv->tv_usec / tick) / hz) { error = EDOM; goto bad; } |