UMAD_SET_ADDR_NET(3)
β¨ UMAD_SET_ADDR_NET(3) β¨
okay so bestie, we're in the OpenIB Programmer's Manual, section 3 β the library functions section, iykyk π
this one's called umad_set_addr_net and it's lowkey the network-order sibling of umad_set_addr. let's get into it π«Ά
πΈ NAME πΈ
umad_set_addr_net β set MAD address fields within a umad buffer using network ordering π¦
β¨ SYNOPSIS β¨
#include <infiniband/umad.h>
int umad_set_addr_net(void *umad, __be16 dlid, __be32 dqp, int sl, __be32 qkey);
like, one function, five args, no drama π
π DESCRIPTION π
so umad_set_addr_net() goes into the umad buffer you hand it (that's the umad pointer, void *, very mysterious of it) and sets the MAD address fields, using the network ordered fields you pass in. no cap. π
here's the tea on the arguments, bestie, don't skip this part:
dlidβ the destination LID. it's a__be16, so network ordering, keep up β¨dqpβ the destination QP (queue pair).__be32, again network ordered πslβ the SL (service level). just a plainint, she's built different πqkeyβ the Q_Key (queue key).__be32π
and yeah the whole point is that the fields are given in network ordering already β the _net in the name is literally telling you that. it's giving "I did the byte-swapping homework for you" energy π
π«Ά RETURN VALUE π«Ά
umad_set_addr_net() returns 0 on success π and a negative value on errors.
heads up: right now there are literally no errors indicated. like, currently none. so if you get a negative backβ¦ that's a whole situation, but the docs say there's nothing there yet π
π SEE ALSO π
umad_set_addr(3)β the host-ordering version, go say hi π
π§ AUTHOR π§
Hal Rosenstock <halr@voltaire.com> β thank you for your service, legend π
okay that's the whole page, bestie, you ate that π
this was the OpenIB manual page for UMAD_SET_ADDR_NET(3), dated May 21, 2007, and we're officially done. mwah ππβ¨
π¦ 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: libibumad-dev 44.0-2 Β· BSD-MIT OR GPL-2.0-only
- debian trixie: libibumad-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
- 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: libibumad-dev 39.0-1 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: libibumad-dev 50.0-2build2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: libibumad-dev 50.0-2ubuntu0.2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu questing: libibumad-dev 56.1-1ubuntu1
- ubuntu resolute: libibumad-dev 61.0-2ubuntu3 Β· BSD-MIT OR GPL-2.0-only
- ubuntu stonking: libibumad-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