Commit Graph

3374 Commits

Author SHA1 Message Date
Joshua Colp
12b6ec4e11 Use an API call (ast_rtp_get_bridged) to return the RTP stream we are bridged to, and also use it in chan_sip so we know to ignore the no RTP activity checking
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41316 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-30 03:16:03 +00:00
Kevin P. Fleming
3f189742f6 make menuselect configure process be silent when possible
don't use #ifdef inside a macro call... it appears various versions of gcc have bugs related to this


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41284 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29 23:33:59 +00:00
Joshua Colp
04bd8c54e8 Limit challenges to 9 digits in length
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41280 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29 20:53:27 +00:00
Russell Bryant
f7e7161607 Merge team/russell/frame_caching
There are some situations in Asterisk where ast_frame and/or iax_frame
structures are rapidly allocatted and freed (at least 50 times per second
for one call).

This code significantly improves the performance of ast_frame_header_new(), 
ast_frdup(), ast_frfree(), iax_frame_new(), and iax_frame_free() by keeping
a thread-local cache of these structures and using frames from the cache 
whenever possible instead of calling malloc/free every time.

This commit also converts the ast_frame and iax_frame structures to use the
linked list macros.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41278 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29 20:50:36 +00:00
Russell Bryant
6aae631cc9 update to reflect recent rtp changes
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-29 13:55:54 +00:00
Joshua Colp
c70ed7614a Merge in RTP-level packet bridging. Packet comes in, packet goes out - that's what RTP-level packet bridging is all about!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41235 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-28 17:37:56 +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
Matthew Fredrickson
b56d1a76ce Note to self, always compile before committing.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41068 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-25 15:20:16 +00:00
Matthew Fredrickson
3113f07570 Don't send proceeding twice (#7800)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41067 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-25 15:14:42 +00:00
Russell Bryant
9aabe41de3 don't seg fault when using dbsecret
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41034 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-25 02:55:00 +00:00
Joshua Colp
1c182a606a Allow an offset for SIP_HEADER so you can get more then 1 header of the same name if they exist. Why someone would want to grab something like Via headers from dialplan I don't exactly know, but okay. (issue #7563 reported by Corydon76)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40781 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 19:33:42 +00:00
Kevin P. Fleming
ff74cbc116 replace a couple of bare 'make' with $(MAKE)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40765 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 13:47:45 +00:00
Jason Parker
79dca5ef75 Fix a potential integer signedness problem.
Also fix some locking issues I found at the same time.

Issue 7770, original patch by alamantia


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40757 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-21 07:34:59 +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
Jason Parker
d371de5bf6 This is just step 1 in taking over the world.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40663 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-20 18:03:24 +00:00
Jason Parker
c12f6bcdd4 Converted device2str and control2str to use thread local storage.
Thanks Russell.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40600 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-20 04:39:57 +00:00
Jason Parker
6e140aae84 Make the CIPC device string useful
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40563 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-20 01:27:24 +00:00
Jason Parker
1bacbd54f4 Fix minor display issues in "skinny show devices".
Patch by wedhorn with minor modifications by me.

Issue 7766


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40561 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-20 01:25:02 +00:00
Kevin P. Fleming
fd0ac387a9 deprecate chan_agent callback mode
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-19 17:05:43 +00:00
Russell Bryant
5dc72404ab convert lists of constants in channel.h to enums instead of #defines
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40424 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-19 00:33:44 +00:00
Russell Bryant
a8272afb1f fix the use of an uninitialized variable (issue #7746, pointed out by garyhai)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40278 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-17 19:14:20 +00:00
Nadi Sarrar
bd43525f3f fixing the 64bit issue with misdn_l1_task.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40178 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-17 09:14:01 +00:00
Christian Richter
159d9d2a3b added patch from #7709
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40084 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 19:13:47 +00:00
Kevin P. Fleming
e441faab72 Merged revisions 40057 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r40057 | kpfleming | 2006-08-16 13:57:44 -0500 (Wed, 16 Aug 2006) | 2 lines

don't allow AUEP responses to overflow the stack during a string copy (reported by Mu Security)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40058 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 18:58:43 +00:00
Kevin P. Fleming
7546de3d8e fix some minor stuff
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40055 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 18:26:04 +00:00
Russell Bryant
60b8d9f7f1 instead of a for loop and ast_cli_(un)register, use ast_cli_(un)register_multiple()
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40031 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 16:06:19 +00:00
Joshua Colp
59766196ea Move things around a bit more for onhold support, and add a check to only decrement the onhold variable if it's greater then 0. (issue #7740 reported by AuPix)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40010 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 15:34:50 +00:00
Nadi Sarrar
e5a478e6b1 a static array now holds the cli_entry structs
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40009 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 15:03:09 +00:00
Nadi Sarrar
864c934f53 adding support for AOCD facility messages.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39987 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 13:19:54 +00:00
Russell Bryant
9f9a5f1984 move the calls to ast_jb_configure() to before the PBX thread is started on the
channel to remove the theoretical race condition that the channel could get
bridged before the channel's jitterbuffer gets configured.  This was pointed
out by PCadach on IRC.  Thanks!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39964 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-16 03:43:47 +00:00
Russell Bryant
fff5a55af6 print a more user friendly error message with the text representation of codecs
(issue #7233, Mithraen)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39933 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15 22:28:38 +00:00
Russell Bryant
65373a1987 reduce duplicated code by using print_codec_to_cli in sip_show_user as it is
already used in sip_show_peer (issue #7739, DEA)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39932 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15 22:17:38 +00:00
Christian Richter
7de6ec3337 removed libbnec dependencies.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15 19:41:14 +00:00
Kevin P. Fleming
aa3947e9fa complete the coding style changes for these frame structures
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15 17:14:20 +00:00
Nadi Sarrar
0b579cf152 moved the asn1 and facility portions of code to mISDNuser, so removing the files here.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39807 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15 16:49:26 +00:00
Steve Murphy
e648f4ddb4 Made "style" change requested by Kevin Fleming... used initializer in declaration,
brought decl down to block where the variable is used, got rid of memset.



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39806 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15 16:35:06 +00:00
Steve Murphy
14beac0408 On behalf of PCadach, " IMHO that was last deadlock in chan_h323..."
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39779 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-15 14:55:30 +00:00
Joshua Colp
eecf43413f Don't completely error out if a config file for chan_phone was not found. (issue #7710 reported by Mithraen)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39513 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-11 13:54:58 +00:00
Joshua Colp
4ebd436c85 Add support to see if a peer has someone on hold, and fix a small bug with getting the state name. This one goes out to you mog!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39500 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-10 02:41:20 +00:00
Nadi Sarrar
162e37b2d6 fixing compile warnings, renaming config option "overlap_dial" to "overlapdial"
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39479 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-09 09:24:21 +00:00
Russell Bryant
1de65767f2 This bug existed in one extra place that is not also in 1.2 ... So, fix it!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39455 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-09 04:12:10 +00:00
Nadi Sarrar
958f3726f1 * first bits of decoding facility information elements
* fail on misdn_cfg_init() if elements in the config enum don't match with the config structs in misdn_config.c
* implemented first bits for encoding ISDN facility information elements via ASN.1 descriptions
* using unnamed semaphore for syncing in misdn_thread
* advanced fax detection: configurable detect timeout and context to jump into



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08 18:13:40 +00:00
Matt O'Gorman
1ef09ebfed some code clean up and catch for a act_hook being called
without a packet.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39351 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08 17:07:41 +00:00
Joshua Colp
a0bd41f79b Add support for Sigma Designs cards. These basically allow you to offload dialtone generation to the board. If you're using a quicknet board where this might work, give it a try as well. (issue #6092 reported by ywalther - minor mods by moi)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39349 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08 17:02:45 +00:00
Christian Richter
52e1395690 * added possibility to change echocancel settings during calls
* removed the holded element from the chan_list struct, we know this from the 
  state already
* added a few tweaks to make HOLD/RETRIEVE work again (TRANSFER does not work
  yet)
* added possibility to debug mISDN frames via syslog
* added misdn_lib_port_is_blocked function to check if a port is blocked
* removed ec_training=1 from empty_bc, we don't use ec_training anymore
* removed unused misdn_lib_get_l2_status function
* added the nt bit to dummy misdn_bchannel objects
* setting bc->out_fac_type to FACILITY_NONE defaultly
* removed HANDLER_DEBUG stuff for better readability



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39295 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08 09:19:06 +00:00
Russell Bryant
92bd7f19f7 Merge team/russell/ast_verbose_threadstorage
- instead of defining a free() wrapper in a bunch of files, define it as
  ast_free() in utils.h and remove the copies from all the files.

- centralize and abstract the code used for doing thread storage. The code
  lives in threadstorage.h, with one function being implemented in utils.c.
  This new API includes generic thread storage as well as special functions
  for handling thread local dynamic length string buffers.

- update ast_inet_ntoa() to use the new threadstorage API
- update ast_state2str() to use the new threadstorage API
- update ast_cli() to use the new threadstorage API

- Modify manager_event() to use thread storage. Instead of using a buffer of
  4096 characters as the workspace for building the manager event, use a thread
  local dynamic string.  Now there is no length limitation on the length of the
  body of a manager event.

- Significantly simplify the handling of ast_verbose() ...
  - Instead of using a static char buffer and a lock to make sure only one
    thread can be using ast_verbose() at a time, use a thread local dynamic
    string as the workspace for preparing the verbose message. Instead of
    locking around the entire function, the only locking done now is when the
    message has been built and is being deliviered to the list of registered
    verbose message handlers.
  - This function was doing a strdup() on every message passed to it and
    keeping a queue of the last 200 messages in memory. This has been
    completely removed. The only place this was used was that if there were
    any messages in the verbose queue when a verbose handler was registered,
    all of the messages in the queue would be fed to it.  So, I just made sure
    that the console verbose handler and the network verbose handler (for
    remote asterisk consoles) were registered before any verbose messages.
    pbx_gtkconsole and pbx_kdeconsole will now lose a few verbose messages at
    startup, but I didn't feel the performance hit of this message queue was
    worth saving the initial verbose output for these very rarely used modules.
  - I have removed the last three arguments to the verbose handlers, leaving
    only the string itself because they aren't needed anymore. For example,
    ast_verbose had some logic for telling the verbose handler to add
    a newline if the buffer was completely full. Now that the buffer can grow
    as needed, this doesn't matter anymore.
  - remove unused function, ast_verbose_dmesg() which was to dispatch the
    message queue
  - Convert the list of verbose handlers to use the linked list macros.

- add missing newline characters to a few ast_verbose() calls

- convert the list of log channels to use the linked list macros in logger.c

- fix close_logger() to close all of the files it opened for logging

- update ast_log() to use a thread local dynamic string for its workspace
  for preparing log messages instead of a buffer of size BUFSIZ (8kB on my
  system) allocated on the stack.  The dynamic string in this case is limited
  to only growing to a maximum size of BUFSIZ.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39272 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-08 06:32:04 +00:00
Matt O'Gorman
3f115f8c31 Many many code cleanup changes given to me by Oej
Thanks, sorry I didn't put this in forever ago.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39229 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 21:15:28 +00:00
Steve Murphy
3042d0e046 This commit folds in changes to both stringfields (some enhancements to the ...field_set() macro, to optimize setting strings to empty, resetting strings to shorter contents, etc.) and to chan_iax2.c, to use stringfields in the user, peer, and pvt structs. Has been running stably on iaxtel, but while iaxtel has a large registration volume, it doesn't seem to have a high call volume. So far, it seems to reduce heap usage by over half. YMMV\! Please report any IAX bugs that might involve stringfields\!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39203 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 18:12:51 +00:00
Olle Johansson
a42c164879 Fix accidental removal of if() in commit 38905
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39171 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 16:20:23 +00:00
Olle Johansson
b57c238260 Issue #7651 - always send subscription-state (AuPix)
Small change to the fix in the report.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@39132 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-07 09:22:43 +00:00