diff options
author | ru <ru@FreeBSD.org> | 2005-08-02 20:05:37 +0000 |
---|---|---|
committer | ru <ru@FreeBSD.org> | 2005-08-02 20:05:37 +0000 |
commit | d763f91523015fa0c89afe23c3f6f72056426bd2 (patch) | |
tree | 0f37782cc1fefcc6b4593e948c67ae533c96dc4f /sys/netgraph/ng_parse.c | |
parent | c7ff05fb0645dc1baaceece5a37ea0a394c2f092 (diff) | |
download | FreeBSD-src-d763f91523015fa0c89afe23c3f6f72056426bd2.zip FreeBSD-src-d763f91523015fa0c89afe23c3f6f72056426bd2.tar.gz |
Fixed parsing of unsigned integers.
Diffstat (limited to 'sys/netgraph/ng_parse.c')
-rw-r--r-- | sys/netgraph/ng_parse.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/netgraph/ng_parse.c b/sys/netgraph/ng_parse.c index dabe1ca..0687937 100644 --- a/sys/netgraph/ng_parse.c +++ b/sys/netgraph/ng_parse.c @@ -535,7 +535,10 @@ ng_int32_parse(const struct ng_parse_type *type, int32_t val32; char *eptr; - val = strtol(s + *off, &eptr, 0); + if ((intptr_t)type->info == INT_SIGNED) + val = strtol(s + *off, &eptr, 0); + else + val = strtoul(s + *off, &eptr, 0); if (val < (int32_t)0x80000000 || val > (u_int32_t)0xffffffff || eptr == s + *off) return (EINVAL); |