UMAD_REGISTER_OUI(3)

πŸ“¦
version 65.0 Β· 2 versions
  • 65.0 Β· alpine 3.24, arch rolling, centos-stream 10, centos-stream 9, debian bookworm, debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 1.3.10.2 Β· nixos 26.05, nixpkgs unstable
, in alpine 3.24, arch rolling, centos-stream 10, centos-stream 9, debian bookworm, debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– umad_register_oui β€” bestie's guide to the OpenIB Programmer's Manual ✨

okay so like, welcome to umad_register_oui(3) from the OpenIB Programmer's Manual πŸŽ€ β€” this is the one where you slide into vendor range 2 and claim your class for a port. let's get into it fr fr πŸ’…


✨ NAME ✨

umad_register_oui β€” register the specified class in vendor range 2 for port πŸ¦‹


🌸 SYNOPSIS 🌸

#include <infiniband/umad.h>

int umad_register_oui(int portid, int mgmt_class, uint8_t rmpp_version, uint8_t oui[3], uint32_t method_mask[4]);

πŸ’œ DESCRIPTION πŸ’œ

okay bestie, here's the vibe: umad_register_oui() registers the specified class in vendor range 2, plus the specified oui, plus whether RMPP is being used β€” all for the port that the portid handle points at. it's giving "this port is MINE and here's my paperwork" πŸ“‹βœ¨

now here's the part you actually need to clock:

  • if the method_mask array is provided, the caller gets registered as a replier (aka a server πŸ‘‘) for the methods whose corresponding bit is turned on in the method_mask.
  • if method_mask is NULL, the caller gets registered as a MAD client instead β€” which lowkey means it can only receive replies on MADs that it sent itself, aka the solicited MADs πŸ™ˆ

so like, server mode or client mode, pick your fighter πŸ₯Š


⭐ RETURN VALUE ⭐

umad_register() returns a non-negative agent id number on success πŸŽ‰ and a negative value on error, like this:

  • -EINVAL β€” invalid port handle, or the class is not in the vendor class 2 range πŸ’€
  • -EPERM β€” registration failed 😭

πŸ¦‹ SEE ALSO πŸ¦‹


πŸ‘‘ AUTHOR πŸ‘‘

Hal Rosenstock <halr@voltaire.com>


and that's the whole page, bestie!! this lil icon was brought to you by the OpenIB crew, dated May 17, 2007 β€” so yes, it's an elder but it still ate πŸ’…βœ¨ go register something slay, and remember: method_mask on = server energy, method_mask NULL = client energy, no cap 🫢

πŸ“¦ where this page comes from