STRUCT TIPC_MEDIA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct tipc_media(9) β€” the media specific info exposed to generic bearer layer glow-up

Okay so bestie, welcome to struct tipc_media β€” it's a kernel API page from the Kernel API Manual, and it's literally the vibe board for how a TIPC media type tells the generic bearer layer what it's about. The whole point? Media specific info exposed to generic bearer layer. No cap. πŸŽ€


✨ NAME ✨

struct tipc_media β€” media specific info exposed to generic bearer layer. It's giving "backstage pass for your network media type." πŸ¦‹


🌸 SYNOPSIS 🌸

struct tipc_media {
    int (*send_msg)(struct net *net, struct sk_buff *buf, struct tipc_bearer *b, struct tipc_media_addr *dest);
    int (*enable_media)(struct net *net, struct tipc_bearer *b, struct nlattr *attr[]);
    void (*disable_media)(struct tipc_bearer *b);
    int (*addr2str)(struct tipc_media_addr *addr, char *strbuf, int bufsz);
    int (*addr2msg)(char *msg, struct tipc_media_addr *addr);
    int (*msg2addr)(struct tipc_bearer *b, struct tipc_media_addr *addr, char *msg);
    int (*raw2addr)(struct tipc_bearer *b, struct tipc_media_addr *addr, const char *raw);
    u32 priority;
    u32 tolerance;
    u32 min_win;
    u32 max_win;
    u32 mtu;
    u32 type_id;
    u32 hwaddr_len;
    char name[TIPC_MAX_MEDIA_NAME];
};

πŸ‘‘ Members πŸ‘‘

So there's like… function pointers up top (the do stuff girlies) and then a little squad of u32s plus a name (the settings girlies). Let's meet them πŸ’–

  • send_msg β€” routine which handles buffer transmission. She's the one actually yeeting the buf out the door, fr fr. ✨
  • enable_media β€” routine which enables a media. Wake her up, she's needed. πŸ”₯
  • disable_media β€” routine which disables a media. Nap time bestie, we're done here. πŸ’€
  • addr2str β€” convert media address format to string. Address in, cute little string out. πŸŽ€
  • addr2msg β€” convert from media addr format to discovery msg addr format. Discovery msg needs its own little addr fit, so we translate. πŸ¦‹
  • msg2addr β€” convert from discovery msg addr format to media addr format. The reverse trip, iykyk ✨
  • raw2addr β€” convert from raw addr format to media addr format. Raw and unfiltered β†’ actually usable. πŸ’…
  • priority β€” default link (and bearer) priority. Who gets picked first? Her. Obviously. πŸ‘‘
  • tolerance β€” default time (in ms) before declaring link failure. So like, your grace period in milliseconds before the link is officially over. 😭
  • min_win β€” minimum window (in packets) before declaring link congestion. Lowkey the floor of the window, measured in packets. πŸ“
  • max_win β€” maximum window (in packets) before declaring link congestion. The ceiling, also in packets. Cap it. 🧚
  • mtu β€” max packet size bearer can support for media type not dependent on underlying device MTU. Big energy, very specific use case β€” don't come for her. πŸ’œ
  • type_id β€” TIPC media identifier. Her little ID card. 🌈
  • hwaddr_len β€” TIPC media address len. How long the address is, that's it, that's the tweet. πŸ’–
  • name β€” media name. It's literally her name, in TIPC_MAX_MEDIA_NAME-sized letters. ⭐

πŸ” SEE ALSO πŸ”

Kernel file ./net/tipc/bearer.h, plus struct tipc_media_addr(9) and struct tipc_bearer(9). Go read those, bestie β€” they're the friend group. 🫢


πŸ’‘ Friendly reminder: everything above is literally straight from the page β€” I'm not out here inventing behaviour for you. If the source doesn't say it, I'm not saying it either. πŸ™ˆ

And that's the whole page, periodt. πŸ’… This cutie lives under ./net/tipc, dated October 2026, in the Kernel API Manual β€” mwah, sending you off with a kiss and a <rainbow>struct tipc_media(9)</rainbow> πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from