Commit Graph

22 Commits

Author SHA1 Message Date
Steve Murphy
f79f987366 Merged revisions 165254 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r165254 | murf | 2008-12-17 13:50:19 -0700 (Wed, 17 Dec 2008) | 5 lines

This patch is here committed to satisfy the
buildbot, who has a problem with the const.



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@165267 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-17 20:59:42 +00:00
Steve Murphy
6bddb621ce Merged revisions 165071 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r165071 | murf | 2008-12-16 22:04:56 -0700 (Tue, 16 Dec 2008) | 31 lines

A possibly "horrible fix" for a "horribly broken"
situation.

As stuff shifts around in the asterisk code, the
miscellaneous inclusions from the standalone stuff
gets broken. There's no easy fix for this situation.

I made sure that everything in utils builds without
problem ***AND*** that aelparse runs the regressions
correctly with the following make menuselect options
both on and off:

DONT_OPTIMIZE
DEBUG_THREADS
DEBUG_CHANNEL_LOCKS
MALLOC_DEBUG
MTX_PROFILE
DEBUG_SCHEDULER
DEBUG_THREADLOCALS
DETECT_DEADLOCKS
CHANNEL_TRACE

I think from now on, I'm going to #undef
all these features in the various utils native
files; I guess I could do the same for the
copied-in files, surrounded by STANDALONE ifdef.

A standalone isn't going to care about threads,
mutexes, etc.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@165074 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-12-17 05:35:48 +00:00
Kevin P. Fleming
2eb5c30a3a 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.0@159855 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-29 18:37:55 +00:00
Kevin P. Fleming
3577a3c7ca Merged revisions 155121 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
  r155121 | kpfleming | 2008-11-06 16:49:19 -0600 (Thu, 06 Nov 2008) | 3 lines
  
  don't blindly assume that Darwin and Cygwin need GLOB_ABORTED defined; only define it if it is not already defined
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@155123 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-11-06 22:50:27 +00:00
Steve Murphy
062d3041fe Merged revisions 147807 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r147807 | murf | 2008-10-09 08:17:33 -0600 (Thu, 09 Oct 2008) | 15 lines

(closes issue #13557)
Reported by: nickpeirson
Patches:
      pbx.c.patch uploaded by nickpeirson (license 579)
      replace_bzero+bcopy.patch uploaded by nickpeirson (license 579)
Tested by: nickpeirson, murf

1. replaced all refs to bzero and bcopy to memset and memmove instead.
2. added a note to the CODING-GUIDELINES
3. add two macros to asterisk.h to prevent bzero, bcopy from creeping
   back into the source
4. removed bzero from configure, configure.ac, autoconfig.h.in



........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@147809 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-10-09 14:56:51 +00:00
Kevin P. Fleming
ccc3bcfb67 Merged revisions 144949-144951 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
  r144949 | kpfleming | 2008-09-27 10:52:56 -0500 (Sat, 27 Sep 2008) | 17 lines
  
  Merged revisions 144924-144925 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.4
  
  ........
    r144924 | kpfleming | 2008-09-27 10:00:48 -0500 (Sat, 27 Sep 2008) | 6 lines
    
    improve header inclusion process in a few small ways:
    
      - it is no longer necessary to forcibly include asterisk/autoconfig.h; every module already includes asterisk.h as its first header (even before system headers), which serves the same purpose
      - astmm.h is now included by asterisk.h when needed, instead of being forced by the Makefile; this means external modules will build properly against installed headers with MALLOC_DEBUG enabled
      - simplify the usage of some of these headers in the AEL-related stuff in the utils directory
  ........
    r144925 | kpfleming | 2008-09-27 10:13:30 -0500 (Sat, 27 Sep 2008) | 2 lines
    
    fix some minor issues with rev 144924
  ........
................
  r144950 | kpfleming | 2008-09-27 11:10:33 -0500 (Sat, 27 Sep 2008) | 2 lines
  
  fix bugs caused by r144949 when MALLOC_DEBUG is defined
................
  r144951 | kpfleming | 2008-09-27 11:17:43 -0500 (Sat, 27 Sep 2008) | 1 line
  
  remove incorrect comment
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@144991 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-09-27 16:36:39 +00:00
Steve Murphy
e45d4f3bf1 Merged revisions 130145 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

Merging this rev from trunk to 1.6.0 was not
simple. Why? Because we've enhanced trunk to
do a [fast] merge-and-delete operation which 
also solved problems with contexts having 
entries from different registrars.
Fast as in the amount of time the contexts
are locked down. That *is* fast, but traversing
the entire dialplan looking for priorities to
delete takes more time overall.
This particular fix involved pulling in those
enhancements from trunk, along with all the
various fixes and refinements made along the
way.

Merging all this from trunk into 1.6 involved:
a. mergetrunk6 in the stuff from 130145;
b. revert all but the prop changes
c. catalog all revisions to pbx.c since 1.6.0 was forked
   (at rev 105596).
d. catalog all revisions to pbx.c in trunk since 1.6.0
   was forked, making special note of all revs that
   were not merged into 1.6.0.
e. study each rev in trunk not applied to 1.6.0, and
   determine if it was involved in the merge_and_delete
   enhancements in trunk. 25 commits were done in 1.6.0,
   all but one (106306) was a merge from trunk.
   Trunk had 22 additional changes, of which 7 were
   involved in the merge_and_delete enhancements:
    106757
    108894
    109169
    116461
    123358
    130145
    130297
f. Go to trunk and collect patches, one by one,
   of the changes made by each rev across the
   entire source tree, using svn diff -c <num> > pfile
g. Apply each patch in order to 1.6.0, and 
   resolve all failures and compilation problems
   before proceding to the next patch.
h. test the stuff.
i. profit!


........
r130145 | murf | 2008-07-11 12:24:31 -0600 (Fri, 11 Jul 2008) | 40 lines

(closes issue #13041)
Reported by: eliel
Tested by: murf

(closes issue #12960)
Reported by: mnicholson

In this 'omnibus' fix, I **think** I solved both
the problem in 13041, where unloading pbx_ael.so
caused crashes, or incomplete removal of previous
registrar'ed entries. And I added code to completely
remove all includes, switches, and ignorepats that
had a matching registrar entry, which should
appease 12960.

I also added a lot of seemingly useless brackets
around single statement if's, which helped debug 
so much that I'm leaving them there.

I added a routine to check the correlation between
the extension tree lists and the hashtab 
tables. It can be amazingly helpful when you have
lots of dialplan stuff, and need to narrow
down where a problem is occurring. It's ifdef'd
out by default.

I cleaned up the code around the new CIDmatch code.
It was leaving hanging extens with bad ptrs, getting confused
over which objects to remove, etc. I tightened
up the code and changed the call to remove_exten
in the merge_and_delete code.

I added more conditions to check for empty context
worthy of deletion. It's not empty if there are
any includes, switches, or ignorepats present.

If I've missed anything, please re-open this bug,
and be prepared to supply example dialplan code.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@130946 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-15 13:14:07 +00:00
Jeff Peeler
f089bbf663 Goodbye Zaptel, hello DAHDI. Removes Zaptel driver support with DAHDI. Configuration file and dialplan backwards compatability has been put in place where appropiate. Release announcement to follow.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@123332 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-06-17 18:08:09 +00:00
Russell Bryant
4af367c3a9 Merged revisions 109447 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
r109447 | twilson | 2008-03-18 10:43:34 -0500 (Tue, 18 Mar 2008) | 3 lines

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/branches/1.6.0@109459 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-18 15:58:50 +00:00
Tilghman Lesher
fd382738e3 Merged revisions 106553 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

................
r106553 | tilghman | 2008-03-07 00:54:47 -0600 (Fri, 07 Mar 2008) | 14 lines

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

........
r106552 | tilghman | 2008-03-07 00:36:33 -0600 (Fri, 07 Mar 2008) | 6 lines

Safely use the strncat() function.
(closes issue #11958)
 Reported by: norman
 Patches: 
       20080209__bug11958.diff.txt uploaded by Corydon76 (license 14)

........

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


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@106554 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-07 06:57:44 +00:00
Joshua Colp
9c0c82d0d0 Make ast_atomic_fetchadd_int_slow magically appear in extconf.
(closes issue #11703)
Reported by: dmartin


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@97041 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-08 15:26:50 +00:00
Luigi Rizzo
5e24835995 modify http://svn.digium.com/view/asterisk?view=rev&rev=93603
so that paths and filename are writable by asterisk.c without
causing segfaults.

This involves defining the variables as const char *,
and having them point to as static, writable buffer
defined in asterisk.c

On passing, fix some errors in using these variables
in some files in utils/ , and in res/snmp/agent.c
which was redefining a variable without using paths.h

(not applicable to 1.4)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94168 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-20 09:55:05 +00:00
Luigi Rizzo
10f70a8321 make configuration variable const so they are not accidentally
modified.
This requires casting the strings in asterisk.c when writing to
them, so we do it through a macro to do it consistently.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93603 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 10:24:58 +00:00
Luigi Rizzo
fd88390af7 remove unnecessary (char *) casts for ast_config_AST_* variables.
There are some left in the .flex files, left to the maintainer...



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93582 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-18 09:46:18 +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
7cd78079ae more cygwin/mingw32 compatibility fixes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89373 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-17 10:54:52 +00:00
Luigi Rizzo
4afe3b5ba9 remove redundant #include "asterisk/compat.h",
but make sure that asterisk/compiler.h is included everywhere



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-16 21:08:28 +00:00
Steve Murphy
63f2f04cf4 This commits the performance mods that give the priority processing engine in the pbx, a 25-30% speed boost. The two updates used, are, first, to merge the ast_exists_extension() and the ast_spawn_extension() where they are called sequentially in a loop in the code, into a slightly upgraded version of ast_spawn_extension(), with a few extra args; and, second, I modified the substitute_variables_helper_full, so it zeroes out the byte after the evaluated string instead of demanding you pre-zero the buffer; I also went thru the code and removed the code that zeroed this buffer before every call to the substitute_variables_helper_full. The first fix provides about a 9% speedup, and the second the rest. These figures come from the 'PIPS' benchmark I describe in blogs, conf. reports, etc.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-01 22:26:51 +00:00
Steve Murphy
b5cd67adc3 This code was in team/murf/bug8684-trunk; it should fix bug 8684 in trunk. I didn't add it to 1.4 yet, because it's not entirely clear to me if this is a bug fix or an enhancement. A lot of files were affected by small changes like ast_variable_new getting an added arg, for the file name the var was defined in; ast_category_new gets added args of filename and lineno; ast_category and ast_variable structures now record file and lineno for each entry; a list of all #include and #execs in a config file (or any of its inclusions are now kept in the ast_config struct; at save time, each entry is put back into its proper file of origin, in order. #include and #exec directives are folded in properly. Headers indicating that the file was generated, are generated also for each included file. Some changes to main/manager.c to take care of file renaming, via the UpdateConfig command. Multiple inclusions of the same file are handled by exploding these into multiple include files, uniquely named. There's probably more, but I can't remember it right now.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81361 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 20:55:40 +00:00
Steve Murphy
b69734ae09 Stephn Davies reports that this will help make things work on 64-bit machines
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@80075 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-20 17:37:36 +00:00
Steve Murphy
c11e482cc8 svn did me dirty for some reason. Left 5 files out of the commit; Tilghman copied them in from the branch, but I had made changes to these. Here they are.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79714 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-16 16:50:58 +00:00
Tilghman Lesher
918348f03c Missing from murf's last trunk commit, which was why trunk won't compile
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79623 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-15 21:25:13 +00:00