Commit Graph

1138 Commits (91475fd3dc8123eebd9c06e65a8f16f76ad1154e)

Author SHA1 Message Date
Luigi Rizzo 6cca49b9d0 define RTLD_LOCAL for platforms that don't have it.
18 years ago
Luigi Rizzo 130b6291cb netdb.h is used for gethostbyname, and it was not included in some
18 years ago
Luigi Rizzo 2940cf943f Loader for cygwin where asterisk is really a big dll
18 years ago
Luigi Rizzo 5862c55451 use poll as detected by configure
18 years ago
Luigi Rizzo 5490960453 remove a bunch of duplicate includes
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 04497db215 remove duplicate headers.
18 years ago
Luigi Rizzo fdb7f7ba3d Start untangling header inclusion in a way that does not affect
18 years ago
Mark Michelson fd7b3e7261 Fixing a problem pointed out by Qwell
18 years ago
Mark Michelson 3107395445 Added some locks that should have been around astman_send_error,
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
Kevin P. Fleming 547306835e Merged revisions 89325 via svnmerge from
18 years ago
Luigi Rizzo 02733f3290 add a small new function to retrieve variables from a config
18 years ago
Tilghman Lesher 8309f54e39 If we're going to be passing a negative value for the size of a stringfield,
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
Luigi Rizzo 09d9cce1d8 access channel locks through ast_channel_lock/unlock/trylock and not
18 years ago
Mark Michelson 6260590ec2 Merged revisions 89288 via svnmerge from
18 years ago
Mark Michelson eee4ed80cf Merged revisions 89286 via svnmerge from
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
Tilghman Lesher 8820ae5b2e Merged revisions 89275 via svnmerge from
18 years ago
Tilghman Lesher 5112f2b7e9 Typo
18 years ago
Tilghman Lesher 36d9a5aaf3 Add callerid to the Hangup manager event.
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
Tilghman Lesher 0f6892419e One more typo in config.c; and missed conversions due to the constifying of ast_variable_new parameters
18 years ago
Tilghman Lesher b4839d4d4a Typo
18 years ago
Luigi Rizzo 7f8ecd2cd3 make the 'name' and 'value' fields in ast_variable const char *
18 years ago
Russell Bryant d3414c7552 Fix up various coding guidelines issues ...
18 years ago
Joshua Colp 7d561b994c Merged revisions 89260 via svnmerge from
18 years ago
Kevin P. Fleming a34bbab643 use simpler technique for removing known entries from lists
18 years ago
Russell Bryant b30b1bc46f - Simplify removing an item from a list
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
Tilghman Lesher 9cd09c5214 Merged revisions 89239 via svnmerge from
18 years ago
Jason Parker cfbc4f5fb8 Doxygen fixes.
18 years ago
Steve Murphy fd1fbb0223 Thanks to snuff-work, who brought up that these fixes might need to be made.
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
Tilghman Lesher 061e5a1674 Merged revisions 89184 via svnmerge from
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.
19 years ago
Jason Parker ec8497c58f Merged revisions 89125 via svnmerge from
19 years ago
Mark Michelson 0881f07aed AST_LIST_REMOVE_CURRENT takes only one argument.
19 years ago
Luigi Rizzo 339d27ebe9 use %d and cast to int instead of %zd for size_t object,
19 years ago
Kevin P. Fleming c18691dec0 Merged revisions 89105 via svnmerge from
19 years ago
Kevin P. Fleming edc78d6023 improve linked-list macros in two ways:
19 years ago
Luigi Rizzo d0b2d2dc62 remove a debugging message which i forgot in.
19 years ago
Russell Bryant 5480c54e56 Fix another CLI command so it doesn't run the real code when called for initialization.
19 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.
19 years ago