Summary:ASTERISK-13063: "empty" overlap-dial-in doesn't work
Reporter:Matthias Urlichs (smurfix)Labels:
Date Opened:2008-11-12 14:41:30.000-0600Date Closed:2008-11-13 13:17:46.000-0600
Versions:Frequency of
Environment:Attachments:( 0) bug13891.patch
Description:Some PRI callers (like the ancient telephone system we want to replace) always send an empty SETUP message, and provide the actual number later.

Unfortunately, pbx_find_extension() is set to return NULL if it sees an empty extension, thus preventing the call from ever completing.

I noticed the problem with DAHDI, but I suspect it's not limited to that.


The change was introduced in SVN change 116297. I don't know the rationale for that, but whatever problem that part of the patch fixed needs to get fixed in a different way. Empty extensions are perfectly legitimate in overlap-dial-in situations.
Comments:By: Leif Madsen (lmadsen) 2008-11-12 15:03:15.000-0600

I'm assigning this issue to jpeeler because svn log seems to tell me that's who made the modification at svn rev. 116297

By: Jeff Peeler (jpeeler) 2008-11-12 18:17:19.000-0600

Candidate patch uploaded. I feel like this might be what is causing the problem since the other changes were specifically for parking. I remember very briefly talking to murf about it as it did prevent a crash in some scenarios.

By: Matthias Urlichs (smurfix) 2008-11-12 23:38:27.000-0600

That's exactly the change I applied to get the whole thing working (which should surprise nobody ;-).

It remains to be seen whether the original problem is affected by this; I assume that there must have been a reason for that change ...

By: Jeff Peeler (jpeeler) 2008-11-13 13:09:57.000-0600

The original problem was "when # is pressed and nothing is pressed, the code is currently trying to match on the extension '' and is falling through". (Extracted from my chat logs - May 13. I should have done a better commit message.) Reverting the code does not seem to have any negative effects so I'm going to take it out. I originally thought the change was OK to make as I thought it was mirroring the 1.4 behavior of pbx_find_extension returning null when an extension string of zero length is searched. More importantly perhaps I was not aware at the time that an empty extension was ever possible.

By: Digium Subversion (svnbot) 2008-11-13 13:17:45.000-0600

Repository: asterisk
Revision: 156649

U   trunk/main/pbx.c

r156649 | jpeeler | 2008-11-13 13:17:45 -0600 (Thu, 13 Nov 2008) | 6 lines

(closes issue ASTERISK-13063)
Reported by: smurfix

This reverts a change I made in 116297. At the time it seemed the change was required to solve an issue with attempting a transfer but then letting it timeout without dialing any digits. However, I didn't realize that having an empty extension was possible. I'm removing the immediate return that was added in pbx_find_extension if the extension is null.