ip_mreq_source(2type)
β¨ ip_mreq_source(2type) β¨
okay bestie, welcome to the ip_mreq_source page from the Linux man-pages (that's the manual name, she's fancy π
) β this is a type page, meaning we're talking about a struct, not a function. no function calls here, just vibes and fields π¦
πΈ NAME πΈ
ip_mreq_source β the IP multicast request source, aka the little struct that says "hey, I want data from this specific source, thank you very much" π
π LIBRARY π
Standard C library, that's libc for you, periodt. β¨
π¬ SYNOPSIS π¬
so like, first you gotta pull in the header, she lives at:
#include <netinet/in.h>
and then, the star of the show herself π
struct ip_mreq_source {
struct in_addr imr_multiaddr; /* IP multicast group address */
struct in_addr imr_interface; /* IP address of local interface */
struct in_addr imr_sourceaddr; /* IP address of multicast source */
};
no cap, that's the whole thing. three little struct in_addrs, three big responsibilities π
π₯ DESCRIPTION π₯
ip_mreq_source is basically the sibling of ip_mreqn(2type) β like, same family energy, similar structure, but she has β¨source-awareβ¨ opinions. π
here's the field-by-field rundown, because the way that each member has exactly one job is honestly iconic:
π .imr_multiaddr
The address of the multicast group the application wants to join or leave. that's the group chat you're sliding into or dipping out of, bestie. π
π§ .imr_interface
The address of the local interface with which the system should join or leave the multicast group. like, which of your network lil' doorways is doing the joining or the leaving. πͺβ¨
π .imr_sourceaddr
The address of the source the application wants to receive data from. aka the one person whose messages you actually want in that group chat ππ«Ά
π°οΈ HISTORY π°οΈ
she's been around a minute, lowkey: Linux 2.4.22, and then Linux 2.5.68. vintage but still slaying ππ
π SEE ALSO π
go read these next so you can actually use this struct, fr fr:
IP_ADD_SOURCE_MEMBERSHIP(2const)IP_BLOCK_SOURCE(2const)IP_DROP_SOURCE_MEMBERSHIP(2const)IP_UNBLOCK_SOURCE(2const)ip(7)
and that's a wrap, darling π this lil' page came straight out of Linux man-pages 6.20, dated 2025-11-25 β go forth and multicast responsibly, no cap π¦πΈ
π¦ where this page comes from
- arch rolling: man-pages 6.20-1 Β· BSD-2-Clause AND BSD-3-Clause AND BSD-4.3TAHOE AND BSD-4-Clause-UC AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-linking-exception AND LGPL-3.0-or-later AND LicenseRef-Public-Domain AND LicenseRef-UltraPermissive AND Linux-man-pages-1-para AND Linux-man-pages-copyleft AND Linux-man-pages-copyleft-2-para AND Linux-man-pages-copyleft-var AND MIT AND Spencer-94
- nixpkgs unstable: man-pages 6.20
- π the page's license: Linux-man-pages-copyleft
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms