Commit Graph

644 Commits (b4eb773d5ea9befa25e8045a57dba550a690e541)

Author SHA1 Message Date
Tzafrir Cohen 54802a099c fix a memory leak in device state
14 years ago
Paul Belanger 3556e4c2d4 Replace ast_log(LOG_DEBUG, ...) with ast_debug()
14 years ago
David Vossel c26c190711 Asterisk media architecture conversion - no more format bitfields
14 years ago
Russell Bryant 092134399c Merged revisions 303549 via svnmerge from
15 years ago
Jeff Peeler b1f9f1e78f Merged revisions 302266 via svnmerge from
15 years ago
Paul Belanger f485bfd1d3 Add dialplan variables for asterisk.conf directories
15 years ago
Stefan Schmidt 1482ba3057 move devices from hints into an ao2_container
15 years ago
Richard Mudgett 7c7486ad19 Merged revisions 295866 via svnmerge from
15 years ago
Russell Bryant 5f523a5de5 Merged revisions 290713 via svnmerge from
15 years ago
Tilghman Lesher bddb242d72 Merged revisions 290255 via svnmerge from
15 years ago
Matthew Nicholson 942cbb66dc Merged revisions 287559 via svnmerge from
15 years ago
Matthew Nicholson 6a7688012f Merged revisions 287309 via svnmerge from
15 years ago
Matthew Nicholson f31d1d9cdc Merged revisions 287120 via svnmerge from
15 years ago
Brett Bryant 9de3352554 Merged revisions 285711 via svnmerge from
15 years ago
Russell Bryant 2c75d02066 Merged revisions 282015 via svnmerge from
15 years ago
Russell Bryant a5ccfb570c Merged revisions 281982 via svnmerge from
15 years ago
Tilghman Lesher af43e57821 Merged revisions 280984 via svnmerge from
15 years ago
Matthew Nicholson 1c848835aa Merged revisions 277327 via svnmerge from
15 years ago
Richard Mudgett ec37ffbdaf ast_callerid restructuring
15 years ago
Eliel C. Sardanons a1b89a6a50 Implement AstData API data providers as part of the GSOC 2010 project,
15 years ago
Tilghman Lesher 8fe8d98dba Uh, yeah.
15 years ago
Tilghman Lesher a3342f0c67 Send DialPlanComplete as a response, not as a separate event.
15 years ago
Tilghman Lesher 7037dd6680 Merged revisions 270583 via svnmerge from
15 years ago
Leif Madsen c672763af8 Fix some doxygen warnings.
15 years ago
Tilghman Lesher 815d7bfe44 Let ExtensionState resolve dynamic hints.
15 years ago
Mark Michelson 10d65ad6b1 Fix potential invalid reads that could occur in pbx.c
15 years ago
Russell Bryant a0d74cef66 Use memmove() instead of memcpy() for a case where the buffers overlap.
15 years ago
Mark Michelson 630b8027c3 Merged revisions 243486 via svnmerge from
16 years ago
Olle Johansson 7c61a7105f Change api for pbx_builtin_setvar to actually return error code if a function can't be written to.
16 years ago
Alec L Davis c7be027151 Update CDR variables as pbx starts
16 years ago
Jeff Peeler 8fd9401e3d Initialize data on the stack so that Park doesn't interpret random arguments.
16 years ago
Sean Bright 9e02292e5c Avoid a crash on Solaris when running 'core show functions.'
16 years ago
Sean Bright e612d87695 Convert a few places to use ast_calloc_with_stringfields where applicable.
16 years ago
Tilghman Lesher 3eb8f0a8dc Similarly, ensure that matchcid is duplicated correctly when merging contexts.
16 years ago
Tilghman Lesher 20e57b12e8 Ensure that the callerid is NULL when the parent is effectively NULL.
16 years ago
Tilghman Lesher 87ea570ef1 Oops, another tag error
16 years ago
Tilghman Lesher b01df91513 Oops, missed a closing tag
16 years ago
Tilghman Lesher ecbe7eff7a Add the TESTTIME() dialplan function, which permits testing GotoIfTime.
16 years ago
Tilghman Lesher d80a38310a Blank callerid and NULL callerid should not compare equal.
16 years ago
David Vossel bebe42f3a7 fixes subscriptions being lost after 'module reload'
16 years ago
Tilghman Lesher 7acf8196d0 Merged revisions 237493 via svnmerge from
16 years ago
Tilghman Lesher 386b847075 Merged revisions 237405 via svnmerge from
16 years ago
Tilghman Lesher e4c1fc1e4a Merged revisions 235421 via svnmerge from
16 years ago
Tilghman Lesher d32c333f7c Trim leading/trailing spaces from the filename, to deal with common user error.
16 years ago
David Vossel 176c8a0185 Merged revisions 231853 via svnmerge from
16 years ago
David Brooks bac499e521 Merged revisions 229498 via svnmerge from
16 years ago
Tilghman Lesher 4c8319190b Merged revisions 229360 via svnmerge from
16 years ago
Tilghman Lesher d8e0c58437 Expand codec bitfield from 32 bits to 64 bits.
16 years ago
Tilghman Lesher 496282194c Merged revisions 225105 via svnmerge from
16 years ago
Tilghman Lesher c74a2d0b45 Create an API for adding an optional time unit onto the ends of time periods.
16 years ago
David Vossel 9456ab2724 Deadlock in channel masquerade handling
16 years ago
Tilghman Lesher 1cf5422dc8 Merged revisions 220288 via svnmerge from
16 years ago
David Brooks 077b44c43f Merged revisions 218867 via svnmerge from
16 years ago
Tilghman Lesher 1ca9bc4e1e Check the origination priority for more matches, not the current priority.
16 years ago
Tilghman Lesher ad69df830d Enable turning off the application delimiter warning with the 'dontwarn' option.
16 years ago
Olle Johansson 98f18d56b8 Merged revisions 216430 via svnmerge from
16 years ago
Tilghman Lesher c1b4f0c4c9 Merged revisions 213970 via svnmerge from
16 years ago
Tilghman Lesher 642bec4d6f AST-2009-005
16 years ago
Matthew Nicholson a638000451 Fix a CEL related regression with hints updating by subscribing to AST_DEVICE_STATE instead of AST_DEVICE_STATE_CHANGED.
16 years ago
David Vossel e39a252b1e Merged revisions 205409 via svnmerge from
16 years ago
David Vossel 48c9a85d91 Merged revisions 204681 via svnmerge from
16 years ago
Russell Bryant cce4fad522 Make invalid hints report Unavailable instead of Idle.
16 years ago
Russell Bryant 0264eef115 Merge the new Channel Event Logging (CEL) subsystem.
16 years ago
David Brooks df649a8671 Fixes the argument order in definition of new_find_extension().
16 years ago
Sean Bright 3abe8a963e Add new ast_complete_applications function so that we can use it with the
16 years ago
Eliel C. Sardanons 2c882626a0 Implement a new element in AstXML for AMI actions documentation.
16 years ago
Sean Bright fcda626f3c Fix build under dev mode and remove some casts that are no longer necessary as
16 years ago
Eliel C. Sardanons bb838bc67a Avoid using prototypes when not necessary (it is already defined in the header
16 years ago
Kevin P. Fleming e6b2e9a750 Const-ify the world (or at least a good part of it)
16 years ago
Eliel C. Sardanons d24179825f Warn about the use of the application WaitExten() within a Macro().
16 years ago
Eliel C. Sardanons 766972a3cd Fix a missing unlock in case of error, and a missing free().
16 years ago
Tilghman Lesher 5a3797643c If the timing ended on a zero, then we would loop forever.
16 years ago
Tilghman Lesher b399b5389d Merged revisions 194137 via svnmerge from
16 years ago
Tilghman Lesher c524f905a6 Two fixes found while debugging with ast_backtrace():
16 years ago
Kevin P. Fleming 1c988d8996 add 'const' qualifiers in various places where they should have been
16 years ago
Tilghman Lesher 9cd0a94aeb Merged revisions 193119 via svnmerge from
16 years ago
Jeff Peeler 658f81cb57 If no extension was found in the pattern tree, don't crash.
16 years ago
Tilghman Lesher ec37b8e527 Part of the merge did not happen correctly, which resulted in a compile error
16 years ago
Tilghman Lesher a866a75900 Merge str_substitution branch.
16 years ago
Tilghman Lesher b88343b248 Don't warn on pipe in the System call.
16 years ago
Russell Bryant cba19c8a67 Convert the ast_channel data structure over to the astobj2 framework.
16 years ago
Tilghman Lesher d6c48bc134 Labels are sometimes (most of the time?) NULL for extensions.
16 years ago
Matthew Nicholson 37213d492e Merged revisions 189009 via svnmerge from
16 years ago
Mark Michelson f7292de7ba Fix a spacing issue that I claimed I would when I committed this code.
16 years ago
Mark Michelson 6c29f76d2c Several fixes to the extenpatternmatchnew logic.
16 years ago
Tilghman Lesher a74fda63fd As suggested by Russell, warn users when their dialplan arguments contain pipes, but not commas.
16 years ago
Tilghman Lesher 1030a25ac9 Modify headers and macros, according to Russell's suggestions on the -dev list
16 years ago
Jeff Peeler de4af72f9f Add ability for dialplan execution to continue when caller hangs up.
16 years ago
Russell Bryant b564b2105f Change g_eid to ast_eid_default.
16 years ago
Tilghman Lesher ac7e490b94 Spacing changes only
16 years ago
Tilghman Lesher 4ec79becd3 Merged revisions 177786 via svnmerge from
16 years ago
Steve Murphy 0fe1df19df This patch fixes merge_contexts_and_delete so it does not deadlock when hints are present.
16 years ago
Russell Bryant a844cfa904 Fix a number of incorrect uses of strncpy().
16 years ago
Russell Bryant 4ec301360c Merge a large set of updates to the Asterisk indications API.
16 years ago
Russell Bryant 184872fdfd Fix a race condition that caused device states to become incorrect for hints.
16 years ago
Russell Bryant 6a0773602a add missing </para>
16 years ago
Mark Michelson 47ebea6a8d Fix 'd' option for app_dial and add new option to Answer application
16 years ago
Tilghman Lesher f90021fdd0 Ensure that commas placed in the middle of extension character classes do not
17 years ago
Steve Murphy 268ac221a2 Merged revisions 172030 via svnmerge from
17 years ago
Joshua Colp 49785e775e Merged revisions 170050 via svnmerge from
17 years ago
Joshua Colp 99f31b91cf Merged revisions 169867 via svnmerge from
17 years ago
Russell Bryant ef6ad2b53c Merged revisions 168561 via svnmerge from
17 years ago
Steve Murphy aa905e347e Merged revisions 166093 via svnmerge from
17 years ago
Russell Bryant 50a25ac847 Remove the need for AST_PBX_KEEPALIVE with the GoSub option from Dial.
17 years ago
Tilghman Lesher 27cbfc1bd5 Add timezone to the possible fields in a timespec.
17 years ago
Steve Murphy 9de00f16f6 (closes issue #14076)
17 years ago
Steve Murphy eb73f5673a Merged revisions 164634 via svnmerge from
17 years ago
Tilghman Lesher c8223fc957 Merge ast_str_opaque branch (discontinue usage of ast_str internals)
17 years ago
Tilghman Lesher 8c89090160 Previously missing line, now the substitution works correctly
17 years ago
Tilghman Lesher 689465ba98 Checking global variables here actually overwrote the previous substitution by
17 years ago
Mark Michelson 5f4dc23293 Merged revisions 162265 via svnmerge from
17 years ago
Brandon Kruse 390b5bbcd6 Note that the recently changed waittime parameter is in milliseconds.
17 years ago
Joshua Colp db99faa00d Fix a regression introduced when the PBX timeouts were converted to milliseconds. collect_digits now gets milliseconds fed to it, not seconds.
17 years ago
Russell Bryant de811c9490 Merged revisions 161287 via svnmerge from
17 years ago
Eliel C. Sardanons 1e8e12efcf Janitor, use ARRAY_LEN() when possible.
17 years ago
Tilghman Lesher 3d4c0cd421 Merged revisions 160207 via svnmerge from
17 years ago
Russell Bryant bcde91337b Make a formatting change to test a new post-commit hook for reviewboard.
17 years ago
Russell Bryant bd341895b3 Make a formatting change to test a new post-commit hook for reviewboard.
17 years ago
Russell Bryant 40a52b50fa Make a formatting change to test a new post-commit hook for reviewboard.
17 years ago
Tilghman Lesher f9461535d3 Don't limit the length of the hint at the final step (from ~8100 chars max
17 years ago
Tilghman Lesher 35213dff98 Allow space within an extension, when the space is within a character class.
17 years ago
Tilghman Lesher 7bd6f1744b Merged revisions 158600 via svnmerge from
17 years ago
Jeff Peeler 93a59f5bda (closes issue #13891)
17 years ago
Steve Murphy 449c012c68 Merged revisions 156297 via svnmerge from
17 years ago
Michiel van Baak 86f900b201 This commit does two things:
17 years ago
Eliel C. Sardanons 23adb8e509 Move all the XML documentation API from pbx.c to xmldoc.c.
17 years ago
Russell Bryant 1a239454f1 Fix some code in chan_sip that was intended to unlink multiple objects from a
17 years ago
Eliel C. Sardanons 9cc7bc998b If 'asterisk.conf' is not found, instead of giving up,
17 years ago
Eliel C. Sardanons 65d4d1eb0f Fix an asterisk crash if no asterisk.conf configuration file is present.
17 years ago
Eliel C. Sardanons e771f08f60 Simplify the output of [See Also].
17 years ago
Eliel C. Sardanons 990a6bebe8 Add more SeeAlso references based on TFOT.
17 years ago
Eliel C. Sardanons f18699be24 - Add more <see-also> based on TFOT.
17 years ago
Sean Bright f349f18eaa GLOB_BRACE is already added to MY_GLOB_FLAGS if it is supported on the
17 years ago
Russell Bryant 5b168ee34b Merge changes from team/group/appdocsxml
17 years ago
Tilghman Lesher fa06ce2e6c Track down and fix annoying lock errors
17 years ago
Steve Murphy db7299f4bc Hmmm. Nobody (but me) is interested in seeing
17 years ago
Steve Murphy e235a07376 (closes issue #13557)
17 years ago
Steve Murphy 579177ae80 Merged revisions 144677 via svnmerge from
17 years ago
Steve Murphy e74584ca3c (closes issue #13557)
17 years ago
Steve Murphy 67f7ac0499 Merged revisions 142675 via svnmerge from
17 years ago
Russell Bryant 1452b6dd97 Merged revisions 141806 via svnmerge from
17 years ago
Steve Murphy 068859119a In these changes, I have added some explanation
17 years ago
Russell Bryant 4e105063a8 Formatting change to test something on the svn server
17 years ago
Steve Murphy 1c79a23b8e Merged revisions 140670 via svnmerge from
17 years ago
Steve Murphy ea898dc6c3 Merged revisions 139764 via svnmerge from
17 years ago
Steve Murphy 2488366a75 Merged revisions 139347 via svnmerge from
17 years ago
Steve Murphy 04795d963f These changes are in regards to bug 13249, where users are being surprised by the changes made
17 years ago
Tilghman Lesher f4586f3018 Also make sure hinting won't crash on reload.
17 years ago
Tilghman Lesher 3a5eb27579 Remove deprecated syntax from sample config file
17 years ago
Tilghman Lesher d5c673e441 Change free to ast_free_ptr, too
17 years ago
Tilghman Lesher af69ec03ed e->data can be NULL, so use the safe version of ast_strdup()
17 years ago
Sean Bright 790fde68d9 Another batch of files from RSW. The remaining apps and a few more
17 years ago
Mark Michelson 316fb598d2 Don't allow Answer() to accept a negative argument.
17 years ago
Kevin P. Fleming 7df8b8b848 make datastore creation and destruction a generic API since it is not really channel related, and add the ability to add/find/remove datastores to manager sessions
17 years ago
Steve Murphy 9051edfa4a (closes issue #13202)
17 years ago
Steve Murphy 1adecc56eb (closes issue #13144)
17 years ago
Tilghman Lesher 1517710d7e Change several 'core' commands to be 'dialplan' commands (with appropriate
17 years ago
Steve Murphy a1fe3d917f (closes issue #12960)
17 years ago
Tilghman Lesher 49715c05f1 Merged revisions 130959 via svnmerge from
17 years ago
Steve Murphy 42942b790d (closes issue #13041)
17 years ago
Steve Murphy 2ca242b2ba (closes issue #13041)
17 years ago
Matthew Fredrickson 0b185a2276 Add Proceeding() application (#13025)
17 years ago
Tilghman Lesher 4ff527903e Code wasn't ready to be merged - see -dev list discussion
17 years ago
Brett Bryant d185405755 Janitor project to convert sizeof to ARRAY_LEN macro.
17 years ago
Olle Johansson 6f400edeab Changing name of global api call to ast_*
17 years ago
Olle Johansson 45e79490ba Implement flags for AGI in the channel structure so taht "show channels" and
17 years ago
Tilghman Lesher 12e5c68622 Merged revisions 127973 via svnmerge from
17 years ago
Steve Murphy bc2cfb3e81 Merged revisions 127663 via svnmerge from
17 years ago
Tilghman Lesher 6d5b1d76ab If we don't match registrar when destroying a context, it can cause a crash.
17 years ago
Steve Murphy f4c85ebd22 (closes issue #12689)
17 years ago
Russell Bryant e9d72e0cb2 Merge another big set of changes from team/russell/events
17 years ago
Russell Bryant 42c1e3601e Merge another change from team/russell/events
17 years ago
Russell Bryant f4a8062e93 Merge another change from team/russell/events ...
17 years ago
Tilghman Lesher 2d825ed7de Implement FINDLABEL matching for the new extension matching engine.
17 years ago
Tilghman Lesher ab988ac6f4 Make extension match characters case-insensitive.
17 years ago
Steve Murphy d0384ab3aa a small fix for a crash that occurs when compiling AEL with global vars
17 years ago
Tilghman Lesher 12cf254253 MSet doesn't necessarily need chan to be set
17 years ago
Tilghman Lesher 76506b7baa Move compatibility options into asterisk.conf, default them to on for upgrades,
17 years ago
Tilghman Lesher 316e334751 Change space-zero to now evaluate to false, as is expected by a great many.
17 years ago
Joshua Colp 0d85a0eff7 Add a missing context unlock.
17 years ago
Jeff Peeler 4729632721 Fixed a few problems with multiparking: call not being parked in the correct parking spot, caller not being notified of parking spot position, and improperly hanging up the call during a transfer due to timing out (not providing the extension in which to transfer).
17 years ago
Russell Bryant e40c662a06 Merged revisions 115551 via svnmerge from
17 years ago
Dwayne M. Hubbard ca4ae77c91 pbx uses a taskprocessor for device state changes
17 years ago
Tilghman Lesher b5a127daac Modify TIMEOUT() to be accurate down to the millisecond.
17 years ago
Tilghman Lesher 6a81da594d Add incomplete matching to PBX code and app_dial
17 years ago
Joshua Colp c3dd5e3e27 Merged revisions 114579 via svnmerge from
17 years ago
Steve Murphy 76155d60ce (closes issue #12469)
17 years ago
Jason Parker 6f549bc324 Allow setqueuevar=yes (et al) to work, after changes to pbx_builtin_setvar()
17 years ago
Steve Murphy 5b4222c9de These changes:
17 years ago
Mark Michelson 28bd5d88c1 There was a subtle logical difference between 1.4 and trunk with regards to how timeouts
17 years ago
Steve Murphy da41d47a83 Bumped across another test set for the new exten pattern matcher, which revealed a problem with the CANMATCH/MATCHMORE modes. Direct matches were getting in the way. Fixed.
17 years ago
Steve Murphy 2fb0bfba35 (closes issue #12298)
17 years ago
Steve Murphy 3d4cb09ae8 comment cleanup and iron out a really dumb mistake in handling the '.'-wildcard in the new exten pattern matcher.
17 years ago
Steve Murphy 6928ccfa02 Merged revisions 111391 via svnmerge from
17 years ago
Joshua Colp e097cc7221 Add the ability to use a pattern match for a hint.
17 years ago
Russell Bryant 4c6486782f Fix some more breakage that I introduced when changing extension state callbacks to the list macros.
17 years ago
Russell Bryant 89ad4ace67 Remove an unneeded variable. This compiled, but I missed the uninitialized warning
17 years ago
Russell Bryant b47eee2187 Convert handling of extension state callbacks to the list macros.
17 years ago
Russell Bryant e1bd198bc0 Minor coding style changes, including adding handling for memory allocation failure
17 years ago
Steve Murphy 0af58d3f5c (closes issue #12238)
17 years ago
Russell Bryant 072eb8a913 Remove a double write lock of the contexts lock in ast_wrlock_contexts().
17 years ago
Tilghman Lesher bdad3c9889 (closes issue #6019)
17 years ago
Russell Bryant 0ee1f43b4a Merged revisions 107161 via svnmerge from
17 years ago
Russell Bryant 2d95fb33bd Merged revisions 107158 via svnmerge from
17 years ago
Steve Murphy 377e51c4d4 (closes issue #6002)
17 years ago
Mark Michelson 924b7d3636 Merged revisions 106437 via svnmerge from
17 years ago
Tilghman Lesher cfc1df4c1a Whitespace changes only
17 years ago
Russell Bryant 6d3b251588 - Add curly braces around the while loop
17 years ago
Russell Bryant 71173779dc Use ast_copy_string() instead of strncpy(), and use sizeof() instead of
17 years ago
Jason Parker 62c63a8412 Merged revisions 105005 via svnmerge from
17 years ago
Joshua Colp 2a7eac9940 Add an 'e' option to ResetCDR which re-enables a CDR that has been disabled.
17 years ago
Joshua Colp e6a260c747 Add an API call (ast_async_parseable_goto) which parses a goto string and does an async goto instead of an explicit goto.
17 years ago
Tilghman Lesher 26755e3882 Context tracing for channels
17 years ago
Mark Michelson 566a005512 Add proper "false" case behavior to GotoIfTime
17 years ago
Joshua Colp c81350d6f6 Just some minor coding style cleanup...
18 years ago
Joshua Colp ef267cd838 Fix Manager Redirect while in an AGI.
18 years ago
Russell Bryant 1ec8cb41a8 Merge changes from team/mvanbaak/cli-command-audit
18 years ago
Mark Michelson fe9821cc10 Get rid of any remaining ast_verbose calls in the code in favor of
18 years ago
Jason Parker dc6e5d6aae Change where priority of a goto is adjusted.
18 years ago
Joshua Colp c6fc44f927 Update handling of asyncgoto so it properly works on channels that are currently executing a PBX.
18 years ago
Steve Murphy 671c08af6d Merged revisions 101480 via svnmerge from
18 years ago
Tilghman Lesher 2f44f53ea4 Merged revisions 100675 via svnmerge from
18 years ago
Russell Bryant f877028d76 Clean up some formatting, and simplify a bit of code using ast_str
18 years ago
Joshua Colp 3a37332880 Print out a warning when spaces are used in the variable name in Set and MSet. It is extremely hard to debug this issue so this should make it easier.
18 years ago
Russell Bryant d0c89ab7ed Add a new CLI command, "core set chanvar", which allows you to set a channel
18 years ago
Tilghman Lesher 857e3412f4 Several manager changes:
18 years ago
Russell Bryant 3e28c57081 Print out the name of a function being registered in color, just like the name
18 years ago
Mark Michelson 3b830da053 Merged revisions 95577 via svnmerge from
18 years ago
Mark Michelson 74577dd091 I needed to increment the numbers used on the VERBOSITY_ATLEAST calls by 1.
18 years ago
Mark Michelson 83f152b95c Changed VERBOSITY_LEVEL to VERBOSITY_ATLEAST to be more accurate.
18 years ago
Mark Michelson 4f75e15665 After reading Russell's e-mail to the dev list stating that checking option_verbose is not
18 years ago
Tilghman Lesher d5b454bf8d Convert ast_verbose to ast_verb.
18 years ago
Jason Parker 7dbfcdecae Merged revisions 92809 via svnmerge from
18 years ago
Jason Parker 02ea9face7 Add count of total number of calls processed by asterisk during it's lifetime.
18 years ago
Russell Bryant f52c068605 Merged revisions 90967 via svnmerge from
18 years ago
Olle Johansson 25cbb792b9 (closes issue #11422)
18 years ago
Mark Michelson e3c122863d Removing a pointless check of option_debug
18 years ago
Mark Michelson 0b3ab17bfa Merged revisions 90059 via svnmerge from
18 years ago
Jason Parker aa0f63d65f Remove "old"-style CLI handler, since nothing uses it anymore.
18 years ago
Russell Bryant 880fb1ece9 Merged revisions 89893 via svnmerge from
18 years ago
Russell Bryant 79bc5ede5f Merged revisions 89839 via svnmerge from
18 years ago
Steve Murphy 1f792f1745 closes issue #11294; missed the conditional unlock of the contexts when the hash table is used instead; also, used the ast_free_ptr as advised.
18 years ago
Russell Bryant 21a22fa584 Merged revisions 89790 via svnmerge from
18 years ago
Russell Bryant b11f846e7e Merged revisions 89594 via svnmerge from
18 years ago
Steve Murphy 2ec4b57622 Thanks to pnlarsson for noting the spelling error in the cli commands. Also, added some verbage about the new algorithm to CHANGES.
18 years ago
Steve Murphy a63f6be669 closes issue #11363; where the pattern _20x. buried in an included context, didn't match 2012; There were a small set of problems to fix: 1. I needed NOT to score patterns unless you are at the end of the data string. 2. Capital N,X,Z and small n,x,z are OK in patterns. I canonicalize the patterns in the trie to caps. 3. When a pattern ends with dot or exclamation, CANMATCH/MATCHMORE should always report this pattern, no matter the length. With this commit, I also supplied the wish of Luigi, where the user can select which pattern matching algorithm to use, the old (legacy) pattern matcher, or the new, trie based matcher. The OLD matcher is the default. A new [general] section variable, extenpatternmatchnew, is added to the extensions.conf, and the example config has it set to false. If true, the new matcher is used. In all other respects, the context/exten structs are the same; the tries and hashtabs are formed, but in the new mode the tries are not used. A new CLI command 'dialplan set extenpatternmatch true/false' is provided to allow switching at run time. I beg users that are forced to return to the old matcher to please report the reason in the bug tracker. Measured the speed benefit of the new matcher against an impossibly large context with 10,000 extensions: the new matcher is 374 times faster.
18 years ago
Luigi Rizzo e0ff5fef5c remove a bunch of useless #include "options.h"
18 years ago
Steve Murphy 55e03ad681 closes issue #11290; the proposed patch was a good guess, and would solve the bug to some extent, but was really masking the real issue, that there were bad entries in the table. This fix removes the condition that the hashtab updates be done on exten removal only when the pattern_tree was present, which is silly. The operations that apply to the pattern tree are instead made conditional. Also, threw back in routines that kpfleming deleted because of probs in the 64-bit world. Tested on both 32 and 64-bit machines (compile). Tested the reload problem with over 20 reloads, and no problems. If you find more problems, please reopen 11290.
18 years ago
Mark Michelson 29ad24e37a I introduced a deadlock avoidance into 1.4, which I attempted to port to trunk as well.
18 years ago
Kevin P. Fleming 34ed13becd remove some debugging code that doesn't compile on 64-bit platforms
18 years ago
Steve Murphy 8e90425a6c A free in add_pri was ultimately the source of the grief we were having with parking. This set of changes fixes that problem, and introduces some more error messages, and puts debugs into ifdefs for what could be short-term usage. Txs to Terry W. for his help, guidance, and especially patience.
18 years ago
Luigi Rizzo a23c055c3d move asterisk/paths.h outside asterisk.h and into those files
18 years ago
Luigi Rizzo 915b97d300 move internal function declarations to include/asterisk/_private.h
18 years ago
Mark Michelson dda649ead2 Merged revisions 89457 via svnmerge from
18 years ago
Steve Murphy f62bf52e55 Get rid of some debug messages in pbx.c
18 years ago
Steve Murphy 4ea5eced10 These changes were made in response to niklas@tese.se's letter of 11-17-2007, where he had 20 and 201 in two different contexts, included in the same context. In that particular case, we were behaving the same as 1.4, but after experimenting, I quickly found that if 20 and 201 were in the same extension, 1.4 would return 201, and this code returns 20. These changes now enable the current code to replicate the behavior of 1.4 in respect to MATCHMORE in cases like this.
18 years ago
Luigi Rizzo 9335ace850 another bunch of include removals (errno.h and asterisk/logger.h)
18 years ago
Steve Murphy 406f6f2909 a correction to code involved in an extension removal
18 years ago
Steve Murphy 1a5cdeb138 a quick fix to pbx_dundi.c to make it so it will compile. Hope I did the right thing. And some additions to removal of extens to take care of hashtab pointers in all cases.
18 years ago
Steve Murphy 7953c2c46f My goodness, haven't handled an extension deletion. Add code to ast_context_remove_extension2() to remove an extension from the trie. Done by marking it deleted. The scoreboard won't update for it any more. Also, a couple of calls to insert hashtab had a spurious ->exten, which was removed.
18 years ago
Luigi Rizzo fdb7f7ba3d Start untangling header inclusion in a way that does not affect
18 years ago
Steve Murphy ab32ff2ad8 This corrects a hashtab removal, given a bad argument
18 years ago
Steve Murphy 542f29ea0e This fixes a problem with pattern ranges; and corrects a situation in res_features, where an extension would be created with the name Zap/51, as an example. THe / is bad because it would tend to mean that the 51 is to be cid matched.
18 years ago
Steve Murphy eee92d0881 Get rid of a previously missed ast_log call for debug, no longer nec.
18 years ago
Steve Murphy 0bad49b3dd Perhaps I went overboard on initializing things. I can remove unnecc. stuff later. A few bug fixes. Killing small bugs on the way to killing bigger ones. Removed locking on hashtabs; there's plenty of locks already being taken. A small bug in the root_tree hashtab compare func.
18 years ago
Steve Murphy 620e580ed6 Had trouble playing with parking; spent a long time trying to reason out MATCHMORE mode. made these updates and xfers on zaptel lines seem to work ok now
18 years ago
Steve Murphy 20d24e1027 Rescaled the weights of the patterns to give something more independent of pattern length; and make . less likely to win. Question: which should win for 14102241145-- _1xxxxxxx. or _XXXXXXXXXXX -- right now, the pure X pattern will win.
18 years ago
Steve Murphy 225c94d950 A further problem highlighted by 11233 has been resolved; a certain combination of patterns in a certain order, led to a malformed trie, due to a ptr not being initialized in the loop. Also, some tree printing prettifications.
18 years ago
Kevin P. Fleming a34bbab643 use simpler technique for removing known entries from lists
18 years ago
Steve Murphy fd1f6df25f This hopefully will fix the re-opened 11233. Hadn't covered the case of a context with no patterns. (blush)
18 years ago
Steve Murphy f0a7e86177 closes issue #11233 -- where some fine points in the algorithm to build the tree needed to be corrected. Many thanks for the test case, jtodd
18 years ago
Jason Parker 50879dcb1d Merged revisions 89194 via svnmerge from
18 years ago
Steve Murphy 98429d37b2 Based on a note in asterisk-dev by Brian Capouch, I determined I too agressive in not initializing arrays passed to pbx_substitute_variables_xxxx; I reviewed the code (again) and hopefully found every possible spot where substitute_variables is called conditionally, and made sure the char array involved was set to a null string.
18 years ago
Steve Murphy a897556f7f This is the perhaps the biggest, boldest, most daring change I've ever committed to trunk. Forgive me in advance any disruption this may cause, and please, report any problems via the bugtracker. The upside is that this can speed up large dialplans by 20 times (or more). Context, extension, and priority matching are all fairly constant-time searches. I introduce here my hashtables (hashtabs), and a regression for them. I would have used the ast_obj2 tables, but mine are resizeable, and don't need the object destruction capability. The hashtab stuff is well tested and stable. I introduce a data structure, a trie, for extension pattern matching, in which knowledge of all patterns is accumulated, and all matches can be found via a single traversal of the tree. This is per-context. The trie is formed on the first lookup attempt, and stored in the context for future lookups. Destruction routines are in place for hashtabs and the pattern match trie. You can see the contents of the pattern match trie by using the 'dialplan show' cli command when 'core set debug' has been done to put it in debug mode. The pattern tree traversal only traverses those parts of the tree that are interesting. It uses a scoreboard sort of approach to find the best match. The speed of the traversal is more a function of the length of the pattern than the number of patterns in the tree. The tree also contains the CID matching patterns. See the source code comments for details on how everything works. I believe the approach general enough that any issues that might come up involving fine points in the pattern matching algorithm, can be solved by just tweaking things. We shall see. The current pattern matcher is fairly involved, and replicating every nuance of it is difficult. If you find and report problems, I will try to resolve than as quickly as I can. The trie and hashtabs are added to the existing context and exten structs, and none of the old machinery has been removed for the sake of the multitude of functions that use them. In the future, we can (maybe) weed out the linked lists and save some space.
18 years ago
Kevin P. Fleming edc78d6023 improve linked-list macros in two ways:
18 years ago
Joshua Colp f440f8ba48 Fix up some PBX logic that became broken. The code would exit prematurely when it should have been collecting more digits.
18 years ago
Mark Michelson 5a4867543d "show application <foo>" changes for clarity.
18 years ago
Russell Bryant 9bfd82cec2 Merged revisions 88805 via svnmerge from
18 years ago
Luigi Rizzo 08b10da53b Simplify the implementation and the API for stringfields;
18 years ago
Tilghman Lesher e8c781b215 Add pbx_lua as a method of doing extensions
18 years ago
Tilghman Lesher b5c2bcb169 'h' extension doesn't execute past first priority
18 years ago
Tilghman Lesher 90db1316ed Modify WaitExten to include an optional dialtone
18 years ago
Steve Murphy 63f2f04cf4 This commits the performance mods that give the priority processing engine in the pbx, a 25-30% speed boost. The two updates used, are, first, to merge the ast_exists_extension() and the ast_spawn_extension() where they are called sequentially in a loop in the code, into a slightly upgraded version of ast_spawn_extension(), with a few extra args; and, second, I modified the substitute_variables_helper_full, so it zeroes out the byte after the evaluated string instead of demanding you pre-zero the buffer; I also went thru the code and removed the code that zeroed this buffer before every call to the substitute_variables_helper_full. The first fix provides about a 9% speedup, and the second the rest. These figures come from the 'PIPS' benchmark I describe in blogs, conf. reports, etc.
18 years ago
Joshua Colp 284721fdb1 Drop any more references to type in the Exception dialplan function.
18 years ago
Tilghman Lesher b6ec350910 Optimize pbx_substitute_variables
18 years ago
Jason Parker e985a00a32 Update documentation to give an example of how to use the return status of RaiseException
18 years ago
Mark Michelson e0d13e169c The priority gets incremented after raising an exception, so the priority should be set to 0
18 years ago
Mark Michelson e5f87bbac3 Jumped the gun a bit in the RaiseException app. It would always return -1
18 years ago
Jason Parker ebe4050128 Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former didn't make much sense
18 years ago
Jason Parker b0f3e6097e Convert NEW_CLI to AST_CLI.
18 years ago
Tilghman Lesher c0fcb59d38 Merged revisions 85356 via svnmerge from
18 years ago
Joshua Colp 094e9d8397 Don't register the exception function with module information. Since it is in the core there is none and it will explode.
18 years ago
Tilghman Lesher c2f7cc4bd4 Create a universal exception handling extension, "e" (closes issue #9785)
18 years ago
Tilghman Lesher 5139a2f6f7 Add MSet for people who prefer the old, deprecated syntax of Set (Closes issue #10549)
18 years ago
Jason Parker c7a9ec1691 (issue #10724)
18 years ago
Joshua Colp abe84c029f Merged revisions 82514 via svnmerge from
18 years ago
Mark Michelson 3a6e79ad80 Fixes Solaris build warnings
18 years ago
Joshua Colp 56e74f0dde (closes issue #10603)
18 years ago
Tilghman Lesher f8c93488d5 Fix documentation for Set (closes issue #10549)
18 years ago
Steve Murphy 9836efb5fb This commit closes bug 7605, and half-closes 7638. The AEL code has been redistributed/repartitioned to allow code re-use both inside and outside of Asterisk. This commit introduces the utils/conf2ael program, and an external config-file reader, for both normal config files, and for extensions.conf (context, exten, prio); It provides an API for programs outside of asterisk to use to play with the dialplan and config files.
18 years ago