isdn: accept CAPI Informational Info values as success
authorTilman Schmidt <tilman@imap.cc>
Tue, 6 Oct 2009 12:18:05 +0000 (12:18 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 7 Oct 2009 05:20:52 +0000 (22:20 -0700)
Info values in the 0x00xx range are defined in the CAPI standard
as "Informational, message processed successfully". Therefore a
CONNECT_B3_CONF message with an Info value in that range should
open an NCCI just as with Info==0.

Impact: minor bugfix
Signed-off-by: Tilman Schmidt <tilman@imap.cc>
Acked-by: Karsten Keil <keil@b1-systems.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/isdn/capi/capi.c

index 2d8352419c0db445c57f03d80336cf9e1458faf5..65bf91e16a42725c7aeb5754fdb5954553fd73af 100644 (file)
@@ -603,7 +603,7 @@ static void capi_recv_message(struct capi20_appl *ap, struct sk_buff *skb)
 
        if (CAPIMSG_CMD(skb->data) == CAPI_CONNECT_B3_CONF) {
                u16 info = CAPIMSG_U16(skb->data, 12); // Info field
-               if (info == 0) {
+               if ((info & 0xff00) == 0) {
                        mutex_lock(&cdev->ncci_list_mtx);
                        capincci_alloc(cdev, CAPIMSG_NCCI(skb->data));
                        mutex_unlock(&cdev->ncci_list_mtx);