config: bug: Fix SEGV in ast_category_insert when matching category isn't found
authorGeorge Joseph <george.joseph@fairview5.com>
Thu, 18 Sep 2014 14:46:12 +0000 (14:46 +0000)
committerGeorge Joseph <george.joseph@fairview5.com>
Thu, 18 Sep 2014 14:46:12 +0000 (14:46 +0000)
commitd120e403092d058dfdb7655ba8e1b8113d3b8a33
tree9831d85d8028fdfe691a4a876ed3d18b3e5c4203
parent8839ba3727cf55018cfeae5ff7ce7d4d758993a2
config: bug: Fix SEGV in ast_category_insert when matching category isn't found

If you call ast_category_insert with a match category that doesn't exist, the
list traverse runs out of 'next' categories and you get a SEGV.  This patch
adds check for the end-of-list condition and changes the signature to return
an int for success/failure indication instead of a void.

The only consumer of this function is manager and it was also changed to use
the return value.

Tested by: George Joseph
Review: https://reviewboard.asterisk.org/r/3993/
........

Merged revisions 423276 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 423277 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 423278 from http://svn.asterisk.org/svn/asterisk/branches/12
........

Merged revisions 423279 from http://svn.asterisk.org/svn/asterisk/branches/13

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@423280 65c4cc65-6c06-0410-ace0-fbb531ad65f3
include/asterisk/config.h
main/config.c
main/manager.c