Message ID | 4329E49DC571489C9F9498770613E42D@amr.corp.intel.com (mailing list archive) |
---|---|
State | Superseded, archived |
Headers | show |
diff --git a/drivers/infiniband/core/addr.c b/drivers/infiniband/core/addr.c index ccc0f91..f5baf0b 100644 --- a/drivers/infiniband/core/addr.c +++ b/drivers/infiniband/core/addr.c @@ -461,8 +461,10 @@ int rdma_resolve_ip(struct rdma_addr_client *client, if (!req) return -ENOMEM; - if (src_addr) - memcpy(&req->src_addr, src_addr, ip_addr_size(src_addr)); + if (src_addr->sa_family != dst_addr->sa_family) + return -EINVAL; + + memcpy(&req->src_addr, src_addr, ip_addr_size(src_addr)); memcpy(&req->dst_addr, dst_addr, ip_addr_size(dst_addr)); req->addr = addr; req->callback = callback;