Browse Source

Avoid mmap leak if we get a consensus diff we can't use.

Fixes CID 1440819; bug not in any released Tor.
Nick Mathewson 5 years ago
parent
commit
18a4eaf5c1
1 changed files with 1 additions and 0 deletions
  1. 1 0
      src/feature/dirclient/dirclient.c

+ 1 - 0
src/feature/dirclient/dirclient.c

@@ -2221,6 +2221,7 @@ handle_response_fetch_consensus(dir_connection_t *conn,
     if (!consensus_body) {
       log_warn(LD_DIR, "Received a consensus diff, but we can't find "
                "any %s-flavored consensus in our current cache.",flavname);
+      tor_munmap_file(mapped_consensus);
       networkstatus_consensus_download_failed(0, flavname);
       // XXXX if this happens too much, see below
       return -1;