dpif-linux: Do not call nl_sock_pid() on NULL sock pointer.
authorAlex Wang <alexw@nicira.com>
Tue, 17 Dec 2013 22:37:10 +0000 (14:37 -0800)
committerBen Pfaff <blp@nicira.com>
Tue, 17 Dec 2013 23:12:50 +0000 (15:12 -0800)
This commit adds check of sock pointer in dpif_linux_port_get_pid().
If the pointer is NULL, do not call nl_sock_pid().

Signed-off-by: Alex Wang <alexw@nicira.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
lib/dpif-linux.c

index 52c3f65..ea2300a 100644 (file)
@@ -688,7 +688,8 @@ dpif_linux_port_get_pid(const struct dpif *dpif_, odp_port_t port_no)
         /* The ODPP_NONE "reserved" port number uses the "ovs-system"'s
          * channel, since it is not heavily loaded. */
         uint32_t idx = port_idx >= dpif->uc_array_size ? 0 : port_idx;
-        pid = nl_sock_pid(dpif->channels[idx].sock);
+        const struct nl_sock *sock = dpif->channels[idx].sock;
+        pid = sock ? nl_sock_pid(sock) : 0;
     }
     ovs_mutex_unlock(&dpif->upcall_lock);