]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
NFC: llcp: Use default MIU if none was specified on connect
authorSzymon Janc <szymon.janc@gmail.com>
Sat, 30 Nov 2013 15:59:23 +0000 (16:59 +0100)
committerSamuel Ortiz <sameo@linux.intel.com>
Sat, 4 Jan 2014 02:32:27 +0000 (03:32 +0100)
If MIUX is not present in CONNECT or CC use default MIU value (128)
instead of one announced durring link setup.

This was affecting Bluetooth handover with Android 4.3+ NCI stack.

Signed-off-by: Szymon Janc <szymon.janc@gmail.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
net/nfc/llcp_commands.c
net/nfc/llcp_core.c
net/nfc/llcp_sock.c

index 80057a818737b6ef8abdaf653ed59868a743f005..bec6ed15f5037ef9ffbc75f93e450e9ef1fd81b7 100644 (file)
@@ -675,7 +675,7 @@ int nfc_llcp_send_i_frame(struct nfc_llcp_sock *sock,
 
        do {
                remote_miu = sock->remote_miu > LLCP_MAX_MIU ?
-                               local->remote_miu : sock->remote_miu;
+                               LLCP_DEFAULT_MIU : sock->remote_miu;
 
                frag_len = min_t(size_t, remote_miu, remaining_len);
 
index 1349074e1ffc09458cd307f063324d83423d4e46..6184bd1fba3a05c92fcefb45782d07ffbabac8ff 100644 (file)
@@ -943,7 +943,6 @@ static void nfc_llcp_recv_connect(struct nfc_llcp_local *local,
        new_sock->local = nfc_llcp_local_get(local);
        new_sock->rw = sock->rw;
        new_sock->miux = sock->miux;
-       new_sock->remote_miu = local->remote_miu;
        new_sock->nfc_protocol = sock->nfc_protocol;
        new_sock->dsap = ssap;
        new_sock->target_idx = local->target_idx;
index 69fbc8dadba745c5bf077d0b79be853cc2fde545..4a53bb58a46356606d1276d6e62c19e851feff3b 100644 (file)
@@ -700,7 +700,6 @@ static int llcp_sock_connect(struct socket *sock, struct sockaddr *_addr,
 
        llcp_sock->dev = dev;
        llcp_sock->local = nfc_llcp_local_get(local);
-       llcp_sock->remote_miu = llcp_sock->local->remote_miu;
        llcp_sock->ssap = nfc_llcp_get_local_ssap(local);
        if (llcp_sock->ssap == LLCP_SAP_MAX) {
                ret = -ENOMEM;