Commit Graph

2173 Commits

Author SHA1 Message Date
Stefan Knoblich f2841e0280 ftmod_misdn: misdn_write() workaround for signalling drivers that do not use write polling.
Wait till the channel is actually ready to send data.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-03-23 01:21:55 +01:00
Stefan Knoblich fc1e1a91f2 ftmod_misdn: Stop using timerfd for b-channel write polling.
Use POLLIN on the socket instead, the b-channel should be able
to write when there is something to read.

Several other projects handle it this way, e.g. libosmo-abis.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-03-23 01:21:55 +01:00
Stefan Knoblich c85271aaf5 ftmod_misdn: Improve debug log messages.
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-03-23 01:21:55 +01:00
Stefan Knoblich 28ed1b5076 ftmod_misdn: Move misdn_handle_incoming() up.
Only used by misdn_read(), so move it right in front of that one.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-03-23 01:21:55 +01:00
Stefan Knoblich 6b76212324 ftmod_misdn: Decode hfcsusb MPH_INFORMATION_IND state and flags.
For diagnostic / debugging purposes.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-03-23 01:21:55 +01:00
Moises Silva 57b022c2d4 freetdm: Do not report error for DAHDI RINGER ON/OFF events, they are no-ops at the moment 2012-03-19 09:27:29 -04:00
Moises Silva 681f582b20 freetdm: Try to resolve OPENZAP-173
The token count needs to be updated after the master session token is cleared
         and before checking for other tokens
2012-03-19 09:20:44 -04:00
Moises Silva bf652b567f freetdm: ftmod_zt - Print which DAHDI event number is failing to be processed 2012-03-18 18:54:54 -04:00
David Yat Sin 08d29b10b6 freetdm - ISDN fix for channel getting stuck if we receive ALERT after sending DISCONNECT 2012-02-15 13:07:07 -05:00
Stefan Knoblich 674dc9850b [FreeTDM] Another round of ftdm_log() format string fixes.
Use FTDM_SIZE_FMT where needed, don't treat ftdm_event_t as an int
(even if the e_type enum is the first member), datalen vs. *datalen fix
and other warnings.

All reported by __check_printf() (GCC + __attribute__((format(printf,x,y))) ).

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-10 13:29:49 +01:00
Stefan Knoblich 9d5eb0737b [FreeTDM] Fix a couple of ftdm_log() format string errors.
... that could cause segmentation faults.

Caught while working on __check_printf() support for ftdm_log().

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-10 13:24:57 +01:00
Stefan Knoblich 124c04624a [ftmod_misdn] Add missing braces around condition of ternary operator.
For compilers that seem to do the wrong thing(tm).

Speculative fix for:

  segfault at 1 ip b72145d3 sp b58f8bfc error 4 in libc-2.11.3.so

  #0  0xb7a5d5d3 in vfprintf () from /lib/i686/cmov/libc.so.6
  #1  0xb7a7cec7 in vasprintf () from /lib/i686/cmov/libc.so.6
  #2  0xb7dd7c5b in switch_vasprintf (...)
  #3  0xb6296de2 in ftdm_logger (...)
  #4  0xb621625d in misdn_handle_mph_information_ind (...) at ftmod_misdn.c:658

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-10 13:22:47 +01:00
Stefan Knoblich 36b26c51ac [ftmod_misdn] Fix a couple of ftdm_log() printf format errors
Also adds a local ftdm_channel_get_type_str() helper.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-09 12:58:59 +01:00
David Yat Sin 9de1e1ad67 freetdm - disabled dtmf detect duration by default 2012-02-07 14:36:22 -05:00
David Yat Sin c5cc318afa Merge branch 'master' of ssh://git.freeswitch.org:222/freeswitch 2012-02-07 14:28:58 -05:00
David Yat Sin 1377b9c84d freetdm: support for dtmf_on_start 2012-02-07 14:28:47 -05:00
Stefan Knoblich 4bb1ab0113 [ftmod_misdn] Add some TODO items at the top of ftmod_misdn.c.
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-07 18:39:11 +01:00
Stefan Knoblich 810f0d4eaa [ftmod_misdn] Make misdn_handle_mph_information_ind() cope with hfcsusb-style MPH_INFORMATION_IND messages.
Only two mISDN hardware drivers emit MPH_INFORMATION_IND messages and both use a different payload:

	- hfcsusb (HFC-based USB dongle) sends a set of ph_info + ph_info_ch structures
	  which contain the complete state information of the port
	  (including internal hw-specific state and flags).

	- hfcmulti which sends a single integer, a single L1_SIGNAL_* event.

We now try to guess the type of message from the payload length.

The hfcmulti signals are converted to FreeTDM alarm flags; the hfcsusb
state/flags are defined in kernel internal hw-specific headers and are ignored ATM (todo).

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-07 18:39:11 +01:00
Stefan Knoblich 452c13573d [ftmod_misdn] Include mISDN message primitive id in channel activation log messages.
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-07 18:39:11 +01:00
Stefan Knoblich fd3ebc7ae3 [ftmod_misdn] Handle MPH_INFORMATION_IND during channel activation.
Add MISDN_MSG_DATA() helper macro for easy access to mISDN message
payload.

Add forward declaration of misdn_handle_mph_information_ind() and use
it in misdn_activate_channel().

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-07 18:39:11 +01:00
Stefan Knoblich 9e0928a7ea [ftmod_misdn] Undefine MISDN_CONTROL_TYPE helper macro after use.
No reason to keep it around for longer.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-07 18:39:11 +01:00
Stefan Knoblich b6ec127194 [ftmod_misdn] Extend misdn_event_types[] and use a helper macro.
Add missing mISDN event/message types (e.g. MPH_INFORMATION_IND)
and use a helper macro (MISDN_EVENT_TYPE) to define the entries,
like we already do for misdn_control_types[].

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2012-02-07 18:39:11 +01:00
Anthony Minessale 1015883e1b commenting this out completely until a better solution is implemented. also FYI you should be refreshing .update on each commit that changes the lib or any of its mods to force a rebuild from the top level 2012-02-03 15:23:46 -06:00
David Yat Sin 2ea5686e4d freetdm: DTMF duration not checked if duration is set to zero 2012-02-03 14:20:08 -05:00
Moises Silva 1ad0bc250c Merge remote-tracking branch 'fsorig/master' 2012-01-31 15:57:07 -05:00
David Yat Sin d6c6396e24 Freetdm - ISDN Fix for get_trillium_val function 2012-01-31 12:59:12 -05:00
David Yat Sin a9c10f8c41 FreeTDM - ISDN fix for get_trillium_val function 2012-01-30 18:32:05 -05:00
Moises Silva 8cade84528 freetdm: Set the call id into the caller data provided as argument to the call place function 2012-01-30 16:15:08 -05:00
Moises Silva 5ef3c94271 OPENZAP-177 --resolve Thanks to Abhishek Singh 2012-01-30 14:15:51 -05:00
David Yat Sin 6f9c2ae50f Merge branch 'master' of ssh://git.freeswitch.org:222/freeswitch 2012-01-25 16:13:56 -05:00
David Yat Sin 81188c34a5 Fix for not evaluating digit upon T302 timeout 2012-01-25 16:13:43 -05:00
Moises Silva eb7d52aaa9 freetdm: improve some isdn logging
try to fool-proof the size of the read D channel buffer by not hard-coding it in 2 places
2012-01-22 21:54:35 -05:00
Moises Silva e3cb0352b0 freetdm: Fill in DAHDI function pointer to retrieve the next channel event 2012-01-19 16:18:30 -02:00
David Yat Sin 40c9dc4149 freetdm - SS7: Removed unnecessary curse words 2012-01-18 12:07:34 -05:00
David Yat Sin 44ed952a7b freetdm - ISDN support for sending Network Specific Facility 2012-01-16 17:14:59 -05:00
David Yat Sin badc80ad3e freetdm: Added dtmfdetect duration option 2012-01-04 11:16:29 -05:00
David Yat Sin 393ba72c1a freetdm - ISDN added Q.931 timers 2012-01-03 14:11:47 -05:00
David Yat Sin 959e4ab22d freetdm: ISDN - Added check for receiving frames that are too big 2012-01-03 11:29:41 -05:00
Moises Silva 2b904c0b9e freetdm: ftmod_wanpipe - Do not set the output read length unless the read operation is successful 2011-12-30 18:28:27 -05:00
Moises Silva c15a252a2b OPENZAP-176 --resolve
Fix DAHDI/Zaptel incorrect FXO signaling status on module load
2011-12-30 17:14:36 -05:00
Marc Olivier Chouinard 1bf99e818f OPENZAP-164 --resolve
I think this will be fine for the moment.  Thanks
2011-12-19 07:38:37 -05:00
Moises Silva 7e31b9cc28 Merge remote branch 'fsorig/master'
Conflicts:
	libs/freetdm/src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_stack_rcv.c
	libs/freetdm/src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_support.c
2011-12-17 17:21:14 -05:00
Moises Silva 4b22c22c33 freetdm: fix potential bug in MFCR2 where the channel token is cleared too soon 2011-12-15 20:29:32 -05:00
Jeff Lenk f5abef2000 FS-3728 --resolve thanks 2011-11-30 08:57:11 -06:00
Stefan Knoblich 2de175b574 ftmod_libpri: Improve output of ftdm libpri api 'invalid span' error messages.
No more "invalid span", now it's either "'foo' not a libpri span" or
"'foo' span not found" which makes it a lot more useful.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-11-18 23:58:01 +01:00
Stefan Knoblich 5897ec5992 ftmod_libpri: Print usage if 'ftdm libpri' has no arguments.
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-11-18 23:58:00 +01:00
Michael Jerris 4936b11cc8 remove log message being sent 100s of times a second until someone can figure out what is causing it 2011-11-10 22:59:43 -05:00
Michael Jerris 2be49bdf79 remove log message being sent 100s of times a second until someone can figure out what is causing it 2011-11-10 22:11:42 -05:00
Moises Silva b9ad924e83 freetdm: ftmod_zt - Fix references to ftdmtel that should be Zaptel/DAHDI (screwed up during OpenZAP -> FreeTDM renaming) 2011-11-10 15:16:07 -05:00
Moises Silva 0153f603cb freetdm: fix pri tap progress event handling 2011-11-09 11:16:58 -05:00
David Yat Sin 8558ec9f0a Added support for freetdm_isdn.send_cid_name 2011-11-09 11:01:32 -05:00
David Yat Sin 3ecddde752 Support for sending Caller ID Name on 4ESS/5ESS 2011-11-03 19:37:05 -04:00
David Yat Sin 6f2e3f91ec Support for sending Caller ID Name on 4ESS/5ESS 2011-11-03 19:23:00 -04:00
Stefan Knoblich 91ef437bd5 FreeTDM: Add ax_compiler_vendor.m4 to acinclude.m4
This fixes a "AX_COMPILER_VENDOR: command not found" error on
systems with older autotools versions (CentOS 5.x in this case).

Not a problem on newer auto* toolchains, they either ignore
acinclude.m4 completely or handle it in a different way.

