Browse Source

Catch integer underflow in scan_scaled reported by Nicolas Iooss.

ok deraadt@ djm@
OPENBSD_6_1
dtucker 8 years ago
parent
commit
4cba5ce8e2
1 changed files with 6 additions and 1 deletions
  1. +6
    -1
      src/lib/libutil/fmt_scaled.c

+ 6
- 1
src/lib/libutil/fmt_scaled.c View File

@ -1,4 +1,4 @@
/* $OpenBSD: fmt_scaled.c,v 1.13 2017/03/11 23:37:23 djm Exp $ */
/* $OpenBSD: fmt_scaled.c,v 1.14 2017/03/15 00:13:18 dtucker Exp $ */
/*
* Copyright (c) 2001, 2002, 2003 Ian F. Darwin. All rights reserved.
@ -171,6 +171,11 @@ scan_scaled(char *scaled, long long *result)
return -1;
}
if (whole <= LLONG_MIN / scale_fact) {
errno = ERANGE;
return -1;
}
/* scale whole part */
whole *= scale_fact;


|||||||
|||||||
xxxxxxxxxx
 
000:0
x
 
000:0
Loading…
Cancel
Save