]> granicus.if.org Git - libevent/commit
Fix incorrect assertions and possible use-after-free in evrpc_free()
authorChristophe Fillot <cf@utc.fr>
Sat, 12 Mar 2011 17:08:19 +0000 (12:08 -0500)
committerNick Mathewson <nickm@torproject.org>
Sat, 12 Mar 2011 17:08:19 +0000 (12:08 -0500)
commit4b8f02f14751c6c2d53cad3597a711a1a008e07f
treef77fcb6c9c3d2af119f385102b69c5e06d4a3dc7
parent5209fadfd07af3f3379ac607582c37933b33e044
Fix incorrect assertions and possible use-after-free in evrpc_free()

Original description:

  The following patch fixes incorrect assertions in evrpc_free():
  evrpc_unregister_rpc() and evrpc_remove_hook() return 0 for success.

  Also, in evrpc_unregister_rpc(), it is better to free RPC structure
  at the end: evrpc_free() uses rpc->uri as "name" parameter when
  calling evrpc_unregister_rpc(), then rpc->uri is freed, but we have
  "registered_uri = evrpc_construct_uri(name)". So at this time "name"
  is invalid.
evrpc.c