Commit ffd7189b authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

Don't assert in get_string_from_pipe() on len==0

We can treat this case as an EAGAIN (probably because of an
unexpected internal NUL) rather than a crash-worthy problem.

Fixes bug 6225, again.  Bug not in any released version of Tor.
parent b1ad1a1d
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -4386,7 +4386,10 @@ get_string_from_pipe(FILE *stream, char *buf_out, size_t count)
    }
  } else {
    len = strlen(buf_out);
    tor_assert(len>0);
    if (len == 0) {
      /* this probably means we got a NUL at the start of the string. */
      return IO_STREAM_EAGAIN;
    }

    if (buf_out[len - 1] == '\n') {
      /* Remove the trailing newline */