calipso_opt_del(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… calipso_opt_del(9) β€” the Kernel API Manual page, bestie edition

okay so this is calipso_opt_del, straight out of the section 9 Kernel API Manual, and it's literally the glow-up artist for IPv6 option headers πŸ¦‹ she takes your header and ✨ removes the CALIPSO option ✨ no cap.


🌸 NAME 🌸

calipso_opt_del β€” removes the CALIPSO option from an option header. that's it, that's the whole job, and she does it flawlessly πŸ’–


✨ SYNOPSIS ✨

int calipso_opt_del (struct ipv6_opt_hdr *hop , struct ipv6_opt_hdr
**new );

like... yes, the **new is double-starred, that's not a typo, she's passing back a pointer to a pointer, main character energy fr fr πŸ‘‘


πŸŽ€ ARGUMENTS πŸŽ€

  • hop β€” the original header. the before pic πŸ“Έ
  • new β€” the new header. the after pic πŸ’…

πŸ’œ DESCRIPTION πŸ’œ

so the way that this works: she creates a new header based on hop without any CALIPSO option in it. iconic behaviour, honestly.

now for the vibe check on what she returns, because there are three whole moods:

  • if hop doesn't contain a CALIPSO option, she returns -ENOENT β€” like, girl, there's nothing to delete, nothing is giving CALIPSO 😭
  • if hop contains no other non-padding options, she returns zero with new set to NULL. so, zero return, null result, a whole clean slate 🫢
  • otherwise she returns zero, creates a new header without the CALIPSO option (and removing as much padding as possible β€” yes, she's tidying up too, so thoughtful 🌸) and you come back with new set to that header ✨
lowkey important: new can literally end up NULL on that middle case, so don't go dereferencing it without checking first πŸ™ˆ

🌈 SEE ALSO 🌈

Kernel file ./net/ipv6/calipso.c

like, that's the whole calipso friend group and they all ate πŸ’…πŸ”₯


and that's the page, bestie πŸŽ€ it lives in ./net/ipv6 and this version is dated October 2026 β€” go forth and delete those options, you've got this 🫢✨

πŸ“¦ where this page comes from