Commit Graph

5653 Commits

Author SHA1 Message Date
Steve Murphy
c6b6a67364 Merged revisions 82261 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82261 | murf | 2007-09-11 14:36:15 -0600 (Tue, 11 Sep 2007) | 1 line

this change should fix issue # 10659 -- what I worry about is how many other bug reports it may generate. Hopefully, we can please the/a majority. Hopefully. We shall see. Calls not marked ANSWERED and with only one channel name will not be posted. This should eliminate the double CDR's.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82262 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-11 20:49:21 +00:00
Joshua Colp
0dc7b3e8f8 (closes issue #10666)
Reported by: arkadia
Patches:
      cdr_lockorder.patch uploaded by arkadia (license 233)
Optimize CDR stuff a bit.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82248 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-11 15:34:40 +00:00
Joshua Colp
e4c8ac7abd (closes issue #10695)
Reported by: junky
Patches:
      count_showconn.diff uploaded by junky (license 177)
Provide a count of connected users to manager.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82232 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-11 13:15:37 +00:00
Joshua Colp
a7d3a24fa5 (closes issue #10692)
Reported by: snuffy
Patches:
      minivm.diff uploaded by snuffy (license 35)
Instead of using err (which is not available under Solaris) use fdprintf with stderr.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82231 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-11 13:10:04 +00:00
Jason Parker
10f28b2d79 Add a counter to the 'database deltree' CLI command.
Note: this is slightly different than the initial patch, because I felt
 that using res <= 0 would be a change in behavior.

Closes issue #10687, patch by junky


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82154 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-10 17:39:08 +00:00
Jason Parker
ccb6b0065d Add counter to 'database show' CLI command.
(also a minor whitespace change that I found along the way)

Closes issue #10683, patch by junky


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82125 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-10 16:24:29 +00:00
Steve Murphy
6cc72a0e0d Changes applied from marta's team/marta/astobj2 branch to solve a race condition
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82124 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-10 16:19:45 +00:00
Russell Bryant
9dba50322d Merged revisions 81997 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81997 | russell | 2007-09-08 13:41:32 -0500 (Sat, 08 Sep 2007) | 2 lines

Fix a small memory leak.  ast_unregister_atexit() did not free the entry it removed.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81998 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-08 18:45:51 +00:00
Joshua Colp
a565584d05 Fix memory issue that crept up with Russell's testing. It is *not* proper to free the frame we get in ast_write.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81858 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-06 22:34:44 +00:00
Luigi Rizzo
8e62c6c4d0 various changes to the documentation, and redefinition of
ao2_hash_fn and ao2_callback_fn typedefs, in preparation
to more cleanup of the _search_flags

Please do not merge this change to 1.4 yet - there are no
functional changes anyways.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81712 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-06 15:43:49 +00:00
Russell Bryant
8bcfddc8ec Merged revisions 81599 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81599 | russell | 2007-09-05 15:53:41 -0500 (Wed, 05 Sep 2007) | 11 lines

Fix an issue that can occur when you do an attended transfer to parking.  If
you complete the transfer before the announcement of the parking spot finishes,
then the channel being parked will hear the remainder of the announcement.
These changes make it so that will not happen anymore.

Basically, res_features sets a flag on the channel is playing the announcement
to so that the file streaming core knows that it needs to watch out for a
channel masquerade, and if it occurs, to abort the announcement.

(closes BE-182)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81600 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-05 20:58:19 +00:00
Jason Parker
d72ea80a00 Doxygen cleanups/fixes.
Closes issue #10654, patch by snuffy


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81560 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-05 16:31:39 +00:00
Steve Murphy
dcb85e2456 this set of changes fixes issue # 10643 by keeping track of the last object defined in a file, and attaching any accumulated comments to that object (category header or variable declaration). The file_save routine also had to be upgraded to output these trailing comments. Config.h was modified to include the trailing comment list on categories and variables.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-05 14:47:45 +00:00
Joshua Colp
1df4047b4a Finish up commit from revision 81452 by removing last remnants of strlcat/strlcpy checks.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81459 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-05 00:53:14 +00:00
Russell Bryant
664d1d879b Don't check for and include strlcpy and strlcat in editline. We also include
them directly in Asterisk.  For platforms that need them (like my mac), you
will get a linker error due to the functions being included twice.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81452 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-04 19:51:37 +00:00
Russell Bryant
9bda1c5a94 Merged revisions 81448 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81448 | russell | 2007-09-04 13:37:44 -0500 (Tue, 04 Sep 2007) | 4 lines

Remove the typedefs on ao2_container and ao2_iterator.  This is simply because
we don't typedef objects anywhere else in Asterisk, so we might as well make
this follow the same convention.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81449 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-04 18:40:07 +00:00
Joshua Colp
352fd9d942 Merged revisions 81437 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81437 | file | 2007-09-04 10:46:23 -0300 (Tue, 04 Sep 2007) | 4 lines

(closes issue #10476)
Reported by: mdu113
Only look for the end of a digit when waiting for a digit. This in turn disables emulation in the core.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81438 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-04 13:47:33 +00:00
Joshua Colp
611d112eb7 Merged revisions 81435 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81435 | file | 2007-09-04 10:10:56 -0300 (Tue, 04 Sep 2007) | 7 lines

(closes issue #10610)
Reported by: john
Patches:
      dns.c.patch uploaded by john (license 218)
Tested by: mvanbaak
Don't return a match if no SRV record actually exists.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81436 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-04 13:11:49 +00:00
Tilghman Lesher
3305af34d6 Once we get past the file checks, we're loading, so clear the FILEUNCHANGED flag (fixes #include) (closes issue #10629)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81432 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-03 18:01:58 +00:00
Tilghman Lesher
87044d37a0 We shouldn't use a filename blindly without checking to make sure it's unused first
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81430 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-02 14:37:53 +00:00
Mark Michelson
1bfe10997b Merged revisions 81426 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81426 | mmichelson | 2007-09-01 01:02:06 -0500 (Sat, 01 Sep 2007) | 4 lines

Making match_by_addr into ao2_match_by_addr and making it available
everywhere since it could be a handy callback to have


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81427 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-01 06:03:22 +00:00
Steve Murphy
837ae96aeb Merged revisions 81392 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81392 | murf | 2007-08-30 15:11:48 -0600 (Thu, 30 Aug 2007) | 1 line

via issue 10599, where 'CDR already initialized' messages are being generated. Since all channels will have an init'd CDR attached at creation time, this message is now particularly useless. Removed.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81393 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-30 21:16:20 +00:00
Tilghman Lesher
262578a60f A schedule id of 0 is not possible and is used to flag that we want to add a new item
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81390 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-30 20:31:45 +00:00
Tilghman Lesher
43adcde7bf Always force reread of the config when we're rotating the log file (closes issue #10598)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-30 17:51:46 +00:00
Joshua Colp
56e74f0dde (closes issue #10603)
Reported by: jmls
Patches:
      pbx.diff uploaded by jmls (license 141)
Add REASON dialplan variable for when an originated call fails and the failed extension is executed.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81372 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-30 14:42:41 +00:00
Steve Murphy
876ebb3ec7 init newer so compile won't complain.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81363 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 21:30:26 +00:00
Russell Bryant
8555b694ee make trunk build again. murf will have to review this to see if it was the right fix, as it is related to his last change.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81362 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 21:25:07 +00:00
Steve Murphy
b5cd67adc3 This code was in team/murf/bug8684-trunk; it should fix bug 8684 in trunk. I didn't add it to 1.4 yet, because it's not entirely clear to me if this is a bug fix or an enhancement. A lot of files were affected by small changes like ast_variable_new getting an added arg, for the file name the var was defined in; ast_category_new gets added args of filename and lineno; ast_category and ast_variable structures now record file and lineno for each entry; a list of all #include and #execs in a config file (or any of its inclusions are now kept in the ast_config struct; at save time, each entry is put back into its proper file of origin, in order. #include and #exec directives are folded in properly. Headers indicating that the file was generated, are generated also for each included file. Some changes to main/manager.c to take care of file renaming, via the UpdateConfig command. Multiple inclusions of the same file are handled by exploding these into multiple include files, uniquely named. There's probably more, but I can't remember it right now.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81361 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 20:55:40 +00:00
Russell Bryant
8a6c04a0a9 Try to clarify the rules on changing ast_event and ast_event_ie
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81356 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 19:41:16 +00:00
Russell Bryant
94d9d29f18 Fix parenthesis from my last commit
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81355 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 19:33:57 +00:00
Russell Bryant
22de9a1c68 Change pointer aritmetic on void * to char *
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81354 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 18:33:31 +00:00
Russell Bryant
dce06fed1d there is not actually code that sends these over the network in trunk yet
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81353 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 18:27:48 +00:00
Joshua Colp
e311ae98d1 Return ast_event_get_ie_raw to using an iterator and fix logic in ast_event_iterator_next.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81348 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 16:25:30 +00:00
Joshua Colp
a3b8cb670e This concludes bringing trunk back to a working state.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81345 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 16:07:35 +00:00
Joshua Colp
c9445d4a68 To keep others happy... revert part of my additions so trunk works.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81344 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 16:03:51 +00:00
Russell Bryant
d99440e2ed Merged revisions 81342 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r81342 | russell | 2007-08-29 10:57:29 -0500 (Wed, 29 Aug 2007) | 3 lines

If chan_h323 is not being built, don't use g++ to do the final link of Asterisk.
(in response to a question on the asterisk-dev list)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81343 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 15:59:10 +00:00
Joshua Colp
2351d789fd Add API calls for iterating through an event. This should allow events to have multiple information elements (while there was nothing preventing it before you could not actually access any except the first one).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81334 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 15:19:11 +00:00
Joshua Colp
f4fa5a228a Add some read/write locking magic to make logger reload operate again.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81290 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-28 21:35:20 +00:00
Tilghman Lesher
f5a14167f3 Support better rotation of log files to be more like system logging (closes issue #10398)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81277 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-28 20:03:48 +00:00
Russell Bryant
040a5f20f9 * Constify the uid field of channel datastores
* Convert some spaces to tabs in func_volume
* Add a note in channel.h making it clear that none of the datastore API calls
  lock the channel they are given, so the channel should be locked before
  calling the functions that take a channel argument.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81260 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-28 18:32:56 +00:00
Russell Bryant
43e9b0f67c (closes issue #7852)
Reported by: nic_bellamy
Patches:
      2006-10-03_svn_44249_voicemail_lockmode_v3.patch uploaded by nic_bellamy (license 213)

Add support for configurable file locking methods.  The default is "lockfile",
which is the old behavior.  There is an additional option, "flock", which is
intended for use in situations where the lockfile method will not work, such as
with SMB/CIFS mounts.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81233 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-28 16:28:26 +00:00
Joshua Colp
44aacc96f1 Merged revisions 80974 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80974 | file | 2007-08-27 10:20:31 -0300 (Mon, 27 Aug 2007) | 4 lines

(closes issue #10562)
Reported by: idkpmiller
Correct jitter value output in the CLI to be as expected.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80975 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-27 13:23:36 +00:00
Russell Bryant
7ddccc897f Merged revisions 80820 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80820 | russell | 2007-08-24 15:24:05 -0500 (Fri, 24 Aug 2007) | 7 lines

Improve the debouncing logic in the DTMF detector to fix some reliability
issues.  Previously, this code used a shift register of hits and non-hits.
However, if the start of the digit isn't clean, it is possible for the
leading edge detector to miss the digit.  These changes replace the flawed
shift register logic and also does the debouncing on the trailing edge as well.
(closes issue #10535, many thanks to softins for the patch)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80821 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-24 20:25:39 +00:00
Tilghman Lesher
f8c93488d5 Fix documentation for Set (closes issue #10549)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80817 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-24 19:50:16 +00:00
Steve Murphy
9931947a6e Merged revisions 80789 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80789 | murf | 2007-08-24 12:52:15 -0600 (Fri, 24 Aug 2007) | 1 line

From a complaint by jmls, I realize that the message in cdr_disposition is unnecessary. To get failure disposition, just return -1; no use having more than one case do that.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80790 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-24 19:03:39 +00:00
Joshua Colp
c755851bc8 Return trunk to a working state by including compat.h in minimime.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80453 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-23 13:37:20 +00:00
Jason Parker
b875ca68e1 Convert minimime to use the proper uint*_t types, rather than u_int*_t
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80429 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 23:26:02 +00:00
Russell Bryant
4328c75281 Merged revisions 80424 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80424 | russell | 2007-08-22 17:40:27 -0500 (Wed, 22 Aug 2007) | 10 lines

When converting this code to use the list macros, I changed it so objects are
added to the head of a bucket instead of the tail.  However, while looking over
code with mmichelson, we noticed that the algorithm used in ao2_iterator_next
requires that items are added to the tail.  This wouldn't have caused any huge
problem, but it wasn't correct.  It meant that if an object was added to a
container while you were iterating it, and it was added to the same bucket that
the current element is in, then the new object would be returned by 
ao2_iterator_next, and any other objects in the bucket would be bypassed in
the traversal.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80425 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 22:43:12 +00:00
Russell Bryant
50d7fc81aa Merged revisions 80362 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80362 | russell | 2007-08-22 15:21:36 -0500 (Wed, 22 Aug 2007) | 34 lines

Merge changes from team/russell/iax_refcount.

This set of changes fixes problems with the handling of iax2_user and iax2_peer
objects.  It was very possible for a thread to still hold a reference to one of
these objects while a reload operation tries to delete them.  The fix here is to
ensure that all references to these objects are tracked so that they can't go away
while still in use.

To accomplish this, I used the astobj2 reference counted object model.  This
code has been in one of Luigi Rizzo's branches for a long time and was primarily
developed by one of his students, Marta Carbone.  I wanted to go ahead and bring
this in to 1.4 because there are other problems similar to the ones fixed by these
changes, so we might as well go ahead and use the new astobj if we're going to go
through all of the work necessary to fix the problems.

As a nice side benefit of these changes, peer and user handling got more efficient.
Using astobj2 lets us not hold the container lock for peers or users nearly as long
while iterating.  Also, by changing a define at the top of chan_iax2.c, the objects
will be distributed in a hash table, drastically increasing lookup speed in these
containers, which will have a very big impact on systems that have a large number of
users or peers.

The use of the hash table will be made the default in trunk.  It is not the default
in 1.4 because it changes the behavior slightly.  Previously, since peers and users
were stored in memory in the same order they were specified in the configuration file,
you could influence peer and user matching order based on the order they are specified
in the configuration.  The hash table does not guarantee any order in the container,
so this behavior will be going away.  It just means that you have to be a little
more careful ensuring that peers and users are matched explicitly and not forcing
chan_iax2 to have to guess which user is the right one based on secret, host, and
access list settings, instead of simply using the username.

If you have any questions, feel free to ask on the asterisk-dev list.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 20:44:23 +00:00
Joshua Colp
91d9c110af Merged revisions 80255 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r80255 | file | 2007-08-22 13:14:38 -0300 (Wed, 22 Aug 2007) | 4 lines

(closes issue #10526)
Reported by: sinistermidget
Revert commit from issue #10355 and return timestamp skew to 640. 

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80256 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 16:16:01 +00:00