(In fact, acinclude.m4 is not even needed for the one on CentOS 5,
 but we'll keep it for now.)

Tested-on: CentOS 5.7 x86_64 autoconf 2.59 / automake 1.9.6 / libtool 1.5.22
Tested-on: Gentoo 20111031 x86_64 autoconf 2.68 / automake 1.11 / libtool 2.4
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-11-01 15:37:51 +01:00
David Yat Sin 5ee015610c freetdm: Added some code to differentiate between wanpipe_wait returning FTDM_TIMEOUT and FTDM_FAIL on transmit 2011-10-31 10:25:07 -04:00
Marc Olivier Chouinard d185978f8d mod_freetdm/libpri: Fix problem with some destination using early-media for IVR. FS wasn't switching to accept the media of the early media provided in some type of ISDN msg. This fix it for the situation I've experienced. 2011-10-28 15:18:58 -04:00
Moises Silva fe1294ba91 freetdm: ss7 - add china switchtype to the configuration options 2011-10-28 09:36:40 -04:00
Stefan Knoblich ec72d8d7fc FreeTDM: Rework libpri detection code to accept a custom installation prefix.
Example: --with-libpri=/usr/local

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-10-26 19:41:07 +02:00
Moises Silva 71f0c6fde5 freetdm: added debug ftdm_print_stack macro 2011-10-25 17:36:30 -04:00
Moises Silva 680d92967f freetdm: mod_freetdm - add SIP x header for FreeTDM-NADI value 2011-10-24 13:22:53 -04:00
Moises Silva 3b74246b16 freetdm: * Avoid acquiring the span mutex if the pendingchans queue is available for use *
* FreeTDM modules using the old FTDM_SPAN_STATE_CHANGE flag should be updated   *
         * until then, they are still vulnerable to deadlock situations                  *
         * Modules pending update: (ftmod_analog, ftmod_libpri, ftmod_isdn)              *
         * Fixes Sangoma redmine ticket #1791 0 FTDM span stop deadlock                  *
2011-10-24 12:49:36 -04:00
Jeff Lenk f0efbd3f08 FS-3599 --resolve correct windows compiler warnings 2011-10-07 08:38:48 -05:00
yannick 946f8af5a9 freetdm: resolve mtp2 on relay always down problem 2011-10-06 19:18:37 -04:00
James Zhang 3a44e4c186 freetdm: ss7 - fix cherry-pick conflict properly 2011-10-06 19:16:03 -04:00
root c0f988b292 freetdm: changing call reference to generic header; removing location area code 2011-10-06 19:08:25 -04:00
James Zhang 591cbe7857 fixing bug 1625 - relay status not reported properly in the cli 2011-10-06 19:08:00 -04:00
James Zhang 20abac2794 ftdm_ss7: Adding OPC and Call Reference Number to SIP x-headers 2011-10-06 19:07:05 -04:00
James Zhang edad46647b ftdm: change max_path length from 255 to 4096 2011-10-06 19:06:24 -04:00
Moises Silva e7ecb4d63a freetdm: Added SS7 variables for location number (pending SIP-X header integration) 2011-10-06 19:01:34 -04:00
James Zhang fb77b6c800 freetdm: ss7 - fixing reset on in-use channel causing signaling down in the receiving side 2011-10-06 18:58:35 -04:00
yannick bca480e667 ftdm: fixing reset on in-use channel causing infinite state loop. 2011-10-06 18:57:09 -04:00
Moises Silva 081e73d9f3 freetdm: ftmod_wanpipe - remove debug idle messages for good, not worth the noise 2011-10-06 17:56:16 -04:00
Moises Silva 3d456185e4 freetdm: Added SS7 variables for location number (pending SIP-X header integration) 2011-10-06 12:48:07 -04:00
Stefan Knoblich 5a96ebdaa3 FreeTDM: Escape $(srcdir) in configure.ac variable
Silencing a "configure:xxxx: srcdir: command not found" error message.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-10-06 11:08:42 +02:00
David Yat Sin 2cf9b21e06 Added cid-name-in-display-ie option 2011-10-05 14:38:15 -04:00
David Yat Sin ba2b3fcabb Added cid-name-in-display-ie option 2011-10-05 14:37:14 -04:00
David Yat Sin 621337ff15 freetdm: Increased T310 to 120 sec on network side, added check for ces when handling Restarts 2011-10-04 13:20:58 -04:00
Stefan Knoblich 7f17ad7f92 ftmod_misdn: Change last commit to set -D_GNU_SOURCE instead.
This fixes all build errors.
(Stand-alone build of FreeTDM worked fine, for some
 i-don't-really-want-to-know strange reason).

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-10-01 14:05:14 +02:00
Stefan Knoblich 473aab18eb ftmod_misdn: Add -D_BSD_SOURCE to get u_int and friends.
Needed for the mISDN/mISDNif.h header structs, linux/types.h only
provides them for kernel code:

In file included from src/ftmod/ftmod_misdn/ftmod_misdn.c:51:
/usr/include/mISDN/mISDNif.h:296: error: expected specifier-qualifier-list before 'u_int'
/usr/include/mISDN/mISDNif.h:306: error: expected specifier-qualifier-list before 'u_int'
/usr/include/mISDN/mISDNif.h:339: error: expected ')' before 'nr'
...

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-10-01 13:31:16 +02:00
David Yat Sin 36619284e9 freetdm: typo in print 2011-09-30 17:15:36 -04:00
David Yat Sin 7a598e8f33 Added option for Dynamic TEI on BRI PTP 2011-09-30 16:45:46 -04:00
Moises Silva 5f0d27fdb4 freetdm: Fix SS7 ISUP T10 (Overlap digit timeout) - issue #1445 2011-09-28 19:18:34 -04:00
Moises Silva ac693947f9 freetdm: Fix SS7 T35 timer 2011-09-28 13:27:15 -04:00
Moises Silva b004bcfc6d Merge remote-tracking branch 'fsorig/master'
Conflicts:
	src/mod/endpoints/mod_sofia/mod_sofia.c
	src/mod/endpoints/mod_sofia/sofia_glue.c
2011-09-28 12:19:48 -04:00
Moises Silva 4c64d53efb freetdm: Manually merged relay code from branch jz.smg_ss7 (based on releases.3.3)
- Added relay and other misc commands
        - Misc fixes in hardware blocks, hw alarm etc
	- Fix crash on shutdown in relay
2011-09-21 15:32:48 -04:00
Moises Silva 8bf6312a0e freetdm: set proper flags when a given layer (ISUP, MTP3 etc) is started
and verify such flags on shutdown to avoid segfault when shutting down
         a layer that was never started - fix issue #741
2011-09-21 15:31:12 -04:00
David Yat Sin bb942e2329 freetdm: Fix for sending CPG without sending ACM prior to that 2011-09-20 19:15:05 -04:00
David Yat Sin 8df1872fbe freetdm:Support for transmission of Caller ID Name on NI-2 2011-09-19 13:51:41 -04:00
Anthony Minessale 2ad4f00c9f add missing break on begin detect 2011-09-19 08:08:55 -05:00
Stefan Knoblich 975ac0ac70 FreeTDM: Fix private/libteletone*.h includes
libteletone headers include each other, use #include ""
to look in the local dir rather than the include search path.

Unbreaking all of my (still) external FreeTDM projects.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-09-19 15:55:07 +02:00
Anthony Minessale 379c9fc41d fix messup in dtmf change 2011-09-16 17:23:15 -05:00
Anthony Minessale f7b40140bb fix messup in dtmf change 2011-09-16 17:07:48 -05:00
Anthony Minessale 995d7dcb02 dont clear token on SIGEVENT_STOP for ISDN legs, save it for the hangup handler 2011-09-16 16:44:15 -05:00
Anthony Minessale 42ff14d22a use index in this loop instead of the max val for the iteration 2011-09-16 15:53:49 -05:00
Anthony Minessale 8a3c292534 fix seg in recent change 2011-09-16 14:52:14 -05:00
Anthony Minessale dbd5d2575e fix build on freetdm 2011-09-16 14:50:46 -05:00
Anthony Minessale 44822df63d we need to fix this build system it masks errors 2011-09-16 12:13:25 -05:00
Anthony Minessale a65794fb5e FS-3570 receive side, update libteletone to track duration so it is less likely to double detect and push api changes down to freetdm 2011-09-16 10:06:04 -05:00
Moises Silva 25417d3ea8 freetdm: Verify that the uuid that is being hung up is still attached to the FreeTDM device
This avoids hanging up a device that is no longer attached to the session, in the
         weird situation where the FreeSWITCH core takes an awful lot of time (more than 3 seconds)
         to come around to acknowledge the SIGEVENT_STOP signal.
2011-09-15 19:42:39 -04:00
Moises Silva aa0a6c9222 freetdm: print span/chan identifiers on hangup 2011-09-15 13:50:42 -04:00