Hello David Ahern,
The patch acda655fefae: "selftests: Add nettest" from Aug 1, 2019, leads to the following static checker warning:
./tools/testing/selftests/net/nettest.c:1690 main() warn: unsigned 'tmp' is never less than zero.
./tools/testing/selftests/net/nettest.c 1680 case '1': 1681 args.has_expected_raddr = 1; 1682 if (convert_addr(&args, optarg, 1683 ADDR_TYPE_EXPECTED_REMOTE)) 1684 return 1; 1685 1686 break; 1687 case '2': 1688 if (str_to_uint(optarg, 0, 0x7ffffff, &tmp) != 0) { 1689 tmp = get_ifidx(optarg); 1690 if (tmp < 0) {
"tmp" is unsigned so it can't be negative. Also all the callers assume that get_ifidx() returns negatives on error but it looks like it really returns zero on error so it's a bit unclear to me.
1691 fprintf(stderr, 1692 "Invalid device index\n"); 1693 return 1; 1694 } 1695 } 1696 args.expected_ifindex = (int)tmp; 1697 break; 1698 case 'q': 1699 quiet = 1;
regards, dan carpenter
On 8/14/19 8:12 AM, Dan Carpenter wrote:
"tmp" is unsigned so it can't be negative. Also all the callers assume that get_ifidx() returns negatives on error but it looks like it really returns zero on error so it's a bit unclear to me.
thanks for the report; will send a fix.
linux-kselftest-mirror@lists.linaro.org