Commit Graph

110 Commits

Author SHA1 Message Date
Mark Michelson
478b6ff9ca Merged revisions 247335 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r247335 | mmichelson | 2010-02-17 15:22:40 -0600 (Wed, 17 Feb 2010) | 20 lines
  
  Fix two problems in ast_str functions found while writing a unit test.
  
  1. The documentation for ast_str_set and ast_str_append state that
  the max_len parameter may be -1 in order to limit the size of the
  ast_str to its current allocated size. The problem was that the max_len
  parameter in all cases was a size_t, which is unsigned. Thus a -1 was
  interpreted as UINT_MAX instead of -1. Changing the max_len parameter
  to be ssize_t fixed this issue.
  
  2. Once issue 1 was fixed, there was an off-by-one error in the case
  where we attempted to write a string larger than the current allotted
  size to a string when -1 was passed as the max_len parameter. When trying
  to write more than the allotted size, the ast_str's __AST_STR_USED was
  set to 1 higher than it should have been. Thanks to Tilghman for quickly
  spotting the offending line of code.
  
  Oh, and the unit test that I referenced in the top line of this commit
  will be added to reviewboard shortly. Sit tight...
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@247336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-17 21:28:51 +00:00
Mark Michelson
1423716c8f Merged revisions 247076 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r247076 | mmichelson | 2010-02-16 17:44:33 -0600 (Tue, 16 Feb 2010) | 12 lines
  
  Add va_end calls to __ast_str_helper.
  
  According to the man page for stdarg(3),
  "Each invocation of va_copy() must be matched by a
  corresponding invocation of va_end() in the same
  function."
  
  There were several cases in __ast_str_helper where
  va_copy was not matched with a corresponding call
  to va_end.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@247078 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-16 23:46:24 +00:00
Russell Bryant
50a810caac Merged revisions 237699 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r237699 | russell | 2010-01-05 11:16:01 -0600 (Tue, 05 Jan 2010) | 14 lines
  
  Merged revisions 237697 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r237697 | russell | 2010-01-05 11:13:28 -0600 (Tue, 05 Jan 2010) | 7 lines
    
    Change a NOTICE log message to DEBUG where it belongs.
    
    (closes issue #16479)
    Reported by: alexrecarey
    
    (closes SWP-577)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@237724 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-05 17:22:19 +00:00
David Vossel
692520d606 Merged revisions 233611 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r233611 | dvossel | 2009-12-07 17:28:51 -0600 (Mon, 07 Dec 2009) | 4 lines
  
  fixes incorrect logic in ast_uri_encode
  
  issue #16299
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@233613 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-12-07 23:29:48 +00:00
Matthew Nicholson
4413bd2360 Merged revisions 228620 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r228620 | mnicholson | 2009-11-06 13:47:11 -0600 (Fri, 06 Nov 2009) | 15 lines
  
  Merged revisions 228378 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r228378 | mnicholson | 2009-11-06 10:26:59 -0600 (Fri, 06 Nov 2009) | 8 lines
    
    Properly handle '=' while decoding base64 messages and null terminate strings returned from BASE64_DECODE.
    
    (closes issue #15271)
    Reported by: chappell
    Patches:
          base64_fix.patch uploaded by chappell (license 8)
    Tested by: kobaz
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@228650 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-11-06 20:37:09 +00:00
Michiel van Baak
4d849ce96e Merged revisions 216506 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r216506 | mvanbaak | 2009-09-04 17:05:05 +0200 (Fri, 04 Sep 2009) | 9 lines
  
  Merged revisions 216435 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r216435 | mvanbaak | 2009-09-04 15:56:10 +0200 (Fri, 04 Sep 2009) | 2 lines
    
    make asterisk compile under devmode with DEBUG_THREADS enabled on OpenBSD
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@216508 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-09-04 15:09:35 +00:00
Tilghman Lesher
07e59f290c AST-2009-005
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@211569 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-08-10 19:30:55 +00:00
Joshua Colp
3ba49e9dd1 Merged revisions 197538 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r197538 | file | 2009-05-28 11:51:43 -0300 (Thu, 28 May 2009) | 5 lines
  
  Fix a bug in stringfields where it did not actually free the pools of memory.
  
  (closes issue #15074)
  Reported by: pj
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@197540 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-28 14:54:25 +00:00
Kevin P. Fleming
cb17e3a0f1 Merged revisions 192357 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r192357 | kpfleming | 2009-05-05 15:18:21 +0200 (Tue, 05 May 2009) | 5 lines
  
  Correct some flaws in the memory accounting code for stringfields and ao2 objects
  
  Under some conditions, the memory allocation for stringfields and ao2 objects would not have supplied valid file/function names for MALLOC_DEBUG tracking, so this commit corrects that.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@192359 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-05 13:37:23 +00:00
Kevin P. Fleming
8e6c32f048 Merged revisions 192279 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r192279 | kpfleming | 2009-05-05 10:51:06 +0200 (Tue, 05 May 2009) | 5 lines
  
  Ensure that string pools allocated to hold stringfields are properly accounted in MALLOC_DEBUG mode
  
  This commit modifies the stringfield pool allocator to remember the 'owner' of the stringfield manager the pool is being allocated for, and ensures that pools allocated in the future when fields are populated are owned by that file/function.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@192281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-05-05 09:15:13 +00:00
Russell Bryant
baab6e74b9 Merged revisions 182847 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r182847 | russell | 2009-03-17 21:28:55 -0500 (Tue, 17 Mar 2009) | 52 lines

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

........
r182810 | russell | 2009-03-17 21:09:13 -0500 (Tue, 17 Mar 2009) | 44 lines

Fix cases where the internal poll() was not being used when it needed to be.

We have seen a number of problems caused by poll() not working properly on 
Mac OSX.  If you search around, you'll find a number of references to using 
select() instead of poll() to work around these issues.  In Asterisk, we've 
had poll.c which implements poll() using select() internally.  However, we 
were still getting reports of problems.

vadim investigated a bit and realized that at least on his system, even 
though we were compiling in poll.o, the system poll() was still being used.  
So, the primary purpose of this patch is to ensure that we're using the 
internal poll() when we want it to be used.

The changes are:

1) Remove logic for when internal poll should be used from the Makefile.  
   Instead, put it in the configure script.  The logic in the configure 
   script is the same as it was in the Makefile.  Ideally, we would have 
   a functionality test for the problem, but that's not actually possible, 
   since we would have to be able to run an application on the _target_ 
   system to test poll() behavior.

2) Always include poll.o in the build, but it will be empty if AST_POLL_COMPAT
   is not defined.

3) Change uses of poll() throughout the source tree to ast_poll().  I feel 
   that it is good practice to give the API call a new name when we are 
   changing its behavior and not using the system version directly in all cases.
   So, normally, ast_poll() is just redefined to poll().  On systems where 
   AST_POLL_COMPAT is defined, ast_poll() is redefined to ast_internal_poll().

4) Change poll() in main/poll.c to be ast_internal_poll().

It's worth noting that any code that still uses poll() directly will work fine 
(if they worked fine before).  So, for example, out of tree modules that are 
using poll() will not stop working or anything.  However, for modules to work 
properly on Mac OSX, ast_poll() needs to be used.

