Maintained by: NLnet Labs

[Unbound-users] Leak in 1.4.14?

Robert Fleischman
Thu Dec 22 17:07:24 CET 2011


In "outside_network.c", the function:  "outnet_serviced_query" has two
calls inside "if" statements:

"if (!serviced_udp_send(...)"
       and
"if (!serviced_tcp_send(...)"

in those error branches, I STRONGLY believe we need a:

"free(sq->zone);"

inserted after the "free(sq->qbuf);"

Otherwise, it LEAKS the "memdup()"'d sq->zone!

My tests show:
   Without those free()'s, it leaks.
   Put them in, all is good.

I haven't done the analysis on "how bad" this is.  It might be a minor thing.

-Rob