RDMA_BIND_ADDR(3)
π RDMA_BIND_ADDR π
okay bestie, welcome to the Librdmacm Programmer's Manual β¨ this is rdma_bind_addr, and yes she's a 3-section girlie (that means library function, iykyk). let's get into it π
β¨ NAME β¨
rdma_bind_addr β bind an RDMA identifier to a source address π¦
πΈ SYNOPSIS πΈ
#include <rdma/rdma_cma.h>
int rdma_bind_addr (struct rdma_cm_id *id, struct sockaddr *addr);
π ARGUMENTS π
idβ the RDMA identifier, your main character π«Άaddrβ local address info. wildcard values are permitted, she's flexible like that πβοΈ
π DESCRIPTION π
so basically this associates a source address with an rdma_cm_id. the address may be wildcarded β no cap. and if you're binding to a specific local address, the rdma_cm_id will also get bound to a local RDMA device. two things at once, she's multitasking, we love to see it β¨
π RETURN VALUE π
- returns
0on success π - returns
-1on error π - and if an error happens,
errnogets set to tell you the failure reason. she will always tell you what went wrong, communication queen π
π NOTES π
typically, you call this routine before calling rdma_listen to bind to a specific port number. but it may also be called on the active side of a connection before calling rdma_resolve_addr to bind to a specific address. so like, either vibe works depending on what you're doing π¦
if you use it to bind to port 0, the rdma_cm will select an available port for you β and you can retrieve it with rdma_get_src_port(3). free port, no effort, we love an assist π«Ά
π SEE ALSO π
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)
and that's the whole page, bestie β no crumbs left π this came to you from librdmacm, dated 2007-05-15, under the header RDMA_BIND_ADDR(3). she's been iconic since '07 and she's still serving β go bind something and slay ππ
π¦ where this page comes from
- alpine 3.24: rdma-core-doc 61.0-r0 Β· GPL-2.0-only OR BSD-2-Clause
- arch rolling: rdma-core 65.0-1 Β· GPL-2.0-or-later OR LicenseRef-OpenIB.org-BSD-MIT AND GPL-2.0-or-later OR LicenseRef-OpenIB.org-BSD-FreeBSD AND GPL-2.0-or-later OR LicenseRef-Intel-BSD-3-Clause AND GPL-2.0-or-later OR LicenseRef-PathScale-BSD-Patent-License AND CC0-1.0 AND MIT AND BSD-2-Clause AND CPL-1.0 OR BSD-2-Clause OR GPL-2.0-or-later
- centos-stream 10: rdma-core-devel 62.0-3.el10 Β· GPLv2 or BSD
- centos-stream 9: rdma-core-devel 61.0-3.el9 Β· GPLv2 or BSD
- centos-stream 9: rdma-core-devel 61.0-3.el9 Β· GPLv2 or BSD
- debian bookworm: librdmacm-dev 44.0-2 Β· BSD-MIT OR GPL-2.0-only
- debian trixie: librdmacm-dev 56.1-1 Β· BSD-MIT OR GPL-2.0-only
- fedora 43: rdma-core-devel 58.0-4.fc43 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 43: rdma-core-devel 58.0-4.fc43 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: rdma-core-devel 61.0-2.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: rdma-core-devel 61.0-2.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: rdma-core-devel 61.1^20260812git975bdaf-1.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: rdma-core-devel 61.1^20260812git975bdaf-1.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- freebsd 14.5: base 14.5
- freebsd 15.1: base 15.1
- nixos 26.05: rdma-core 62.0
- nixpkgs unstable: rdma-core 65.0
- opensuse-leap 16.0: rdma-core-devel 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: rdma-core-devel 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: rdma-core-devel 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: rdma-core-devel 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- ubuntu jammy: librdmacm-dev 39.0-1 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: librdmacm-dev 50.0-2build2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: librdmacm-dev 50.0-2ubuntu0.2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu questing: librdmacm-dev 56.1-1ubuntu1
- ubuntu resolute: librdmacm-dev 61.0-2ubuntu3 Β· BSD-MIT OR GPL-2.0-only
- ubuntu stonking: librdmacm-dev 64.0-1ubuntu1 Β· BSD-MIT OR GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms