diff options
author | Sean Hefty <sean.hefty@intel.com> | 2012-06-14 20:31:39 +0000 |
---|---|---|
committer | Roland Dreier <roland@purestorage.com> | 2012-07-08 18:02:24 -0700 |
commit | 68602120e496a31d8e3b36d0bfc7d9d2456fb05c (patch) | |
tree | 04eea1c0673ff60d1e9881b1d73785c0ed6f8271 /include/rdma | |
parent | 406b6a25f85271397739a7e9f5af1df665b8a0d0 (diff) | |
download | linux-3.10-68602120e496a31d8e3b36d0bfc7d9d2456fb05c.tar.gz linux-3.10-68602120e496a31d8e3b36d0bfc7d9d2456fb05c.tar.bz2 linux-3.10-68602120e496a31d8e3b36d0bfc7d9d2456fb05c.zip |
RDMA/cma: Allow user to restrict listens to bound address family
Provide an option for the user to specify that listens should only
accept connections where the incoming address family matches that of
the locally bound address. This is used to support the equivalent of
IPV6_V6ONLY socket option, which allows an app to only accept
connection requests directed to IPv6 addresses.
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'include/rdma')
-rw-r--r-- | include/rdma/rdma_cm.h | 10 | ||||
-rw-r--r-- | include/rdma/rdma_user_cm.h | 1 |
2 files changed, 11 insertions, 0 deletions
diff --git a/include/rdma/rdma_cm.h b/include/rdma/rdma_cm.h index 51988f80818..ad3a3142383 100644 --- a/include/rdma/rdma_cm.h +++ b/include/rdma/rdma_cm.h @@ -357,4 +357,14 @@ void rdma_set_service_type(struct rdma_cm_id *id, int tos); */ int rdma_set_reuseaddr(struct rdma_cm_id *id, int reuse); +/** + * rdma_set_afonly - Specify that listens are restricted to the + * bound address family only. + * @id: Communication identifer to configure. + * @afonly: Value indicating if listens are restricted. + * + * Must be set before identifier is in the listening state. + */ +int rdma_set_afonly(struct rdma_cm_id *id, int afonly); + #endif /* RDMA_CM_H */ diff --git a/include/rdma/rdma_user_cm.h b/include/rdma/rdma_user_cm.h index 5348a000c8f..1ee9239ff8c 100644 --- a/include/rdma/rdma_user_cm.h +++ b/include/rdma/rdma_user_cm.h @@ -224,6 +224,7 @@ enum { enum { RDMA_OPTION_ID_TOS = 0, RDMA_OPTION_ID_REUSEADDR = 1, + RDMA_OPTION_ID_AFONLY = 2, RDMA_OPTION_IB_PATH = 1 }; |