diff options
| author | Linux Build Service Account <lnxbuild@localhost> | 2016-09-29 11:20:14 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-09-29 11:20:14 -0700 |
| commit | dee200e24632bfc12821c7cc1fe154f287febae3 (patch) | |
| tree | 4b27fda5c0cf682a3efd327e432cb150f0ab7c20 /net | |
| parent | 2ef6e7b16511939076a5198776fbee093a6557d5 (diff) | |
| parent | e7430944b90367f6d2a878228182782aa89db1f5 (diff) | |
Merge "net: ipc_router: fix NULL pointer de-reference issue"
Diffstat (limited to 'net')
| -rw-r--r-- | net/ipc_router/ipc_router_socket.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/net/ipc_router/ipc_router_socket.c b/net/ipc_router/ipc_router_socket.c index b05ab20a6f13..b15356ae26fc 100644 --- a/net/ipc_router/ipc_router_socket.c +++ b/net/ipc_router/ipc_router_socket.c @@ -541,10 +541,18 @@ static unsigned int msm_ipc_router_poll(struct file *file, static int msm_ipc_router_close(struct socket *sock) { struct sock *sk = sock->sk; - struct msm_ipc_port *port_ptr = msm_ipc_sk_port(sk); + struct msm_ipc_port *port_ptr; int ret; + if (!sk) + return -EINVAL; + lock_sock(sk); + port_ptr = msm_ipc_sk_port(sk); + if (!port_ptr) { + release_sock(sk); + return -EINVAL; + } ret = msm_ipc_router_close_port(port_ptr); msm_ipc_unload_default_node(msm_ipc_sk(sk)->default_node_vote_info); release_sock(sk); |
