]> git.openfabrics.org - ~shefty/librdmacm.git/commitdiff
librdmacm/cma: provide wrapper functions to extract src/dst addresses
authorSean Hefty <sean.hefty@intel.com>
Thu, 18 Oct 2007 17:18:47 +0000 (10:18 -0700)
committerSean Hefty <sean.hefty@intel.com>
Thu, 18 Oct 2007 17:18:47 +0000 (10:18 -0700)
Provide wrapper functions to retrieve the source and destination
addresses.  This is based on feedback from Doug Ledford.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Makefile.am
include/rdma/rdma_cma.h
man/rdma_bind_addr.3
man/rdma_cm.7
man/rdma_get_dst_port.3
man/rdma_get_local_addr.3 [new file with mode: 0644]
man/rdma_get_peer_addr.3 [new file with mode: 0644]
man/rdma_get_src_port.3
man/rdma_resolve_addr.3
src/librdmacm.map

index 1195bd97c59e4513a0c655a2e60517fedcbe89e7..77782dabfdf65a1ce57971e26592fc59de3c271e 100644 (file)
@@ -49,6 +49,8 @@ man_MANS = \
        man/rdma_get_devices.3 \
        man/rdma_get_src_port.3 \
        man/rdma_get_dst_port.3 \
+       man/rdma_get_local_addr.3 \
+       man/rdma_get_peer_addr.3 \
        man/rdma_join_multicast.3 \
        man/rdma_leave_multicast.3 \
        man/rdma_listen.3 \
index b0848d52045f7ecf7bc5921788f55d3bf617b80d..64b3008f530bfb529da06980c7062249b53ebfa7 100644 (file)
@@ -494,6 +494,16 @@ static inline uint16_t rdma_get_dst_port(struct rdma_cm_id *id)
                ((struct sockaddr_in *) &id->route.addr.dst_addr)->sin_port;
 }
 
