dahdi_cfg: Warn if idle bits are set on invalid channel type. v2.9.2 v2.9.2-rc2
authorShaun Ruffell <sruffell@digium.com>
Tue, 8 Jul 2014 21:41:04 +0000 (16:41 -0500)
committerRuss Meyerriecks <rmeyerriecks@digium.com>
Wed, 9 Jul 2014 20:55:37 +0000 (15:55 -0500)
Hopefully will save a little time in the future if anyone ever types into
/etc/dahdi/system.conf:

  bchan=1-15,17-30:1101

when they meant:

  cas=1-15,17-30:1101

in the future.

Signed-off-by: Shaun Ruffell <sruffell@digium.com>
Signed-off-by: Russ Meyerriecks <rmeyerriecks@digium.com>

dahdi_cfg.c

index 90bd466..c8369db 100644 (file)
@@ -762,7 +762,16 @@ static int chanconfig(char *keyword, char *args)
                        } else {
                                fprintf(stderr, "Huh? (%s)\n", keyword);
                        }
-                       if (is_digital)
+
+                       if (cc[x].sigtype != DAHDI_SIG_CAS &&
+                           cc[x].sigtype != DAHDI_SIG_DACS &&
+                           cc[x].sigtype != DAHDI_SIG_DACS_RBS) {
+                               if (NULL != idle) {
+                                       fprintf(stderr, "WARNING: idlebits are not valid on %s channels.\n", sig[x]);
+                               }
+                       }
+
+                       if (is_digital) 
                                chan2span[x] = current_span;
                        else
                                current_span = 0;