aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2011-02-14 16:43:35 +0100
committerHarald Welte <laforge@gnumonks.org>2011-02-14 16:43:35 +0100
commite925205c28b4aad00bc692b331b88648795085ef (patch)
treec8e2d30ae6619bd308498bb344a910a93b69afcf /openbsc
parentda87154093d6db54e49d9fcb47be5d0ab09b44ed (diff)
DAHDI: Automatically switch signalling slots to HDLC + FCS mode
This will now make signalling slots work anywhere, even if /etc/dahdi/system.conf states the timeslot is a bchan.
Diffstat (limited to 'openbsc')
-rw-r--r--openbsc/src/input/dahdi.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/openbsc/src/input/dahdi.c b/openbsc/src/input/dahdi.c
index e5d41e0fd..2fc99f58e 100644
--- a/openbsc/src/input/dahdi.c
+++ b/openbsc/src/input/dahdi.c
@@ -403,8 +403,13 @@ void dahdi_set_bufinfo(int fd, int as_sigchan)
fprintf(stderr, "Error setting bufinfo\n");
exit(-1);
}
+ } else {
+ int one = 1;
+ ioctl(fd, DAHDI_HDLCFCSMODE, &one);
+ /* we cannot reliably check for the ioctl return value here
+ * as this command will fail if the slot _already_ was a
+ * signalling slot before :( */
}
-
}
static int dahdi_e1_setup(struct e1inp_line *line)