Commit 718252b2 authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

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 "???".
parent 3e3aac5f
Loading
Loading
Loading
Loading

changes/fmt_addr

0 → 100644
+4 −0
Original line number Diff line number Diff line
  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.
+4 −2
Original line number Diff line number Diff line
@@ -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);
  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