Commit Graph

44 Commits

Author SHA1 Message Date
Kevin P. Fleming
ced50934cb remove the dlfcn compatibility stuff, because no platforms that Asterisk currently runs on it use it, and it doesn't build anyway
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@131921 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-18 16:15:41 +00:00
Kevin P. Fleming
3b34ed635e ensure that DAHDI_INCLUDE and ZAPTEL_INCLUDE are added in all the places needed
improve AST_EXT_LIB_CHECK to accept (and remember) additional CFLAGS data like it does in trunk already

(closes issue #12911)
Reported by: tzafrir



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@127754 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-07-03 16:12:58 +00:00
Joshua Colp
66bf888d62 Add linux-gnueabi in.
(closes issue #12529)
Reported by: tzafrir


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@116352 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-05-14 18:53:39 +00:00
Joshua Colp
2cfae0a8f3 Pass in the path to Zaptel for systems that install Zaptel headers in a separate location.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@112711 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-04-04 00:52:36 +00:00
Kevin P. Fleming
9f2d2cea4b check for compiler support for -fno-strict-overflow before using it (tested with Debian's gcc 4.3, 4.1 and 3.4)
(closes issue #12179)
Reported by: Netview


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@107408 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-11 14:07:59 +00:00
Kevin P. Fleming
553070456b fix up various compiler warnings found with gcc-4.3:
- the output of flex includes a static function called 'input' that is not used, so for the moment we'll stop having the compiler tell us about unused variables in the flex source files (a better fix would be to improve our flex post-processing to remove the unused function)

- main/stdtime/localtime.c makes assumptions about signed integer overflow, and gcc-4.3's improved optimizer tries to take advantage of handling potential overflow conditions at compile time; for now, suppress these optimizations until we can fiure out if the code needs improvement

- main/udptl.c has some references to uninitialized variables; in one case there was no bug, but in the other it was certainly possibly for unexpected behavior to occur

- main/editline/readline.c had an unused variable



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@107352 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-03-11 11:04:29 +00:00
Tilghman Lesher
a032456cb8 Compatibility fix for PPC64
(closes issue #12081)
 Reported by: jcollie
 Patches: 
       asterisk-1.4.18-funcdesc.patch uploaded by jcollie (license 412)
 Tested by: jcollie, Corydon76


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@104868 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-28 00:05:06 +00:00
Russell Bryant
f8c69c7d92 Fix the last couple of issues related to building from a path that contains spaces.
(closes issue #11834)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@100932 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-29 17:43:41 +00:00
Joshua Colp
fa640604de Replace current spy architecture with backport of audiohooks. This should take care of current known spy issues.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@98972 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-16 20:33:47 +00:00
Russell Bryant
45f3890926 Backport the ability to set the ToS bits on Linux when not running as root.
Normally, we would not backport features into 1.4, but, I was convinced by the
justification supplied by the supplier of this patch.  He pointed out that this
patch removes a requirement for running as root, thus reducing the potential
impacts of security issues.

(closes issue #11742)
Reported by: paravoid
Patches:
      libcap.diff uploaded by paravoid (license 200)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@98265 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-11 18:25:30 +00:00
Steve Murphy
9eeca94298 This is a fix for 2 things: a problem Terry was having in OSX with null pointers, which was my fault, as I probably forgot to run the sed script last time I made mods. So, I moved the fix into the flex input itself. Then, I found when I used flex 2.5.33, that it was using __STDC_VERSION__, and that's not real good; so I added back in a DIFFERENT sed script to fix that little mess. Tested everything, a couple different ways. Hope I did no harm, at the least.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@97849 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-10 20:21:27 +00:00
Mark Michelson
7b052b78e1 A big one...
This is the merge of the forward-loop branch. The main change here is that call-forwards can no longer loop.
This is accomplished by creating a datastore on the calling channel which has a linked list of all devices
dialed. If a forward happens, then the local channel which is created inherits the datastore. If, through this
progression of forwards and datastore inheritance, a device is attempted to be dialed a second time, it will simply
be skipped and a warning message will be printed to the CLI. After the dialing has been completed, the datastore
is detached from the channel and destroyed.

This change also introduces some side effects to the code which I shall enumerate here:

1. Datastore inheritance has been backported from trunk into 1.4
2. A large chunk of code has been removed from app_dial. This chunk is the section of code
   which handles the call forward case after the channel has been requested but before it has
   been called. This was removed because call-forwarding still works fine without it, it makes the
   code less error-prone should it need changing, and it made this set of changes much less painful
   to just have the forwarding handled in one place in each module.
3. Two new files, global_datastores.h and .c have been added. These are necessary since the datastore
   which is attached to the channel may be created and attached in either app_dial or app_queue, so they
   need a common place to find the datastore info. This approach was taken in case similar datastores are
   needed in the future, there will be a common place to add them.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@90735 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-03 23:12:17 +00:00
Steve Murphy
ea4525e780 this update to Makefile corrects how ast_expr2f.c should be generated
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86881 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-23 20:22:25 +00:00
Russell Bryant
8399112981 If chan_h323 is not being built, don't use g++ to do the final link of Asterisk.
(in response to a question on the asterisk-dev list)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81342 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-29 15:57:29 +00:00
Russell Bryant
566371bd50 Merge changes from team/russell/iax_refcount.
This set of changes fixes problems with the handling of iax2_user and iax2_peer
objects.  It was very possible for a thread to still hold a reference to one of
these objects while a reload operation tries to delete them.  The fix here is to
ensure that all references to these objects are tracked so that they can't go away
while still in use.

To accomplish this, I used the astobj2 reference counted object model.  This
code has been in one of Luigi Rizzo's branches for a long time and was primarily
developed by one of his students, Marta Carbone.  I wanted to go ahead and bring
this in to 1.4 because there are other problems similar to the ones fixed by these
changes, so we might as well go ahead and use the new astobj if we're going to go
through all of the work necessary to fix the problems.

As a nice side benefit of these changes, peer and user handling got more efficient.
Using astobj2 lets us not hold the container lock for peers or users nearly as long
while iterating.  Also, by changing a define at the top of chan_iax2.c, the objects
will be distributed in a hash table, drastically increasing lookup speed in these
containers, which will have a very big impact on systems that have a large number of
users or peers.

The use of the hash table will be made the default in trunk.  It is not the default
in 1.4 because it changes the behavior slightly.  Previously, since peers and users
were stored in memory in the same order they were specified in the configuration file,
you could influence peer and user matching order based on the order they are specified
in the configuration.  The hash table does not guarantee any order in the container,
so this behavior will be going away.  It just means that you have to be a little
more careful ensuring that peers and users are matched explicitly and not forcing
chan_iax2 to have to guess which user is the right one based on secret, host, and
access list settings, instead of simply using the username.

If you have any questions, feel free to ask on the asterisk-dev list.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80362 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-22 20:21:36 +00:00
Steve Murphy
ad36e954a7 Removing expr floating patch from 1.4; too much of a behavior change. If you want this fix, try trunk instead. bug 9508.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@73143 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-03 20:17:31 +00:00
Steve Murphy
adc13be87b support for floating point numbers added to ast_expr2 $\[...\] exprs. Fixes bug 9508, where the expr code fails with fp numbers. The MATH function returns fp numbers by default, so this fix is considered necessary.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@72933 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-02 20:16:31 +00:00
Russell Bryant
706e448e28 File upload support was added to solve some needs for the Asterisk GUI.
However, after much discussion, it has been decided that adding this to 1.4 is
not in the best interests of the project.  It has been removed here, but will
remain in trunk.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@61220 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-10 16:05:55 +00:00
Russell Bryant
06ff84b549 To be able to achieve the things that we would like to achieve with the
Asterisk GUI project, we need a fully functional HTTP interface with access
to the Asterisk manager interface.  One of the things that was intended to be
a part of this system, but was never actually implemented, was the ability for
the GUI to be able to upload files to Asterisk.  So, this commit adds this in
the most minimally invasive way that we could come up with.

A lot of work on minimime was done by Steve Murphy.  He fixed a lot of bugs in
the parser, and updated it to be thread-safe.  The ability to check
permissions of active manager sessions was added by Dwayne Hubbard.  Then,
hacking this all together and do doing the modifications necessary to the HTTP
interface was done by me.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@60603 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-06 20:58:43 +00:00
Jason Parker
40252c62c9 Add linux-uclibc host arch..."thingy". Sorry, I don't know what it's called...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@59573 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-03-30 22:50:31 +00:00
Russell Bryant
2b39ea96f0 The clean target actually needs to run "distclean" on editline. This is
because we need to make sure that its configure script gets executed again,
because the CFLAGS we want to pass to editline may have changed.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@53464 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-07 20:07:39 +00:00
Russell Bryant
4bc823f540 Add a missing quotation mark. This was pointed out by jcmoore on #asterisk-dev.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@52695 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-29 22:58:09 +00:00
Russell Bryant
108085ed2d ASTLDFLAGS needs to be passed to the editline configure script as LDFLAGS.
(issue #8928, zandbelt)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@52647 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-29 21:36:56 +00:00
Joshua Colp
8acccb9254 Merge in dialing API and the app_page that uses it. (issue #BE-118)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@52049 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-24 18:20:05 +00:00
Russell Bryant
eedd121fbc Ensure that the locations given to the Asterisk configure script for ncurses,
curses, termcap, or tinfo are further passed along to the editline configure
script.  This fixes some cross-compilation environments.
(issue #8637, reported by ovi, patch by me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@51262 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-18 21:54:23 +00:00
Kevin P. Fleming
dd357a71a7 use the ACX_PTHREAD macro from the Autoconf macro archive for setting up compiler pthreads support... should improve portability to platforms with unusual pthreads requirements
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@50867 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-15 15:03:06 +00:00
Kevin P. Fleming
46d91e71c5 add support for tracking thread-local-storage objects that exist via 'threadstorage' CLI commands
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@49553 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-04 22:51:01 +00:00
Kevin P. Fleming
9a78e1f90e remove some now-unnecessary explicit includes of autoconfig.h
clean up per-file dependencies during 'make clean'


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@48554 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-18 11:59:24 +00:00
Kevin P. Fleming
0509ca82b4 simplify dependency tracking system, using the compiler's built-in method for generating them, and only doing dependency tracking if developer mode is enabled via the configure script
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@48525 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-12-16 21:14:34 +00:00
Joshua Colp
673e9f53a8 Force poll() emulation for Darwin to always be on. It's too broken to consider being used. This resolves the console issue OSX users have been seeing. I would have liked to autoconf this but I haven't been able to come up with a test case that works. Que sera.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@46780 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-01 18:39:47 +00:00
Luigi Rizzo
719ba6b535 fix two recent build problems:
- with AST_DEVMODE, building codecs/lpc10 fails because of lots
  of warnings, and the configure step in editline fails as well.
  Fix this by removing the -Werror in these steps.

- on FreeBSD (but probably on other platforms as well), the final
  link of asterisk fails because AST_LIBS was not exported to the
  subdirs Makefiles. Add a proper fix in the top-level Makefile
  (a possible alternative way is to add "export AST_LIBS" near
  the beginning of the file).
  With this fix, i believe that some of the platform-specific
  conditionals in main/Makefile are redundant (because they should
  be already dealt with in the top level Makefile) but i don't
  have a platform to check.
  
Merging to head will happen in a moment.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@44080 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-30 16:28:39 +00:00
Kevin P. Fleming
26524583fc yet another place where we were not using the correct CFLAGS by default
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@44012 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-29 18:49:07 +00:00
Kevin P. Fleming
37f61d385a missed one conversion to ASTCFLAGS
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@44011 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-29 18:40:17 +00:00
Kevin P. Fleming
704397dc3c don't abuse CFLAGS and LDFLAGS for build of Asterisk components, because they are also then used for non-Asterisk components (like menuselect); use our own variables instead
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@44008 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-29 18:25:49 +00:00
Kevin P. Fleming
16a2f6e64f add another attempt to strip non-API symbols from the final binary... script will need to be extended to work on non-Linux systems
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@43450 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 21:21:29 +00:00
Kevin P. Fleming
44983fae40 remove this change... it requires binutils 2.17
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@43405 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-21 16:08:03 +00:00
Kevin P. Fleming
9ae105df1d don't let symbols from included static libraries (like codec/ilbc) pollute the global namespace when those modules are embedded
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43360 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 20:13:42 +00:00
Matthew Fredrickson
2cc96500bd Mergeing in Paul Cadach's chan_h323 changes *holds breath*
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-19 17:07:22 +00:00
Kevin P. Fleming
5cf1c12796 it appears that current Mac OS/X does not need the poll compatibility module at all, and platforms that do need it also need -DPOLLCOMPAT (or they wouldn't have compiled at all)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43207 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 19:20:24 +00:00
Jason Parker
f18cbf77df Many Solaris fixes - this moves some of the stuff from utils.c to strcompat.c
Every OS uses strcompat now - this was done on purpose.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@42982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-15 17:16:00 +00:00
Kevin P. Fleming
d12f54f90b GNU make already knows how to quietly ignore non-existent files in 'include' directives
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-26 23:58:47 +00:00
Kevin P. Fleming
3ba8e0a973 ensure that cross-compiler info is removed from the enviroment before configuring menuselect
ensure that the user's LDFLAGS take precedence when linking the final binary


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41178 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-26 17:05:38 +00:00
Kevin P. Fleming
aa7b32d175 more optimizations for embedded systems:
when LOADABLE_MODULES is off, don't export symbols from the main binary
  when LOADABLE_MODULES is off, and the compiler/linker support it, strip out code not used in the final binary


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41166 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-26 16:45:35 +00:00
Kevin P. Fleming
0a27d8bfe5 merge new_loader_completion branch, including (at least):
- restructured build tree and makefiles to eliminate recursion problems
  - support for embedded modules
  - support for static builds
  - simpler cross-compilation support
  - simpler module/loader interface (no exported symbols)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 02:11:39 +00:00