asterisk/main
Luigi Rizzo 7f8ecd2cd3 make the 'name' and 'value' fields in ast_variable const char *
This prevents modifying the strings in the stored variables, 
and catched a few instances where this was actually done.

Given the differences between trunk and 1.4 (and the fact that this
is effectively an API change) it is better to fix 1.4 independently.
These are

chan_sip.c::sip_register()
chan_skinny.c:: near line 2847
config.c:: near line 1774
logger.c::make_components()
res_adsi.c:: near line 1049

I may have missed some instances for modules that do not build here.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-14 13:18:40 +00:00
..
db1-ast clean up assembler and preprocessor files if they are here too 2007-10-29 22:24:44 +00:00
editline Merged revisions 87567 via svnmerge from 2007-10-30 15:47:19 +00:00
minimime (closes issue #10692) 2007-09-11 13:10:04 +00:00
stdtime Merged revisions 85921 via svnmerge from 2007-10-16 19:47:16 +00:00
Makefile 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. 2007-11-09 16:00:22 +00:00
abstract_jb.c make the 'name' and 'value' fields in ast_variable const char * 2007-11-14 13:18:40 +00:00
acl.c make the 'name' and 'value' fields in ast_variable const char * 2007-11-14 13:18:40 +00:00
adsistub.c Add a massive set of changes for converting to use the ast_debug() macro. 2007-06-14 19:39:12 +00:00
aescrypt.c use the OpenSSL AES implementation if it's available (unless configured not to) 2007-05-24 22:07:50 +00:00
aeskey.c use the OpenSSL AES implementation if it's available (unless configured not to) 2007-05-24 22:07:50 +00:00
aesopt.h merge new_loader_completion branch, including (at least): 2006-08-21 02:11:39 +00:00
aestab.c use the OpenSSL AES implementation if it's available (unless configured not to) 2007-05-24 22:07:50 +00:00
alaw.c Merged revisions 80166 via svnmerge from 2007-08-22 14:12:24 +00:00
app.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
ast_expr2.c closes issue #11045 - each file needs to define ASTERISK_FILE_VERSION, if you are going to set MTX_PROFILE in the compiler flags; the problem was that the fixes were getting made to the generated .c file, and erased the next time someone regenerated that file from the corresponding .y or .flex file. Moral of story: keep your eyes open and make mods to the .y (or flex input file) and re-run bison (or flex) as the Makefile directs for that file, and then check in both. Also, res_config_sqlite was kinda missed, and has the same issue. 2007-10-25 16:21:30 +00:00
ast_expr2.fl Hoping to avoid a crash in OSX for a problem blitzrage found 2007-11-06 19:40:33 +00:00
ast_expr2.h Simplify some preprocessor logic by using #elif 2007-10-17 21:16:40 +00:00
ast_expr2.y closes issue #11045 - each file needs to define ASTERISK_FILE_VERSION, if you are going to set MTX_PROFILE in the compiler flags; the problem was that the fixes were getting made to the generated .c file, and erased the next time someone regenerated that file from the corresponding .y or .flex file. Moral of story: keep your eyes open and make mods to the .y (or flex input file) and re-run bison (or flex) as the Makefile directs for that file, and then check in both. Also, res_config_sqlite was kinda missed, and has the same issue. 2007-10-25 16:21:30 +00:00
ast_expr2f.c Doxygen fixes. 2007-11-12 23:44:20 +00:00
asterisk.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
astmm.c Fix another CLI command so it doesn't run the real code when called for initialization. 2007-11-07 00:16:03 +00:00
astobj2.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
audiohook.c use %d and cast to int instead of %zd for size_t object, 2007-11-08 09:20:05 +00:00
autoservice.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
buildinfo.c merge new_loader_completion branch, including (at least): 2006-08-21 02:11:39 +00:00
callerid.c Change the fsk filter used in CID and TDD decode to an integer based implementation 2007-08-06 19:52:40 +00:00
cdr.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
channel.c use simpler technique for removing known entries from lists 2007-11-14 00:54:38 +00:00
chanvars.c Issue 9869 - replace malloc and memset with ast_calloc, and other coding guidelines changes 2007-06-06 21:20:11 +00:00
cli.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
config.c make the 'name' and 'value' fields in ast_variable const char * 2007-11-14 13:18:40 +00:00
cryptostub.c Clean up adsistub file a bit (just spacing) and change over the crypto sub to use this build_stub macro strategy. 2007-05-20 17:52:00 +00:00
db.c remove a cygwin-specific function remap that does not work. 2007-11-05 15:15:22 +00:00
devicestate.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
dial.c Bring up to date with poll changes. 2007-08-10 18:37:32 +00:00
dlfcn.c Issue 9869 - replace malloc and memset with ast_calloc, and other coding guidelines changes 2007-06-06 21:20:11 +00:00
dns.c Merged revisions 81435 via svnmerge from 2007-09-04 13:11:49 +00:00
dnsmgr.c Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former didn't make much sense 2007-10-22 20:05:18 +00:00
dsp.c trivial formatting change 2007-09-20 19:45:00 +00:00
ecdisa.h merge new_loader_completion branch, including (at least): 2006-08-21 02:11:39 +00:00
enum.c make the 'name' and 'value' fields in ast_variable const char * 2007-11-14 13:18:40 +00:00
event.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
file.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
fixedjitterbuf.c Issue 9869 - replace malloc and memset with ast_calloc, and other coding guidelines changes 2007-06-06 21:20:11 +00:00
fixedjitterbuf.h merge new_loader_completion branch, including (at least): 2006-08-21 02:11:39 +00:00
frame.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
fskmodem.c Formatting. Illegaly using some spare spaces from Russell's space-bucket. 2007-11-06 19:23:10 +00:00
hashtab.c Fix up various coding guidelines issues ... 2007-11-14 03:22:09 +00:00
http.c Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former didn't make much sense 2007-10-22 20:05:18 +00:00
image.c - Simplify removing an item from a list 2007-11-14 00:33:52 +00:00
indications.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
io.c Conversions to ast_debug() 2007-06-24 18:51:41 +00:00
jitterbuf.c Conversions to ast_debug() 2007-06-24 18:51:41 +00:00
loader.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
logger.c make the 'name' and 'value' fields in ast_variable const char * 2007-11-14 13:18:40 +00:00
manager.c make the 'name' and 'value' fields in ast_variable const char * 2007-11-14 13:18:40 +00:00
md5.c merge new_loader_completion branch, including (at least): 2006-08-21 02:11:39 +00:00
netsock.c Issue 9869 - replace malloc and memset with ast_calloc, and other coding guidelines changes 2007-06-06 21:20:11 +00:00
pbx.c use simpler technique for removing known entries from lists 2007-11-14 00:54:38 +00:00
plc.c merge new_loader_completion branch, including (at least): 2006-08-21 02:11:39 +00:00
poll.c merge new_loader_completion branch, including (at least): 2006-08-21 02:11:39 +00:00
privacy.c merge new_loader_completion branch, including (at least): 2006-08-21 02:11:39 +00:00
rtp.c Commit some cleanups to the format type code. 2007-11-06 22:51:48 +00:00
say.c Merged revisions 89125 via svnmerge from 2007-11-08 23:53:00 +00:00
sched.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
sha1.c Doxygen cleanups/fixes. 2007-09-05 16:31:39 +00:00
slinfactory.c Merge audiohooks branch into trunk. This is a new API for developers to listen and manipulate the audio going through a channel. 2007-08-08 19:30:52 +00:00
srv.c Merged revisions 89260 via svnmerge from 2007-11-14 01:16:50 +00:00
strcompat.c Merged revisions 68192 via svnmerge from 2007-06-07 19:31:05 +00:00
tdd.c Additional TDD changes (preparing for SIP changes - adding TDD support to SIP) 2007-11-06 19:10:26 +00:00
term.c Revert commit #86119. Some users intentionally do not want colorized terminals, so this was a misfeature. 2007-11-03 14:19:47 +00:00
threadstorage.c AST_LIST_REMOVE_CURRENT takes only one argument. 2007-11-08 21:31:06 +00:00
translate.c improve linked-list macros in two ways: 2007-11-08 05:28:47 +00:00
udptl.c Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former didn't make much sense 2007-10-22 20:05:18 +00:00
ulaw.c 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. 2007-08-20 22:53:48 +00:00
utils.c Merged revisions 89239 via svnmerge from 2007-11-13 14:03:34 +00:00