Commit Graph

97 Commits (1df5e51016186551cc6f24d4ba4dad11055aabf8)

Author SHA1 Message Date
Kevin P. Fleming 69255bd210 Merged revisions 207680 via svnmerge from
16 years ago
Tilghman Lesher ec49f90f69 Merged revisions 187302 via svnmerge from
16 years ago
Russell Bryant ce37a27180 Merged revisions 184147 via svnmerge from
16 years ago
Jeff Peeler 368b57494b Merged revisions 181135 via svnmerge from
16 years ago
Steve Murphy ce5bbc3eb8 Merged revisions 179973 via svnmerge from
17 years ago
Steve Murphy 6bddb621ce Merged revisions 165071 via svnmerge from
17 years ago
Kevin P. Fleming c6bcd9b458 Merged revisions 159534 via svnmerge from
17 years ago
Sean Bright a237e8a708 Merged revisions 146555 via svnmerge from
17 years ago
Kevin P. Fleming ccc3bcfb67 Merged revisions 144949-144951 via svnmerge from
17 years ago
Steve Murphy e45d4f3bf1 Merged revisions 130145 via svnmerge from
17 years ago
Mark Michelson aec8cda0c8 Merged revisions 125799 via svnmerge from
17 years ago
Mark Michelson fcbd180cec Merged revisions 114052 via svnmerge from
17 years ago
Kevin P. Fleming b2fabfdb4c Merged revisions 107373 via svnmerge from
18 years ago
Tilghman Lesher 53436f42f4 Add a canary process, for high priority mode (asterisk -p) to ensure that if
18 years ago
Luigi Rizzo 9e4ebbee87 remove relative paths and use ASTTOPDIR instead.
18 years ago
Luigi Rizzo 15d5e144b1 add hashtab.c to the list of files deleted
18 years ago
Luigi Rizzo d652be0930 normalize subdirs' Makefile by using ASTTOPDIR and not .. to reference
18 years ago
Kevin P. Fleming 93615ecc22 let's try this again... *all* compilation and linking in Asterisk should be done using the standard compilation rules, not manually created ones. changing hashtest.c to use these rules caused the compiler to notice a large number of coding guidelines violations, so those are fixed too.
18 years ago
Luigi Rizzo 6dfc36b639 enable support for stack backtrace for stuff built in utils/
18 years ago
Luigi Rizzo 7cd78079ae more cygwin/mingw32 compatibility fixes
18 years ago
Kevin P. Fleming c7773aa206 (closes issue #11221)
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
Luigi Rizzo 1c55f8424e Move AUDIO_LIBS outside the top level Makefile. This too is used only
18 years ago
Russell Bryant cac97aa8b4 Remove another copied source file on "make clean".
18 years ago
Kevin P. Fleming 6ab27c871a UGH... while trying to fix #10995, I found all kinds of cruft in this Makefile. It should all be gone now, and as a side effect hashtest2 now builds with --enable-dev-mode enabled without a host of errors
18 years ago
Kevin P. Fleming a4b8ca220d clean up assembler and preprocessor files if they are here too
18 years ago
Russell Bryant 437b439c61 Add some files to the utils directory svn:ignore and Makefile clean target
18 years ago
Tilghman Lesher 1b949d24c0 Fix build of check_expr and hashtest2 when DEBUG_THREADLOCAL is defined
18 years ago
Steve Murphy c88e216a14 This solves an unreported solaris compile problem (missing -lnsl -lsocket).
18 years ago
Steve Murphy 26d739ff5b fixing up the pthread stuff for hashtest2
18 years ago
Joshua Colp 56a31d1d20 Include string compatibility file in hashtest2.
18 years ago
Steve Murphy c4133cc03f Committing my test for astobj2, hashtest2.c, along with makefile changes in utils.
18 years ago
Joshua Colp ab2c114cd7 (closes issue #10496)
18 years ago
Tilghman Lesher 488f6973cd Add strcompat dependency for check_expr (needed for platforms that don't have strndup)
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
Steve Murphy 52efde5c65 Merged revisions 67526 via svnmerge from
18 years ago
Steve Murphy 1613b4e58e Merged revisions 59145 via svnmerge from
18 years ago
Steve Murphy bf0fbdd09b Merged revisions 52052 via svnmerge from
19 years ago
Kevin P. Fleming 89c41e2403 Merged revisions 48525 via svnmerge from
19 years ago
Joshua Colp 6948019465 Merged revisions 46377 via svnmerge from
19 years ago
Kevin P. Fleming cd0457d14e Merged revisions 44436 via svnmerge from
19 years ago
Luigi Rizzo d16122c826 correct libraries for astman, at least so i think...
19 years ago
Kevin P. Fleming e92c34cc38 Merged revisions 44055 via svnmerge from
19 years ago
Kevin P. Fleming 89050169c8 Merged revisions 43996-43997,44008,44011-44012 via svnmerge from
19 years ago
Jason Parker 8699205857 be a little more consistent with our variable usage
19 years ago
Jason Parker 9177d1143b Change the includes to work on FreeBSD
19 years ago
Jason Parker f18cbf77df Many Solaris fixes - this moves some of the stuff from utils.c to strcompat.c
19 years ago
Kevin P. Fleming be29512d1e more makefile tweaks to keep targets from being run when they don't need to be
19 years ago
Kevin P. Fleming d12f54f90b GNU make already knows how to quietly ignore non-existent files in 'include' directives
19 years ago
Steve Murphy 51132bbdbf Changes to fix all problems reported in 7804 are included here.
19 years ago