Skip to content
Snippets Groups Projects
Commit d921ed9a authored by Chris Packham's avatar Chris Packham Committed by Tom Rini
Browse files

lib: net_utils: make string_to_ip stricter


Previously values greater than 255 were implicitly truncated. Add some
stricter checking to reject addresses with components >255.

With the input "1234192.168.1.1" the old behaviour would truncate the
address to 192.168.1.1. New behaviour rejects the string outright and
returns 0.0.0.0, which for the purposes of IP addresses can be
considered an error.

Signed-off-by: default avatarChris Packham <judge.packham@gmail.com>
parent 266aa86b
No related branches found
No related tags found
No related merge requests found
......@@ -24,6 +24,10 @@ struct in_addr string_to_ip(const char *s)
for (addr.s_addr = 0, i = 0; i < 4; ++i) {
ulong val = s ? simple_strtoul(s, &e, 10) : 0;
if (val > 255) {
addr.s_addr = 0;
return addr;
}
addr.s_addr <<= 8;
addr.s_addr |= (val & 0xFF);
if (s) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment