commit 3e4814edeb563535b0f3bf658c01d7c10d6b4aa2
parent 7a004fce8d375b7c89703a3292634af4a221691a
Author: rl1987 <rl1987@users.noreply.github.com>
Date: Fri, 5 Jun 2020 11:49:24 +0300
Fix some checks of tor_inet_ntoa() return value
Also, fix a format string.
Diffstat:
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/feature/relay/dns.c b/src/feature/relay/dns.c
@@ -1881,7 +1881,7 @@ evdns_wildcard_check_callback(int result, char type, int count, int ttl,
int ntoa_res;
in.s_addr = addrs[i];
ntoa_res = tor_inet_ntoa(&in, answer_buf, sizeof(answer_buf));
- tor_assert_nonfatal(ntoa_res > 0);
+ tor_assert_nonfatal(ntoa_res >= 0);
if (ntoa_res > 0)
wildcard_increment_answer(answer_buf);
}
diff --git a/src/lib/net/address.c b/src/lib/net/address.c
@@ -1207,10 +1207,10 @@ fmt_addr32(uint32_t addr)
in.s_addr = htonl(addr);
success = tor_inet_ntoa(&in, buf, sizeof(buf));
- tor_assertf_nonfatal(success > 0,
- "Failed to convert IP %04X to string", addr);
+ tor_assertf_nonfatal(success >= 0,
+ "Failed to convert IP 0x%08X (HBO) to string", addr);
- if (success <= 0) {
+ IF_BUG_ONCE(success < 0) {
memset(buf, 0, INET_NTOA_BUF_LEN);
}