Mark Michelson
1712694817
Fix a crash that would occur when receiving a 491 response to a reinvite.
...
The reviewboard description does a fine job of summarizing this, so here it is:
A reporter discovered that Asterisk would crash when attempting to retransmit
a reinvite that had previously received a 491 response. The crash occurred
because a pjsip_tx_data structure was being saved for reuse, but its reference
count was not being increased. The result was that the pjsip_tx_data was being
freed before we were actually done with it. When we attempted to re-use the
structure when re-sending the reinvite, Asterisk would crash.
The fix implemented here is not to try holding onto the pjsip_tx_data at all.
Instead, when we reschedule sending the reinvite, we create a brand new
pjsip_tx_data and send that instead. Because of this change, there is no need
for an ast_sip_session_delayed_request structure to have a pjsip_tx_data on
it any more. So any code referencing its use has been removed.
When this initial fix was introduced, I encountered a second crash when
processing a subsequent 200 OK on a rescheduled reinvite. The reason was
that when rescheduling the reinvite, we gave the wrong location for a
response callback. This has been fixed in this patch as well.
ASTERISK-24556 #close
Reported by Abhay Gupta
Review: https://reviewboard.asterisk.org/r/4233
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@429089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2014-12-08 16:41:45 +00:00
..
2014-07-04 13:26:37 +00:00
2014-12-08 15:49:24 +00:00
2014-12-01 17:57:12 +00:00
2014-12-02 00:30:12 +00:00
2014-07-25 16:47:17 +00:00
2014-12-08 15:49:24 +00:00
2014-07-18 21:48:46 +00:00
2014-01-14 23:44:57 +00:00
2013-08-30 13:28:50 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-10-28 14:56:31 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-08-05 21:44:09 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2013-07-27 23:11:02 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2013-07-27 23:11:02 +00:00
2014-07-25 16:47:17 +00:00
2014-10-12 07:44:32 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-11-19 17:13:29 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-20 22:06:33 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-08-06 12:55:28 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-09-18 16:22:32 +00:00
2014-10-28 21:05:13 +00:00
2014-07-18 15:49:46 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-10-16 14:35:00 +00:00
2014-08-14 21:16:05 +00:00
2014-11-06 09:23:32 +00:00
2014-03-28 18:32:50 +00:00
2014-07-25 16:47:17 +00:00
2014-11-04 19:32:21 +00:00
2014-06-26 18:27:53 +00:00
2012-10-14 21:44:27 +00:00
2014-07-30 18:32:25 +00:00
2014-07-30 18:32:25 +00:00
2014-12-06 18:16:18 +00:00
2014-08-25 16:44:37 +00:00
2014-03-27 19:21:44 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-01-06 17:45:25 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-10-27 02:27:23 +00:00
2014-10-09 17:45:23 +00:00
2014-11-20 16:13:22 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-12-02 00:30:12 +00:00
2014-10-16 14:35:00 +00:00
2014-10-30 21:13:30 +00:00
2013-07-30 18:14:50 +00:00
2014-10-16 14:35:00 +00:00
2014-07-25 16:47:17 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-11-05 12:18:05 +00:00
2014-10-16 14:35:00 +00:00
2014-12-01 17:57:12 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-08-07 14:35:09 +00:00
2014-08-07 14:35:09 +00:00
2014-11-13 22:03:00 +00:00
2014-10-16 14:35:00 +00:00
2014-11-21 17:45:13 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-12-01 17:57:12 +00:00
2014-08-07 14:37:26 +00:00
2014-12-02 12:20:58 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-11-19 12:40:36 +00:00
2014-10-16 14:35:00 +00:00
2014-12-08 16:41:45 +00:00
2014-10-03 17:39:50 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-10-16 14:35:00 +00:00
2014-11-19 12:40:36 +00:00
2013-11-23 17:26:57 +00:00
2014-07-25 16:47:17 +00:00
2014-10-16 01:25:42 +00:00
2014-07-25 16:47:17 +00:00
2013-09-30 18:55:27 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-10-13 16:10:06 +00:00
2014-07-25 16:47:17 +00:00
2014-10-13 16:10:06 +00:00
2014-07-25 16:47:17 +00:00
2013-09-16 18:00:32 +00:00
2014-10-27 01:47:26 +00:00
2014-08-22 16:44:21 +00:00
2013-05-20 14:21:39 +00:00
2014-12-01 17:57:12 +00:00
2013-11-23 17:48:28 +00:00
2014-07-25 16:47:17 +00:00
2014-01-14 23:44:57 +00:00
2014-08-22 16:44:21 +00:00
2013-05-23 20:11:35 +00:00
2014-08-22 16:44:21 +00:00
2013-07-03 17:58:45 +00:00
2014-08-12 23:33:00 +00:00
2013-11-23 12:40:46 +00:00
2014-08-06 12:55:28 +00:00
2013-05-08 13:39:08 +00:00
2014-12-08 15:43:14 +00:00
2013-04-15 16:43:47 +00:00
2014-07-25 16:47:17 +00:00
2013-04-26 20:05:15 +00:00
2014-08-06 12:55:28 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-07-25 16:47:17 +00:00
2014-12-01 17:57:12 +00:00