From 916d15445f4ad2a9018e5451760734f36083be77 Mon Sep 17 00:00:00 2001 From: Karsten Keil Date: Mon, 26 Jun 2006 20:21:01 +0200 Subject: [PATCH] fix processing of the last byte in isdn_readbchan_tty() The changes in the tty handling contain a bug while accessing the last byte in the skb. Since special sequence for control of DTMF and FAX via ttyI* devices handled via this path, these services do not work anymore. Signed-off-by: Karsten Keil Signed-off-by: Linus Torvalds --- drivers/isdn/i4l/isdn_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/isdn/i4l') diff --git a/drivers/isdn/i4l/isdn_common.c b/drivers/isdn/i4l/isdn_common.c index 81accdf35168..b26e509ec759 100644 --- a/drivers/isdn/i4l/isdn_common.c +++ b/drivers/isdn/i4l/isdn_common.c @@ -933,7 +933,7 @@ isdn_readbchan_tty(int di, int channel, struct tty_struct *tty, int cisco_hack) count_put = count_pull; if(count_put > 1) tty_insert_flip_string(tty, skb->data, count_put - 1); - last = skb->data[count_put] - 1; + last = skb->data[count_put - 1]; len -= count_put; #ifdef CONFIG_ISDN_AUDIO } -- cgit v1.2.2 From ca6f8792bd5281ebaf04bf23a43ed486e5e453a9 Mon Sep 17 00:00:00 2001 From: Karsten Keil Date: Tue, 27 Jun 2006 13:01:27 +0200 Subject: [PATCH] i4l fix DLE masking in isdn_tty_try_read DLE masking was non-functional since the new tty handling. Found by Peter Evertz Signed-off-by: Karsten Keil Signed-off-by: Linus Torvalds --- drivers/isdn/i4l/isdn_tty.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'drivers/isdn/i4l') diff --git a/drivers/isdn/i4l/isdn_tty.c b/drivers/isdn/i4l/isdn_tty.c index 2ac90242d263..433389daedb2 100644 --- a/drivers/isdn/i4l/isdn_tty.c +++ b/drivers/isdn/i4l/isdn_tty.c @@ -82,7 +82,7 @@ isdn_tty_try_read(modem_info * info, struct sk_buff *skb) int l = skb->len; unsigned char *dp = skb->data; while (--l) { - if (*skb->data == DLE) + if (*dp == DLE) tty_insert_flip_char(tty, DLE, 0); tty_insert_flip_char(tty, *dp++, 0); } -- cgit v1.2.2