----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviewboard.asterisk.org/r/4162/ -----------------------------------------------------------
(Updated Nov. 12, 2014, 10:10 a.m.) Status ------ This change has been marked as submitted. Review request for Asterisk Developers. Changes ------- Committed in revision 427709 Bugs: ASTERISK-24444 https://issues.asterisk.org/jira/browse/ASTERISK-24444 Repository: Asterisk Description ------- When adding an extension it is initially created in the context hash table and also in the pattern tree. This occurs before a priority is added. If afterwards the priority is added and it encounters a failure the entire operation returns an error. In this case the extension is freed but is never removed from the context hash table or the pattern tree. Subsequent access may encounter this invalid extension causing it to access freed memory. This change no longer makes add_priority responsible for cleaning up the extension and leaves it up to the caller. The caller now removes the extension from the context hash table and pattern tree and then frees the extension. Diffs ----- /branches/11/main/pbx.c 427541 Diff: https://reviewboard.asterisk.org/r/4162/diff/ Testing ------- Before patch: Subscribed to a hint twice - once with no spaces in it, second time with spaces in it. Running in valgrind showed memory access after being freed. After patch: Subscribed to a hint twice - once with no spaces in it, second time with spaces in it. Running in valgrind showed no memory access issues. Thanks, Joshua Colp
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev