dect
/
asterisk
Archived
13
0
Fork 0
Commit Graph

15455 Commits

Author SHA1 Message Date
dhubbard 43c6eb8c8f pbx uses a taskprocessor for device state changes
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115272 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-03 04:12:54 +00:00
dhubbard fef763f8ea app_queue uses a taskprocessor for device state changes
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115270 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-03 03:57:42 +00:00
dhubbard c5a9cc7867 A taskprocessor is an object that has a name, a task queue, and an event processing thread. Modules reference a taskprocessor, push tasks into the taskprocessor as needed, and unreference the taskprocessor when the taskprocessor is no longer needed.
A task wraps a callback function pointer and a data pointer and is managed internal to the taskprocessor subsystem.  The callback function is responsible for releasing task data.

Taskprocessor API
 * ast_taskprocessor_get(..) - returns a reference to a taskprocessor
 * ast_taskprocessor_unreference(..) - releases reference to a taskprocessor
 * ast_taskprocessor_push(..) - push a task into a taskprocessor queue

Check doxygen for more details


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115268 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-03 03:40:32 +00:00
bbryant afcd3c8a40 Blocked revisions 115257 via svnmerge
........
r115257 | bbryant | 2008-05-02 15:25:42 -0500 (Fri, 02 May 2008) | 2 lines

Add new "pri show version" command to show the libpri version for support reasons.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115258 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-02 20:26:00 +00:00
mmichelson 5825c7d07d Make res/snmp/agent.c build
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115199 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-02 14:51:59 +00:00
mmichelson e8af83cb19 Merged revisions 115196 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r115196 | mmichelson | 2008-05-02 09:28:19 -0500 (Fri, 02 May 2008) | 6 lines

Clarify a comment that was, well, just wrong. It turns out that
ignoring the way that macros expand. Instead, I have clarified in the
comment why the macro will work even if the scheduler id for the
task to be deleted changes during the execution of the macro.


........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115197 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-02 14:28:55 +00:00
tilghman 315b136de3 Okay, maybe FreeBSD will like this better.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115159 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-02 02:56:39 +00:00
tilghman 748f3cf456 Add attributes to various API calls, to help track down bugs (and remove a deprecated function)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115157 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-02 02:33:04 +00:00
tilghman 927870cd7d Merged revisions 115102 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r115102 | tilghman | 2008-05-01 18:20:25 -0500 (Thu, 01 May 2008) | 2 lines

