Commit Graph
98 Commits
Author SHA1 Message Date
Stefan Knoblich 9da0183352 FreeTDM: Remove unused local 'interfaces' variable
Zero-filled, but never used otherwise (and static), drop it.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2013-05-31 19:26:36 +02:00
Stefan Knoblich 81b9ab7316 Terminate sed substitution command with semicolon to fix error on OSX.
sed: 1: "/#define *SWITCH_VERSIO ...": bad flag in substitute command: '}'

Reported-by: scruz in #freeswitch @ irc.freenode.net
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2012-06-18 13:32:43 +02:00
Stefan Knoblich e1a6fd27e0 ftmod_libpri: Always try to close the d-channel to avoid a possible deadlock in case something fails in the I/O module's channel open function.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-09-01 01:48:03 +02:00
Stefan Knoblich 41b956fd24 FreeTDM: Don't ftdm_safe_free() span information in ftdm_span_destroy() if span provides a custom span_destroy callback.
Doing so will cause a NULL-deref segfault while removing the current span from the
global hash (cur_span->name == NULL) in ftdm_global_destroy().

Remove all the ftdm_safe_free() calls in the custom callback part of ftdm_span_destroy() and
let ftdm_global_destroy() handle that.

NOTE: Also adds a missing ftdm_safe_free(cur_span->dtmf_hangup) to ftdm_global_destroy().

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-09-01 01:48:03 +02:00
Stefan Knoblich c18c2b1dc0 mod_soundtouch: Drop libtoolize call completely, autoreconf does all the magic needed
On second though (and after reading the code completely),

these are the droids^W^W^W^Wthis is the solution we've been searching for...

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-07-15 17:10:03 +02:00
Stefan Knoblich c7c1cf7fbb mod_soundtouch: Fix typo in Makefile '%%' -> '&&'
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-07-15 15:42:01 +02:00
Stefan Knoblich b6826180f3 mod_ladspa: Set setenv() overwrite flag to replace empty LADSPA_PATH variables.
For complete putenv()-like behaviour.

Further investigation on why putenv() caused EFAULTs on execve() and
segfaults on reload:

putenv(3):

   "The string pointed to by string becomes part of the environment,
    so altering the string changes the environment."

setenv(3):

   "This function makes copies of the strings pointed to by name and value
    (by contrast with putenv(3))."

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-07-04 01:18:51 +02:00
Stefan Knoblich f6dadb587c mod_ladspa: putenv() breaks the process environment variables, use setenv() instead.
Use of putenv() to set LADSPA_PATH broke the proccess environment variables, for some
unknown reason, causing segfaults on "reload mod_ladspa" and restarting
FreeSWITCH (with "fcstl shutdown restart").

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-07-03 14:01:08 +02:00
Stefan Knoblich 1c608f0a5d ftmod_libpri: final fix called number overlap receiving...
ftdm_copy_string() length parameter needs to include the terminating NUL byte.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
Tested-by: Stefan Knoblich <stkn@openisdn.net>
2011-06-30 23:53:36 +02:00
Stefan Knoblich c01c500153 ftmod_libpri: Incoming overlap receiving digits have to be appended to the DNIS.
Libpri doesn't do that for us, so handle things on our end.
Other parts of the previous patch seem to work fine.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-06-30 13:01:19 +02:00
Stefan Knoblich d2ce252509 ftmod_libpri: Add experimental (untested) support for overlap receiving in TE mode.
Adds a new "overlapdial" configuration parameter that enables
incoming overlap dialing when set to "incoming", "yes" or "both" (possible values:
"no", "yes"/"both", "incoming"/"receive", "outgoing"/"send").

(Overlap dialing is disabled by default)