(closes issue #13404)
Reported by: agalbraith
Tested by: russell, vadim

http://reviewboard.digium.com/r/198/

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@182946 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-03-18 14:32:47 +00:00
Doug Bailey
d62d9ae0fc Merged revisions 177035 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r177035 | dbailey | 2009-02-18 11:24:07 -0600 (Wed, 18 Feb 2009) | 2 lines
  
  Fixed error where a check for an zero length, terminated string was needed.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@177037 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-18 17:26:25 +00:00
Doug Bailey
b36f3223a3 Merged revisions 176948 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r176948 | dbailey | 2009-02-18 10:09:12 -0600 (Wed, 18 Feb 2009) | 2 lines
  
  Need to take into account the \0 terminator of the old string to determine the amount available.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176962 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-18 16:20:10 +00:00
Kevin P. Fleming
b88bed9b07 Merged revisions 176255 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r176255 | kpfleming | 2009-02-16 15:45:54 -0600 (Mon, 16 Feb 2009) | 13 lines
  
  Merged revisions 176216 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r176216 | kpfleming | 2009-02-16 15:10:38 -0600 (Mon, 16 Feb 2009) | 3 lines
    
    fix a flaw in the ast_string_field_build() family of API calls; these functions made no attempt to reuse the space already allocated to a field, so every time the field was written it would allocate new space, leading to what appeared to be a memory leak.
  ........
    r176254 | kpfleming | 2009-02-16 15:41:46 -0600 (Mon, 16 Feb 2009) | 3 lines
  
    correct a logic error in the last stringfields commit... don't mark additional space as allocated if the string was built using already-allocated space
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@176259 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2009-02-16 22:00:56 +00:00
Russell Bryant
3d6899f584 Merged revisions 166317 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r166317 | russell | 2008-12-22 11:29:10 -0600 (Mon, 22 Dec 2008) | 10 lines

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

........
r166297 | russell | 2008-12-22 11:22:56 -0600 (Mon, 22 Dec 2008) | 2 lines

Fix up timeout handling in ast_carefulwrite().

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166326 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-22 17:32:14 +00:00
Russell Bryant
3db74e5bd7 Merged revisions 166282 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r166282 | russell | 2008-12-22 11:09:36 -0600 (Mon, 22 Dec 2008) | 12 lines

Introduce ast_careful_fwrite() and use in AMI to prevent partial writes.

This patch introduces a function to do careful writes on a file stream which
will handle timeouts and partial writes.  It is currently used in AMI to
address the issue that has been reported.  However, there are probably a few
other places where this could be used.

(closes issue #13546)
Reported by: srt
Tested by: russell
http://reviewboard.digium.com/r/104/

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@166284 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-22 17:19:05 +00:00
Russell Bryant
c871ef2aeb Merged revisions 165801 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r165801 | russell | 2008-12-18 15:44:47 -0600 (Thu, 18 Dec 2008) | 19 lines

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

........
r165796 | russell | 2008-12-18 15:39:25 -0600 (Thu, 18 Dec 2008) | 11 lines

Make ast_carefulwrite() be more careful.

This patch handles some additional cases that could result in partial writes
to the file description.  This was done to address complaints about partial
writes on AMI.

(issue #13546) (more changes needed to address potential problems in 1.6)
Reported by: srt
Tested by: russell
Review: http://reviewboard.digium.com/r/99/

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@165804 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-18 21:47:07 +00:00
Russell Bryant
4468cd8d49 Merged revisions 164882 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r164882 | russell | 2008-12-16 15:39:15 -0600 (Tue, 16 Dec 2008) | 17 lines

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

........
r164881 | russell | 2008-12-16 15:38:29 -0600 (Tue, 16 Dec 2008) | 9 lines

Fix an issue where DEBUG_THREADS may erroneously report that a thread 
is exiting while holding a lock.

If the last lock attempt was a trylock, and it failed, it will still be in the
list of locks so that it can be reported.

(closes issue #13219)
Reported by: pj

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@164884 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-16 21:40:30 +00:00
Russell Bryant
5964f2e0f1 Merged revisions 162414 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r162414 | russell | 2008-12-09 16:25:06 -0600 (Tue, 09 Dec 2008) | 16 lines

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

........
r162413 | russell | 2008-12-09 16:17:39 -0600 (Tue, 09 Dec 2008) | 8 lines

Remove the test_for_thread_safety() function completely.

The test is not valid.  Besides, if we actually suspected that recursive
mutexes were not working, we would get a ton of LOG_ERROR messages when
DEBUG_THREADS is turned on.

(inspired by a discussion on the asterisk-dev list)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@162416 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-09 22:34:55 +00:00
Kevin P. Fleming
c3347e79a5 Merged revisions 159818 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r159818 | kpfleming | 2008-11-29 11:57:39 -0600 (Sat, 29 Nov 2008) | 18 lines
  
  incorporates r159808 from branches/1.4:
  ------------------------------------------------------------------------
  r159808 | kpfleming | 2008-11-29 10:58:29 -0600 (Sat, 29 Nov 2008) | 7 lines
  
  update dev-mode compiler flags to match the ones used by default on Ubuntu Intrepid, so all developers will see the same warnings and errors
  
  since this branch already had some printf format attributes, enable checking for them and tag functions that didn't have them
  
  format attributes in a consistent way
  
  
  ------------------------------------------------------------------------
  
  in addition:
  
  move some format attributes from main/utils.c to the header files they belong in, and fix up references to the relevant functions based on new compiler warnings
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@159851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-29 18:16:50 +00:00
Tilghman Lesher
f21824e65a Merged revisions 157639 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r157639 | tilghman | 2008-11-18 19:02:45 -0600 (Tue, 18 Nov 2008) | 7 lines
  
  Starting with a change to ensure that ast_verbose() preserves ABI compatibility
  in 1.6.1 (as compared to 1.6.0 and versions of 1.4), this change also
  deprecates the use of Asterisk with FreeBSD 4, given the central use of va_copy
  in core functions.  va_copy() is C99, anyway, and we already require C99 for
  other purposes, so this isn't really a big change anyway.  This change also
  simplifies some of the core ast_str_* functions.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@157641 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-19 01:08:46 +00:00
Kevin P. Fleming
1036849a42 import gcc 4.3.2 warning fixes from trunk, with a few changes specific to this branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@153710 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-02 23:56:13 +00:00
Kevin P. Fleming
f910cfc444 Merged revisions 132872 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r132872 | kpfleming | 2008-07-23 06:52:18 -0500 (Wed, 23 Jul 2008) | 2 lines

minor optimization for stringfields: when a field is being set to a larger value than it currently contains and it happens to be the most recent field allocated from the currentl pool, it is possible to 'grow' it without having to waste the space it is currently using (or potentially even allocate a new pool)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@132964 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-23 16:30:18 +00:00
Brett Bryant
5b7933fe5e Janitor patch to change uses of sizeof to ARRAY_LEN
(closes issue #13054)
Reported by: pabelanger
Patches:
      ARRAY_LEN.patch2 uploaded by pabelanger (license 224)
Tested by: seanbright


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@130129 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-11 18:09:35 +00:00
Tilghman Lesher
09c15a0b71 Merged revisions 125793 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r125793 | tilghman | 2008-06-27 08:45:03 -0500 (Fri, 27 Jun 2008) | 2 lines

In this debugging function, copy to a buffer instead of using potentially unsafe pointers.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@125794 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-27 13:54:13 +00:00
Jason Parker
c1e4f50f54 Merged revisions 125587 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r125587 | qwell | 2008-06-26 18:03:15 -0500 (Thu, 26 Jun 2008) | 1 line

Make sure to unlock the lock_info lock (huh?).  Possible deadlock?
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@125589 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-26 23:04:18 +00:00
Brett Bryant
b4574d2a79 Add errors that report any locks held by threads when they are being closed.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@124064 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-19 19:48:26 +00:00
Tilghman Lesher
53459f86b2 Expand RQ_INTEGER type out to multiple types, one for each precision
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@121367 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-09 22:51:59 +00:00
Russell Bryant
51051ce949 Add lock tracking for rwlocks. Previously, lock.h only had the ability to
hold tracking information for mutexes.  Now, the "core show locks" output
will output information about who is holding a rwlock when a thread is
waiting on it.

(closes issue #11279)
Reported by: ys
Patches:
      trunk_lock_utils.v8.diff uploaded by ys (license 281)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@120064 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-03 18:26:51 +00:00
Russell Bryant
da85b710ef Fix a minor merge issue that caused a function to not get compiled in with
DEBUG_THREADS like it was supposed to


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@119423 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-30 21:51:17 +00:00
Tilghman Lesher
6e5d843a71 Merged revisions 118953 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r118953 | tilghman | 2008-05-29 12:20:16 -0500 (Thu, 29 May 2008) | 3 lines

Add some debugging code that ensures that when we do deadlock avoidance, we
don't lose the information about how a lock was originally acquired.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@118955 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-29 17:35:19 +00:00
Mark Michelson
975a848b67 A new feature thanks to the fine folks at Switchvox!
If a deadlock is detected, then the typical lock information will be
printed along with a backtrace of the stack for the offending threads.
Use of this requires compiling with DETECT_DEADLOCKS and having glibc
installed.

Furthermore, issuing the "core show locks" CLI command will print the
normal lock information as well as a backtraces for each lock. This
requires that DEBUG_THREADS is enabled and that glibc is installed.

All the backtrace features may be disabled by running the configure
script with --without-execinfo as an argument



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@118173 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-23 22:35:50 +00:00
Russell Bryant
61e6ae545b Merged revisions 118048 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r118048 | russell | 2008-05-23 07:30:53 -0500 (Fri, 23 May 2008) | 9 lines

Don't declare a function that takes variable arguments as inline, because it's
not valid, and on some compilers, will emit a warning.

http://gcc.gnu.org/onlinedocs/gcc/Inline.html#Inline

(closes issue #12289)
Reported by: francesco_r
Patches by Tilghman, final patch by me

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@118049 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-23 12:37:31 +00:00
Luigi Rizzo
18065a175d Use casts or intermediate variables to remove a number
of platform/compiler-dependent warnings when handing
struct timeval fields, both reading and printing them.

It is a lost battle to handle the different ways struct timeval
is handled on the various platforms and compilers, so try
to be pragmatic and go through int/long which are universally
supported.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@116557 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-15 10:56:29 +00:00
Mark Michelson
2e054642d5 Merged revisions 115735 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r115735 | mmichelson | 2008-05-12 12:51:14 -0500 (Mon, 12 May 2008) | 7 lines

If a thread holds no locks, do not print any information on the thread when issuing
a core show locks command. This will help to de-clutter output somewhat.

Russell said it would be fine to place this improvement in the 1.4 branch, so that's
why it's going here too.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@115737 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-12 17:55:08 +00:00
Tilghman Lesher
95490ee5c2 Merged revisions 115017 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r115017 | tilghman | 2008-05-01 13:59:08 -0500 (Thu, 01 May 2008) | 6 lines

'#' is another reserved character for URIs that also needs to be escaped.
(closes issue #10543)
 Reported by: blitzrage
 Patches: 
       20080418__bug10543.diff.txt uploaded by Corydon76 (license 14)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@115018 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-01 19:00:18 +00:00
Steve Murphy
161b4abd79 Hopefully, this will resolve the issues that russellb had with this log_show_lock().
I gathered the code that filled the string, and put it in a different func which
I cryptically call "append_lock_information()".
Now, both log_show_lock(), and handle_show_locks() both call this code to do
the work. Tested, seems to work fine. 
Also, log_show_lock was modified to use the ast_str stuff, along with checking
for successful ast_str creation, and freeing the ast_str obj when finished.
A break was inserted to terminate the search for the lock; we should never
see it twice.

An example usage in chan_sip.c was created as a comment, for instructional
purposes.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114520 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-22 14:38:46 +00:00
Russell Bryant
0270b3d6c9 Make this file compile. The variable str is never set anywhere. Furthermore,
it duplicates a lot of code.  I will leave it to murf to clean up.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114231 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-17 22:21:32 +00:00
Steve Murphy
752f6681b1 A small enhancement-- I added the routine log_show_lock to utils.c, which if the mentioned lock has been acquired, this routine will log to the console the normal info about that lock you'd see from the CLI when you do a 'core show locks'. It's solely for debug-- if the lock is NOT acquired, there is no output. I use it to show 'unexpected' locks, to see where/why a lock is pre-locked. This command is to be called from points of interest, like just before a trylock, and helps to spot fleeting, highly temporal locks that normally are not locked...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114187 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-16 20:54:41 +00:00
Mark Michelson
115d5024a1 Merged revisions 114051 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r114051 | mmichelson | 2008-04-10 15:59:49 -0500 (Thu, 10 Apr 2008) | 3 lines

Fix 1.4 build when LOW_MEMORY is enabled.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114052 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-10 22:02:32 +00:00
Russell Bryant
c1cf92d304 Merged revisions 109838 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r109838 | russell | 2008-03-18 23:06:05 -0500 (Tue, 18 Mar 2008) | 2 lines

Tweak spacing in a recent change because I'm very picky.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109839 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-19 04:06:31 +00:00
Terry Wilson
b02bc230af Go through and fix a bunch of places where character strings were being interpreted as format strings. Most of these changes are solely to make compiling with -Wsecurity and -Wformat=2 happy, and were not
actual problems, per se.  I also added format attributes to any printf wrapper functions I found that didn't have them.  -Wsecurity and -Wmissing-format-attribute added to --enable-dev-mode.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109447 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 15:43:34 +00:00
Mark Michelson
b246e010d5 Merged revisions 109226 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r109226 | mmichelson | 2008-03-17 17:05:49 -0500 (Mon, 17 Mar 2008) | 12 lines

Fix a logic flaw in the code that stores lock info which is displayed
via the "core show locks" command. The idea behind this section of code was
to remove the previous lock from the list if it was a trylock that had failed.
Unfortunately, instead of checking the status of the previous lock, we were referencing
the index immediately following the previous lock in the lock_info->locks array. 
The result of this problem, under the right circumstances, was that the lock which 
we currently in the process of attempting to acquire could "overwrite" the previous lock 
which was acquired. While this does not in any way affect typical operation, it *could*
lead to misleading "core show locks" output.



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109227 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-17 22:06:44 +00:00
Tilghman Lesher
cfc1df4c1a Whitespace changes only
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105840 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-04 23:04:29 +00:00
Russell Bryant
7da06e6cb8 Merged revisions 105116 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r105116 | russell | 2008-02-28 16:23:05 -0600 (Thu, 28 Feb 2008) | 8 lines

Fix a bug in the lock tracking code that was discovered by mmichelson.  The issue
is that if the lock history array was full, then the functions to mark a lock as
acquired or not would adjust the stats for whatever lock is at the end of the array,
which may not be itself.  So, do a sanity check to make sure that we're updating
lock info for the proper lock.

(This explains the bizarre stats on lock #63 in BE-396, thanks Mark!)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105144 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-28 22:39:26 +00:00
Russell Bryant
16b84e260c Merged revisions 104102 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r104102 | russell | 2008-02-25 17:19:05 -0600 (Mon, 25 Feb 2008) | 7 lines

Improve the lock tracking code a bit so that a bunch of old locks that threads
failed to lock don't sit around in the history.  When a lock is first locked,
this checks to see if the last lock in the list was one that was failed to be
locked.  If it is, then that was a lock that we're no longer sitting in a trylock
loop trying to lock, so just remove it.
(inspired by issue #11712)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@104103 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-25 23:19:31 +00:00
Joshua Colp
c81350d6f6 Just some minor coding style cleanup...
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103318 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-11 18:27:47 +00:00
Tilghman Lesher
81e421284d New module res_config_curl (closes issue #11747)
Reported by: Corydon76
 Patches: 
       res_config_curl.c uploaded by Corydon76 (license 14)
       20080116__bug11747.diff.txt uploaded by Corydon76 (license 14)
 Tested by: jmls


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@98981 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-16 22:20:45 +00:00
Tilghman Lesher
f48ed5a943 Merged revisions 97194 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r97194 | tilghman | 2008-01-08 14:47:07 -0600 (Tue, 08 Jan 2008) | 3 lines

Increase constants to where we're less likely to hit them while debugging.
(Closes issue #11694)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@97198 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-08 20:56:38 +00:00
Luigi Rizzo
8e4360b072 Add a new API function, written at least twice in app_voicemail.c
and likely in other places too.

This is quite useful when placing mail/html stuff in config files.

 /*!
   \brief Convert some C escape sequences (\b\f\n\r\t) into the
        equivalent characters.
   \brief s The string to be converted (will be modified).
   \return The converted string.
  */
 char *ast_unescape_c(char *s);
 




git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93950 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-19 17:09:01 +00:00