Change the comment of deprecated to an actual compiler deprecation

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115104 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 23:21:13 +00:00
bbryant 99891829fa Add two new console commands "pri show version" and "ss7 show version" that will show the version of each library respectively.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115078 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 23:09:08 +00:00
tilghman d1cc29c9c1 Modify TIMEOUT() to be accurate down to the millisecond.
(closes issue #10540)
 Reported by: spendergrass
 Patches: 
       20080417__bug10540.diff.txt uploaded by Corydon76 (license 14)
 Tested by: blitzrage


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115076 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 23:06:23 +00:00
russell 995531248a Merge changes from team/russell/smdi-msg-searching
This commit adds some new features to the SMDI_MSG_RETRIEVE() dialplan function.
Previously, this function only allowed searching by the forwarding station.
I have added some options to allow you to also search for messages in the queue
by the message desk terminal ID, as well as the message desk number.

This originally came up as a suggestion on the asterisk-dev mailing list.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115021 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 19:05:36 +00:00
tilghman 3390bbb3b6 Merged revisions 115017 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r115017 | tilghman | 2008-05-01 13:59:08 -0500 (Thu, 01 May 2008) | 6 lines

'#' is another reserved character for URIs that also needs to be escaped.
(closes issue #10543)
 Reported by: blitzrage
 Patches: 
       20080418__bug10543.diff.txt uploaded by Corydon76 (license 14)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@115018 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 19:00:18 +00:00
bbryant 3aaef20558 Add "read" capability to new libspeex functions in func_speex.c.
func_speex.c is based on contributions from Switchvox.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114977 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 18:28:38 +00:00
russell bb32a8bc65 Clarify the deprecation notice about Macro() to note that it will not be removed
for the sake of backwards compatibility, since it is a non-trivial task to convert
existing large dialplans that depend on Macro() to use GoSub(), instead.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114931 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 17:28:25 +00:00
bbryant 26a549ebfb Add two new dialplan functions from libspeex for applying audio gain control
and denoising to a channel, AGC() and DENOISE(). Also included, is a change 
to the audiohook API to add a new function (ast_audiohook_remove) that can 
remove an audiohook from a channel before it is detached.

This code is based on a contribution from Switchvox.


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114926 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 16:57:19 +00:00
qwell 46a00af5ab Allow dringXrange to properly default to 10, as was done in 1.4.
dringXrange is a new feature that was added, and it attempted to default, but only when the option was specified.

(closes issue #12536)
Reported by: bjm
Patches:
      12536-dringXrange.diff uploaded by qwell (license 4)
Tested by: bjm


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114922 f38db490-d61c-443f-a65b-d21fe96a405b
2008-05-01 16:49:24 +00:00
file c4cf6f9132 Add support for specifying the registration expiry on a per registration basis in the register line. This comes from a Switchvox patch. (issue AST-24)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114912 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 20:51:17 +00:00
mmichelson ad5fb449de Adding new configuration options to app_queue. This adds two new values
to announce-position, "limit" and "more," as well as a new option, 
announce-position-limit. For more information on the use of these options,
see CHANGES or configs/queues.conf.sample.

(closes issue #10991)
Reported by: slavon
Patches:
      app_q.diff uploaded by slavon (license 288)
Tested by: slavon, putnopvut



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114906 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 19:30:41 +00:00
tilghman 712c72b0df Lock around variables retrieved, and copy the values, if they stay persistent,
since another thread could remove them.
(closes issue #12541)
 Reported by: snuffy
 Patches: 
       bug_12156_apps.diff uploaded by snuffy (license 35)
       Several additional changes by me


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114904 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 19:21:04 +00:00
oej 829d44846c Merged revisions 114890 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114890 | oej | 2008-04-30 18:23:17 +0200 (Ons, 30 Apr 2008) | 7 lines

Don't crash on bad SIP replys.
Fix created in Huntsville together with Mark M (putnopvut)

(closes issue #12363)
Reported by: jvandal
Tested by: putnopvut, oej

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114899 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 16:55:49 +00:00
russell 4e64636c2b Merged revisions 114891 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114891 | russell | 2008-04-30 11:30:01 -0500 (Wed, 30 Apr 2008) | 28 lines

Merge changes from team/russell/iax2_find_callno and iax2_find_callno_1.4

These changes address a critical performance issue introduced in the latest
release.  The fix for the latest security issue included a change that made
Asterisk randomly choose call numbers to make them more difficult to guess by
attackers.  However, due to some inefficient (this is by far, an understatement)
code, when Asterisk chose high call numbers, chan_iax2 became unusable after
just a small number of calls.  On a small embedded platform, it would not be
able to handle a single call.  On my Intel Core 2 Duo @ 2.33 GHz, I couldn't
run more than about 16 IAX2 channels.  Ouch.

These changes address some performance issues of the find_callno() function
that have bothered me for a very long time.  On every incoming media frame,
it iterated through every possible call number trying to find a matching
active call.  This involved a mutex lock and unlock for each call number
checked.  So, if the random call number chosen was 20000, then every media
frame would cause 20000 locks and unlocks.  Previously, this problem was
not as obvious since Asterisk always chose the lowest call number it could.

A second container for IAX2 pvt structs has been added.  It is an astobj2
hash table.  When we know the remote side's call number, the pvt goes into
the hash table with a hash value of the remote side's call number.  Then,
lookups for incoming media frames are a very fast hash lookup instead of an
absolutely insane array traversal.

In a quick test, I was able to get more than 3600% more IAX2 channels
on my machine with these changes.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114892 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 16:34:24 +00:00
jpeeler dabdb0e658 Fixes a bug where if a stream monitor thread was not created (caused from failure of opening or starting the stream) pthread_cancel was called with an invalid thread ID.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114888 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 16:14:43 +00:00
kpfleming 22feb5bb79 Merged revisions 114880 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114880 | kpfleming | 2008-04-30 09:46:57 -0500 (Wed, 30 Apr 2008) | 2 lines

use the ARRAY_LEN macro for indexing through the iaxs/iaxsl arrays so that the size of the arrays can be adjusted in one place, and change the size of the arrays from 32768 calls to 2048 calls when LOW_MEMORY is defined

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114884 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 14:49:51 +00:00
kpfleming b6f5c3e5d6 Merged revisions 114875 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114875 | kpfleming | 2008-04-30 07:14:07 -0500 (Wed, 30 Apr 2008) | 2 lines

pay attention to *all* header files for dependency tracking, not just the local ones (inspired by r578 of asterisk-addons by tilghman)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114876 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 12:15:43 +00:00
tilghman c230dbcc21 Document the Incomplete application addition.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114874 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-30 05:05:25 +00:00
jpeeler eb73cb3e4a Fixes a problem where all the templates were marked as dead no matter what. The templates should only be marked as dead if a configuration file has been successfully loaded and has changes. Bug found while making API documentation for 1.6.0.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114866 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 22:54:14 +00:00
mmichelson d5d920b890 Patching app_chanspy to jibe better with what is documented. This allows for
a colon-delimited list of spygroups to be specified when calling the ChanSpy application
with the 'g' option. Prior to this, you could only specify a single group when using the
'g' option.

I also have upped the maximum number of spygroups to 128 and added a #define so that this
can be easily increased or decreased later.

(closes issue #12497)
Reported by: jsmith
Patches:
      app_chanspy_multiple_groups_v2.patch uploaded by jsmith (license 15)
Tested by: atis, jvandal



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114857 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 21:07:36 +00:00
qwell bf2873ddd9 Fix formatting
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114852 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 20:05:48 +00:00
mmichelson 312e4a569d Merged revisions 114848 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114848 | mmichelson | 2008-04-29 14:40:06 -0500 (Tue, 29 Apr 2008) | 14 lines

Use the MACRO_CONTEXT and MACRO_EXTEN channel variables instead of the channel's macrocontext
and macroexten fields. This is needed because if macros are daisy-chained, the incorrect 
context and extension are placed on the new channel. I also added locking to the channel prior
to accessing these variables as noted in trunk's janitor project file.


(closes issue #12549)
Reported by: darren1713
Patches:
      app_queue.c.macroextenpatch uploaded by darren1713 (license 116)
	       (with modifications from me)
Tested by: putnopvut


........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114849 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 19:42:04 +00:00
kpfleming f11bdacca7 fix this logic to actually be correct... the fd can't be *both* -1 and an array index to be checked in rfds/efds (bug found by gcc-4.3)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114845 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 18:58:48 +00:00
mmichelson bcd5162d10 Make app_directory dependent on app_voicemail. This is because the function
which says the person's name is handled inside app_voicemail now.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114841 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 18:48:26 +00:00
mmichelson 531c9307d1 Since there is now a globally available function for saying someone's name, a LOT of
functions in app_directory can be removed since the ODBC-specific lookups are accomplished
within app_voicemail. This change greatly reduces the amount of lines in app_directory that
were solely for the purpose of looking up a name when ODBC_STORAGE is specified for voicemail.

This commit also makes the name-saying interruptable via DTMF.



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114834 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 17:56:13 +00:00
mmichelson b473c5b6bf Fix a crash happening in app_directory. This crash would occur if a users.conf existed.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114832 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 17:31:26 +00:00
qwell 54440f480c Merged revisions 114829 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114829 | qwell | 2008-04-29 12:08:55 -0500 (Tue, 29 Apr 2008) | 1 line

Change warning message to debug, since there are cases where 0 results is perfectly fine.
........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114830 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 17:10:55 +00:00
kpfleming f14519cd11 Merged revisions 114823 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r114823 | kpfleming | 2008-04-29 07:53:12 -0500 (Tue, 29 Apr 2008) | 10 lines

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

........
r114822 | kpfleming | 2008-04-29 07:52:32 -0500 (Tue, 29 Apr 2008) | 2 lines

stop script from appending source code if run multiple times

........

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


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114824 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-29 12:54:31 +00:00
mmichelson fc66a44580 Adding a new option 'n' to app_chanspy. This option allows for the name of the spied-on
party to be spoken instead of the channel name or number.

This was accomplished by adding a new function pointer to point to a function in app_voicemail
which retrieves the name file and plays it. This makes for an easy way that applications may play
a user's name should it be necessary. app_directory, in particular, can be simplified greatly by
this change.

This change comes as a suggestion from Switchvox, which already has this feature. AST-23


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114813 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-28 22:38:07 +00:00
mattf 0e7d4a984d Fix deadlock issue in chan_zap with libss7 due to channel variables being set with the channel pvt lock being held. #12512
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114776 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-28 17:00:38 +00:00
tilghman ab1d90ba28 Add incomplete matching to PBX code and app_dial
(closes issue #12351)
 Reported by: Corydon76
 Patches: 
       20080402__pbx_incomplete__3.diff.txt uploaded by Corydon76 (license 14)
       pbx_incomplete_with_timeout.diff uploaded by fabled (license 448)
 Tested by: Corydon76, fabled


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114773 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-28 16:37:45 +00:00
file 30c35d0943 Update autoconf logic with latest API change for libss7.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114713 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-28 13:42:13 +00:00
tilghman e90098c53d Merged revisions 114708 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114708 | tilghman | 2008-04-27 23:47:39 -0500 (Sun, 27 Apr 2008) | 5 lines

When modules are embedded, they take on a different name, without the ".so"
extension.  Specifically check for this name, when we're checking if a module
is loaded.
(Closes issue #12534)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114709 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-28 04:53:20 +00:00
tilghman c5ab62085f Fix breakage caused by #12028. (Closes issue #12535)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114706 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-28 04:30:02 +00:00
russell 894e99a40d s/chan_zap/chan_skinny/
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114703 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-27 22:54:33 +00:00
mvanbaak fab5a81d3f Make MWI in chan_skinny event based modeled after chan_zap and chan_mgcp.
(closes issue #12214)
Reported by: DEA
Patches:
      chan_skinny-vm-events-v3.txt uploaded by DEA (license 3)
	  Tested by: DEA and me


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114700 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-27 15:17:18 +00:00
seanbright ce63165e29 Merged revisions 114695 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114695 | seanbright | 2008-04-26 21:26:15 -0400 (Sat, 26 Apr 2008) | 5 lines

When we don't explicitly pass a path to the --with-tds configure option, we
may end up finding tds.h in /usr/local/include instead of /usr/include.  If
this happens, the grep that looks for the version (from tdsver.h) will fail
and we'll have some problems during the build.

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114696 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-27 01:28:32 +00:00
tilghman 4671146871 Unleak reference
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114692 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-26 15:08:51 +00:00
tilghman d945291c08 Merged revisions 114689 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114689 | tilghman | 2008-04-26 08:15:21 -0500 (Sat, 26 Apr 2008) | 6 lines

Clicking forward without selecting a message leaves an errant .lock file.
(closes issue #12528)
 Reported by: pukepail
 Patches: 
       patch.diff uploaded by pukepail (license 431)

........


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114690 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-26 13:17:19 +00:00
tilghman f004751adb Add 'sip qualify peer <peer>' command (with AMI SIPqualifypeer)
(closes issue #12524)
 Reported by: ctooley
 Patches: 
       sip_qualify_peer.diff.2 uploaded by ctooley (license 136)
       some modifications for trunk by Corydon76
 Tested by: Corydon76


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114683 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-26 02:48:56 +00:00
mmichelson 37ff3d379f Adding a new option, 'B' to app_chanspy. This option allows the spy to
barge on the call. It is like the existing whisper option, except that
it allows the spy to talk to both sides of the conversation on which
he is spying.

This feature has existed in Switchvox, and this merges the functionality
into Asterisk.

(AST-32)



git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114678 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-25 22:24:32 +00:00
russell c93f95b35c Lock the channel around datastore access
(closes issue #12527)
Reported by: mnicholson
Patches:
      pbx_lua4.diff uploaded by mnicholson (license 96)


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@114676 f38db490-d61c-443f-a65b-d21fe96a405b
2008-04-25 22:04:46 +00:00