Commit Graph

2909 Commits

Author SHA1 Message Date
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
Olle Johansson
5af687b83b Issue #6951 - Show last successful registration time in "sip show registry" (ivanfm) with mods for svn trunk
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19736 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-13 12:48:03 +00:00
Olle Johansson
d4b5393eeb - Adding some refer state definitions from the siptransfer branch
- A bit more URI conversions 
- Changes to sip_dual and the SIP invite structure
- Add Supported: headers to more requests


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19578 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-12 21:21:44 +00:00
Olle Johansson
9468e5cd06 Fix for Polycom bug...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19549 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-12 21:00:31 +00:00
Olle Johansson
ea4235c56c Implement a setting for denying/allowing transfer requests. At this stage,
we only have open/closed. Well, at least you can deny transfers from unknown
callers or at least incoming calls.
(Part of the SIPtransfer branch)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19546 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-12 20:57:07 +00:00
Olle Johansson
975ddb8552 Doxygen docs
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19542 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-12 20:32:40 +00:00
Luigi Rizzo
b24bc86fc2 reindent block properly
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19466 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-12 00:17:37 +00:00
Luigi Rizzo
86e8094c3c localize some variables, remove useless parentheses
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-12 00:15:57 +00:00
Luigi Rizzo
3579d11dc1 remove useless \0, and fix formatting.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19437 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 23:54:33 +00:00
Kevin P. Fleming
fb4d5fb6a6 fix logic error; don't test for rtcache flag unless asked to (issue #6923)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19393 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 22:07:52 +00:00
Joshua Colp
d7f01e051b No need to do this in here any longer since the linkedlists macro is fixed
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19305 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 20:51:45 +00:00
Joshua Colp
afcefc4a68 Convert chan_iax2 to use linked lists for multithreading, and add dynamic threads. These are used when all pool threads are in use, and will stick around until load dies down. The theory is that during high load you'll have more threads available, and during low load you'll only have the normal pool threads sticking around.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19254 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 16:44:10 +00:00
Luigi Rizzo
6b2d947b62 staticize a function, and normalize code in preparation to module changes.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19188 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 10:00:24 +00:00
Christian Richter
baab6e1c27 mISDN Messages must be freed with free_msg \!\!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19160 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 08:31:19 +00:00
Olle Johansson
8318cddd8e - First stab at removing debug and ignore variables that
we pass along function calls, instead implementing them as
  flags on the incoming packet.
- Adding forward declarations of handle_request functions


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@19128 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-11 06:09:01 +00:00
Olle Johansson
26198e8826 Fixup fixup - add some debugging and error handling
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18940 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 20:18:14 +00:00
Olle Johansson
8b1543974f Resolve conflicts, prepare for next batch of conflicts
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18909 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 19:55:39 +00:00
Christian Richter
52cf26255a fixed some issues, that appear at higher load
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18835 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 16:50:20 +00:00
Christian Richter
cb6f278393 we send nearly everytime a RELEASE, only if we for sure know, that it's a TE and we did create the call we don't to hear the Inband Info
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18800 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 14:09:17 +00:00
Olle Johansson
fed57c1eb2 Making sure that cancel destroy is only executed once...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18799 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 13:43:54 +00:00
Olle Johansson
f74538df11 Small fix
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18797 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 13:19:36 +00:00
Luigi Rizzo
c3b3feab76 - staticize gettag() complete_sip_peer() get_calleridname() arguments;
- use strsep() instead of strchr() where appropriate
- constify some args and add comments. 
- remove a conditional near line 1940 - we already know what to use.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 12:20:57 +00:00
Luigi Rizzo
8731b6386d - constification of some functions (args and return values):
transmit_response_reliable()
        hangup_cause2sip()
- remove useless braces;
- add comments on some slightly cryptic code segments
- mark XXX possible critical pieces of code.
- remove an unneeded string termination after ast_copy_string
- mark usage of some rarely used functions;
- use strsep() instead of emulating it inline;
- replace magic constants with sizeof(array)




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18792 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 11:57:40 +00:00
Luigi Rizzo
7e5e2ffb5f - localize 'struct cfalias' into the only function using it;
- remove duplicate code to walk through sdp packets, replacing
  sdpLineNum_iterator_init(&foo); with  "foo = 0";
