Summary: | ASTERISK-11922: [patch] Possible race condition in pbx_lua call to ast_channel_datastore_find() | ||
Reporter: | Matthew Nicholson (mnicholson) | Labels: | |
Date Opened: | 2008-04-25 16:54:20 | Date Closed: | 2008-04-26 19:17:25 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | PBX/General |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) pbx_lua4.diff | |
Description: | pbx_lua calls ast_channel_datastore_find() with out locking the channel first. A patch is attached. | ||
Comments: | By: Digium Subversion (svnbot) 2008-04-25 16:59:19 Repository: asterisk Revision: 114676 U trunk/pbx/pbx_lua.c ------------------------------------------------------------------------ r114676 | russell | 2008-04-25 16:59:19 -0500 (Fri, 25 Apr 2008) | 7 lines Lock the channel around datastore access (closes issue ASTERISK-11922) Reported by: mnicholson Patches: pbx_lua4.diff uploaded by mnicholson (license 96) ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=114676 By: Digium Subversion (svnbot) 2008-04-25 17:00:12 Repository: asterisk Revision: 114677 _U branches/1.6.0/ U branches/1.6.0/pbx/pbx_lua.c ------------------------------------------------------------------------ r114677 | russell | 2008-04-25 17:00:11 -0500 (Fri, 25 Apr 2008) | 15 lines Merged revisions 114676 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ........ r114676 | russell | 2008-04-25 17:04:46 -0500 (Fri, 25 Apr 2008) | 7 lines Lock the channel around datastore access (closes issue ASTERISK-11922) Reported by: mnicholson Patches: pbx_lua4.diff uploaded by mnicholson (license 96) ........ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=114677 By: Digium Subversion (svnbot) 2008-04-25 22:47:34 Repository: asterisk Revision: 114685 _U team/seanbright/resolve-shadow-warnings/ U team/seanbright/resolve-shadow-warnings/CHANGES U team/seanbright/resolve-shadow-warnings/apps/app_chanspy.c U team/seanbright/resolve-shadow-warnings/channels/chan_iax2.c U team/seanbright/resolve-shadow-warnings/channels/chan_sip.c U team/seanbright/resolve-shadow-warnings/pbx/pbx_lua.c ------------------------------------------------------------------------ r114685 | seanbright | 2008-04-25 22:47:33 -0500 (Fri, 25 Apr 2008) | 54 lines Merged revisions 114674,114676,114678,114683 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r114674 | russell | 2008-04-25 18:00:35 -0400 (Fri, 25 Apr 2008) | 11 lines Merged revisions 114673 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r114673 | russell | 2008-04-25 16:54:40 -0500 (Fri, 25 Apr 2008) | 3 lines Use consistent logic for checking to see if a call number has been chosen yet. Also, remove some redundant logic I recently added in a fix. ........ ................ r114676 | russell | 2008-04-25 18:04:46 -0400 (Fri, 25 Apr 2008) | 7 lines Lock the channel around datastore access (closes issue ASTERISK-11922) Reported by: mnicholson Patches: pbx_lua4.diff uploaded by mnicholson (license 96) ................ r114678 | mmichelson | 2008-04-25 18:24:32 -0400 (Fri, 25 Apr 2008) | 11 lines Adding a new option, 'B' to app_chanspy. This option allows the spy to barge on the call. It is like the existing whisper option, except that it allows the spy to talk to both sides of the conversation on which he is spying. This feature has existed in Switchvox, and this merges the functionality into Asterisk. (AST-32) ................ r114683 | tilghman | 2008-04-25 22:48:56 -0400 (Fri, 25 Apr 2008) | 8 lines Add 'sip qualify peer <peer>' command (with AMI SIPqualifypeer) (closes issue ASTERISK-11920) Reported by: ctooley Patches: sip_qualify_peer.diff.2 uploaded by ctooley (license 136) some modifications for trunk by Corydon76 Tested by: Corydon76 ................ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=114685 By: Digium Subversion (svnbot) 2008-04-25 22:49:50 Repository: asterisk Revision: 114686 _U team/seanbright/res-jabber-astobj2/ U team/seanbright/res-jabber-astobj2/CHANGES U team/seanbright/res-jabber-astobj2/apps/app_chanspy.c U team/seanbright/res-jabber-astobj2/apps/app_dial.c U team/seanbright/res-jabber-astobj2/apps/app_directed_pickup.c U team/seanbright/res-jabber-astobj2/apps/app_externalivr.c U team/seanbright/res-jabber-astobj2/apps/app_followme.c U team/seanbright/res-jabber-astobj2/apps/app_minivm.c U team/seanbright/res-jabber-astobj2/apps/app_parkandannounce.c D team/seanbright/res-jabber-astobj2/apps/app_pickupchan.c U team/seanbright/res-jabber-astobj2/apps/app_playback.c U team/seanbright/res-jabber-astobj2/apps/app_queue.c U team/seanbright/res-jabber-astobj2/apps/app_rpt.c U team/seanbright/res-jabber-astobj2/apps/app_sms.c U team/seanbright/res-jabber-astobj2/apps/app_speech_utils.c U team/seanbright/res-jabber-astobj2/apps/app_voicemail.c U team/seanbright/res-jabber-astobj2/apps/app_waitforring.c U team/seanbright/res-jabber-astobj2/apps/app_zapscan.c U team/seanbright/res-jabber-astobj2/channels/chan_iax2.c U team/seanbright/res-jabber-astobj2/channels/chan_sip.c U team/seanbright/res-jabber-astobj2/main/app.c U team/seanbright/res-jabber-astobj2/main/features.c U team/seanbright/res-jabber-astobj2/pbx/pbx_lua.c ------------------------------------------------------------------------ r114686 | seanbright | 2008-04-25 22:49:48 -0500 (Fri, 25 Apr 2008) | 146 lines Merged revisions 114650-114651,114655-114656,114660,114663,114665,114667,114674,114676,114678,114683 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r114650 | tilghman | 2008-04-25 11:58:36 -0400 (Fri, 25 Apr 2008) | 13 lines Blocked revisions 114649 via svnmerge ........ r114649 | tilghman | 2008-04-25 10:53:52 -0500 (Fri, 25 Apr 2008) | 6 lines Reference documentation files that actually exist. (closes issue ASTERISK-11913) Reported by: linuxmaniac Patches: diff_rev114611.patch uploaded by linuxmaniac (license 472) ........ ................ r114651 | mmichelson | 2008-04-25 12:25:17 -0400 (Fri, 25 Apr 2008) | 4 lines Fix a memory leak and protect against potential dereferences of a NULL pointer. ................ r114655 | russell | 2008-04-25 14:18:27 -0400 (Fri, 25 Apr 2008) | 10 lines Merge code from team/russell/parking_updates Add some additional features to the core park_call_full() function, and expose them as options to the Park() application. The functionality being added is the ability to specify a custom return extension/context/priority, a custom timeout, and a couple of options. The options are to play ringing instead of MOH to the parked caller, and to randomize parking spot selection. (code inspired by the patch in AST-17, code from switchvox) ................ r114656 | mmichelson | 2008-04-25 14:18:30 -0400 (Fri, 25 Apr 2008) | 13 lines This patch allows for forwarding a message with a "comment" attachment if using IMAP storage for voicemail. The comment will be recorded and attached as a second attachment in addition to the original message. This will be invoked if you choose to prepend a message the way you would with file or ODBC storage (closes issue ASTERISK-11473) Reported by: jaroth Patches: forward_with_comment_v2.patch uploaded by jaroth (license 50) Tested by: jaroth ................ r114660 | qwell | 2008-04-25 14:32:22 -0400 (Fri, 25 Apr 2008) | 12 lines Merge app_pickupchan with app_directed_pickup, for AST-27. Initially, this was to be a new feature, with a patch from Switchvox, but after discussions, it was noted that this feature already existed in trunk. The resulting discussions ended in a comment that was along the lines of "the patch provided here is a lot smaller than what is already in trunk, because it doesn't create a new application and duplicate existing code" It was decided that these two applications could be easily merged to reduce code duplication. SO, that's what this does. ................ r114663 | mmichelson | 2008-04-25 15:33:27 -0400 (Fri, 25 Apr 2008) | 12 lines Merged revisions 114662 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r114662 | mmichelson | 2008-04-25 14:32:02 -0500 (Fri, 25 Apr 2008) | 4 lines Move the unlock of the spyee channel to outside the start_spying() function so that the channel is not unlocked twice when using whisper mode. ........ ................ r114665 | tilghman | 2008-04-25 15:39:26 -0400 (Fri, 25 Apr 2008) | 2 lines Oops, this isn't necessarily AGI that is forking anymore ................ r114667 | tilghman | 2008-04-25 16:20:10 -0400 (Fri, 25 Apr 2008) | 2 lines Whitespace changes only ................ r114674 | russell | 2008-04-25 18:00:35 -0400 (Fri, 25 Apr 2008) | 11 lines Merged revisions 114673 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r114673 | russell | 2008-04-25 16:54:40 -0500 (Fri, 25 Apr 2008) | 3 lines Use consistent logic for checking to see if a call number has been chosen yet. Also, remove some redundant logic I recently added in a fix. ........ ................ r114676 | russell | 2008-04-25 18:04:46 -0400 (Fri, 25 Apr 2008) | 7 lines Lock the channel around datastore access (closes issue ASTERISK-11922) Reported by: mnicholson Patches: pbx_lua4.diff uploaded by mnicholson (license 96) ................ r114678 | mmichelson | 2008-04-25 18:24:32 -0400 (Fri, 25 Apr 2008) | 11 lines Adding a new option, 'B' to app_chanspy. This option allows the spy to barge on the call. It is like the existing whisper option, except that it allows the spy to talk to both sides of the conversation on which he is spying. This feature has existed in Switchvox, and this merges the functionality into Asterisk. (AST-32) ................ r114683 | tilghman | 2008-04-25 22:48:56 -0400 (Fri, 25 Apr 2008) | 8 lines Add 'sip qualify peer <peer>' command (with AMI SIPqualifypeer) (closes issue ASTERISK-11920) Reported by: ctooley Patches: sip_qualify_peer.diff.2 uploaded by ctooley (license 136) some modifications for trunk by Corydon76 Tested by: Corydon76 ................ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=114686 By: Digium Subversion (svnbot) 2008-04-26 19:17:25 Repository: asterisk Revision: 114694 _U team/file/audiohook-chains/ U team/file/audiohook-chains/CHANGES U team/file/audiohook-chains/apps/app_chanspy.c U team/file/audiohook-chains/channels/chan_iax2.c U team/file/audiohook-chains/channels/chan_sip.c U team/file/audiohook-chains/contrib/scripts/vmail.cgi U team/file/audiohook-chains/pbx/pbx_lua.c ------------------------------------------------------------------------ r114694 | file | 2008-04-26 19:17:22 -0500 (Sat, 26 Apr 2008) | 76 lines Merged revisions 114674,114676,114678,114683,114690,114692 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r114674 | russell | 2008-04-25 19:00:35 -0300 (Fri, 25 Apr 2008) | 11 lines Merged revisions 114673 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r114673 | russell | 2008-04-25 16:54:40 -0500 (Fri, 25 Apr 2008) | 3 lines Use consistent logic for checking to see if a call number has been chosen yet. Also, remove some redundant logic I recently added in a fix. ........ ................ r114676 | russell | 2008-04-25 19:04:46 -0300 (Fri, 25 Apr 2008) | 7 lines Lock the channel around datastore access (closes issue ASTERISK-11922) Reported by: mnicholson Patches: pbx_lua4.diff uploaded by mnicholson (license 96) ................ r114678 | mmichelson | 2008-04-25 19:24:32 -0300 (Fri, 25 Apr 2008) | 11 lines Adding a new option, 'B' to app_chanspy. This option allows the spy to barge on the call. It is like the existing whisper option, except that it allows the spy to talk to both sides of the conversation on which he is spying. This feature has existed in Switchvox, and this merges the functionality into Asterisk. (AST-32) ................ r114683 | tilghman | 2008-04-25 23:48:56 -0300 (Fri, 25 Apr 2008) | 8 lines Add 'sip qualify peer <peer>' command (with AMI SIPqualifypeer) (closes issue ASTERISK-11920) Reported by: ctooley Patches: sip_qualify_peer.diff.2 uploaded by ctooley (license 136) some modifications for trunk by Corydon76 Tested by: Corydon76 ................ r114690 | tilghman | 2008-04-26 10:17:19 -0300 (Sat, 26 Apr 2008) | 14 lines Merged revisions 114689 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r114689 | tilghman | 2008-04-26 08:15:21 -0500 (Sat, 26 Apr 2008) | 6 lines Clicking forward without selecting a message leaves an errant .lock file. (closes issue ASTERISK-11923) Reported by: pukepail Patches: patch.diff uploaded by pukepail (license 431) ........ ................ r114692 | tilghman | 2008-04-26 12:08:51 -0300 (Sat, 26 Apr 2008) | 2 lines Unleak reference ................ ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=114694 |