1576 Commits

Author SHA1 Message Date
Moises Silva
1334d02ac0 Merge branch 'moy.nonblocking-api'
Conflicts:
	libs/freetdm/src/ftmod/ftmod_r2/ftmod_r2.c
2011-01-04 12:32:30 -05:00
Moises Silva
5c02639b5a freetdm: update ftmod_sangoma_ss7 to use new state advance API 2011-01-04 10:37:20 -05:00
Moises Silva
4a6b4e86f1 freetdm: add non-locking answer function to handle answer indication
export ftdm_current_time_in_ms to users
	 update testr2 to test non-blocking API (no waiting on indications)
2011-01-04 09:30:49 -05:00
Moises Silva
6f5a0e9ff5 freetdm: typo 2010-12-31 15:06:49 -05:00
Moises Silva
fe0d8d1ec5 freetdm: - updated all signaling modules (except for ftmod_isdn and ftmod_sangoma_ss7) to adapt to new core state processing
- fixed bug in configure.ac to detect ftmod_pritap compilation
         - ignore FTDM_SIGEVENT_RELEASED and FTDM_SIGEVENT_INDICATION_COMPLETED in mod_freetdm
         - Destroy the state completed interrupt on channel destroy
         - Fix analog polarity reversal bug when using 3-way calling or call-swap
2010-12-31 13:44:20 -05:00
Moises Silva
39d58e0452 freetdm: - Update ftmod_sangoma_isdn to use core state advance
- Added locking documentation (docs/locking.txt)
	 - Updated core state advance to use state processor in span
           rather than pushing the processor in the function arguments
2010-12-31 09:42:15 -05:00
Moises Silva
903d136481 freetdm: remove busy-waiting and use ftdm interrupt to wait for state change completion 2010-12-30 10:23:56 -05:00
Moises Silva
55da2afa7f Merge branch 'moy.nonblocking-api' of git.sangoma.com:smg_freeswitch into moy.nonblocking-api 2010-12-29 14:08:57 -05:00
Moises Silva
6fb1e5d9c1 freetdm: free the iterator when setting channels to non-block 2010-12-29 14:08:18 -05:00
Moises Silva
c854fe518a freetdm: update 2008 freetdm vcproj to include ftdm_state header and C file 2010-12-29 14:04:31 -05:00
Moises Silva
090864fa39 freetdm: completed most of the code for the new core state processing
use new core state processing functions in ftmod_r2
2010-12-29 13:38:43 -05:00
Moises Silva
4268bf84b0 freetdm: more core state refactoring, still untested 2010-12-24 15:58:04 -05:00
Moises Silva
82297de753 freetdm: state refactoring in progress *shrug* 2010-12-23 19:50:13 -05:00
Arnaldo Pereira
836604cfd3 Merge branch 'master' into arnaldo.r2_reset_channel 2010-12-23 21:23:01 -02:00
Arnaldo Pereira
c06a835822 freetdm: fixed log message 2010-12-23 21:10:56 -02:00
Moises Silva
cd28c4fc98 fretdm: remove m3ua unused stuff 2010-12-23 17:59:05 -05:00
Moises Silva
568013bc60 freetdm: initial changes to make FreeTDM APIs non-blocking 2010-12-23 15:39:20 -05:00
Arnaldo Pereira
fa5ec0e553 freetdm: core - changed behavior of ftdm_channel_close(). instead of returning if the channel isn't
opened, not it prints a warning and proceeds to close it.
         ftmod_r2 - added handler for FTDM_CHANNEL_STATE_RESET state
2010-12-23 18:15:37 -02:00
Moises Silva
656ecc1bc0 freetdm: fix ftmod_zt warning 2010-12-23 14:11:09 -05:00
Arnaldo Pereira
d8c7913b98 freetdm: ftmod_zt - locking the channel on zt_channel_next_event() 2010-12-23 16:10:53 -02:00
Arnaldo Pereira
a797a93feb freetdm: ftmod_zt - refactored zt_channel_next_event(), zt_next_event() and created zt_channel_process_event() 2010-12-23 16:05:48 -02:00
Arnaldo Pereira
4098b4e289 freetdm: ftmod_wanpipe - fix log msg 2010-12-23 16:04:25 -02:00
Arnaldo Pereira
3910889aec freetdm: ftmod_wanpipe - not locking the channel on wanpipe_channel_next_event(), now the core takes care of that 2010-12-22 20:10:41 -02:00
Arnaldo Pereira
3e32e6ad7b Merge branch 'master' into arnaldo.span_event_refactor
Conflicts:

	libs/freetdm/src/ftdm_io.c
2010-12-22 20:08:05 -02:00
Arnaldo Pereira
bc0414a8b5 Merge branch 'master' into arnaldo.zt_chan_next_event 2010-12-22 19:30:44 -02:00
Arnaldo Pereira
818887f9d3 Merge branch 'master' into arnaldo.zt_chan_next_event 2010-12-22 19:09:53 -02:00
Arnaldo Pereira
248fe20dcc freetdm: ftmod_wanpipe - pass tdm_api as a pointer to wanpipe_channel_process_event() 2010-12-22 19:08:49 -02:00
Arnaldo Pereira
3a8ce05cc6 freetdm: ftmod_wanpipe - refactored wanpipe_channel_next_event(), wanpipe_span_next_event()
and created wanpipe_channel_process_event(), used by both
2010-12-22 18:50:19 -02:00
Moises Silva
358a3192c5 freetdm: remove unused core flag macros 2010-12-22 15:26:10 -05:00
Moises Silva
525b0978ca freetdm: ftmod_r2 - use openr2 API extension to properly report incoming restricted ANI and restrict ANI on outgoing calls 2010-12-22 15:07:32 -05:00
Arnaldo Pereira
0ab67997f9 freetdm: ftmod_r2 - refactored ftdm_span_next_event(), ftdm_channel_read_event() and created ftdm_event_handle_oob(),
which handle oob events and notify the user by sending the proper SIGEVENT message
2010-12-22 17:35:55 -02:00
Arnaldo Pereira
a3ea8a8f20 freetdm: ftmod_zt - clear FTDM_CHANNEL_EVENT flag on zt_channel_next_event when set,
but retrieve event from channel even when it's not
2010-12-21 22:13:16 -02:00
Moises Silva
54359f1b78 freetdm: fix call id generation 2010-12-21 19:04:41 -05:00
Moises Silva
665b12b1f5 Merge remote branch 'fsorig/master' 2010-12-21 15:23:23 -05:00
Moises Silva
ebb6133529 Merge branch 'master' of git.sangoma.com:smg_freeswitch 2010-12-21 15:16:09 -05:00
Moises Silva
cdfa8bf7ae freetdm: Added new OOB event FTDM_OOB_POLARITY_REVERSE
Added new channel command FTDM_COMMAND_SET_POLARITY
         ftmod_wanpipe - Added support to enqueue polarity events on FXO lines
	 ftmod_wanpipe - Added support to set polarity on FXS lines
	 ftmod_analog - Added support to answer and hangup FXO lines on polarity reverse
	 ftmod_analog - Added support to reverse polarity in the FXS line on answer and hangup
	 mod_freetdm - Added parameters answer-on-polarity, hangup-on-polarity and polarity-delay
                       to enable those analog features
2010-12-21 15:11:22 -05:00
Arnaldo Pereira
723a598c24 freetdm: core - lock the channel on ftdm_channel_read_event()
ftmod_zt - not locking the channel on zt_channel_next_event(), minor changes
2010-12-21 16:32:02 -02:00
Arnaldo Pereira
7732a67598 Merge branch 'master' into arnaldo.zt_chan_next_event 2010-12-21 14:16:45 -02:00
Arnaldo Pereira
f5c36acfe2 freetdm: mod_freetdm - updated api commands help
ftmod_r2 - updated api help and removed references to threads per channel,
                    not used anymore
2010-12-21 13:31:21 -02:00
Moises Silva
e085fea23e freetdm: define _GNU_SOURCE to get gethostbyname_r 2010-12-21 09:09:10 -05:00
Moises Silva
1d7a1bd131 freetdm: use ULL for flags 2010-12-21 08:57:11 -05:00
Moises Silva
092d22a214 freetdm: fix get caller id command 2010-12-20 16:57:01 -05:00
Moises Silva
38968d15fe freetdm: fake signaling status notifications in ftmod_analog 2010-12-20 16:15:41 -05:00
Jeff Lenk
82ad5278b3 tweak vs2010 freetdm wanpipe 2010-12-20 14:55:18 -06:00
Moises Silva
b5b2f6134d freetdm: multiple fixes for the core and analog
* Replace ftdm_channel_flag_t with defines. We reached the 32bit limit where does not seem reliable
          to keep using enum.
	* Flags member for ftdm_channel_t is now uint64_t
	* Added FTDM_CHANNEL_CALL_STARTED flag to indicate when the API user knows about a call
	* Refactored raw_data member for ftdm_sigmsg_t. If raw_data needs to be freed it must be requested explicitly
          through the autofree member
	* Added collected member to ftdm_sigmsg_t for FTDM_SIGEVENT_COLLECTED data instead of using raw_data
	* Created define FTDM_DIGITS_LIMIT for DNIS/ANI digits limit
	* Fix some stat checks and outdated code in ftmod_analog
	* Refactored ftdm_channel_get_history_str API to return the time offsets and time since last state change
	* Do not send FTDM_SIGEVENT_STOP and FTDM_SIGEVENT_RELEASED on calls that were never reported to the user
2010-12-20 14:06:54 -05:00
Jeff Lenk
a1a710482b freetdm windows build tweaks 2010-12-20 12:15:41 -06:00
Moises Silva
11a7b1f9a0 Merge remote branch 'fsorig/master' 2010-12-20 10:12:48 -05:00
Stefan Knoblich
b84b71defa FreeTDM: Stop using raw_data for FTDM_SIGEVENT_SIGSTATUS_CHANGED events.
The raw_data member is used for passing heap allocated data with an event,
(e.g. strings of dtmf data) the memory is freed after the event has been processed.

Recent changes in the event structure added a way to pass sig status changes inline,
so remove the raw_data usage for FTDM_SIGEVENT_SIGSTATUS_CHANGED events.

NOTE: This (finally) fixes a bug in ftmod_libpri that was caused by
      the event handling changes (stack corruption due to using free()
      on a variable on the stack, which turned into a NULL ptr deref
      caused by some compat code in ftdm_io.c:ftdm_span_send_signal().

Compiles and tested on my BRI setup, i did a quick audit of all
places that generate FTDM_SIGEVENT_SIGSTATUS_CHANGED events and
except for the sangoma_boost module there's nothing else that left
using raw_data for this event.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-12-19 21:09:50 +01:00
Moises Silva
dd4bad220c freetdm: ftmod_libpri - update to use proper structure member for signaling status change notifications 2010-12-19 12:55:55 -05:00
Moises Silva
fcd6c54162 freetdm: fix attempt for OPENZAP-130 2010-12-19 00:13:08 -05:00