Commit Graph

177 Commits

Author SHA1 Message Date
Joshua Colp 9910b7d9a7 Merged revisions 89592 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89592 | file | 2007-11-26 13:36:45 -0400 (Mon, 26 Nov 2007) | 6 lines

Use ast_free to free memory, or else we shall implode if MALLOC_DEBUG is enabled.
(closes issue #11347)
Reported by: ys
Patches:
      pbx.pbx_config.c.diff uploaded by ys (license 281)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89593 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-26 17:38:57 +00:00
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.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89547 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-24 21:00:26 +00:00
Luigi Rizzo 51391e6b09 shuffle a little bit the content of header files to reduce dependencies.
In this commit:
- move the ast_register/unregister_app functions to module.h
  to avoid the need to include pbx.h for the simpler apps;
- move the ast_group structure to channel.h to remove the
  dependency of app.h on linkedlists.h

Note, this is a long process that I am doing in small steps.

The main difficulty is that now for each subsystem we
have a single header (e.g. channel.h) included by the subsystem
provider (usually one file, e.g. channel.c) and by its clients
(dozens of them, e.g. we have some 70+ apps and 30+ functions).

This requires the clients to include all the extra headers
required by the provider (eg. lock.h, linkedlists.h, definitions
of substructures...) even though many of the clients would be
just happy with opaque struct declarations and function prototypes.

The long term plan is to eventually rectify this structure
so that the compilation can become faster, and also APIs
are more stable.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89522 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-22 03:50:04 +00:00
Luigi Rizzo 7e8835e0d7 remove another set of redundant #include "asterisk/options.h"
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89512 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-21 23:24:55 +00:00
Luigi Rizzo a23c055c3d move asterisk/paths.h outside asterisk.h and into those files
who really need it.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89466 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-20 23:16:15 +00:00
Luigi Rizzo ffd86fc964 more errno.h removal
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89432 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19 21:12:08 +00:00
Luigi Rizzo fdb7f7ba3d Start untangling header inclusion in a way that does not affect
build times - tested, there is no measureable difference before and
after this commit.

In this change:

use asterisk/compat.h to include a small set of system headers:
inttypes.h, unistd.h, stddef.h, stddint.h, sys/types.h, stdarg.h,
stdlib.h, alloca.h, stdio.h

Where available, the inclusion is conditional on HAVE_FOO_H as determined
by autoconf.

Normally, source files should not include any of the above system headers,
and instead use either "asterisk.h" or "asterisk/compat.h" which does it
better. 

For the time being I have left alone second-level directories
(main/db1-ast, etc.).



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 20:04:58 +00:00
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.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-01 22:26:51 +00:00
Jason Parker ebe4050128 Switch from AST_CLI (formerly NEW_CLI) to AST_CLI_DEFINE, since the former didn't make much sense
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86820 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 20:05:18 +00:00
Jason Parker b0f3e6097e Convert NEW_CLI to AST_CLI.
Closes issue #11039, as suggested by seanbright.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86536 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-19 18:29:40 +00:00
Russell Bryant ac46e63a41 Merged revisions 85540 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r85540 | russell | 2007-10-14 10:24:52 -0500 (Sun, 14 Oct 2007) | 7 lines

Don't create the context for users in users.conf until we know at least one user exists.

(closes issue #10971)
Reported by: dimas
Patches: 
      pbxconfig.patch uploaded by dimas (license 88)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85541 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-14 15:34:54 +00:00
Russell Bryant e97a723cf1 Merge a ton of NEW_CLI conversions. Thanks to everyone that helped out! :)
(closes issue #10724)
Reported by: eliel
Patches: 
      chan_skinny.c.patch uploaded by eliel (license 64)
      chan_oss.c.patch uploaded by eliel (license 64)
      chan_mgcp.c.patch2 uploaded by eliel (license 64)
      pbx_config.c.patch uploaded by seanbright (license 71)
      iax2-provision.c.patch uploaded by eliel (license 64)
      chan_gtalk.c.patch uploaded by eliel (license 64)
      pbx_ael.c.patch uploaded by seanbright (license 71)
      file.c.patch uploaded by seanbright (license 71)
      image.c.patch uploaded by seanbright (license 71)
      cli.c.patch uploaded by moy (license 222)
      astobj2.c.patch uploaded by moy (license 222)
      asterisk.c.patch uploaded by moy (license 222)
      res_limit.c.patch uploaded by seanbright (license 71)
      res_convert.c.patch uploaded by seanbright (license 71)
      res_crypto.c.patch uploaded by seanbright (license 71)
      app_osplookup.c.patch uploaded by seanbright (license 71)
      app_rpt.c.patch uploaded by seanbright (license 71)
      app_mixmonitor.c.patch uploaded by seanbright (license 71)
      channel.c.patch uploaded by seanbright (license 71)
      translate.c.patch uploaded by seanbright (license 71)
      udptl.c.patch uploaded by seanbright (license 71)
      threadstorage.c.patch uploaded by seanbright (license 71)
      db.c.patch uploaded by seanbright (license 71)
      cdr.c.patch uploaded by moy (license 222)
      pbd_dundi.c.patch uploaded by moy (license 222)
      app_osplookup-rev83558.patch uploaded by moy (license 222)
      res_clioriginate.c.patch uploaded by moy (license 222)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85460 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-11 19:03:06 +00:00
Russell Bryant 9388173f85 Make the MALLOC_DEBUG output for free() useful again. After changing calls to
free to be ast_free, astmm said all calls to free were coming from utils.h


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82628 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-17 18:57:56 +00:00
Tilghman Lesher 56b9568164 Don't reload a configuration file if nothing has changed.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79747 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-16 21:09:46 +00:00
Tilghman Lesher 8f1c914c89 'dialplan save' shouldn't be converting '|' back to ',' anymore.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-27 16:20:55 +00:00
Tilghman Lesher 55b1ee298e Merge the dialplan_aesthetics branch. Most of this patch simply converts applications
using old methods of parsing arguments to using the standard macros.  However, the big
change is that the really old way of specifying application and arguments separated by
a comma will no longer work (e.g. NoOp,foo|bar).  Instead, the way that has been
recommended since long before 1.0 will become the only method available (e.g. NoOp(foo,bar).


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 19:51:41 +00:00
Joshua Colp d61056132a Merged revisions 73930 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r73930 | file | 2007-07-08 22:13:57 -0300 (Sun, 08 Jul 2007) | 2 lines

Add a few sanity checks when writing out the dialplan. (issue #10157 reported by dome)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@73931 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-09 01:17:28 +00:00
Russell Bryant 8d89f741a5 Merged revisions 72272 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r72272 | russell | 2007-06-27 16:08:34 -0500 (Wed, 27 Jun 2007) | 13 lines

Merged revisions 72267 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r72267 | russell | 2007-06-27 16:06:45 -0500 (Wed, 27 Jun 2007) | 5 lines

Fix a minor issue with parsing the priority number.  You could have as much
whitespace as you want around a numeric priority, but you couldn't have any
whitespace around a special priority like "n" or "hint".
(issue #10039, reported by mitheloc, fixed by me)

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@72274 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-27 21:09:24 +00:00
Russell Bryant 9e0458e9f1 Completely remove all of the code related to jumping to priority n + 101. yay!
(issue #9926, caio1982)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68970 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-12 15:58:28 +00:00
Tilghman Lesher 7e52b8620b Merged revisions 68595 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r68595 | tilghman | 2007-06-10 23:21:30 -0500 (Sun, 10 Jun 2007) | 2 lines

"dialplan save" produced garbage in the config file

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@68596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-11 04:28:08 +00:00
Joshua Colp e7b03a991e Convert the PBX core to use read/write locks. This yields a nifty performance improvement when it comes to simultaneous calls going through the dialplan. Using murf's test the old mutex based core took an average of 57.3 seconds while the rwlock based core took 31.1 seconds. That's a nifty 26.2 seconds performance improvement. The other good part is that if we do need to switch back then we just have to change the lock/unlock API calls. I converted everywhere that used to touch the mutex locks directly to use them.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@57184 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-28 20:46:01 +00:00
Joshua Colp e83cff1c23 Merged revisions 56856 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r56856 | file | 2007-02-26 15:07:18 -0500 (Mon, 26 Feb 2007) | 10 lines

Merged revisions 56850 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r56850 | file | 2007-02-26 15:05:02 -0500 (Mon, 26 Feb 2007) | 2 lines

Obey the clearglobalvars option in extensions reload (or dialplan reload depending on your version). (issue #9146 reported by ramonpeek)

........

................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56860 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-26 20:09:06 +00:00
Russell Bryant 84718d10c4 Merged revisions 54898 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r54898 | russell | 2007-02-16 12:03:41 -0600 (Fri, 16 Feb 2007) | 4 lines

Fix setting "autofallthrough" to yes by default.  It was set to enabled in
pbx.c.  However, if the option was not present in extensions.conf, then
pbx_config.c would set it back to disabled.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@54901 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-16 18:04:34 +00:00
Tilghman Lesher a3ce6f5f8c Merged revisions 52679 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r52679 | tilghman | 2007-01-29 16:12:12 -0600 (Mon, 29 Jan 2007) | 2 lines

Argument number correction

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@52680 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-29 22:13:56 +00:00
Jason Parker 5abda34cd9 Merged revisions 49742 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49742 | qwell | 2007-01-05 18:24:38 -0600 (Fri, 05 Jan 2007) | 7 lines

Save 1 whopping byte of allocated memory!

This looks like it may have been a chicken/egg scenario..

You had to call a cleanup func, because everything was allocated.
Then since you had to call a cleanup func, you were forced to allocate - ie; strdup("").

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49743 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-06 00:28:16 +00:00
Joshua Colp 858796affa Merged revisions 49073 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r49073 | file | 2006-12-30 13:31:17 -0500 (Sat, 30 Dec 2006) | 2 lines

IAX has been deprecated for quite some time so we had better use IAX2 when creating the dial string for users. (issue #8697 reported by ssokol)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49074 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-30 18:32:31 +00:00
Steve Murphy f92697c5fc This small update will generate WARNINGS if there is garbage in your extensions.conf file (liken extem => instead of exten => !)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@48723 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-21 15:52:44 +00:00
Paul Cadach b4ef9599de Merged revisions 44186 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r44186 | pcadach | 2006-10-03 00:52:56 +0600 (Втр, 03 Окт 2006) | 1 line

Missed part of userconf functionality for chan_h323
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-02 19:01:10 +00:00
Tilghman Lesher 6ae8741518 Lots more removal of deprecated things
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43452 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 21:59:12 +00:00
Tilghman Lesher 70af28270d Constify the result of a config retrieval function, to avoid mutilation (issue 7983).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43364 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 20:40:39 +00:00
Kevin P. Fleming fcb999c01c merge qwell's CLI verbification work
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43212 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 19:54:18 +00:00
Kevin P. Fleming c2c4f86c72 merge markster's usersconf branch with some slight changes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43052 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-16 23:53:58 +00:00
Matt O'Gorman 05a695af72 everything that loads a config that needs a config file to run
now reports AST_MODULE_LOAD_DECLINE when loading if config file
is not there, also fixed an error in res_config_pgsql where it 
had a non static function when it should.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41633 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-31 21:00:20 +00:00
Russell Bryant f7cac071d9 Merged revisions 41269 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r41269 | russell | 2006-08-29 09:33:34 -0400 (Tue, 29 Aug 2006) | 3 lines

clean up last commit ... most notably, there is no reason to do heap
allocations here, and it also included a potential memory leak

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41270 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29 13:40:04 +00:00
Steve Murphy 8efd121371 Bugfix for 7813 applied to trunk as per patch supplied by stevens
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41267 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29 12:24:01 +00:00
Kevin P. Fleming 0a27d8bfe5 merge new_loader_completion branch, including (at least):
- restructured build tree and makefiles to eliminate recursion problems
  - support for embedded modules
  - support for static builds
  - simpler cross-compilation support
  - simpler module/loader interface (no exported symbols)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 02:11:39 +00:00
Russell Bryant 92bd7f19f7 Merge team/russell/ast_verbose_threadstorage
- instead of defining a free() wrapper in a bunch of files, define it as
  ast_free() in utils.h and remove the copies from all the files.

- centralize and abstract the code used for doing thread storage. The code
  lives in threadstorage.h, with one function being implemented in utils.c.
  This new API includes generic thread storage as well as special functions
  for handling thread local dynamic length string buffers.

- update ast_inet_ntoa() to use the new threadstorage API
- update ast_state2str() to use the new threadstorage API
- update ast_cli() to use the new threadstorage API

- Modify manager_event() to use thread storage. Instead of using a buffer of
  4096 characters as the workspace for building the manager event, use a thread
  local dynamic string.  Now there is no length limitation on the length of the
  body of a manager event.

- Significantly simplify the handling of ast_verbose() ...
  - Instead of using a static char buffer and a lock to make sure only one
    thread can be using ast_verbose() at a time, use a thread local dynamic
    string as the workspace for preparing the verbose message. Instead of
    locking around the entire function, the only locking done now is when the
    message has been built and is being deliviered to the list of registered
    verbose message handlers.
  - This function was doing a strdup() on every message passed to it and
    keeping a queue of the last 200 messages in memory. This has been
    completely removed. The only place this was used was that if there were
    any messages in the verbose queue when a verbose handler was registered,
    all of the messages in the queue would be fed to it.  So, I just made sure
    that the console verbose handler and the network verbose handler (for
    remote asterisk consoles) were registered before any verbose messages.
    pbx_gtkconsole and pbx_kdeconsole will now lose a few verbose messages at
    startup, but I didn't feel the performance hit of this message queue was
    worth saving the initial verbose output for these very rarely used modules.
  - I have removed the last three arguments to the verbose handlers, leaving
    only the string itself because they aren't needed anymore. For example,
    ast_verbose had some logic for telling the verbose handler to add
    a newline if the buffer was completely full. Now that the buffer can grow
    as needed, this doesn't matter anymore.
  - remove unused function, ast_verbose_dmesg() which was to dispatch the
    message queue
  - Convert the list of verbose handlers to use the linked list macros.

- add missing newline characters to a few ast_verbose() calls

- convert the list of log channels to use the linked list macros in logger.c

- fix close_logger() to close all of the files it opened for logging

- update ast_log() to use a thread local dynamic string for its workspace
  for preparing log messages instead of a buffer of size BUFSIZ (8kB on my
  system) allocated on the stack.  The dynamic string in this case is limited
  to only growing to a maximum size of BUFSIZ.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08 06:32:04 +00:00
Kevin P. Fleming acfa035afe Merged revisions 37417 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r37417 | kpfleming | 2006-07-12 08:18:21 -0500 (Wed, 12 Jul 2006) | 2 lines

get rid of some more printf's (although most of these were ifdef-ed out)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37418 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-12 13:29:10 +00:00
Kevin P. Fleming 472c1ca282 simplify autoconfig include mechanism (make tholo happy he can use lint again :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07 18:54:56 +00:00
Kevin P. Fleming dd6de5ee4e it's time... only enable global priority jumping if the config file says to do so
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-05 14:00:13 +00:00
Kevin P. Fleming ed3ffb4b46 various doxygen fixes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26170 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-09 16:24:07 +00:00
Luigi Rizzo e43bc6634d This rather large commit changes the way modules are loaded.
As partly documented in loader.c and include/asterisk/module.h,
modules are now expected to return all of their methods and flags
into a structure 'mod_data', and are normally loaded with RTLD_NOW
| RTLD_LOCAL, so symbols are resolved immediately and conflicts
should be less likely.  Only in a small number of cases (res_*,
typically) modules are loaded RTLD_GLOBAL, so they can export
symbols.
 
The core of the change is only the two files loader.c and
include/asterisk/module.h, all the rest is simply adaptation of the
existing modules to the new API, a rather mechanical (but believe
me, time and finger-consuming!) process whose detail you can figure
out by svn diff'ing any single module.

Expect some minor compilation issue after this change, please
report it on mantis http://bugs.digium.com/view.php?id=6968
so we collect all the feedback in one place.

I am just sorry that this change missed SVN version number 20000!



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20003 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-14 14:08:19 +00:00
Kevin P. Fleming f515078c53 Merged revisions 19345 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r19345 | kpfleming | 2006-04-11 16:14:42 -0500 (Tue, 11 Apr 2006) | 2 lines

don't destroy the entire dialplan during 'reload', just atomically replace it like 'extensions reload' does (issue #6047)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19346 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 21:18:27 +00:00
Kevin P. Fleming f10f427d49 since the module API is changing, it's a good time to const-ify the description() and key() return values
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18552 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-08 22:01:19 +00:00
Luigi Rizzo 08dfc15553 whitespace and formatting fix postponed from last commit:
fix indentation of a large function, localize some variables
and add/remove whitespace where needed.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@17827 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-06 14:40:47 +00:00
Luigi Rizzo 25a61b9e08 split pbx_load_module so we can reduce the indentation depth.
Also convert to MOD_1 style.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@17825 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-06 14:23:37 +00:00
Luigi Rizzo 38f14cbca7 use FREE instead of free as pointer to the destructor function.
This way the MALLOC_DEBUG code will always get the correct argument.

(bug introduced in SVN15818)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@17824 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-06 14:02:19 +00:00
Olle Johansson 16728da6a7 Whitespace fix forgotten by someone who added a note about needing to fix this...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@16234 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-29 20:08:14 +00:00
Luigi Rizzo 4ca73f8ae4 as reported in mantis #6066, fix a bunch of cli bugs and
inconsistencies.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@15818 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-03-28 22:44:55 +00:00
Olle Johansson acfc219733 Reverting revision 10998 that was accidentaly committed to trunk. My apologies.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@10989 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-24 10:50:43 +00:00
Olle Johansson dd5222fd30 Update to trunk
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@10988 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-24 10:17:40 +00:00
Russell Bryant 6f71e1178e constify arguments in more places where strings should not be modified (issue #6286)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8203 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-18 22:17:31 +00:00
Tilghman Lesher a84633ba26 Merged revisions 7831 via svnmerge from
/branches/1.2


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-06 00:36:12 +00:00
Russell Bryant ec05153ac4 convert most of the option_*'s to a single ast_flags structure. Also, fix some
formatting, remove some unnecessary casts, and other little code cleanups.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7331 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-04 20:40:46 +00:00
Kevin P. Fleming 2c65582b66 remove extraneous svn:executable properties
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-29 18:24:39 +00:00
Russell Bryant d8dfa4434d finish merging doxygen updates from issue #5605
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-14 19:00:38 +00:00
Russell Bryant 3453e3efa5 Doxygen documentation update from oej (issue #5505)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6847 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-24 20:12:06 +00:00
Kevin P. Fleming 053326ac85 ensure that priorityjumping option returns to its default during reload if it is no longer specified in extensions.conf
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6771 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-13 22:55:28 +00:00
Russell Bryant 779d033f21 move process_quotes_and_slashes to utils.c since it is used by both pbx_ael and pbx_config
clean up some formatting
remove some commented out reference code
move unload_module in pbx_ael down to be with the rest of the standard module functions


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6630 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-23 02:57:14 +00:00
Kevin P. Fleming 5da915dcfd update MANY more files with proper copyright/license info (thanks Ian!)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-14 20:46:50 +00:00
Kevin P. Fleming 5cc0413c54 add a global option to disable priority jumping in applications (when they get updated), settable in extensions.conf
change app_dial to use 'j' to _ENABLE_ priority jumping if it has been globally disabled


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6224 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-26 16:29:56 +00:00
Kevin P. Fleming 2b8338cb52 more file version tags
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5866 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-06 22:12:19 +00:00
Kevin P. Fleming 4f299de252 major Makefile and build process improvements, including removal of all hardcoded paths (modules must now use run-time paths as they should) (bug #4116)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5855 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-06 03:04:58 +00:00
Kevin P. Fleming ce89d985f2 allow global variables to be reset on reload (defaults to off) (bug #4385)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5825 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-03 02:27:08 +00:00
Russell Bryant 3c98814bb5 add 'dontwarn' option to asterisk.conf to appease the whining masses :p (bug #4320)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5723 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-19 01:57:19 +00:00
Russell Bryant 364e179b78 check to see if a comma or an open paren came first when splitting the application
from the application arguments (bug #4306)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5721 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-19 01:18:37 +00:00
Russell Bryant 7d3f5785e9 fix some more typos and clarity issues
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5643 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-12 20:47:23 +00:00
Russell Bryant e82344f7e0 fix a little typo
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5641 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-12 20:36:40 +00:00
Kevin P. Fleming 8634ef9e4a don't use '%i' at all, since we have no current use cases that need non base-10 parsing (bug #4110)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5533 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-29 17:00:33 +00:00
Kevin P. Fleming a9831e75ee perform global variable substitution before splitting extension and cidmatch when reading in dialplan (bug #4035)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5515 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-27 04:52:58 +00:00
Kevin P. Fleming 1f9ab2380a use double-quotes instead of angle-brackets for non-system include files (bug #4058)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5490 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-21 06:02:45 +00:00
Mark Spencer fdff1f69b5 Add warning for _. match (bug #4032)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5471 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-15 06:08:47 +00:00
Russell Bryant f0c880d6f6 silly typo
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5237 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-23 21:45:05 +00:00
Mark Spencer 5f726ad8c7 Merge config updates (bug #3406)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4889 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-25 06:10:20 +00:00
Russell Bryant 0c30452423 update copyright headers for 2005
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4868 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-21 07:06:25 +00:00
Mark Spencer 278a0a0891 Implement eswitch for evalulating variables at runtime (bug #3168)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4780 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 05:14:56 +00:00
Mark Spencer 82cbf28993 Add "Loopback" switch
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4070 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-24 02:53:24 +00:00
Mark Spencer 996c8e7126 Add autofallthrough mode
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@4020 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-16 19:46:02 +00:00
Mark Spencer b4142e0cd2 Allow you to use labels with + to be nice to Tilghman.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3897 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-03 16:15:44 +00:00
Mark Spencer 027f79d840 Add '+foo' option, update sample config
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3888 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-03 05:08:51 +00:00
Mark Spencer fce17976e9 Major PBX revamps (including labels, update examples)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3886 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-03 04:19:59 +00:00
Mark Spencer 34988d1ce9 Allow "n" or "next" and "s" or "same" in dialplan logic priorities
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3885 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-02 20:43:16 +00:00
Mark Spencer 64b9a563f2 Make menu interruptible (bug #2377), Also fix PBX "add extension" CLI (bug #2289)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3732 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-09-07 01:22:57 +00:00
Mark Spencer de3528f0be Save CID and switches in "save dialplan" command (bug #2279)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3630 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-08-21 18:55:39 +00:00
Mark Spencer 8c4cacbd58 Use ' instead of " for quoting in extensions.conf (bug #1872)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3257 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-21 14:20:03 +00:00
James Golovich d88a461764 Cleanup formatting
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3213 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-14 22:15:21 +00:00
James Golovich db8da85266 Cleanup formatting
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3212 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-14 22:05:12 +00:00
James Golovich bc80b3130d Cleanup formatting
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3211 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-14 22:03:59 +00:00
Mark Spencer c53e76528d Allow escaping of commas as well as ability to use quotes (bug #1826)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-14 21:43:16 +00:00
Mark Spencer 727abcdec7 Merge FreeBSD locking fixes (bug #1411)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-06-09 01:45:08 +00:00
Mark Spencer f2ccbc81d9 Internationalize say_date_time, fix small pbx_config seglet (bug #1537)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2871 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-05-03 04:38:31 +00:00
James Golovich 0122a3ea08 Fix 'remove extension' completion
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2838 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-05-01 05:50:51 +00:00
James Golovich a23c89dd75 Fix some comments in pbx.c and pbx_config.c
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2223 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-02-23 05:37:24 +00:00
Mark Spencer 83344af1c2 Fix add include (bug #966) and small update to bug 890
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2103 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-01-31 20:22:25 +00:00
Mark Spencer 1c838758c3 Save global variables across "save dialplan" (bug #426)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2084 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-01-28 01:29:47 +00:00
Jeremy McNamara 171865492f revert half fixed bug (426)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1974 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-01-12 05:48:20 +00:00
Mark Spencer ee342cc3b8 Add ww's improved syslog support (bug #587)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1973 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-01-12 05:05:35 +00:00
Mark Spencer 3171dea6ef scanf != sscanf
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1816 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2003-12-03 02:45:24 +00:00
Mark Spencer 250e28aaf4 Ignore leading spaces before application
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1784 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2003-11-23 22:45:42 +00:00
Mark Spencer 143b3de606 Be less picky about spaces, and recognize invalid priorities
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1783 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2003-11-23 22:40:37 +00:00