Summary: | ASTERISK-03295: Crash in transfer | ||
Reporter: | Steve Murphy (murf) | Labels: | |
Date Opened: | 2005-01-17 23:21:12.000-0600 | Date Closed: | 2008-01-15 15:22:19.000-0600 |
Priority: | Critical | Regression? | No |
Status: | Closed/Complete | Components: | Applications/app_dial |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ( 0) crashout2 | |
Description: | Incoming call received; the called party hits ASTERISK-694 in attempt to park the call for a transfer to a different line. Asterisk crashes immediately upon recieving the #. Worked up until this update, I THINK. Haven't actually tried to park a call in a week or two. ****** STEPS TO REPRODUCE ****** 1. Call comes in, dial() issued to extension. 2. Called party answers, hits # to transfer call. 3. Crash. ****** ADDITIONAL INFORMATION ****** Got a stack trace. Compiled source with valgrind. The reason for the crash is in a call to: #0 0x00c37831 in zt_indicate (chan=0x88a7ea8, condition=16) at chan_zap.c:4411 4411 res = pri_notify(p->pri->pri, p->call, p->prioffset, PRI_NOTIFY_REMOTE_HOLD); and in this case, p->pri is null. The p->pri->pri ref causes a seg fault. | ||
Comments: | By: Brian West (bkw918) 2005-01-17 23:27:55.000-0600 Have you recompiled/installed libpri, zaptel and asterisk in that order? bkw By: Steve Murphy (murf) 2005-01-18 00:14:13.000-0600 No, I did zaptel, then libpri, then asterisk. So, I just redid everything in this order: 1, cd libpri 2. make clean 3. cvs update 4. make 5. make install 6. cd ../zaptel 7. make clean 8. cvs update 9. make 10. make install 11. rmmod wctdm wcfxo zaptel 12. cd ../asterisk 13. make clean 14. cvs update 15. make valgrind (it does an install) 16. modprobe wcfxo 17. modprobe wcfxs lowpower=1 18. ztcfg 19. asterisk -cgv 20. (place a call using one extension, out to PSTN via (old) fxo card, back into another fxo card on another pstn line, to another extension. 21. On the answered extension, hit # 22. Still crashes. By: Brian West (bkw918) 2005-01-18 00:18:43.000-0600 i smell an ifdef missing... you don't even need libpri. bkw By: Steve Murphy (murf) 2005-01-18 00:26:02.000-0600 You are maybe getting warm. I've got 2 fxo cards, and a 4-port fxs card (E/F, think). That's it. No T1 stuff at all. By: paradise (paradise) 2005-01-18 00:47:07.000-0600 > 4411 res = pri_notify(p->pri->pri, p->call, p->prioffset, PRI_NOTIFY_REMOTE_HOLD); this part of code has recently added regarding bug ASTERISK-1815, it seems that it's broken. do you have the same problem with CVS HEAD before 01/17? By: Steve Murphy (murf) 2005-01-18 00:56:42.000-0600 Well, I know a few weeks back, that ASTERISK-694 worked OK. Now it doesn't. Some features are unfortunately not used often enough to nail down exactly when it broke. But, it could easily be that the new insertion broke the program, at least for my setup. By: Steve Murphy (murf) 2005-01-18 00:59:15.000-0600 Arg. I haven't enough experience with the web interface to know that a pound-sign (or hash) at the beginning of 700 will turn the whole thing into a link to bug 0000700. Someday I'll figure it out. \ASTERISK-694-- will this come out ok? By: Steve Murphy (murf) 2005-01-18 01:16:47.000-0600 Nope. It didn't, obviously. Well, as an experiment, I put if( p->pri ) before the call to pri_notify, and I don't crash. However, while this might prevent the crash, I'd be surprised if everything still works ok in regards to the new feature! By: Mark Spencer (markster) 2005-01-18 05:33:52.000-0600 Fixed in CVS head. By: Digium Subversion (svnbot) 2008-01-15 15:22:19.000-0600 Repository: asterisk Revision: 4831 U trunk/channels/chan_zap.c ------------------------------------------------------------------------ r4831 | markster | 2008-01-15 15:22:18 -0600 (Tue, 15 Jan 2008) | 2 lines Fix recently introduced zap crash from HOLD/UNHOLD patch (bug ASTERISK-3295) ------------------------------------------------------------------------ http://svn.digium.com/view/asterisk?view=rev&revision=4831 |