Commit Graph

1531 Commits

Author SHA1 Message Date
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
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
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
Moises Silva 87818abedd Merge remote branch 'fsorig/master' 2010-12-17 20:31:15 -05:00
Moises Silva 6fe762727a Merge branch 'master' of git.freeswitch.org:freeswitch 2010-12-17 20:28:32 -05:00
Moises Silva 2b0bba8e94 freetdm: add __USE_BSD to ftdm_os, needed by unistd.h for usleep() and string.h to define strcasecmp()
add -Werror even when the compiler is unknown. This is just a work-around to gcc not being detected
	 as GNU by our current standalone build (not bootstrapped through FreeSWITCH)
2010-12-17 20:27:37 -05:00
Stefan Knoblich 6066993d21 ftmod_libpri: remove ftdm_channel_done(), only use ftdm_channel_close().
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-12-18 02:24:28 +01:00
Moises Silva aa69927b8f freetdm: OPENZAP-124 - Add round robin hunting direction (Patched by Ric) 2010-12-17 20:04:30 -05:00
Moises Silva a1a50c87ec freetdm: OPENZAP-123 - Restrict ANI presentation in ftmod_r2 (Patched by ric) 2010-12-17 19:33:43 -05:00
Moises Silva d349290f7b freetdm: fix OPENZAP-125 (Add basic calling party category support into ftmod_r2) (Patched by ric) 2010-12-17 19:26:43 -05:00
Arnaldo Pereira 9fd1c71b4b Merge branch 'arnaldo.sigstatus' 2010-12-17 20:18:11 -02:00
Arnaldo Pereira 6b52208957 freetdm: core - moved validation of sigstatus from implementation to core, on sigstatus getters/setters
core - locking the channel on ftdm_channel_get_sig_status() and ftdm_channel_set_sig_status(),
                but not on ftdm_span_get_sig_status() nor ftdm_span_set_sig_status()
         ftmod_r2 - locking channels on ftdm_r2_get_span_sig_status() and ftdm_r2_set_span_sig_status()
2010-12-17 18:28:57 -02:00
Moises Silva 764b990849 Merge remote branch 'fsorig/master' 2010-12-17 13:03:15 -05:00
Arnaldo Pereira d3a24be0ba freetdm: ftmod_r2 - updated ftdm_r2_set_channel_sig_status() to notify the user of signaling changes
just when specified on docs/sigstatus.txt.
					also updated ftdm_r2_set_span_sig_status(), so that it uses the former to set channels
                    status, instead of doing it directly.
2010-12-17 15:50:11 -02:00
Moises Silva c2262aba2b freetdm: Fix for OPENZAP-128
ioctl interface in FreeBSD expects unsigned long
2010-12-17 09:52:26 -05:00
Moises Silva 11642cce3c Merge branch 'master' of git.sangoma.com:smg_freeswitch 2010-12-16 18:30:25 -05:00
Moises Silva 0f937ca134 freetdm: Add documentation on sig status 2010-12-16 18:29:45 -05:00
Moises Silva 6e24e8e67b Merge remote branch 'smgfs/master' 2010-12-16 16:50:19 -05:00
Arnaldo Pereira a134136ee7 freetdm: ftmod_r2 - notify the core when we change the signaling status of a channel or span through the api 2010-12-16 19:44:32 -02:00
Arnaldo Pereira 43dd86fb96 freetdm: ftmod_r2 - small code clean 2010-12-16 18:47:40 -02:00
Arnaldo Pereira 6b66a0516b freetdm: ftmod_r2 - fixed infinite loop on span stop 2010-12-16 18:19:50 -02:00
Arnaldo Pereira 37753892f1 Merge branch 'master' of git@git.sangoma.com:smg_freeswitch 2010-12-16 17:01:37 -02:00
Arnaldo Pereira a082c9e913 freetdm: ftmod_r2 - implemented ftdm_r2_get_span_sig_status() and ftdm_r2_set_span_sig_status()
mod_freetdm - created sigstatus api command
2010-12-16 17:01:06 -02:00
Anthony Minessale 43393f26d1 normalize tests for outbound channels to use switch_channel_direction instead of testing for CF_OUTBOUND 2010-12-15 20:59:42 -06:00
David Yat Sin ccbc2ed93c Merge branch 'davidy.mapped_raw_traces' 2010-12-15 16:45:15 -05:00
David Yat Sin c602e04ff6 Merge branch 'davidy.channel_restart' 2010-12-15 16:43:33 -05:00
David Yat Sin 53346e4948 Freetdm: exposed channel availability rate to user 2010-12-15 16:42:47 -05:00
David Yat Sin a24b9c9f68 freetdm: Support for RAW traces 2010-12-15 16:29:44 -05:00
David Yat Sin dd345b913b freetdm: Support for RAW traces 2010-12-15 16:29:03 -05:00
Arnaldo Pereira 72f99898d2 freetdm: ftmod_r2 - updated warning message 2010-12-15 18:48:49 -02:00
Arnaldo Pereira bb8d901c4f freetdm: ftmod_wanpipe - replaced some POLL macros by SANG_WAIT_OBJ_* 2010-12-15 18:32:35 -02:00
Arnaldo Pereira 20ba5da479 freetdm: ftmod_r2 - implemented set_channel_sig_status() 2010-12-15 18:08:55 -02:00
Arnaldo Pereira dcdbeff9d8 freetdm: ftmod_wanpipe - now receiving ftdm macros for channel polling, instead of using POLLPRI, etc., directly
ftmod_r2 - also using ftdm macros for polling
2010-12-15 17:43:40 -02:00
David Yat Sin 0235f0ba0e Merge branch 'master' into davidy.channel_restart 2010-12-15 12:58:38 -05:00
David Yat Sin ea2b477444 Freetdm:fix for ftdm_channel_close not always passed double-pointer 2010-12-15 12:56:49 -05:00
David Yat Sin 102640ad7b freetdm: support for SIGEVENT_RING 2010-12-15 11:45:50 -05:00
Moises Silva 3085523f56 freetdm: define special size formatting that actually works on Linux and Windows 2010-12-15 09:56:27 -05:00
Moises Silva 1c01144c20 freetdm: open all media dumps as binary. Fixes Windows corrupted cores. 2010-12-14 16:55:40 -05:00
Moises Silva c6417fa2b3 freetdm: ftmod_r2 - disable MF dump for forward calls on call accepted 2010-12-14 16:50:10 -05:00
David Yat Sin 56515c3a64 Minor change to allow skip states 2010-12-14 16:04:25 -05:00
David Yat Sin 905fdcc248 freetdm: Support for channel restarts 2010-12-14 11:23:47 -05:00
Moises Silva a2faee2023 freetdm: ftdm_r2 - fix stats 2010-12-13 16:27:51 -05:00
David Yat Sin ce25c9186f Merge branch 'davidy.caller_id' 2010-12-13 11:51:49 -05:00
David Yat Sin f87a32c66a removed unnecessary initialization 2010-12-13 11:29:38 -05:00
Moises Silva 19c0026581 Merge remote branch 'fsorig/master' 2010-12-12 19:32:36 -05:00
Jeff Lenk 349e9d5913 fix accidental removal 2010-12-10 23:07:15 -06:00