+static inline struct sockaddr *rdma_get_local_addr(struct rdma_cm_id *id)
+{
+       return &id->route.addr.src_addr;
+}
+
+static inline struct sockaddr *rdma_get_peer_addr(struct rdma_cm_id *id)
+{
+       return &id->route.addr.dst_addr;
+}
+
 /**
  * rdma_get_devices - Get list of RDMA devices currently available.
  * @num_devices: If non-NULL, set to the number of devices returned.
index bed7f0b29910461e6c5c74492a0d3d5a2c484296..46c48a39a8a3bbe8e2c3fd7c727435de9c5c7b94 100644 (file)
@@ -25,4 +25,5 @@ address.
 If used to bind to port 0, the rdma_cm will select an available port
 and return it to the user.
 .SH "SEE ALSO"
-rdma_create_id(3), rdma_listen(3), rdma_resolve_addr(3), rdma_create_qp(3)
+rdma_create_id(3), rdma_listen(3), rdma_resolve_addr(3), rdma_create_qp(3),
+rdma_get_local_addr(3), rdma_get_src_port(3)
index bfb3493f6c8c97581ec669796ae9fe10e1e135e9..f2e1319ed338f9eedf519d708d9a6f3a306600f6 100644 (file)
@@ -110,5 +110,6 @@ rdma_resolve_route(3), rdma_connect(3), rdma_listen(3), rdma_accept(3),
 rdma_reject(3), rdma_join_multicast(3), rdma_leave_multicast(3), rdma_notify(3),
 rdma_ack_cm_event(3), rdma_disconnect(3), rdma_destroy_qp(3), rdma_destroy_id(3),
 rdma_destroy_event_channel(3), rdma_get_devices(3), rdma_free_devices(3),
+rdma_get_peer_addr(3), rdma_get_local_addr(3),
 rdma_get_dst_port(3), rdma_get_src_port(3), rdma_set_option(3)
 ucmatose(1), udaddy(1), mckey(1), rping(1)
index 88e6ec2e0058cc9fffd3136980034eb353c69ab4..92932e95ebd4c3f9e00fdce72242bd6391af97c5 100644 (file)
@@ -13,4 +13,5 @@ RDMA identifier.
 Returns the remote port number for an rdma_cm_id that has been bound to
 a remote address.
 .SH "SEE ALSO"
-rdma_connect(3), rdma_accept(3), rdma_get_cm_event(3), rdma_get_src_port(3)
+rdma_connect(3), rdma_accept(3), rdma_get_cm_event(3), rdma_get_src_port(3),
+rdma_get_local_addr(3), rdma_get_peer_addr(3)
diff --git a/man/rdma_get_local_addr.3 b/man/rdma_get_local_addr.3
new file mode 100644 (file)
index 0000000..8085627
--- /dev/null
@@ -0,0 +1,17 @@
+.TH "RDMA_GET_LOCAL_ADDR" 3 "2007-05-15" "librdmacm" "Librdmacm Programmer's Manual" librdmacm
+.SH NAME
+rdma_get_local_addr \- Returns the local IP address of a bound rdma_cm_id.
+.SH SYNOPSIS
+.B "#include <rdma/rdma_cma.h>"
+.P
+.B "struct sockaddr *" rdma_get_local_addr
+.BI "(struct rdma_cm_id *" id ");"
+.SH ARGUMENTS
+.IP "id" 12
+RDMA identifier.
+.SH "DESCRIPTION"
+Returns the local IP address for an rdma_cm_id that has been bound to
+a local device.
+.SH "SEE ALSO"
+rdma_bind_addr(3), rdma_resolve_addr(3), rdma_get_src_port(3),
+rdma_get_dst_port(3), rdma_get_peer_addr(3)
diff --git a/man/rdma_get_peer_addr.3 b/man/rdma_get_peer_addr.3
new file mode 100644 (file)
index 0000000..880e9c5
--- /dev/null
@@ -0,0 +1,16 @@
+.TH "RDMA_GET_PEER_ADDR" 3 "2007-05-15" "librdmacm" "Librdmacm Programmer's Manual" librdmacm
+.SH NAME
+rdma_get_peer_addr \- Returns the remote IP address of a bound rdma_cm_id.
+.SH SYNOPSIS
+.B "#include <rdma/rdma_cma.h>"
+.P
+.B "struct sockaddr *" rdma_get_peer_addr
+.BI "(struct rdma_cm_id *" id ");"
+.SH ARGUMENTS
+.IP "id" 12
+RDMA identifier.
+.SH "DESCRIPTION"
+Returns the remote IP address associated with an rdma_cm_id.
+.SH "SEE ALSO"
+rdma_resolve_addr(3), rdma_get_src_port(3), rdma_get_dst_port(3),
+rdma_get_local_addr(3)
index 63ee56461c8910d655780befa54a81d77b95de31..0a2f44585fa60dc2242f745d3a603bcf6562f95d 100644 (file)
@@ -13,4 +13,5 @@ RDMA identifier.
 Returns the local port number for an rdma_cm_id that has been bound to
 a local address.
 .SH "SEE ALSO"
-rdma_bind_addr(3), rdma_resolve_addr(3), rdma_get_dst_port(3)
+rdma_bind_addr(3), rdma_resolve_addr(3), rdma_get_dst_port(3),
+rdma_get_local_addr(3), rdma_get_peer_addr(3)
index 32cd5cf0a078730fea6b79e6ecdf53ec2d83ecba..11d737de4b24ed784d5a54ebe4c343b43663589e 100644 (file)
@@ -33,4 +33,5 @@ an RDMA device.  This call is typically made from the active side of a
 connection before calling rdma_resolve_route and rdma_connect.
 .SH "SEE ALSO"
 rdma_create_id(3), rdma_resolve_route(3), rdma_connect(3), rdma_create_qp(3),
-rdma_get_cm_event(3), rdma_bind_addr(3)
+rdma_get_cm_event(3), rdma_bind_addr(3), rdma_get_src_port(3),
+rdma_get_dst_port(3), rdma_get_local_addr(3), rdma_get_peer_addr(3)
index 0f042fa12def0cba6d4e579ffbbf67dff93842a9..84cec7fc5e85f300345c69e6fba0ad0951f970d7 100644 (file)
@@ -25,5 +25,7 @@ RDMACM_1.0 {
                rdma_free_devices;
                rdma_event_str;
                rdma_set_option;
+               rdma_get_local_addr;
+               rdma_get_peer_addr;
        local: *;
 };