NOTE: only the non-overlap receive case has been tested (= doesn't break existing setups)

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-06-29 13:26:51 +02:00
Stefan Knoblich 01785fb31d FreeTDM: gcc-4.6.0 fix (-Wunused-but-set-variable)
ftmod_sangoma_isdn.c:ftdm_sangoma_isdn_io_run()
	remove unused variable wflags.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-06-28 15:05:31 +02:00
Stefan Knoblich e80279dd00 FreeTDM: gcc-4.6.0 fix (-Wunused-but-set-variable)
ftdm_io.c:ftdm_channel_process_media()
	status variable was set but otherwise unused

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-06-28 14:54:37 +02:00
Stefan Knoblich c35c138db5 docs: Add libteletone back to core API documentation
Right... this one is actually part of the core
(.o files included in libfreeswitch).

There are a few more libs included like this, but none
of them should be for external use.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-06-18 01:08:33 +02:00
Stefan Knoblich 794246e1d1 docs: Major clean up of doxygen generated core API documentation
To make the API documentation usable (again):

  - Rename to "FreeSWITCH API Documentation"

  - Remove all external INPUT paths, only scan FreeSWITCH core sources

  - Only parse a sane subset of files: *.c *.cc *.cpp *.h *.hh *.hxx
    (don't care about any python / whatever files for now)

  - Exclude modules (seriously, all the mod_java / mod_managed stuff
    turned it into an unusable mess. You need API docs of modules? Add separate doxygen
    configurations for them (or specific ones))

  - Include src/mod in example search path (for @include etc.), add C/C++
    patterns.

  - Set up PREDEFINED to fix the massive clusterf*ck that was caused by
    SWITCH_DECLARE() and friends.

<End Of Rant>

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-06-18 00:43:53 +02:00
Stefan Knoblich 8035d498ea ftmod_zt: Add ZT_EVENT_ABORT event handling and update ZT_EVENT_OVERRUN error message.
ZT_EVENT_ABORT and ZT_EVENT_OVERRUN are HDLC events.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-05-27 12:46:24 +02:00
Stefan Knoblich 812fd7278e mod_sofia: Reformat sofia usage string and make it a static const char[].
Make this thing readable by wasting a couple of bytes for spaces and newlines.

As an added bonus, save some stack space by making usage_string a static const.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-05-25 18:29:28 +02:00
Stefan Knoblich 9cceb8e62c FreeTDM: gcc-4.6 fix (-Wunused-but-set)
ftmod_wanpipe.c:
	Remove myerrno variable in wanpipe_read(),
	snprintf does not set errno (according to the manpage),
	so no need to save it (without even using it later).

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-05-14 23:59:14 +02:00
Stefan Knoblich ae051cfc47 FreeTDM: gcc-4.6 fixes (-Wunused-but-set)
ftdm_io.c:
	Remove cut_path() function and call since it didn't seem to
	do anything useful anyway.

ftmod_analog.c/ftmod_analog_em.c:
	Remove status variable that was used for the result of codec_func(),
	but was never checked for errors or returned to the caller.

libteletone_generate.c:
	Remove unused variable "var".

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-05-14 23:20:03 +02:00
Stefan Knoblich 2ac7a9de4f ftmod_libpri: Set default config values, just in case the user forgot to set some parameters in freetdm.conf.xml.
This fixes the "[ERR] ftmod_libpri.c:128 Don't know how to SABME on a type 0 node" messages
from libpri, when there's no "node"/"mode" parameter set for the span.

NOTE: Now defaulting to CPE mode; EuroISDN on BRI/E1 and 4ESS on J1/T1 lines,
      make sure you set dialect/switchtype!

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-05-10 19:53:58 +02:00
Stefan Knoblich ccce356392 ftmod_libpri: Rewrite parts of hangup handling to fix hanging calls problem.
Let's hope this fixes it for good and doesn't introduce new problems.

Tested-by: SparFux (#freetdm @ irc.freenode.net)
Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2011-05-03 13:44:21 +02:00
Stefan Knoblich 360ed43a04 ftmod_libpri: ignore missing call_data in on_hangup() and use the call handle passed in the pevent structure (still needs more love...)
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-04-29 01:59:24 +02:00
Stefan Knoblich 3de9b51a86 ftmod_isdn: Fix warnings
No guarantee this module still works, but it compiles again.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-04-08 14:53:59 +02:00
Stefan Knoblich 6e37a8b25c mod_celt: Add dependency to fix parallel builds
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-03-29 13:11:59 +02:00
Stefan Knoblich 74bbd4be84 mod_opus: Use libtool archives for linking, add dependencies to fix parallel builds
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-03-29 13:09:45 +02:00
Stefan Knoblich 87884c5c67 mod_enum: fix race condition between ldns configure creating ldns/util.h and mod_enum
Unbreaking make -jX parallel builds...

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-03-28 21:21:13 +02:00
Stefan Knoblich 1a54968d99 ftmod_libpri: go to PROGRESS_MEDIA in on_ringing() if there is inband information available and rework channel opening to not skip state changes when the channel is already open.
The latter part affects on_ringing(), on_progress() and on_proceeding().

Somewhat experimental and untested (apart from a compile run).

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-03-10 18:25:43 +01:00
Stefan Knoblich 02b2926351 [FreeTDM] Fix segfault in ftdm_analog_configure_span() on startup.
Using ftdm_log_chan() in ftdm_analog_configure_span() is a bad idea,
since the span won't have any channels assigned.

This bug powered by declaring all variables at the top of the function,
even if they are used in an if branch at the end.

A C99'ish:

	if (callwaiting) {
		for (unsigned int i = 1; i <= span->span->chan_count; i++) {
			/* ... */
		}
	}

would have alerted the developer adding the log statement.
But since we can't have nice things (thanks MSVC for not supporting C99!)
</rant>

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-03-06 19:42:47 +01:00
Stefan Knoblich 78472897cd Do not escape ${libdir} in --with-pkgconfigdir option's AS_HELP_STRING
description parameter (not needed and ends up in output).

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-02-19 23:38:04 +01:00
Stefan Knoblich c8065499ad [FreeTDM] Add --with-pkgconfigdir option to FreeTDM.
Default behaviour is unchanged.

Packagers should use this option to install freetdm.pc into
the system's main pkg-config directory (e.g. /usr/lib/pkgconfig).

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Tested-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-02-19 23:35:41 +01:00
Stefan Knoblich f20ba4d1f6 Add --with-pkglibdir option to set the installation directory of freeswitch.pc.
Default behaviour is unchanged.

Packagers should use this option to install freeswitch.pc into
the system's main pkg-config directory (e.g. /usr/lib/pkgconfig).

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Tested-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-02-19 23:07:22 +01:00
Stefan Knoblich a3b18e5b7c [SDK] Import autotools version of fs-mod-sdk.
This is a autotools (autoconf/automake/libtool) based skeleton framework for developing
external (= out-of-tree) modules for FreeSWITCH.

Variants of this framework have been used to develop modules like mod_openais, mod_ssh and others.

NOTE: This version of the SDK relies on pkg-config to detect FreeSWITCH
      installations.

Other SDKs for external modules should be added in: "src/mod/sdk/<build-system-name>/"
e.g. a scons-based SDK should be put in: "src/mod/sdk/scons/"

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Requested-by: Michal Bielicki - cypromis <michal.bielicki@seventhsignal.de>
2011-02-19 16:47:19 +01:00
Stefan Knoblich 9adac7c698 [fsxs] Remove APR and APR-UTIL libraries from fsxs LIBS variable.
"LIBS" in the final fsxs script will be empty now.
We still link against libfreeswitch when building a module,
but we don't explicitly list (some of) its dependency libs anymore
(this list was not complete anyway).

This fixes a bogus /path_to_source/expat.la entry in LIBS that
came from "apu-config --libs".

Tested on Gentoo x86_64 (binutils 2.20.1) and Centos 5.5 (binutils 2.17.50).

Tested-by: Stefan Knoblich <s.knoblich@axsentis.de>
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-01-23 01:42:39 +01:00
Stefan Knoblich dff01c07f1 [ftmod_libpri] Use FTDM_SPAN_USE_PROCEED_STATE and rework state handling.
- Use the newly introduced FTDM_SPAN_USE_PROCEED_STATE flag and FTDM_CHANNEL_STATE_PROCEED.

- Update ftmod_libpri's state machine table (taken from ftmod_sangoma_isdn).

- Move pri_destroycall() to HANGUP_COMPLETE state.

- Try to get a little bit closer to the ISDN states by using pri_acknowledge() in RINGING,
  pri_progress() in PROGRESS and pri_proceeding() in PROCEED state.

- Go to PROGRESS_MEDIA in on_progress() only if there is inband indication available, go to
  PROGRESS if not.

- Go to RINGING state in on_ringing() and remove PROGRESS_MEDIA check.

NOTE: One libpri error message and a VETO (PROGRESS -> RINGING) warning to investigate,
      but changes seem to work fine nonetheless.

Tested-by: SparFux (#freeswitch / #freeswitch-de  @ irc.freenode.net)
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2011-01-13 23:28:00 +01: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
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
Stefan Knoblich 60cb91b042 freetdm: ftmod_libpri + ftmod_zt: some DAHDI drivers return an error of ELAST (500) on read()/write() to indicate there are events pending.
Fixup zt_read() to handle this case correctly and rework ftmod_libpri's read wrapper function to not fail when the read function returns zero bytes.

NOTE: zt_write() has not been changed (some better way to handle these events is needed then)

This should fix these log messages:

   [WARNING] ftdm_io.c:3561 [s1c16][1:16] raw I/O read filed
   [CRIT] lpwrap_pri.c:125 span 1 D-READ FAIL! []
   [CRIT] lpwrap_pri.c:157 span 1 D-WRITE FAIL! []
   [ERR] ftmod_libpri.c:131 Short write: -1/6 (Unknown error 500)

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-12-07 20:06:48 +01:00
Stefan Knoblich d4138959b2 freetdm: use m4_ifdef() to check for pkg-config macros and print a warning if they are not available
...instead of failing at runtime

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-18 23:14:46 +01:00
Stefan Knoblich 9257e0f344 ftmod_isdn: Port(/Fix) span signal handling, remove some dead/unused pieces and close the D-Channel on shutdown.
This fixes a NULL-call segfault in ftdm_span_trigger_signal().

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-16 23:01:21 +01:00
Stefan Knoblich a9b2ced2aa ftmod_libpri: First part of the BRI PTMP channel handling changes.
I really need to dig deeper here, some libpri events never fire for
incoming calls and i'll have to find out how mod_freetdm or the
FreeSWITCH core change states on the channel...

Anyway, incoming and outgoing calls still work for me (BRI PTMP TE),
so commit this now and let a wider audience do some more testing.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Tested-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-16 23:01:21 +01:00
Stefan Knoblich ced7c9ae43 freetdm: Another round of parameter handling fixes (ftmod_{libpri,isdn,pritap})
ftmod_pritap: Abort before overflowing spanparameters array and initialize to all zero
ftmod_isdn:   Fix overflow check, skip over parameters without name or value, initialize spanparameters array to all zero.
ftmod_libpri: Skip over parameters without name or value, initialize spanparameters array to all zero and drop "i < 10" hardcoded check.

This should fix:
	2010-11-15 09:24:34.609515 [ERR] ftmod_libpri.c:1741 Unknown parameter '', aborting configuration
	2010-11-15 09:24:34.609515 [ERR] mod_freetdm.c:3080 Error configuring FreeTDM span BRI_1

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Reported-by: Ingmar Schraub <is@eseco.de>
2010-11-15 12:33:58 +01:00
Stefan Knoblich e98b4a6b8d ftmod_libpri: Set RDNIS
Signed-off-by: lakshmanan ganapathy <lakindia89@gmail.com>
Reviewed-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-15 11:38:45 +01:00
Stefan Knoblich c1517e99d1 ftmod_zt: B-Channels need to have audio mode disabled upon closing the channel.
Preparation for fixing channel handling for BRI PTMP (Point-To-MultiPoint) setups.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-14 23:38:16 +01:00
Stefan Knoblich 0286af421b freeswitch: Update .gitignore file (libcodec2, esl binaries, mod_hash + mod_osp autogenerated files)
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-14 18:04:19 +01:00
Stefan Knoblich 96b0ef9ce9 ftmod_libpri: Use ftdm_array_len(), remove custom ARRAY_SIZE macro.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-14 17:48:53 +01:00
Stefan Knoblich e17201bbac freetdm: Add ftdm_channel_get_state(), ftdm_channel_get_last_state() and ftdm_span_get_trunk_type_str().
Remove custom versions from ftmod_isdn and ftmod_libpri.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-14 17:48:09 +01:00
Stefan Knoblich 4f4aee4f07 Merge branch 'ftmod_isdn' 2010-11-14 16:47:43 +01:00
Stefan Knoblich b0cca151e6 ftmod_isdn: Major cleanup: use accessor functions, coding-style, etc.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-14 16:45:35 +01:00
Stefan Knoblich 47af9933c4 freetdm: convert ftmod_isdn to use (+ pri_spans) to use ftdm_configure_span_signaling() interface.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-14 15:44:50 +01:00
Stefan Knoblich 197e4b71d6 mod_freetdm: Really avoid overwriting the last element of spanparameters.
"if (ftdm_array_len(spanparameters) == paramindex)" is still off-by-one,
we want to stop at "ftdm_array_len(spanparameters) - 1", before we overwrite
the last (= terminating, NULL) element.

NOTE: i'd prefer an "argc, argv"-style interface here

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-12 11:42:26 +01:00
Stefan Knoblich eeaab3a02e mod_freetdm: Avoid overflowing the spanparameters array of libpri spans, and make other span types use ftdm_array_len() too.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-11 23:56:55 +01:00
Stefan Knoblich 1e777c2ce9 ftmod_libpri: While we're at it, drop the cast too
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-11 22:21:18 +01:00
Stefan Knoblich e0961aee3a ftmod_libpri: Dereference facility event correctly, add debug message.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-11 22:19:32 +01:00
Stefan Knoblich a2e16ce83c ftmod_libpri: Minor cleanups in ftdm_libpri_configure_span().
Move some things around and remove 'paramindex' var (just use 'i' for that too).

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-11 00:16:25 +01:00
Stefan Knoblich 9ff4cfd569 ftmod_libpri: "ftdm libpri debug <span>" now prints the current debug flags
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-11 00:06:06 +01:00
Stefan Knoblich 1074f006a0 ftmod_libpri: Clean up misnamed parameters and variables, remove unused.
- Add alias names for parameters:
     "node"   -> "mode"
     "dp"     -> "ton"
     "switch" -> "dialect"
     "l1"     -> "layer1"

  (Switching between ftmod_libpri and ftmod_isdn is easier now.)

- Removed unused members from struct ftdm_libpri_data
  and rename misnamed ones

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-10 22:42:18 +01:00
Stefan Knoblich 3df1476a6d ftmod_libpri: Major cleanup, enhance configuration checks
- Check D and B-channel availability (could be extended to check B-channel count)

- Drop usage of spri->private_info, use spri->span instead
- Use accessor functions where possible
- Rename ftdmchan to chan where possible
- Various other cleanups

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
Tested-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-10 21:32:32 +01:00
Stefan Knoblich 180feff1f4 ftmod_libpri: Completely disable on_facility if AOC support is not available in libpri (= is too old).
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-10 01:28:30 +01:00
Stefan Knoblich cc8d790cfd Merge branch 'master' of ssh://git.freeswitch.org/freeswitch 2010-11-10 00:48:59 +01:00
Stefan Knoblich b1cf0d9a15 ftmod_libpri: Check if a span really has a D-Channel.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-10 00:47:16 +01:00
Stefan Knoblich ff7a617098 ftmod_libpri: Bail out with an error message if libpri is too old and selected trunk type is BRI or BRI_PTMP
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-09 15:51:30 +01:00
Stefan Knoblich f53ce50a4c Merge branch 'master' of ssh://git.freeswitch.org/freeswitch 2010-11-08 20:57:47 +01:00
Stefan Knoblich 0a8c1a04c4 ftmod_libpri: Minor cleanups.
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-08 20:57:21 +01:00
Stefan Knoblich 0a0e79e1fe ftmod_libpri: clarify why we enable facility conditionally
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-08 00:57:50 +01:00
Stefan Knoblich 9e40c23cdb Merge branch 'master' of ssh://git.freeswitch.org/freeswitch 2010-11-08 00:54:58 +01:00
Stefan Knoblich b7d9265562 ftmod_libpri: First attempt at getting AOC Facility messages going (and minor cleanups)
Requires libpri-1.4.12_beta1 or newer!
Completely untested, AOC-S/D/E ChargingRequest operations are sent to NT (DTAG BRI PTMP),
but rejected with "Unrecognized Operation".

NOTE: FreeTDM core needs support for this to be useful!
      Only AOC-E events are decoded and sent to the log.

To enable:
    Set (or add) <param name="opts" value="aoc"> in your
    libpri_spans span config.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-08 00:43:09 +01:00
Stefan Knoblich 428d05349a ftmod_libpri: Write fatal error message during span configuration to console (and to span error log).
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-07 19:55:00 +01:00
Stefan Knoblich 81515b7bd8 ftmod_libpri: Improve "ftdm libpri debug" usage information.
"all" and "none" can only be used alone,
other flags are additive.

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-07 17:22:22 +01:00
Stefan Knoblich 78eff1d821 freetdm: convert ftmod_libpri (+ libpri_spans) to use new ftdm_configure_span_signaling() interface.
This fixes several issues with parameter handling (e.g. default alaw/ulaw selection being totally useless).

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-07 17:00:54 +01:00
Stefan Knoblich dc2a28c27c Merge branch 'master' of ssh://git.freeswitch.org/freeswitch 2010-11-07 15:51:53 +01:00
Stefan Knoblich 6e217401d9 ftmod_libpri: Rework debug flag handling, make BRI/BRI PTMP default to alaw too (does not work yet)
Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-07 15:48:39 +01:00
Stefan Knoblich 583c96af5b Merge branch 'master' of ssh://git.freeswitch.org/freeswitch 2010-11-06 18:28:53 +01:00
Stefan Knoblich b9391cffc2 ftmod_libpri: Fix reversed PTP/PTMP mode parameter 2010-11-06 18:28:37 +01:00
Stefan Knoblich 6ca919be61 ftmod_libpri: BRI Support requires libpri-1.4.12_beta1 or newer, add message to configure check 2010-11-06 18:12:27 +01:00
Stefan Knoblich 30fb69bbab ftmod_libpri: temporary segfault fix if libpri does not have BRI support 2010-11-06 17:58:41 +01:00
Stefan Knoblich 3d5ccf055d ftmod_libpri: Initial support for BRI and various cleanups + double locking fix
Fixes:
- Fix double locking in check_state(): remove ftdm_mutex_(un)lock calls.

New:
- Add lpwrap_init_bri() to initialize libpri in BRI mode
- Use trunk type to determine PRI/BRI and PTP/PTMP mode (no additional configuration required).
- Improve libpri detection code in configure.ac, check whether libpri is usable
  and if BRI support is available (needs more work)

Cleanups:
- Whitespace and indentation cleanups
- Rename str2* functions to parse_*
- Simplify libpri_configure_span() option parsing and bail out on error
- Add "ftdm libpri help" command that displays usage information
- Coding style cleanups and other (minor) changes

Known issues:
- BRI PTMP TE Q.921 link does not go beyond TEI ASSIGNED state,
  SABME requests are ignored by NT (EuroISDN DTAG, DAHDI-2.3.0.1, vzaphfc)

Signed-off-by: Stefan Knoblich <s.knoblich@axsentis.de>
2010-11-06 16:08:07 +01:00
Stefan Knoblich 6787710b00 FreeTDM: Update .gitignore, add files shipped with libtool (build/{libtool,lt*}.m4) and compiled test binaries 2010-11-06 16:06:42 +01:00
Stefan Knoblich 454c238e58 Merge branch 'master' of ssh://git.freeswitch.org/freeswitch 2010-11-01 20:39:47 +01:00
Stefan Knoblich cc1e83397b FreeTDM: Buildsystem cleanup
- Use tabs instead of spaces for indentation

- Proper m4 quoting of parameters

- Fix broken AC_ARG_* handling:
  --without-foo/--disable-foo set withval="no"/enableval="no"
  and the third parameter of the AC_ARG_* macros is always
  "user provided an --with*-foo/--*able-foo option" _NOT_ "yes",
  while the fourth parameter is "user didn't provide this option"
  (= the default if neither --with-foo/--enable-foo nor --without-foo/--disable-foo
     has been set)

- Drop FTDM_CFLAGS in MY_CFLAGS (what was that used for anyway?)

- Drop MYLIB

- Drop SOLINK (unused)

- Rename MY_CFLAGS to FTDM_CFLAGS

- Rename all AM_CONDITION variables to HAVE_* for (optional) dependencies
  and WANT_* for features

- Reorder mod_LTLIBRARIES lines

- Move some things in configure.ac around to group them

- Add -shared to modules LDFLAGS (we don't need "ftmod_foo.a" static modules, do we?)

- Import ax_compiler_vendor.m4, drop the macro definition from configure.ac

- Add AUTOMAKE_OPTS to Makefile.am and define FreeTDM as a foreign (= non-GNU) project

- Add ACLOCAL_FLAGS to Makefile.am and set AC_CONFIG_MACRO_DIR in configure.ac
  custom m4 macros are kept in the build subdirectory

- Enable silent rules for automake-1.11 and newer (use make V=1 to get verbose output)

- configure option --with-modinstdir requires a value now and quits with an error message
  if called without one (e.g. "./configure --without-modinstdir" or "./configure --with-modinstdir")

- Add configuration summary screen and category headers for modules in configure output
2010-11-01 02:13:27 +01:00
Stefan Knoblich 3428bd3d43 ftmod_isdn: FreeTDM port, first steps
- Requires non-public development version of libisdn(!)
- Based on older patches from http://oss.axsentis.de/gitweb/?p=ftmod_isdn.git;a=summary
- Rework of ftmod_isdn related buildsystem parts (Makefile.am, configure.in and libpcap.m4)
2010-11-01 00:47:43 +01:00
Stefan Knoblich d6eb7562e5 [mod_commands,mod_event_socket,mod_event_test] fix up other users of switch_event_xmlize() to use SWITCH_EVENT_NONE 2010-08-15 00:39:49 +02:00
Stefan Knoblich dbe62c25e9 [mod_lcr] Use SWITCH_VA_NONE instead of an empty string to (finally) fix the gcc printf format warnings. 2010-08-15 00:35:10 +02:00
Stefan Knoblich 672898f40e [FreeTDM][2/2] for FreeBSD: ftdm_interrupt_multiple_wait() linux poll version should also work on all BSD variants (and Solaris too), add FreeBSD for now. (Build-tested on FreeBSD-8.1) NOTE: We may want to drop the #elif completely and just go for an #else here instead. 2010-08-10 10:31:13 +02:00
Stefan Knoblich ae12913f12 [FreeTDM][1/2] for *BSD: Fix typo idle_percentate => idle_percentage. 2010-08-10 10:26:00 +02:00
Stefan Knoblich 3edb841959 Fix mod_spidermonkey build on FreeBSD, (Undefined symbol
PR_LocalTimeParameters).

Move nspr libs to AM_LIBADD to make sure they are _after_ libjs.so.1,
so missing PR_* symbols in libjs can be resolved.

Having all those nspr libs in AM_LDFLAGS will make them to end up before
libjs on the final linker commandline.

The wrong order caused the build-time linker to discard nspr,
since nothing had unresolved symbols belonging to it at that point.
(mod_spidermonkey does not use any PR_* functions/objects.)

Compile + load tested on FreeBSD-8.1.
2010-08-03 13:18:00 +02:00
Stefan Knoblich c318e7eb69 Merge branch 'master' of ssh://git.freeswitch.org/freeswitch 2010-07-05 23:59:07 +02:00
Stefan Knoblich 311fdd2207 [FreeTDM] Add modulesdir to freetdm.pc.in 2010-07-05 23:54:33 +02:00
Stefan Knoblich 88b7110014 esl-json: Add limits.h for INT_MIN/_MAX 2010-06-17 22:49:29 +02:00
Stefan Knoblich 1eb4b79c15 Install switch_rtcp_frame.h too. 2010-06-16 01:12:47 +02:00
Stefan Knoblich d778a07698 libsndfile: Do not build tests. We do not use them anyway and they require autogen, which pulls in lots of other things. 2010-06-14 14:16:10 +02:00
Stefan Knoblich f6f0e99efd tell gcc where to look for includes needed to create switch_swigable_cpp.h, build fails otherwise 2010-04-30 23:34:36 +02:00
Stefan Knoblich 360e8aae20 [FreeTDM] gcc-4.5: Use zt_event_t instead of ftdm_oob_event_t to fix enum type mismatches. 2010-04-30 23:10:43 +02:00
Stefan Knoblich 86fcc2c04c FreeTDM: remove stray apostrophe 2010-04-30 22:28:38 +02:00
Stefan Knoblich 32cedb2df9 switch_dso.c: FreeBSD(8.0) dlerror() returns const char*, add cast to char* to avoid a warning (and abort due to -Werror) 2010-04-24 11:18:49 +02:00
Stefan Knoblich dc356af926 [3/3][OpenZAP] gcc-4.5: Use zt_event_t instead of zap_oob_event_t to fix enum type mismatches. 2010-04-17 11:17:48 +00:00
Stefan Knoblich 8f2b8388fc [2/3][sofia-sip] gcc-4.5: Fix enum type mismatch. 2010-04-17 11:17:28 +00:00
Stefan Knoblich 16d672a273 [1/3] gcc-4.5: Fix enum type mismatches in switch_core_sqldb.c. 2010-04-17 11:13:25 +00:00
Stefan Knoblich f4c1dee95b FreeTDM: freetdm.pc.in was still using "OpenZAP", fix the name and library name. Leaving the homepage tag alone for now until a new one has been set up(?). 2010-03-31 19:53:00 +02:00