ip_mc_check_igmp(9)
π ip_mc_check_igmp(9)
okay so bestie, welcome to the Kernel API Manual β¨ β this is ip_mc_check_igmp(9), and yes the (9) is giving "this is a kernel function, not a command you type in your terminal" energy, ikyk. Part of the ./net/ipv4 family. Let's get into it π«Ά
πΈ NAME
ip_mc_check_igmp β literally just vibes-checking whether this is a sane IGMP packet πβ¨
π¦ SYNOPSIS
int ip_mc_check_igmp (struct sk_buff *skb );
π ARGUMENTS
skbβ theskbyou want validated, bestie. That's it, that's the whole argument. Hand it over and let the function do its little vibe check π
β¨ DESCRIPTION
So here's the tea β β this function checks whether an IPv4 packet is a valid IGMP packet. If it is (slay), it sets the skb transport header accordingly and returns zero π
And if it's not? You get one of these bad boys back:
-EINVALβ a broken packet was detected π like, it literally violates some internet standard. Not cute. Not the moment.-ENOMSGβ the IP header validation succeeded (we love that for it) but nope, it is not an IGMP packet π-ENOMEMβ a memory allocation failure happened π the allocation did not eat, and that's on that.
β οΈ real talk though: the caller needs to set theskbnetwork header and free any returnedskbif it differs from the providedskb. Not optional. Do not skip this step, iykyk π«Ά
π₯ SEE ALSO
- Kernel file
./net/ipv4/igmp.cβ go read it, it's iconic π
that's the whole page, no cap π if you made it this far you're genuinely the main character of networking. this lil gem lives under ./net/ipv4 and this manual page is dated October 2026 β so yeah, future-proof and fabulous ππ§ periodt.
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms