]> git.openfabrics.org - ~shefty/librdmacm.git/commitdiff
r4128: Fix setting source/destination addresses.
authorSean Hefty <sean.hefty@intel.com>
Wed, 23 Nov 2005 23:16:26 +0000 (23:16 +0000)
committerSean Hefty <sean.hefty@intel.com>
Wed, 23 Nov 2005 23:16:26 +0000 (23:16 +0000)
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
include/rdma/rdma_cma_abi.h
src/cma.c

index 40290b27f333fc84dcf56375c1469ec498b3dc95..db96894d0c1391d13d6bdf24959ed8b862bab95d 100644 (file)
@@ -113,9 +113,10 @@ struct ucma_abi_query_route_resp {
        __u64 node_guid;
        struct ib_kern_path_rec ib_route[2];
        struct sockaddr_in6 src_addr;
+       struct sockaddr_in6 dst_addr;
        __u32 num_paths;
        __u8 port_num;
-       __u8 reserved[7];
+       __u8 reserved[3];
 };
 
 struct ucma_abi_conn_param {
index 5525a139f107c9b7d50a07f8302b3b59c1851441..7a3557aba12cb4e3806a50c22178adaa923949a9 100644 (file)
--- a/src/cma.c
+++ b/src/cma.c
@@ -369,6 +369,8 @@ static int ucma_query_route(struct rdma_cm_id *id)
        id->route.addr.addr.ibaddr.pkey = resp->ib_route[0].pkey;
        memcpy(&id->route.addr.src_addr, &resp->src_addr,
               sizeof id->route.addr.src_addr);
+       memcpy(&id->route.addr.dst_addr, &resp->dst_addr,
+              sizeof id->route.addr.dst_addr);
 
        if (!id_priv->cma_dev && resp->node_guid) {
                ret = ucma_get_device(id_priv, resp->node_guid);