- remove duplicate code to test ast_test_flag(&p->flags[0], SIP_NAT_ROUTE);



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18791 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 11:36:02 +00:00
Luigi Rizzo
25e9168fea constify get_sdp*() and friends.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18790 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 11:19:14 +00:00
Luigi Rizzo
87890e75ba constify get_header(), which let me find out and fix one bug (overwriting
a string in the buffer) and finding out another one (not fixed yet,
just marked XXX).



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18789 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 11:04:04 +00:00
Luigi Rizzo
47df1e2020 - describe how sip packets are stored internally;
- remove useless braces or local variables;
- simplify some code sequences;
- mark with XXX a possible locking issue.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18788 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 10:40:13 +00:00
Luigi Rizzo
20d1876617 struct sip_request cleanup:
- remove a debug field that was read but never set, so it was basically
  unused as well as the code testing it (also removed);

- make scalar fields contiguous so any array overflow will be
  less harmful;



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18787 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 10:30:38 +00:00
Luigi Rizzo
104c2b0a3a more cleanup: remove useless braces, replace "if" with "?",
localize a couple of variables, remove trailing whitespace.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18786 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 10:22:42 +00:00
Olle Johansson
9b4e335439 Re-instate removed comment
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18785 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 10:01:14 +00:00
Luigi Rizzo
e081b42cd6 another batch of minor code simplifications
(moving repeated expressions into a function, const on
some arguments)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18784 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-10 09:53:22 +00:00
Luigi Rizzo
e468d9011d a bunch of trivial code normalizations (removal of unnecessary
casts and parentheses, formatting fixes, pointing out replicated
code and so on). No functional changes.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18666 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-09 23:16:29 +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
Olle Johansson
8159124572 -Fixing some debugging messages in history and console
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 20:19:44 +00:00
Olle Johansson
aefba4ad7d Add history events for re-invites
(need to nail this issue...)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18373 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 19:46:50 +00:00
Olle Johansson
f235bbe5a5 make history easier to read
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18371 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 19:36:44 +00:00
Olle Johansson
8cd506cdfd Add some more information to SIP history
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 19:25:19 +00:00
Olle Johansson
7089dc1341 Issue #6899 - remove OSP support code from chan_sip.c and app_dial.c
- implement all functions through internal APIs in res_osp.c and app_osplookup.c
(homesick)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18369 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 19:11:22 +00:00
Olle Johansson
fd54f36509 Hmm. What is that keyword?? Let me see... Wait... Maybe... Ahh! OOPS!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18342 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 18:52:23 +00:00
Russell Bryant
3808318cff change a couple uses of !strlen() to ast_strlen_zero(). Oddly enough, one of
these used to be this way and got changed ...


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18309 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 16:28:50 +00:00
Olle Johansson
839ebd8e03 - sip_alloc failures are also caused by too few available file descriptors, so we can not
open socket for RTP (audio/video/rtcp).
  Error message change to clarify.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18307 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 16:22:28 +00:00
Olle Johansson
b479a91e97 - Add cause code for format error
- Change to SWITCH_CONGESTION instead of CONGESTION
(imported from 1.2)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18262 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 14:42:25 +00:00
Olle Johansson
48ca2c82bf Import of revistion 18250 from 1.2
- Fix minor memory leak
- Add proper cause codes on memory allocation failures


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18261 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 14:30:14 +00:00
Christian Richter
ece21c3019 sorry litle mistake
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 12:03:51 +00:00
Christian Richter
47b8610f70 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18192 65c4cc65-6c06-0410-ace0-fbb531ad65f3 2006-04-07 09:46:38 +00:00
Christian Richter
7788d5061c fixed a bridging-endless-loop also fixed the rdnis is not exported issue
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18190 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 09:31:27 +00:00
Olle Johansson
b7d32b9e0b Issue #6674: Set the URI correctly on BYEs when we have an incoming call
Reported by aubergine, fix by oej


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18161 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-07 08:19:52 +00:00
Olle Johansson
4ded41daa5 Cosmetic update for outbound REFERs
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18060 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-06 21:49:24 +00:00
Olle Johansson
965394e4c2 Add "NewChan" event to history to track the birth of a new ast_chan from a
SIP invite


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18059 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-06 21:33:39 +00:00
Olle Johansson
009e081199 Improved handling of 491 responses
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@18058 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-04-06 21:29:54 +00:00