diff options
author | Samuel Ortiz <sameo@linux.intel.com> | 2012-10-15 15:09:52 +0200 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2012-10-26 18:26:50 +0200 |
commit | c8512be63bbf9216934ecd10e1f9e4f887076fc2 (patch) | |
tree | 6d5d9c31a733638641bd883480f80448636000d2 /net/nfc | |
parent | 54292d64e1b6cbe735852aaf59e56ef78dc15f82 (diff) | |
download | op-kernel-dev-c8512be63bbf9216934ecd10e1f9e4f887076fc2.zip op-kernel-dev-c8512be63bbf9216934ecd10e1f9e4f887076fc2.tar.gz |
NFC: Keep connection less bound sockets alive when DEP link goes down
When DEP goes down, bound cl sockets can be kept alive as there is no
reason to kill a connection less server socket because the LLCP link
went down.
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'net/nfc')
-rw-r--r-- | net/nfc/llcp/llcp.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/net/nfc/llcp/llcp.c b/net/nfc/llcp/llcp.c index ee01be1..7f92a85 100644 --- a/net/nfc/llcp/llcp.c +++ b/net/nfc/llcp/llcp.c @@ -85,6 +85,16 @@ static void nfc_llcp_socket_release(struct nfc_llcp_local *local, bool listen) } } + /* + * If we have a connection less socket bound, we keep it alive + * if the device is still present. + */ + if (sk->sk_state == LLCP_BOUND && sk->sk_type == SOCK_DGRAM && + listen == true) { + bh_unlock_sock(sk); + continue; + } + sk->sk_state = LLCP_CLOSED; bh_unlock_sock(sk); |