]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
ftmod_libpri: Set default config values, just in case the user forgot to set some...
authorStefan Knoblich <s.knoblich@axsentis.de>
Tue, 10 May 2011 17:35:56 +0000 (19:35 +0200)
committerStefan Knoblich <s.knoblich@axsentis.de>
Tue, 10 May 2011 17:53:58 +0000 (19:53 +0200)
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>
libs/freetdm/src/ftmod/ftmod_libpri/ftmod_libpri.c

index ec7fe39c7d8bbaf6fe1f0af4f6801442265ff356..809344398662d39c238adb6dd2579d005272ded0 100644 (file)
@@ -1965,6 +1965,10 @@ static FIO_CONFIGURE_SPAN_SIGNALING_FUNCTION(ftdm_libpri_configure_span)
        assert(isdn_data != NULL);
        memset(isdn_data, 0, sizeof(*isdn_data));
 
+       /* set some default values */
+       isdn_data->mode = PRI_CPE;
+       isdn_data->ton  = PRI_UNKNOWN;
+
        switch (ftdm_span_get_trunk_type(span)) {
        case FTDM_TRUNK_BRI:
        case FTDM_TRUNK_BRI_PTMP:
@@ -1975,12 +1979,14 @@ static FIO_CONFIGURE_SPAN_SIGNALING_FUNCTION(ftdm_libpri_configure_span)
 #endif
        case FTDM_TRUNK_E1:
                ftdm_log(FTDM_LOG_NOTICE, "Setting default Layer 1 to ALAW since this is an E1/BRI/BRI PTMP trunk\n");
-               isdn_data->layer1 = PRI_LAYER_1_ALAW;
+               isdn_data->layer1  = PRI_LAYER_1_ALAW;
+               isdn_data->dialect = PRI_SWITCH_EUROISDN_E1;
                break;
        case FTDM_TRUNK_T1:
        case FTDM_TRUNK_J1:
                ftdm_log(FTDM_LOG_NOTICE, "Setting default Layer 1 to ULAW since this is a T1/J1 trunk\n");
-               isdn_data->layer1 = PRI_LAYER_1_ULAW;
+               isdn_data->layer1  = PRI_LAYER_1_ULAW;
+               isdn_data->dialect = PRI_SWITCH_LUCENT5E;
                break;
        default:
                ftdm_log(FTDM_LOG_ERROR, "Invalid trunk type: '%s'\n", ftdm_span_get_trunk_type_str(span));