Commit Graph

1472 Commits (c25ffdd2612cf9ee10da0d3d09eb58e0882d113d)

Author SHA1 Message Date
Luigi Rizzo 813fe77801 some version of flex produce code that wants __STDC_VERSION__
18 years ago
Luigi Rizzo 59efa92285 timersub is a macro not a function, so write the check in a way
18 years ago
Russell Bryant 505499588b Update the configure script check for sys/poll.h to also provide the result in
18 years ago
Luigi Rizzo aeba4fef65 add detection for timersub() and winsock.h/winsock2.h
18 years ago
Luigi Rizzo 882f5a69fa provide definitions for __LITTLE_ENDIAN and __BIG_ENDIAN if not present.
18 years ago
Luigi Rizzo 5862c55451 use poll as detected by configure
18 years ago
Luigi Rizzo 732c1d30c3 acinclude.m4: add a function to help checking sdl-config, gtk-config
18 years ago
Luigi Rizzo d209cb090e add check for the presence of glob
18 years ago
Luigi Rizzo 7b523bf896 paths are already in include/asterisk/paths.h so don't duplicate
18 years ago
Luigi Rizzo 1f6dcae007 whitespace only change - adjust indentation and add some
18 years ago
Luigi Rizzo 89ffa642a1 logger.h does not need options.h
18 years ago
Luigi Rizzo 4afe3b5ba9 remove redundant #include "asterisk/compat.h",
18 years ago
Luigi Rizzo fdb7f7ba3d Start untangling header inclusion in a way that does not affect
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
Luigi Rizzo 09d9cce1d8 access channel locks through ast_channel_lock/unlock/trylock and not
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
Russell Bryant 9eff81dad9 This fixes a build error on my mac. It also works on my linux box. Let me
18 years ago
Jason Parker cfbc4f5fb8 Doxygen fixes.
18 years ago
Steve Murphy db1000b803 Thanks to snuffy for this doxygen update to hashtab.h; closes issue #11223
18 years ago
Steve Murphy fd1fbb0223 Thanks to snuff-work, who brought up that these fixes might need to be made.
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
Russell Bryant 4afb905cf0 Print out the channel name as a prefix to the "agi debug" output. This makes
18 years ago
Tilghman Lesher 7c56918262 Commit some cleanups to the format type code.
18 years ago
Tilghman Lesher 3c9bc8827b Merged revisions 89045 via svnmerge from
18 years ago
Olle Johansson 6519abeffc Additional TDD changes (preparing for SIP changes - adding TDD support to SIP)
18 years ago
Jason Parker 2c582c7cfb Allow gtalk and jingle to use TLS connections again.
18 years ago
Tilghman Lesher 32701f5031 Set up detection of IP_PKTINFO in autoconf for chan_unistim
18 years ago
Russell Bryant 9bfd82cec2 Merged revisions 88805 via svnmerge from
18 years ago
Russell Bryant ed6e62a8e5 Merged revisions 88931 via svnmerge from
18 years ago
Kevin P. Fleming 1c96946877 Merged revisions 88862 via svnmerge from
18 years ago
Russell Bryant aecb21e822 Merged revisions 88719 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 ce90623010 Merged revisions 88210 via svnmerge from
18 years ago
Jason Parker 2902601eea Remove traces of gnutls, since we no longer use/need it.
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
Jason Parker 5a58a4c475 Switch res_jabber to use openssl rather than gnutls.
18 years ago
Joshua Colp 2b33aca04c Remove old whisper remnants from channel.h
18 years ago
Tilghman Lesher 59ca511408 Merged revisions 87739 via svnmerge from
18 years ago
Russell Bryant f7782d60d1 Merged revisions 87396 via svnmerge from
18 years ago
Joshua Colp c8777404b3 Add autoconf checks for extra suppserv definitions that are not present in releases yet. chan_misdn should now build against the latest release.
18 years ago
Steve Murphy c9f3efc381 Merged revisions 87168 via svnmerge from
18 years ago
Tilghman Lesher 446a6cdc94 Use the same delimited character as the FILTER function in FIELDQTY and CUT.
18 years ago
Kevin P. Fleming c6a8d45f43 Merged revisions 87069 via svnmerge from
18 years ago
Russell Bryant 8bf796ec10 Merged revisions 86836 via svnmerge from
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
Russell Bryant 3b92c7b262 Merged revisions 86726 via svnmerge from
18 years ago
Russell Bryant 56879bf978 Merged revisions 85532 via svnmerge from
18 years ago
Jason Parker b0f3e6097e Convert NEW_CLI to AST_CLI.
18 years ago
Russell Bryant 155aaf947f Merged revisions 86330 via svnmerge from
18 years ago
Russell Bryant dbdbdb7f43 Merged revisions 85997 via svnmerge from
18 years ago
Russell Bryant 5007769d4e Merged revisions 85994 via svnmerge from
18 years ago
Russell Bryant a4d915608b Merged revisions 85561 via svnmerge from
18 years ago
Russell Bryant eec3f78368 Merged revisions 85533 via svnmerge from
18 years ago
Russell Bryant a6507769ca Merged revisions 85316 via svnmerge from
18 years ago
Kevin P. Fleming cf12ac90b3 Merged revisions 85195 via svnmerge from
18 years ago
Tilghman Lesher e9221b062e Merged revisions 85158 via svnmerge from
18 years ago
Philippe Sultan 510430a6a2 Make the status and priority configurable.
18 years ago
Tilghman Lesher c2f7cc4bd4 Create a universal exception handling extension, "e" (closes issue #9785)
18 years ago
Russell Bryant 9334e72e76 Merged revisions 84271 via svnmerge from
18 years ago
Russell Bryant 1f3f7215d8 Merged revisions 84206 via svnmerge from
18 years ago
Russell Bryant 019c07e63e Merged revisions 84146 via svnmerge from
18 years ago
Dwayne M. Hubbard bd5b6cea68 Merged revisions 84018 via svnmerge from
18 years ago
Russell Bryant f04b586267 fix a typo in a comment
18 years ago
Russell Bryant 6e8997fe3c Change function documentation to use doxygen tags. (Really, I just needed
18 years ago
Russell Bryant b6abd3c659 Don't note that functions are deprecated in favor of themselves. This was
18 years ago
Philippe Sultan 3a5f263bf0 Comply with latest XEP-0166, XEP-0167, XEP-0176.
18 years ago
Tilghman Lesher 48f56ba8b4 Fixes for FreeBSD... testing for every conceivable math function now
18 years ago
Russell Bryant 9f64905d4e Merged revisions 83432 via svnmerge from
18 years ago
Tilghman Lesher 78a94595f6 Check for the presence of trunc and round, and make the ISOC99 detection a little more sane (closes issue #10776)
18 years ago
Philippe Sultan dc9dc75379 Transmit proper invitation, thus conforming to XEP-0166 (Jingle general
18 years ago
Russell Bryant 0de872da8d Merged revisions 82929 via svnmerge from
18 years ago
Russell Bryant 384aea6257 Make sure that libpthread doesn't try to call free() directly when MALLOC_DEBUG
18 years ago
Russell Bryant 9388173f85 Make the MALLOC_DEBUG output for free() useful again. After changing calls to
18 years ago
Tilghman Lesher bc494164c8 Add a direct execute method to res_odbc (closes issue #10722)
18 years ago
Russell Bryant bf28185fce Merged revisions 82385 via svnmerge from
18 years ago
Russell Bryant 79d79ac840 Merged revisions 82337 via svnmerge from
18 years ago
Russell Bryant 1282de797d Various code and documentation cleanups for res_config_sqlite
18 years ago
Philippe Sultan 43d63b1027 Assign namespace properly
18 years ago
Philippe Sultan 92cc7aeff1 Changed Jingle and Jingle DTMF namespaces.
18 years ago
Tilghman Lesher 82cf384e03 Merged revisions 82285 via svnmerge from
18 years ago
Tilghman Lesher c4869b5f1d Merged revisions 82028 via svnmerge from
18 years ago
Russell Bryant 79246506e7 Add doxygen documentation for slinfactory_destroy(), mainly just noting that
18 years ago
Jason Parker 9f865889a2 Merged revisions 81778 via svnmerge from
18 years ago
Philippe Sultan da620112de Merged revisions 81743 via svnmerge from
18 years ago
Luigi Rizzo 8e62c6c4d0 various changes to the documentation, and redefinition of
18 years ago
Tilghman Lesher 9169ac8ef4 Merged revisions 81569 via svnmerge from
18 years ago
Russell Bryant 8bcfddc8ec Merged revisions 81599 via svnmerge from
18 years ago
Jason Parker d72ea80a00 Doxygen cleanups/fixes.
18 years ago
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.
18 years ago
Russell Bryant 9bda1c5a94 Merged revisions 81448 via svnmerge from
18 years ago
Russell Bryant 782b8ca0c9 logger.h depends on options.h, so go ahead and include it
18 years ago
Mark Michelson 1bfe10997b Merged revisions 81426 via svnmerge from
18 years ago
Russell Bryant 5872c6d757 Merged revisions 81418 via svnmerge from
18 years ago
Joshua Colp 5a8feb826d Make the event header file work under C++.
18 years ago
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.
18 years ago
Joshua Colp c9445d4a68 To keep others happy... revert part of my additions so trunk works.
18 years ago
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).
18 years ago
Joshua Colp 440aab5ffa Add inline function for signed linear subtraction.
18 years ago
Russell Bryant 2c708fdef4 Change the audiohook lock and unlock wrappers to macros instead of inline
18 years ago
Russell Bryant 040a5f20f9 * Constify the uid field of channel datastores
18 years ago
Russell Bryant 43e9b0f67c (closes issue #7852)
18 years ago
Russell Bryant 2290819e6d Merged revisions 80573 via svnmerge from
18 years ago
Russell Bryant 2ac281e0ed Merged revisions 80426 via svnmerge from
18 years ago
Russell Bryant 50d7fc81aa Merged revisions 80362 via svnmerge from
18 years ago
Steve Murphy 337c44236d This change set fixes bug 8126 in trunk. It is implemented via compile time options, activated via the menuselect stuff, which defaults to the old way. non-zero sample data added. Translate tables expressed in microseconds instead of milliseconds, with 5-digit data now instead of 3, giving 2 more digits of precision.
18 years ago
Steve Murphy b69734ae09 Stephn Davies reports that this will help make things work on 64-bit machines
18 years ago
Jason Parker 100e2387db Merged revisions 79904 via svnmerge from
18 years ago
Russell Bryant f5bf66bcd7 This commit adds a scheduler API call, ast_sched_replace that can be used
18 years ago
Tilghman Lesher 56b9568164 Don't reload a configuration file if nothing has changed.
18 years ago
Tilghman Lesher 918348f03c Missing from murf's last trunk commit, which was why trunk won't compile
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
Joshua Colp 94b1dda1fa Merged revisions 79334 via svnmerge from
18 years ago
Joshua Colp 3dac92ecbf Merged revisions 79207 via svnmerge from
18 years ago
Russell Bryant 5f0c3e7dbc constify the return value of reason2str
18 years ago
Steve Murphy 526d1f39a2 Merged revisions 79099 via svnmerge from
18 years ago
Russell Bryant e113d36aa4 Merge a set of device state improvements from team/russell/events.
18 years ago
Russell Bryant fef7773d0b Merged revisions 78995 via svnmerge from
18 years ago
Russell Bryant 9d1acad76b Fix a problem that I had introduced into MWI handling. I had ignored
18 years ago
Joshua Colp 22114b509d Add support for using epoll instead of poll. This should increase scalability and is done in such a way that we should be able to add support for other poll() replacements.
18 years ago
Joshua Colp 602198c402 Merge audiohooks branch into trunk. This is a new API for developers to listen and manipulate the audio going through a channel.
18 years ago
Russell Bryant 668a334f85 Add another big set of doxygen documentation improvements from snuffy.
18 years ago
Joshua Colp 218241f174 Use the linkedlists.h macros for the manager action list.
18 years ago
Joshua Colp 9ef1b0a974 Extend the ast_senddigit and ast_dtmf_stream API calls to allow the duration of the DTMF digit(s) to be specified and make the SendDTMF application have the capability to use it.
18 years ago
Doug Bailey 3e426df072 Change the fsk filter used in CID and TDD decode to an integer based implementation
18 years ago
Mark Michelson c4c0e45c8b Merged revisions 78103 via svnmerge from
18 years ago
Russell Bryant 6af571e79a Merged revisions 78184 via svnmerge from
18 years ago
Russell Bryant 1a4bd1ec63 Merged revisions 78143 via svnmerge from
18 years ago
Russell Bryant 1765f903c4 Fix building res_crypto on systems that init locks with constructors.
18 years ago
Russell Bryant befb383d16 Merged revisions 78095 via svnmerge from
18 years ago
Joshua Colp d9aee5e353 Merged revisions 77869 via svnmerge from
18 years ago
Joshua Colp d51079b70a Merged revisions 77863 via svnmerge from
18 years ago
Joshua Colp 1d07328918 Merged revisions 77831 via svnmerge from
18 years ago
Joshua Colp 3aaf122439 Add support for call forwarding and timeouts to the dialing API.
18 years ago
Russell Bryant 935982d15b Merged revisions 77788 via svnmerge from
18 years ago
Tilghman Lesher 059a7aa862 Cleanup of res_agi, ensuring thread safety (closes issue #10288)
18 years ago
Tilghman Lesher 1aa9e4fc4d Merged revisions 76937 via svnmerge from
18 years ago
Tilghman Lesher db9d7764e0 Enhance AGI with several fixes:
18 years ago
Tilghman Lesher 55b1ee298e Merge the dialplan_aesthetics branch. Most of this patch simply converts applications
18 years ago
Russell Bryant eaebbdab61 (closes issue #10271)
18 years ago
Russell Bryant f1f72312bb (closes issue #10192)
18 years ago
Joshua Colp 91c3d90e8f Use autoconf logic to determine byte swapping macro presence. This should now also use other macros if present.
18 years ago
Joshua Colp 93b72115d1 Add support for using /dev/urandom to get random numbers on systems that support it.
18 years ago
Luigi Rizzo 925ebbb2b3 expose struct ast_ha so external code can do things such as printing it
18 years ago
Steve Murphy 0e969271ae After some study, thought, comparing, etc. I've backed out the previous universal mod to make ast_flags a 64 bit thing. Instead, I added a 64-bit version of ast_flags (ast_flags64), and 64-bit versions of the test-flag, set-flag, etc. macros, and an app_parse_options64 routine, and I use these in app_dial alone, to eliminate the 30-option limit it had grown to meet. There is room now for 32 more options and flags. I was heavily tempted to implement some of the other ideas that were presented, but this solution does not intro any new versions of dial, doesn't have a different API, has a minimal/zero impact on code outside of dial, and doesn't seriously (I hope) affect the code structure of dial. It's the best I can think of right now. My goal was NOT to rewrite dial. I leave that to a future, coordinated effort.
18 years ago
Tilghman Lesher 81bc1d7af5 Merge in ast_strftime branch, which changes timestamps to be accurate to the microsecond, instead of only to the second
18 years ago