of their '_full()' version, so we can remove the replicated
implementation and, especially, the risk that they get out of sync.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20389 f38db490-d61c-443f-a65b-d21fe96a405b
- Update lock.h with definitions of ast_channel_lock, ast_channel_unlock and ast_channel_trylock
- Convert some functions (but not all) in channel.c
- Fix some bugs in chan_sip.c
- Convert rest of chan_sip.c
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20295 f38db490-d61c-443f-a65b-d21fe96a405b
when you have channel locking issues.
(Part of the SIP transfer patch, where I had a *lot* of
channel locking problems)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20264 f38db490-d61c-443f-a65b-d21fe96a405b
(replace nested 'if' with '&&')
I cannot make sense of the first chunk of the proposed patch,
i think the original is correct.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20225 f38db490-d61c-443f-a65b-d21fe96a405b
- localize a variable
- replace three replicas of the same code with a much simpler construct
removing replicated var = var->next;
- use '?' instead of 'if' for an assignment
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20224 f38db490-d61c-443f-a65b-d21fe96a405b
removing replicated var = var->next;
- remove a potential infinite loop and document the problem
- remove useless checks and document why
- mark XXX a possible bug (to be investigated)
- use ast_strlen_zero() instead of expanding it inline
- fix indentation in one place
- replace a nested 'if' with '&&'
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20223 f38db490-d61c-443f-a65b-d21fe96a405b
- fix indentation in a few places
- use a variable to store the 'other' channel, thus removing
the need for some duplicated code;
- use '=' instead of memcpy to copy struct sockaddr_in
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20197 f38db490-d61c-443f-a65b-d21fe96a405b
- add braces around a nested 'if'
- use S_OR and '?' to remove some duplicated function calls;
- replace nested 'if' with &&
- move out a common term in a sequence of 'if'
- add a comment on a potentially dangerous string manipulation
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@20196 f38db490-d61c-443f-a65b-d21fe96a405b
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: http://svn.digium.com/svn/asterisk/trunk@20003 f38db490-d61c-443f-a65b-d21fe96a405b
This fixes the compilation on OS/X (the change exposed a wrong
assumption on mutex types on OS/X), but still leaves open the
bugs in initializing mutex on bsd systems, which you will see
reported as 'locking failures' on certain operations.
I need to investigate the issue further, but the best thing
i can do now is leave things as they have been for months.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@19973 f38db490-d61c-443f-a65b-d21fe96a405b
- A bit more URI conversions
- Changes to sip_dual and the SIP invite structure
- Add Supported: headers to more requests
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@19578 f38db490-d61c-443f-a65b-d21fe96a405b