Commit Graph

84 Commits

Author SHA1 Message Date
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 b1fe2d85d3 remove redundant headers
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89518 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-22 01:39:06 +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 0595b5e2aa include "logger.h" and errno.h from asterisk.h - usage shows that they
were included almost everywhere.
Remove some of the instances.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19 18:52:04 +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
Jason Parker 98617d82a1 Make sure we set flags to a 0 value before trying to use it. Pointed out by seanbright while I was debugging issue 11109.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87393 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-29 19:56:50 +00:00
Tilghman Lesher 20bbd09de3 Mostly cleanup of documentation to substitute the pipe with the comma, but a few other formatting cleanups, too.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77808 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-31 01:10:47 +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 b8cd949cce Applications no longer need to call ast_module_user_add and ast_module_user_remove. This is now taken care of in the pbx_exec function outside of the application.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75200 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16 14:39:29 +00:00
Joshua Colp 96a646734f It is no longer required for each module that deals with a channel to call ast_module_user_hangup_all in it's unload function. The loader will automatically perform this action for it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75183 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-16 13:35:20 +00:00
Mark Michelson 49c22c3c04 Create directory if it does not exist.
(Closes issue 10061, Reported and patched by eliel)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@71914 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-26 20:34:46 +00:00
Russell Bryant 055d82cbce Add a massive set of changes for converting to use the ast_debug() macro.
(issue #9957, patches from mvanbaak, caio1982, critch, and dimas)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@69327 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-14 19:39:12 +00:00
Joshua Colp 750635b501 Merged revisions 56839 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r56839 | file | 2007-02-26 14:33:48 -0500 (Mon, 26 Feb 2007) | 2 lines

Update app_record documentation to use new CLI command, core show file formats. (issue #9151 reported by junky)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56840 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-26 19:34:59 +00:00
Olle Johansson ab7f71fd96 Merged revisions 55278 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

................
r55278 | oej | 2007-02-18 13:35:54 +0100 (Sun, 18 Feb 2007) | 10 lines

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

........
r55277 | oej | 2007-02-18 13:32:13 +0100 (Sun, 18 Feb 2007) | 2 lines

Documentation update (#9053, jsmith)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@55279 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-18 12:52:58 +00:00
Steve Murphy 7b338004bf a quick fix to app_sms.c to get rid of cursed compiler warnings so I can compile under --enable-dev-mode
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@48767 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-21 19:44:20 +00:00
Kevin P. Fleming 749029de38 Merged revisions 46200 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r46200 | kpfleming | 2006-10-25 09:32:08 -0500 (Wed, 25 Oct 2006) | 2 lines

apparently developers are still not aware that they should be use ast_copy_string instead of strncpy... fix up many more users, and fix some bugs in the process

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46201 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-25 14:44:50 +00:00
Matt O'Gorman ae8cc3e18b bug #8076 check option_debug before printing to debug channel.
patch provided in bugnote, with minor changes.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44253 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-10-03 15:53:07 +00:00
Anthony LaMantia ef879455f5 small fix for issue 007926
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42715 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-11 16:00:53 +00:00
Tilghman Lesher 9e397b6bba In trunk, ast_fileexists now returns 0 for failure, instead of -1, as it did
in 1.2.  This corrected a longstanding confusion about the return value.
Unfortunately, it broke this app in the process.  (Issue 7906)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42621 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-09 21:51:07 +00:00
Tilghman Lesher fa12b3c774 Merged revisions 42355 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r42355 | tilghman | 2006-09-07 18:12:29 -0500 (Thu, 07 Sep 2006) | 2 lines

Format vulnerability fix - allowing the user to specify a format is not a good idea (Bug 7811)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42356 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-07 23:15:43 +00:00
Anthony LaMantia e553725500 spacing update
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41648 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-31 21:12:26 +00:00
Anthony LaMantia 2161a251a8 small typo
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41647 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-31 21:06:07 +00:00
Anthony LaMantia 7399d40ec7 fix for bugid: 0007830
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41630 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-31 20:49:26 +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
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
Joshua Colp d2d8052741 don't stop recording until hangup (no terminator) (issue #7168 reported by julien23)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@29435 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-22 15:48:22 +00:00
Russell Bryant 04ecb29d03 remove almost all of the checks of the result from ast_strdupa() or alloca().
As it turns out, all of these checks were useless, because alloca will never
return NULL.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26451 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-10 13:22:15 +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 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 1fd898bd84 convert a couple of applications to the new module style
(STATIC_MODULE) to show what needs to be changed.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@17791 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-06 09:24:02 +00:00
Russell Bryant a0d438fb6c remove the uses of the deprecated STANDARD_LOCAL_USER
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@10241 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-02-15 20:11:56 +00:00
Russell Bryant 4414f45393 on this pass, only remove duplicate log messages
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 20:57:06 +00:00
Russell Bryant 9fa6eb5e07 revert my pass through the tree to remove checks of the result of ast_strdupa
(revisions 8378 through 8381)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 17:50:04 +00:00
Russell Bryant 7ad681adc8 remove lots of useless checks of the result of ast_strdupa
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-21 08:13:12 +00:00
Russell Bryant a725468381 update doxygen docs to specify authors
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7682 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-30 21:18:06 +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 3d6c054ca8 issue #5787
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7162 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-21 02:01:36 +00:00
Russell Bryant 987b87662c make app_queue 1.2 jump compliant (issue #5580)
add missing includes of stdio.h
remove some unused and duplicate headers


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7026 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-08 04:48:00 +00:00
Kevin P. Fleming f09c6bc78e application doc update
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6992 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-07 22:01:22 +00:00
Russell Bryant 31a804b97c issue #5605
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6979 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-06 15:09:47 +00:00
Russell Bryant 3bd298f2dd alphabetize option lists
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6975 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-06 05:34:13 +00:00
Kevin P. Fleming 03ceef35ac optionally send silence during recording (issue #5135)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6925 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-01 17:22:25 +00:00
Russell Bryant 5187de9ab6 remove unnecessary checks before calls to ast_strlen_zero
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-26 19:48:14 +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
Russell Bryant 4aa7912057 Massive cleanups to applications for LOCAL_USER handling and some other things.
In general, LOCAL_USER_ADD/REMOVE should be the first/last thing called in an
application.  An exception is if there is some *fast* setup code that might
halt the execution of the application, such as checking to see if an argument
exists.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-19 18:19:02 +00:00
Russell Bryant 29829640bf it's a good idea to unregister everything before calling STANDARD_HANGUP_LOCALUSERS
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6828 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-18 22:52:21 +00:00
Kevin P. Fleming 44e3b6feb1 ensure that Record() will exit even if no audio is received from the channel (issue #4899)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-15 01:17:51 +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
Mark Spencer 5d4d2fdfd4 Add SIP video fixes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6448 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-30 02:12:09 +00:00