[tor-commits] [tor/release-0.2.2] Check return value in fmt_addr
nickm at torproject.org
nickm at torproject.org
Wed Aug 17 19:51:24 UTC 2011
commit 718252b253049f84fefa14e212cf560838e6607c
Author: Nick Mathewson <nickm at torproject.org>
Date: Wed Jul 20 13:16:06 2011 -0400
Check return value in fmt_addr
Previously, if tor_addr_to_str() returned NULL, we would reuse the
last value returned by fmt_addr(). (This could happen if we were
erroneously asked to format an AF_UNSPEC address.) Now instead we
return "???".
---
changes/fmt_addr | 4 ++++
src/common/address.c | 6 ++++--
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/changes/fmt_addr b/changes/fmt_addr
new file mode 100644
index 0000000..b88c9e1
--- /dev/null
+++ b/changes/fmt_addr
@@ -0,0 +1,4 @@
+ o Minor bugfixes:
+ - When unable to format an address as a string, report its value
+ as "???" rather than reusing the last formatted address. Bugfix
+ on 0.2.1.5-alpha.
diff --git a/src/common/address.c b/src/common/address.c
index 1c72539..7fc7301 100644
--- a/src/common/address.c
+++ b/src/common/address.c
@@ -958,8 +958,10 @@ fmt_addr(const tor_addr_t *addr)
{
static char buf[TOR_ADDR_BUF_LEN];
if (!addr) return "<null>";
- tor_addr_to_str(buf, addr, sizeof(buf), 0);
- return buf;
+ if (tor_addr_to_str(buf, addr, sizeof(buf), 0))
+ return buf;
+ else
+ return "???";
}
/** Convert the string in <b>src</b> to a tor_addr_t <b>addr</b>. The string
More information about the tor-commits
mailing list