diff options
author | jmallett <jmallett@FreeBSD.org> | 2007-10-17 11:41:40 +0000 |
---|---|---|
committer | jmallett <jmallett@FreeBSD.org> | 2007-10-17 11:41:40 +0000 |
commit | 4f4dc1955cf76ce689e160b17fea351527d0018b (patch) | |
tree | 989f26c60cfa0afb71f9b6a5da2dcaca640b7e87 /lib/libc/stdlib/strtonum.c | |
parent | f386b60906c9bdde2a83095c964d7047ebc3f294 (diff) | |
download | FreeBSD-src-4f4dc1955cf76ce689e160b17fea351527d0018b.zip FreeBSD-src-4f4dc1955cf76ce689e160b17fea351527d0018b.tar.gz |
Prevent strange crashes in fmt with absurd goal lengths introduced by the
support for wide characters.
If the sizeof (wchar_t) times max_length would yield a value beyond
representation in a size_t, exit with a usage error up front, rather than
strange errors down the line from trying to malloc (well, realloc) with a size
of 0.
This is perhaps not the optimal behaviour - a clamp may be more appropriate as
we clamp the value of max_length now anyway, but this is at least better than
segfaulting or worse. On systems which are friendly to malloc with a value of 0
the results could end up being strange corruption of the output.
Diffstat (limited to 'lib/libc/stdlib/strtonum.c')
0 files changed, 0 insertions, 0 deletions