[Home]

Summary:ASTERISK-04468: [patch] [post 1.2] channel.c ast_waitfor*() cleanup/speedup
Reporter:Luigi Rizzo (rizzo)Labels:
Date Opened:2005-06-23 11:34:14Date Closed:2008-01-15 16:29:58.000-0600
Priority:MajorRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) chan.20050726.diff
( 1) chan.20051122.diff
( 2) chan.diff
Description:As mentioned on the -dev mailing list a few days ago,
the various ast_waitfor*() have suboptimal complexity,
up to O(N^2 *AST_MAX_FDS) whereas they could be speeded
up by at least a factor of N, and use the same common code.

This patch (which depends on ASTERISK-4388 which has been sitting here for
almost two weeks now) implements the above.
It also replaces some magic constants AST_MAX_FDS-1 etc with
more mnemonic values, and gives generators the ability to
register file descriptors to be used in the waitfor*() functions.

The original code has some open issues (listed at the end)
that this patch leaves unmodified.


****** ADDITIONAL INFORMATION ******

DETAILED DESCRIPTION

- make ast_waitfor_n_fd() just a wrapper for ast_waitfor_nandfds()
 which becomes the main function for polling descriptors and channels.

- same for ast_waitfor()

- considerably simplify ast_waitfor_nandfds() reducing its complexity
 by a factor of N (number of descriptors/channels). The only way to make
 it faster now would be to pack file descriptors into channels in a
 contiguous set (maybe we should at some point).

- replace magic values AST_MAX_FDS-1, AST_MAX_FDS-2 etc with
 appropriate constants AST_ALERT_FDS, AST_TIMING_FDS, AST_AGENT_FDS,
 and AST_GENERATOR_FDS (newly introduced);
 This change affects
       include/asterisk/channels.h
       channel.c
       channels/chan_agent.c
       channels/chan_features.c

- give generators (such as moh) that produce an already synchronous
 data stream the ability to register a file descriptor, rather than
 depend on timingfd which may not be available and in any case does
 have some cost; an example of use is in res_musiconhold.c which will
 be supplied with a separate patch.
 This is done by adding two fields (a magic number and a function
 pointer) to the generator struct, so that newer and older structs
 can coexist. When all generators are updated the magic number
 field can go away.
 

OPEN ISSUES:

- ast_waitfor*() only locks channels in the first loop, while
 "Perform any pending masquerades".
 whereas it does not lock them in all other loops (before and
 after calling poll() ).
 I am not sure why the latter is safe. A bit of explaination from
 those who know would be helpful.

Comments:By: Luigi Rizzo (rizzo) 2005-07-04 13:37:45

this one seems to have stalled too, anyone working on it ?

By: Kevin P. Fleming (kpfleming) 2005-07-05 22:34:00

No, I have not had time to review it until now.

By: Kevin P. Fleming (kpfleming) 2005-07-05 22:43:20

Notes:

- I like the constants for the fd indexes, but a nitpicky point is that each constant should be foo_FD, not foo_FDS, since it refers to a single entity

- We don't use C++ style comments, so the places where you have replaced #if 0 with one will need to be changed

- I'm not at all comfortable merging this patch with the 'generator magic' stuff in it; that needs to be reviewed separately, as these waitfor changes are complex enough to warrant their own commit

I can't comment on the locking issues, I'll need to review the code a little more to figure out what is going on there.

By: Luigi Rizzo (rizzo) 2005-07-06 02:27:33

- ok for the nitpicking :) - i agree on naming constants foo_FD
- the C++ style comments were not intentional, i think i wanted to just
 delete them. Sorry...
- re. the loking, this patch leaves thing unchanged wrt. the original code;
- you can easily take out the generator magic stuff, the chunks affected are:
 channel.c:
   @@ -971,6 +971,7 @@
       discard
   @@ -1007,8 +1008,14 @@
       discard
   @@ -1440,6 +1382,14 @@
       discard

 channel.h:
   @@ -49,13 +49,24 @@,
      just take ALERT, TIMING and AGENT #define and leave out the rest.

By: Luigi Rizzo (rizzo) 2005-07-26 14:57:38

uploaded new version of the patch that works with today's sources.
It addresses your comments, changing names to AST_ALERT_FD and the like,
removing C++ comments.
Please don't let this become stale again, we do want it for 1.2 :)

It still has the AST_GENERATOR_FD code, which you can safely delete
by dropping the chunks below:

channel.c
@@ -1082,6 +1082,7 @@
@@ -1120,6 +1121,13 @@
@@ -1545,6 +1501,15 @@
channel.h
@@ -59,6 +77,9 @@

However i would keep it, because it is totally backward compatible,
and i think it is extremely useful because it removes unnecessary
dependencies on external timers.

If you keep the generator code, you might want to increase AST_MAX_FDS to 9,
as I am not sure how many FDs are used at most by a channel.

By: Clod Patry (junky) 2005-09-08 23:04:32

i'm changing this for post 1.2, since it's a major change.

By: Brian West (bkw918) 2005-09-09 00:30:20

actually I would like to see this patch updated to CVS-HEAD and go in 1.2 if I can have can get an update and test it.
/b

By: Michael Jerris (mikej) 2005-09-09 09:11:02

Post 1.2 or not on this is kevins call.  Wedensday night he was still considering it.  If he decides that it is not dooable, he can mark it post 1.2.

By: Brian West (bkw918) 2005-09-09 09:21:16

Either way the patch doesn't apply as it is.  Needs to be updated.

/b

By: Atif Rasheed (atif) 2005-09-11 07:08:48

is this added in CVS-HEAD or we have to patch CVS-HEAD to test it ????

By: Michael Jerris (mikej) 2005-09-11 11:58:17

This has not been commited to cvs head and there is not an updated patch at this time.  If somone is willing to submit an updated patch, that would be fine.  This is awaiting review.

By: Serge Vecher (serge-v) 2005-11-12 11:20:32.000-0600

rizzo or bkw918:

Is there a possibility of producing an updated patch here, please? Notes indicate that this could make it into 1.2

By: Luigi Rizzo (rizzo) 2005-11-12 11:32:23.000-0600

with 1.2 in late beta this is certainly not the time to put such a change in.

I hope that in a couple of weeks, when 1.2 is out and settled, kevin
will have time to look at this one, and i will be glad to supply an
updated patch. Before then, it would be just a waste of time to produce
a patch that is bound to become stale (for the third time).

By: Luigi Rizzo (rizzo) 2005-11-22 06:19:13.000-0600

just downloaded an updated patch of the code, tested locally
with today's sources.
How about putting it in now :)

By: Luigi Rizzo (rizzo) 2005-12-12 07:37:03.000-0600

kevin, would you have time to have a look at this one
and possibly commit it ? it's been there for ages now...

By: Mark Spencer (markster) 2006-01-29 20:13:40.000-0600

Finally, on the way back from Seattle I managed to really review, edit, update and integrate this patch.  Below are my comments / modifications:

1) Good thing to define AST_*_FD...

1) No need for special "get_fd" / magic, etc...  Just do it when you alloc();

2) Changed args to generator to be -1/-1 when only FD is set...

3) Return ast_frame_null on case of generator_fd being set.

Trunk version: 8877


4) Not sure why they were separated between n_fd() and nandfds()...  We'll
  find out what breaks
 
5) Removed some conditionals in ast_waitfor_nandfds()

6) Moved add_fd to include/asterisk/channel.h

7) Used a single struct, removed unnecessary initialization.

By: Digium Subversion (svnbot) 2008-01-15 16:28:09.000-0600

Repository: asterisk
Revision: 8877

U   trunk/channel.c
U   trunk/channels/chan_agent.c
U   trunk/channels/chan_features.c
U   trunk/include/asterisk/channel.h

------------------------------------------------------------------------
r8877 | markster | 2008-01-15 16:28:08 -0600 (Tue, 15 Jan 2008) | 2 lines

Merge Rizzo's waitfor update (bug ASTERISK-4468)

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=8877

By: Digium Subversion (svnbot) 2008-01-15 16:28:23.000-0600

Repository: asterisk
Revision: 8890

_U  team/oej/jitterbuffer/
U   team/oej/jitterbuffer/Makefile
U   team/oej/jitterbuffer/UPGRADE.txt
U   team/oej/jitterbuffer/apps/app_dial.c
U   team/oej/jitterbuffer/apps/app_externalivr.c
U   team/oej/jitterbuffer/apps/app_meetme.c
U   team/oej/jitterbuffer/ast_expr2.c
U   team/oej/jitterbuffer/ast_expr2.h
U   team/oej/jitterbuffer/ast_expr2f.c
U   team/oej/jitterbuffer/channel.c
U   team/oej/jitterbuffer/channels/chan_agent.c
U   team/oej/jitterbuffer/channels/chan_features.c
U   team/oej/jitterbuffer/channels/chan_iax2.c
U   team/oej/jitterbuffer/channels/chan_sip.c
U   team/oej/jitterbuffer/channels/chan_zap.c
U   team/oej/jitterbuffer/funcs/func_md5.c
U   team/oej/jitterbuffer/include/asterisk/channel.h
U   team/oej/jitterbuffer/include/asterisk/frame.h
U   team/oej/jitterbuffer/res/Makefile

------------------------------------------------------------------------
r8890 | oej | 2008-01-15 16:28:22 -0600 (Tue, 15 Jan 2008) | 188 lines

Merged revisions 8711-8712,8727-8728,8730-8731,8741-8742,8750,8757,8768,8778-8779,8786,8799,8809,8823,8825-8826,8834-8835,8850-8852,8877,8883 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r8711 | oej | 2006-01-26 15:44:23 +0100 (Thu, 26 Jan 2006) | 10 lines

Merged revisions 8710 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8710 | oej | 2006-01-26 15:39:36 +0100 (Thu, 26 Jan 2006) | 2 lines

Issue 5898: Registrations does not get deleted if there's an active SIP dialog

........

................
r8712 | oej | 2006-01-26 15:59:33 +0100 (Thu, 26 Jan 2006) | 2 lines

Add some debugging output when reloading, to be able to follow progress at high debug levels

................
r8727 | russell | 2006-01-26 20:33:27 +0100 (Thu, 26 Jan 2006) | 2 lines

store conference list using linked list macros (issue ASTERISK-6167)

................
r8728 | oej | 2006-01-26 20:38:11 +0100 (Thu, 26 Jan 2006) | 4 lines

Code clean up, inspired by rizzo's comments in issue 5978.
- Don't check for ignore if ignore is always negative
- Add comments to explain what's going on

................
r8730 | russell | 2006-01-26 20:44:16 +0100 (Thu, 26 Jan 2006) | 10 lines

Merged revisions 8729 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8729 | russell | 2006-01-26 14:42:35 -0500 (Thu, 26 Jan 2006) | 2 lines

fix problem with dtmf on e&m (issue ASTERISK-6203)

........

................
r8731 | oej | 2006-01-26 20:47:40 +0100 (Thu, 26 Jan 2006) | 2 lines

Issue ASTERISK-5799 revisited. Thanks rizzo.

................
r8741 | oej | 2006-01-26 21:08:53 +0100 (Thu, 26 Jan 2006) | 2 lines

Formatting fixes, speling eror fiksd ;-)

................
r8742 | russell | 2006-01-26 21:28:52 +0100 (Thu, 26 Jan 2006) | 2 lines

don't redefine the localuser struct for additional use specific to the module (issue ASTERISK-6059)

................
r8750 | oej | 2006-01-26 22:36:41 +0100 (Thu, 26 Jan 2006) | 9 lines

- Move two functions to static that wasn't for some reason
- Add doxygen comments
- Remove un-needed assignment at declaration of variable
- Formatting fixes (whitespace)
- Add optin_debug in front of complex debugging output
- Move forward declarations of functions to top of file
- Fix error message for bad allocation in sip registry
(Note: Review to line 6050 in this too large file)

................
r8757 | russell | 2006-01-27 01:31:05 +0100 (Fri, 27 Jan 2006) | 2 lines

don't re-define the localuser struct for custom use inside the module (issue ASTERISK-6059)

................
r8768 | tilghman | 2006-01-27 02:04:03 +0100 (Fri, 27 Jan 2006) | 11 lines


Merged revisions 8758 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8758 | tilghman | 2006-01-26 18:52:12 -0600 (Thu, 26 Jan 2006) | 2 lines

Bug 6072 - Revisions to the source bison and flex files don't auto-regenerate these files

........

................
r8778 | russell | 2006-01-27 06:33:20 +0100 (Fri, 27 Jan 2006) | 2 lines

add /usr/local/lib to SOLINK (issue ASTERISK-6163)

................
r8779 | russell | 2006-01-27 06:39:20 +0100 (Fri, 27 Jan 2006) | 2 lines

remove some more redundant flags

................
r8786 | oej | 2006-01-27 09:07:43 +0100 (Fri, 27 Jan 2006) | 10 lines

Merged revisions 8785 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8785 | oej | 2006-01-27 09:02:16 +0100 (Fri, 27 Jan 2006) | 2 lines

Issue 6362 - Register without Contact: and Expires: fails (reporter: op)

........

................
r8799 | mattf | 2006-01-28 00:55:37 +0100 (Sat, 28 Jan 2006) | 2 lines

Add rdnis rx/tx support to chan_iax2 (ASTERISK-6188)

................
r8809 | oej | 2006-01-28 14:54:25 +0100 (Sat, 28 Jan 2006) | 2 lines

Blocking revision 8808 from trunk. It's already fixed in trunk.

................
r8823 | oej | 2006-01-28 16:02:29 +0100 (Sat, 28 Jan 2006) | 2 lines

Simplify code for building Call ID's, create generic random string function

................
r8825 | oej | 2006-01-28 16:28:58 +0100 (Sat, 28 Jan 2006) | 7 lines

- Moving forward declarations to one block
- Moving global variables to one block
- Moving global networking variables to one block
- Small whitespace changes
- Renaming a few more global channel settings to global_ for clarity
(No functional changes)

................
r8826 | oej | 2006-01-28 16:34:27 +0100 (Sat, 28 Jan 2006) | 2 lines

Doxygen updates

................
r8834 | oej | 2006-01-28 18:00:05 +0100 (Sat, 28 Jan 2006) | 3 lines

Change booleans to TRUE/FALSE.
(At some point we should implement these as enums to simplify debugging)

................
r8835 | oej | 2006-01-28 18:17:37 +0100 (Sat, 28 Jan 2006) | 3 lines

- Remove unused "resetinvite" variable
- Use TRUE/FALSE for fastrestart

................
r8850 | kpfleming | 2006-01-29 06:07:04 +0100 (Sun, 29 Jan 2006) | 5 lines

make ast_read() able to handle channel read()/exception() methods that return a chain of frames
cleanup code in ast_read()
add AST_FRAME_DTMF_BEGIN and AST_FRAME_DTMF_END so that variable-length DTMF events can be supported
teach chan_zap to send DTMF_BEGIN and DTMF_END when appropriate

................
r8851 | kpfleming | 2006-01-29 06:15:24 +0100 (Sun, 29 Jan 2006) | 3 lines

add channel-driver callbacks for variable length DTMF
teach ast_write() to call those new callbacks

................
r8852 | kpfleming | 2006-01-29 06:29:29 +0100 (Sun, 29 Jan 2006) | 2 lines

don't use tone generation for DTMF if the channel driver only supports begin/end (will need more work to translate non-variable events into begin/end events)

................
r8877 | markster | 2006-01-30 04:13:33 +0100 (Mon, 30 Jan 2006) | 2 lines

Merge Rizzo's waitfor update (bug ASTERISK-4468)

................
r8883 | tilghman | 2006-01-30 07:07:05 +0100 (Mon, 30 Jan 2006) | 2 lines

Bug 6378 - deprecate CHECK_MD5 function

................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=8890

By: Digium Subversion (svnbot) 2008-01-15 16:28:29.000-0600

Repository: asterisk
Revision: 8893

_U  team/oej/multiparking/
U   team/oej/multiparking/Makefile
U   team/oej/multiparking/UPGRADE.txt
U   team/oej/multiparking/apps/app_dial.c
U   team/oej/multiparking/apps/app_externalivr.c
U   team/oej/multiparking/apps/app_meetme.c
U   team/oej/multiparking/ast_expr2.c
U   team/oej/multiparking/ast_expr2.h
U   team/oej/multiparking/ast_expr2f.c
U   team/oej/multiparking/channel.c
U   team/oej/multiparking/channels/chan_agent.c
U   team/oej/multiparking/channels/chan_features.c
U   team/oej/multiparking/channels/chan_iax2.c
U   team/oej/multiparking/channels/chan_sip.c
U   team/oej/multiparking/channels/chan_zap.c
U   team/oej/multiparking/funcs/func_md5.c
U   team/oej/multiparking/include/asterisk/channel.h
U   team/oej/multiparking/include/asterisk/frame.h
U   team/oej/multiparking/res/Makefile

------------------------------------------------------------------------
r8893 | oej | 2008-01-15 16:28:28 -0600 (Tue, 15 Jan 2008) | 188 lines

Merged revisions 8711-8712,8727-8728,8730-8731,8741-8742,8750,8757,8768,8778-8779,8786,8799,8809,8823,8825-8826,8834-8835,8850-8852,8877,8883 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r8711 | oej | 2006-01-26 15:44:23 +0100 (Thu, 26 Jan 2006) | 10 lines

Merged revisions 8710 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8710 | oej | 2006-01-26 15:39:36 +0100 (Thu, 26 Jan 2006) | 2 lines

Issue 5898: Registrations does not get deleted if there's an active SIP dialog

........

................
r8712 | oej | 2006-01-26 15:59:33 +0100 (Thu, 26 Jan 2006) | 2 lines

Add some debugging output when reloading, to be able to follow progress at high debug levels

................
r8727 | russell | 2006-01-26 20:33:27 +0100 (Thu, 26 Jan 2006) | 2 lines

store conference list using linked list macros (issue ASTERISK-6167)

................
r8728 | oej | 2006-01-26 20:38:11 +0100 (Thu, 26 Jan 2006) | 4 lines

Code clean up, inspired by rizzo's comments in issue 5978.
- Don't check for ignore if ignore is always negative
- Add comments to explain what's going on

................
r8730 | russell | 2006-01-26 20:44:16 +0100 (Thu, 26 Jan 2006) | 10 lines

Merged revisions 8729 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8729 | russell | 2006-01-26 14:42:35 -0500 (Thu, 26 Jan 2006) | 2 lines

fix problem with dtmf on e&m (issue ASTERISK-6203)

........

................
r8731 | oej | 2006-01-26 20:47:40 +0100 (Thu, 26 Jan 2006) | 2 lines

Issue ASTERISK-5799 revisited. Thanks rizzo.

................
r8741 | oej | 2006-01-26 21:08:53 +0100 (Thu, 26 Jan 2006) | 2 lines

Formatting fixes, speling eror fiksd ;-)

................
r8742 | russell | 2006-01-26 21:28:52 +0100 (Thu, 26 Jan 2006) | 2 lines

don't redefine the localuser struct for additional use specific to the module (issue ASTERISK-6059)

................
r8750 | oej | 2006-01-26 22:36:41 +0100 (Thu, 26 Jan 2006) | 9 lines

- Move two functions to static that wasn't for some reason
- Add doxygen comments
- Remove un-needed assignment at declaration of variable
- Formatting fixes (whitespace)
- Add optin_debug in front of complex debugging output
- Move forward declarations of functions to top of file
- Fix error message for bad allocation in sip registry
(Note: Review to line 6050 in this too large file)

................
r8757 | russell | 2006-01-27 01:31:05 +0100 (Fri, 27 Jan 2006) | 2 lines

don't re-define the localuser struct for custom use inside the module (issue ASTERISK-6059)

................
r8768 | tilghman | 2006-01-27 02:04:03 +0100 (Fri, 27 Jan 2006) | 11 lines


Merged revisions 8758 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8758 | tilghman | 2006-01-26 18:52:12 -0600 (Thu, 26 Jan 2006) | 2 lines

Bug 6072 - Revisions to the source bison and flex files don't auto-regenerate these files

........

................
r8778 | russell | 2006-01-27 06:33:20 +0100 (Fri, 27 Jan 2006) | 2 lines

add /usr/local/lib to SOLINK (issue ASTERISK-6163)

................
r8779 | russell | 2006-01-27 06:39:20 +0100 (Fri, 27 Jan 2006) | 2 lines

remove some more redundant flags

................
r8786 | oej | 2006-01-27 09:07:43 +0100 (Fri, 27 Jan 2006) | 10 lines

Merged revisions 8785 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8785 | oej | 2006-01-27 09:02:16 +0100 (Fri, 27 Jan 2006) | 2 lines

Issue 6362 - Register without Contact: and Expires: fails (reporter: op)

........

................
r8799 | mattf | 2006-01-28 00:55:37 +0100 (Sat, 28 Jan 2006) | 2 lines

Add rdnis rx/tx support to chan_iax2 (ASTERISK-6188)

................
r8809 | oej | 2006-01-28 14:54:25 +0100 (Sat, 28 Jan 2006) | 2 lines

Blocking revision 8808 from trunk. It's already fixed in trunk.

................
r8823 | oej | 2006-01-28 16:02:29 +0100 (Sat, 28 Jan 2006) | 2 lines

Simplify code for building Call ID's, create generic random string function

................
r8825 | oej | 2006-01-28 16:28:58 +0100 (Sat, 28 Jan 2006) | 7 lines

- Moving forward declarations to one block
- Moving global variables to one block
- Moving global networking variables to one block
- Small whitespace changes
- Renaming a few more global channel settings to global_ for clarity
(No functional changes)

................
r8826 | oej | 2006-01-28 16:34:27 +0100 (Sat, 28 Jan 2006) | 2 lines

Doxygen updates

................
r8834 | oej | 2006-01-28 18:00:05 +0100 (Sat, 28 Jan 2006) | 3 lines

Change booleans to TRUE/FALSE.
(At some point we should implement these as enums to simplify debugging)

................
r8835 | oej | 2006-01-28 18:17:37 +0100 (Sat, 28 Jan 2006) | 3 lines

- Remove unused "resetinvite" variable
- Use TRUE/FALSE for fastrestart

................
r8850 | kpfleming | 2006-01-29 06:07:04 +0100 (Sun, 29 Jan 2006) | 5 lines

make ast_read() able to handle channel read()/exception() methods that return a chain of frames
cleanup code in ast_read()
add AST_FRAME_DTMF_BEGIN and AST_FRAME_DTMF_END so that variable-length DTMF events can be supported
teach chan_zap to send DTMF_BEGIN and DTMF_END when appropriate

................
r8851 | kpfleming | 2006-01-29 06:15:24 +0100 (Sun, 29 Jan 2006) | 3 lines

add channel-driver callbacks for variable length DTMF
teach ast_write() to call those new callbacks

................
r8852 | kpfleming | 2006-01-29 06:29:29 +0100 (Sun, 29 Jan 2006) | 2 lines

don't use tone generation for DTMF if the channel driver only supports begin/end (will need more work to translate non-variable events into begin/end events)

................
r8877 | markster | 2006-01-30 04:13:33 +0100 (Mon, 30 Jan 2006) | 2 lines

Merge Rizzo's waitfor update (bug ASTERISK-4468)

................
r8883 | tilghman | 2006-01-30 07:07:05 +0100 (Mon, 30 Jan 2006) | 2 lines

Bug 6378 - deprecate CHECK_MD5 function

................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=8893

By: Digium Subversion (svnbot) 2008-01-15 16:29:55.000-0600

Repository: asterisk
Revision: 8981

_U  team/oej/astum/
U   team/oej/astum/.cleancount
U   team/oej/astum/Makefile
U   team/oej/astum/UPGRADE.txt
U   team/oej/astum/apps/app_dial.c
U   team/oej/astum/apps/app_externalivr.c
U   team/oej/astum/apps/app_meetme.c
U   team/oej/astum/ast_expr2.c
U   team/oej/astum/ast_expr2.h
U   team/oej/astum/ast_expr2f.c
U   team/oej/astum/channel.c
U   team/oej/astum/channels/chan_agent.c
U   team/oej/astum/channels/chan_features.c
U   team/oej/astum/channels/chan_iax2.c
U   team/oej/astum/channels/chan_sip.c
U   team/oej/astum/channels/chan_zap.c
U   team/oej/astum/configs/sip.conf.sample
U   team/oej/astum/funcs/func_md5.c
U   team/oej/astum/include/asterisk/channel.h
U   team/oej/astum/include/asterisk/frame.h
U   team/oej/astum/include/asterisk/stringfields.h
U   team/oej/astum/pbx.c
U   team/oej/astum/res/Makefile
U   team/oej/astum/utils.c

------------------------------------------------------------------------
r8981 | oej | 2008-01-15 16:29:55 -0600 (Tue, 15 Jan 2008) | 277 lines

Merged revisions 8687,8697,8711-8712,8727-8728,8730-8731,8741-8742,8750,8757,8768,8778-8779,8786,8799,8809,8823,8825-8826,8834-8835,8850-8852,8877,8883,8896,8906,8919,8925-8926,8932,8938,8948-8949,8961,8976 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r8687 | russell | 2006-01-25 21:02:12 +0100 (Wed, 25 Jan 2006) | 2 lines

use arg parsing macros for WaitExten and Background (issue ASTERISK-6028)

................
r8697 | kpfleming | 2006-01-26 05:00:05 +0100 (Thu, 26 Jan 2006) | 4 lines

string field manager improvements:
use multiple memory blocks, instead of realloc(), ensuring that field pointers will never become invalid or change
don't run vs(n)printf twice when doing a field build unless required

................
r8711 | oej | 2006-01-26 15:44:23 +0100 (Thu, 26 Jan 2006) | 10 lines

Merged revisions 8710 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8710 | oej | 2006-01-26 15:39:36 +0100 (Thu, 26 Jan 2006) | 2 lines

Issue 5898: Registrations does not get deleted if there's an active SIP dialog

........

................
r8712 | oej | 2006-01-26 15:59:33 +0100 (Thu, 26 Jan 2006) | 2 lines

Add some debugging output when reloading, to be able to follow progress at high debug levels

................
r8727 | russell | 2006-01-26 20:33:27 +0100 (Thu, 26 Jan 2006) | 2 lines

store conference list using linked list macros (issue ASTERISK-6167)

................
r8728 | oej | 2006-01-26 20:38:11 +0100 (Thu, 26 Jan 2006) | 4 lines

Code clean up, inspired by rizzo's comments in issue 5978.
- Don't check for ignore if ignore is always negative
- Add comments to explain what's going on

................
r8730 | russell | 2006-01-26 20:44:16 +0100 (Thu, 26 Jan 2006) | 10 lines

Merged revisions 8729 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8729 | russell | 2006-01-26 14:42:35 -0500 (Thu, 26 Jan 2006) | 2 lines

fix problem with dtmf on e&m (issue ASTERISK-6203)

........

................
r8731 | oej | 2006-01-26 20:47:40 +0100 (Thu, 26 Jan 2006) | 2 lines

Issue ASTERISK-5799 revisited. Thanks rizzo.

................
r8741 | oej | 2006-01-26 21:08:53 +0100 (Thu, 26 Jan 2006) | 2 lines

Formatting fixes, speling eror fiksd ;-)

................
r8742 | russell | 2006-01-26 21:28:52 +0100 (Thu, 26 Jan 2006) | 2 lines

don't redefine the localuser struct for additional use specific to the module (issue ASTERISK-6059)

................
r8750 | oej | 2006-01-26 22:36:41 +0100 (Thu, 26 Jan 2006) | 9 lines

- Move two functions to static that wasn't for some reason
- Add doxygen comments
- Remove un-needed assignment at declaration of variable
- Formatting fixes (whitespace)
- Add optin_debug in front of complex debugging output
- Move forward declarations of functions to top of file
- Fix error message for bad allocation in sip registry
(Note: Review to line 6050 in this too large file)

................
r8757 | russell | 2006-01-27 01:31:05 +0100 (Fri, 27 Jan 2006) | 2 lines

don't re-define the localuser struct for custom use inside the module (issue ASTERISK-6059)

................
r8768 | tilghman | 2006-01-27 02:04:03 +0100 (Fri, 27 Jan 2006) | 11 lines


Merged revisions 8758 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8758 | tilghman | 2006-01-26 18:52:12 -0600 (Thu, 26 Jan 2006) | 2 lines

Bug 6072 - Revisions to the source bison and flex files don't auto-regenerate these files

........

................
r8778 | russell | 2006-01-27 06:33:20 +0100 (Fri, 27 Jan 2006) | 2 lines

add /usr/local/lib to SOLINK (issue ASTERISK-6163)

................
r8779 | russell | 2006-01-27 06:39:20 +0100 (Fri, 27 Jan 2006) | 2 lines

remove some more redundant flags

................
r8786 | oej | 2006-01-27 09:07:43 +0100 (Fri, 27 Jan 2006) | 10 lines

Merged revisions 8785 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8785 | oej | 2006-01-27 09:02:16 +0100 (Fri, 27 Jan 2006) | 2 lines

Issue 6362 - Register without Contact: and Expires: fails (reporter: op)

........

................
r8799 | mattf | 2006-01-28 00:55:37 +0100 (Sat, 28 Jan 2006) | 2 lines

Add rdnis rx/tx support to chan_iax2 (ASTERISK-6188)

................
r8809 | oej | 2006-01-28 14:54:25 +0100 (Sat, 28 Jan 2006) | 2 lines

Blocking revision 8808 from trunk. It's already fixed in trunk.

................
r8823 | oej | 2006-01-28 16:02:29 +0100 (Sat, 28 Jan 2006) | 2 lines

Simplify code for building Call ID's, create generic random string function

................
r8825 | oej | 2006-01-28 16:28:58 +0100 (Sat, 28 Jan 2006) | 7 lines

- Moving forward declarations to one block
- Moving global variables to one block
- Moving global networking variables to one block
- Small whitespace changes
- Renaming a few more global channel settings to global_ for clarity
(No functional changes)

................
r8826 | oej | 2006-01-28 16:34:27 +0100 (Sat, 28 Jan 2006) | 2 lines

Doxygen updates

................
r8834 | oej | 2006-01-28 18:00:05 +0100 (Sat, 28 Jan 2006) | 3 lines

Change booleans to TRUE/FALSE.
(At some point we should implement these as enums to simplify debugging)

................
r8835 | oej | 2006-01-28 18:17:37 +0100 (Sat, 28 Jan 2006) | 3 lines

- Remove unused "resetinvite" variable
- Use TRUE/FALSE for fastrestart

................
r8850 | kpfleming | 2006-01-29 06:07:04 +0100 (Sun, 29 Jan 2006) | 5 lines

make ast_read() able to handle channel read()/exception() methods that return a chain of frames
cleanup code in ast_read()
add AST_FRAME_DTMF_BEGIN and AST_FRAME_DTMF_END so that variable-length DTMF events can be supported
teach chan_zap to send DTMF_BEGIN and DTMF_END when appropriate

................
r8851 | kpfleming | 2006-01-29 06:15:24 +0100 (Sun, 29 Jan 2006) | 3 lines

add channel-driver callbacks for variable length DTMF
teach ast_write() to call those new callbacks

................
r8852 | kpfleming | 2006-01-29 06:29:29 +0100 (Sun, 29 Jan 2006) | 2 lines

don't use tone generation for DTMF if the channel driver only supports begin/end (will need more work to translate non-variable events into begin/end events)

................
r8877 | markster | 2006-01-30 04:13:33 +0100 (Mon, 30 Jan 2006) | 2 lines

Merge Rizzo's waitfor update (bug ASTERISK-4468)

................
r8883 | tilghman | 2006-01-30 07:07:05 +0100 (Mon, 30 Jan 2006) | 2 lines

Bug 6378 - deprecate CHECK_MD5 function

................
r8896 | oej | 2006-01-30 15:12:39 +0100 (Mon, 30 Jan 2006) | 2 lines

Document installation changes for BSD users.

................
r8906 | kpfleming | 2006-01-30 18:09:55 +0100 (Mon, 30 Jan 2006) | 10 lines

Merged revisions 8905 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8905 | kpfleming | 2006-01-30 11:08:28 -0600 (Mon, 30 Jan 2006) | 2 lines

disable buggy PRI user-user code until it can be fixed

........

................
r8919 | oej | 2006-01-30 19:51:02 +0100 (Mon, 30 Jan 2006) | 6 lines

Issue ASTERISK-5643
- simplification of check_auth
- constifications
- whitespace changes
Rizzo's patch with some changes

................
r8925 | oej | 2006-01-30 20:09:08 +0100 (Mon, 30 Jan 2006) | 3 lines

Issue ASTERISK-5876 - Don't send 403 on bad auth (correcting one of my old mistakes...) Reported by maik.
Patch inspired by, but not the patch in the bug tracker.

................
r8926 | oej | 2006-01-30 20:50:39 +0100 (Mon, 30 Jan 2006) | 2 lines

Issue 5892: Set a minimum T1 timer for calls. Reporter: twisted

................
r8932 | oej | 2006-01-30 21:36:38 +0100 (Mon, 30 Jan 2006) | 8 lines

- Doxygen and comments updates
- Moving structure declarations to top of file with the rest
- Adding some forward declarations for RTP interface functions

(All these changes to position in file are in preparation for splitting chan_sip up
into several files at some point in the future)


................
r8938 | mogorman | 2006-01-30 22:16:43 +0100 (Mon, 30 Jan 2006) | 3 lines

reverting  blocks 9 and 10 from revision 7547
fixes bug 6080

................
r8948 | kpfleming | 2006-01-31 01:17:43 +0100 (Tue, 31 Jan 2006) | 2 lines

increment for recent ast_channel change

................
r8949 | russell | 2006-01-31 01:24:34 +0100 (Tue, 31 Jan 2006) | 3 lines

add a note to hopefully decrease the chance that someone forgets to increment
.cleancount after changing the ast_channel structure

................
r8961 | kpfleming | 2006-01-31 04:45:09 +0100 (Tue, 31 Jan 2006) | 2 lines

Yes Virginia, Zaptel does support native ALAW

................
r8976 | oej | 2006-01-31 15:30:09 +0100 (Tue, 31 Jan 2006) | 3 lines

- Change "prefs" to "default_prefs" and move declaration to "default" group
- Add doxygen comments

................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=8981

By: Digium Subversion (svnbot) 2008-01-15 16:29:58.000-0600

Repository: asterisk
Revision: 8982

_U  team/oej/sipregister/
U   team/oej/sipregister/.cleancount
U   team/oej/sipregister/UPGRADE.txt
U   team/oej/sipregister/apps/app_meetme.c
U   team/oej/sipregister/channel.c
U   team/oej/sipregister/channels/chan_agent.c
U   team/oej/sipregister/channels/chan_features.c
U   team/oej/sipregister/channels/chan_sip.c
U   team/oej/sipregister/channels/chan_zap.c
U   team/oej/sipregister/configs/sip.conf.sample
U   team/oej/sipregister/funcs/func_md5.c
U   team/oej/sipregister/include/asterisk/channel.h
U   team/oej/sipregister/include/asterisk/frame.h

------------------------------------------------------------------------
r8982 | oej | 2008-01-15 16:29:57 -0600 (Tue, 15 Jan 2008) | 111 lines

Merged revisions 8850-8852,8877,8883,8896,8906,8919,8925-8926,8932,8938,8948-8949,8961,8976 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r8850 | kpfleming | 2006-01-29 06:07:04 +0100 (Sun, 29 Jan 2006) | 5 lines

make ast_read() able to handle channel read()/exception() methods that return a chain of frames
cleanup code in ast_read()
add AST_FRAME_DTMF_BEGIN and AST_FRAME_DTMF_END so that variable-length DTMF events can be supported
teach chan_zap to send DTMF_BEGIN and DTMF_END when appropriate

................
r8851 | kpfleming | 2006-01-29 06:15:24 +0100 (Sun, 29 Jan 2006) | 3 lines

add channel-driver callbacks for variable length DTMF
teach ast_write() to call those new callbacks

................
r8852 | kpfleming | 2006-01-29 06:29:29 +0100 (Sun, 29 Jan 2006) | 2 lines

don't use tone generation for DTMF if the channel driver only supports begin/end (will need more work to translate non-variable events into begin/end events)

................
r8877 | markster | 2006-01-30 04:13:33 +0100 (Mon, 30 Jan 2006) | 2 lines

Merge Rizzo's waitfor update (bug ASTERISK-4468)

................
r8883 | tilghman | 2006-01-30 07:07:05 +0100 (Mon, 30 Jan 2006) | 2 lines

Bug 6378 - deprecate CHECK_MD5 function

................
r8896 | oej | 2006-01-30 15:12:39 +0100 (Mon, 30 Jan 2006) | 2 lines

Document installation changes for BSD users.

................
r8906 | kpfleming | 2006-01-30 18:09:55 +0100 (Mon, 30 Jan 2006) | 10 lines

Merged revisions 8905 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r8905 | kpfleming | 2006-01-30 11:08:28 -0600 (Mon, 30 Jan 2006) | 2 lines

disable buggy PRI user-user code until it can be fixed

........

................
r8919 | oej | 2006-01-30 19:51:02 +0100 (Mon, 30 Jan 2006) | 6 lines

Issue ASTERISK-5643
- simplification of check_auth
- constifications
- whitespace changes
Rizzo's patch with some changes

................
r8925 | oej | 2006-01-30 20:09:08 +0100 (Mon, 30 Jan 2006) | 3 lines

Issue ASTERISK-5876 - Don't send 403 on bad auth (correcting one of my old mistakes...) Reported by maik.
Patch inspired by, but not the patch in the bug tracker.

................
r8926 | oej | 2006-01-30 20:50:39 +0100 (Mon, 30 Jan 2006) | 2 lines

Issue 5892: Set a minimum T1 timer for calls. Reporter: twisted

................
r8932 | oej | 2006-01-30 21:36:38 +0100 (Mon, 30 Jan 2006) | 8 lines

- Doxygen and comments updates
- Moving structure declarations to top of file with the rest
- Adding some forward declarations for RTP interface functions

(All these changes to position in file are in preparation for splitting chan_sip up
into several files at some point in the future)


................
r8938 | mogorman | 2006-01-30 22:16:43 +0100 (Mon, 30 Jan 2006) | 3 lines

reverting  blocks 9 and 10 from revision 7547
fixes bug 6080

................
r8948 | kpfleming | 2006-01-31 01:17:43 +0100 (Tue, 31 Jan 2006) | 2 lines

increment for recent ast_channel change

................
r8949 | russell | 2006-01-31 01:24:34 +0100 (Tue, 31 Jan 2006) | 3 lines

add a note to hopefully decrease the chance that someone forgets to increment
.cleancount after changing the ast_channel structure

................
r8961 | kpfleming | 2006-01-31 04:45:09 +0100 (Tue, 31 Jan 2006) | 2 lines

Yes Virginia, Zaptel does support native ALAW

................
r8976 | oej | 2006-01-31 15:30:09 +0100 (Tue, 31 Jan 2006) | 3 lines

- Change "prefs" to "default_prefs" and move declaration to "default" group
- Add doxygen comments

................

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=8982