Commit Graph

1470 Commits

Author SHA1 Message Date
Russell Bryant
fac7480820 Merged revisions 90348 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90348 | russell | 2007-11-30 13:26:04 -0600 (Fri, 30 Nov 2007) | 8 lines

Change the behavior of ao2_link().  Previously, in inherited a reference.
Now, it automatically increases the reference count to reflect the reference
that is now held by the container.

This was done to be more consistent with ao2_unlink(), which automatically
releases the reference held by the container.  It also makes it so it is
no longer possible for a pointer to be invalid after ao2_link() returns.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90351 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-30 19:34:47 +00:00
Russell Bryant
45f98e5419 Merged revisions 90310 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90310 | russell | 2007-11-30 12:46:46 -0600 (Fri, 30 Nov 2007) | 2 lines

Add some notes on the behavior of ao2_unlink() after a discussion with Tilghman

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90311 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-30 18:47:14 +00:00
Tilghman Lesher
afac5cce50 Merged revisions 90155 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90155 | tilghman | 2007-11-29 11:29:59 -0600 (Thu, 29 Nov 2007) | 5 lines

Use of "private" as a field name in a header file messes with C++ projects
Reported by: chewbacca
Patch by: casper
(Closes issue #11401)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-29 17:50:44 +00:00
Tilghman Lesher
4807fe0f0d Fix build of trunk
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90157 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-29 17:42:21 +00:00
Russell Bryant
53a5f22849 Merged revisions 90145 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90145 | russell | 2007-11-28 18:20:34 -0600 (Wed, 28 Nov 2007) | 5 lines

This set of changes is to make some callerID handling thread-safe.
The ast_set_callerid() function needed to lock the channel.  Also, the handlers
for the CALLERID() dialplan function needed to lock the channel when reading
or writing callerid values directly on the channel structure.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90146 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-29 00:28:10 +00:00
Russell Bryant
8a3e984b0c Merged revisions 90142 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r90142 | russell | 2007-11-28 18:06:08 -0600 (Wed, 28 Nov 2007) | 4 lines

Merge a change from team/russell/chan_refcount ...

This makes ast_stopstream() thread-safe.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90143 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-29 00:07:32 +00:00
Russell Bryant
68f8257484 Merge another small doxygen change from team/russell/chan_refcount to indicate
that a channel doesn't need to be locked before calling a certain function.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90141 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 23:57:30 +00:00
Russell Bryant
1d52125cbb Merge some channel.h doxygen updates from team/russell/chan_refcount
This was mostly to note whether a channel needed to be locked or not before
calling these functions.  However, I added some other things, too.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90139 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 23:47:26 +00:00
Jason Parker
aa0f63d65f Remove "old"-style CLI handler, since nothing uses it anymore.
Closes issue #11403, patch by eliel.  This also completes the janitor project.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90038 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 20:27:40 +00:00
Russell Bryant
880fb1ece9 Merged revisions 89893 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89893 | russell | 2007-11-27 18:20:13 -0600 (Tue, 27 Nov 2007) | 4 lines

 - update documentation for some of the goto functions to note that they
   handle locking the channel as needed
 - update ast_explicit_goto() to lock the channel as needed

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89915 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 00:24:19 +00:00
Russell Bryant
1dc9fa5231 Document that the channel is not locked when the send_digit_begin and end
callbacks get called.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89891 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 23:56:45 +00:00
Olle Johansson
a30972ee65 More "moremanager" fixes. Manager commands to check module status.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89771 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 21:04:29 +00:00
Olle Johansson
4bf40290ae More "moremanager" changes - doxygen docs and changing manager version (finally)
before making more dramatic changes.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89770 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 20:50:48 +00:00
Olle Johansson
df7ba90b20 The following patch with updates for trunk. Works much better in trunk.
Also by accident fixed a bad typo by a previous committer, which actually made video calls
not work fully...

Merged revisions 89630 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89630 | oej | 2007-11-27 16:23:17 +0100 (Tis, 27 Nov 2007) | 12 lines

If we get a codec offer using a well-known payload type, but using it for another
codec that we don't know, Asterisk did not remove that codec from the list.

With this patch, we remove the codec from audio and video rtp objects and
deny it ever existed. Thanks to lasse for testing.

(closes issue #11376)
Reported by: lasse
Patches: 
      bug11376.txt uploaded by oej (license 306)
Tested by: lasse

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89698 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 19:24:17 +00:00
Jason Parker
35ecd08b46 Add an S_COR macro, which is similar to the existing S_OR macro,
except with an additional boolean arg.

A hack such as:
foo ? S_OR(bar, "baz") : "baz"
becomes:
S_COR(foo, bar, "baz")


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89683 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 19:12:33 +00:00
Steve Murphy
4d8932a6dc Merged revisions 89622 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89622 | murf | 2007-11-26 23:24:02 -0700 (Mon, 26 Nov 2007) | 1 line

closes issue #11379; OK, this is an attempt to make both sides happy. To the cdr.conf file, I added the option 'unanswered', which defaults to 'no'. In this mode, you will see a cdr for a call, whether it was answered or not. The disposition will be NO ANSWER or ANSWERED, as appropriate. The src is as you'd expect, the destination channel will be one of the channels from the Dial() call, usually the last in the list if more than one chan was specified. With unanswered set to 'yes', you will still see this cdr entry in both cases. But in the case where the dial timed out, you will also see a cdr for each line attempted, marked NO ANSWER, with no destination channel name. The new option defaults to 'no', so you don't see the pesky extra cdr's by default, and you will not see the irritating 'not posted' messages.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89623 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-27 06:47:08 +00:00
Olle Johansson
d4863bb0f0 Start using Doxygen groupings to group variables and defines.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89607 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-26 20:19:50 +00:00
Olle Johansson
595961655a Try to get channel.h and channel.c aligned in regards to ast_set_callerid as well
as change name of variables to follow the rest of the naming.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89564 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-25 19:33:33 +00:00
Tilghman Lesher
f1de129e5f Merged revisions 89559 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89559 | tilghman | 2007-11-25 11:17:10 -0600 (Sun, 25 Nov 2007) | 14 lines

We previously attempted to use the ESCAPE clause to set the escape delimiter to
a backslash.  Unfortunately, this does not universally work on all databases,
since on databases which natively use the backslash as a delimiter, the
backslash itself needs to be delimited, but on other databases that have no
delimiter, backslashing the backslash causes an error.

So the only solution that I can come up with is to create an option in res_odbc
that explicitly specifies whether or not backslash is a native delimiter.  If
it is, we use it natively; if not, we use the ESCAPE clause to make it one.

Reported by: elguero
Patch by: tilghman
(Closes issue #11364)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89561 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-25 17:50:07 +00:00
Olle Johansson
77e15c9b2f Housekeeping...
- Fix typo in chan_sip
- Remove changes to caller ID structure, moving it to branch (russellb)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-25 11:10:52 +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
Olle Johansson
38c8755e9a Let's start with implementing the base architecture for UTF8 caller ID's
so we can handle multiple formats properly. This is not carved in stone,
but a proposal to start with.

We need to add support for transliterations as well as UTF8 handling,
propably with libiconv. Murf is looking into that for the dialplan.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89531 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-23 09:40:02 +00:00
Luigi Rizzo
2b93af99dc formatting cleanup on the header,
normalization of the assignment of descriptor fields.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89530 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-23 09:03:33 +00:00
Luigi Rizzo
89c2e53eb0 formatting cleanup
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89523 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-22 04:19:04 +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
ea2c54859d more removal of redundant headers
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-22 02:07:33 +00:00
Luigi Rizzo
730e4eaca4 implement the split of file.h and mod_format.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89515 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-22 00:53:49 +00:00
Luigi Rizzo
8ad9122aa8 Add a specific header for providers of file and format handling routines,
moving here structs and function declarations formerly in file.h



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89514 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-22 00:53:13 +00:00
Kevin P. Fleming
3826d15993 move these forward declarations back to asterisk.h where they belong... even though asterisk.h includes compat.h, these declarations have nothing to do with the being platform-compatible and are directly related to being part of Asterisk
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89482 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-21 16:07:11 +00:00
Luigi Rizzo
2ff174e62e add check for video4linux
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89475 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-21 01:29:45 +00:00
Luigi Rizzo
b4ab6b5652 X11 checks (at least some - for other platforms with
unusual X11 locations you might need to add more directories)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89472 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-21 00:22:41 +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
915b97d300 move internal function declarations to include/asterisk/_private.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-20 22:18:21 +00:00
Kevin P. Fleming
4d522da4aa switch compile-time option checking to string storage mode in this branch too
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89463 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-20 19:28:10 +00:00
Russell Bryant
3cda8388b9 Be a bit more pedantic about the type for holding the md5 sum for the build options.
Also, doxygenify the comment.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89440 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19 23:03:37 +00:00
Luigi Rizzo
b693c30a66 move the declaration of struct ast_channel ast_frame and ast_module
to compat.h so it is always available - hopefully this will let
us reduce the number of inclusions of channel.h and frame.h



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89426 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19 19:36:32 +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
9175f79aff revert inclusion of options.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89412 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-19 14:36:12 +00:00
Joshua Colp
d447eb052c Use the easy way that rizzo mentioned, only include malloc.h on the Windows platform.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89398 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-18 17:49:40 +00:00
Joshua Colp
fa1f321ffc Revert last commit, apparently buildbot lied to me.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89397 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-18 17:03:38 +00:00
Joshua Colp
5adb2b2b06 Change how we handle alloca to conform with how it is suggested in the autoconf manual for AC_FUNC_ALLOCA. FreeBSD 6 now builds again and no other platforms should be broken by this.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89396 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-18 17:01:41 +00:00
Joshua Colp
42b08b4eb8 Use autoconf logic to determine the presence of PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP and PTHREAD_MUTEX_RECURSIVE_NP. Enclose error message from network.h in "
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89394 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 23:03:16 +00:00
Luigi Rizzo
9f7fdc983f if alloca.h is not present, try malloc.h
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89392 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 19:29:54 +00:00
Luigi Rizzo
a4f9397028 prefer socket.h over other variants (winsock etc.)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89385 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 16:32:18 +00:00
Luigi Rizzo
a0f06d0dd5 start using asterisk/network.h for network related headers.
Also remove some unnecessary includes.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89380 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 14:11:53 +00:00
Luigi Rizzo
616189c6ec wrapper for all generic network headers that have different names
and locations on the various systems.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 14:00:24 +00:00
Luigi Rizzo
a45c53bc5b use autoconf results to conditionally compile timersub
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89372 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 10:32:56 +00:00
Luigi Rizzo
f728d220df compatibility fixes for cygwin
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89371 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 10:28:55 +00:00
Luigi Rizzo
813fe77801 some version of flex produce code that wants __STDC_VERSION__
defined, but the compiler does not always define it.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 10:26:21 +00:00
Luigi Rizzo
59efa92285 timersub is a macro not a function, so write the check in a way
that detects both formats.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89363 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 09:30:22 +00:00