cipso_v4_map_cat_rng_valid(9)
πΈ cipso_v4_map_cat_rng_valid(9) πΈ
okay so this one's from the Kernel API Manual, section 9, and it's basically the vibe check for CIPSO categories π like before you let a category list through the door, this function peeks at it and goes "mmm, valid or not?" β no cap.
β¨ NAME β¨
cipso_v4_map_cat_rng_valid β checks to see if the categories are valid π
π¦ SYNOPSIS π¦
int cipso_v4_map_cat_rng_valid (const struct cipso_v4_doi *doi_def ,
const unsigned char *rngcat , u32 rngcat_len );
π ARGUMENTS π
doi_defβ the DOI definition π like the rulebook you're checking againstrngcatβ category list, the actual list of categories under review πrngcat_lenβ length of the category list in bytes, so we know how far to read π’
π DESCRIPTION π
Checks the given categories against the given DOI definition, bestie. That's the whole gig.
And the return value is giving main character energy:
- returns a negative value if any of the categories do not have a valid mapping π
- returns a zero value if all of the categories are valid β slay
fr fr, that's the entire contract β negative means "nope, at least one category is unmapped", zero means "all good, we're so back".
π₯ SEE ALSO π₯
Kernel file ./net/ipv4/cipso_ipv4.c β and honestly the whole CIPSO friend group is here, so let me introduce you π
cipso_v4_cache_entry_free(9)cipso_v4_map_cache_hash(9)cipso_v4_cache_init(9)cipso_v4_cache_invalidate(9)cipso_v4_cache_check(9)cipso_v4_cache_add(9)cipso_v4_doi_search(9)cipso_v4_doi_add(9)cipso_v4_doi_free(9)cipso_v4_doi_free_rcu(9)cipso_v4_doi_remove(9)cipso_v4_doi_getdef(9)cipso_v4_doi_putdef(9)cipso_v4_doi_walk(9)cipso_v4_map_lvl_valid(9)cipso_v4_map_lvl_hton(9)cipso_v4_map_lvl_ntoh(9)cipso_v4_map_cat_rbm_valid(9)cipso_v4_map_cat_rbm_hton(9)cipso_v4_map_cat_rbm_ntoh(9)cipso_v4_map_cat_enum_valid(9)cipso_v4_map_cat_enum_hton(9)cipso_v4_map_cat_enum_ntoh(9)cipso_v4_map_cat_rng_hton(9)cipso_v4_map_cat_rng_ntoh(9)cipso_v4_gentag_hdr(9)cipso_v4_gentag_rbm(9)cipso_v4_parsetag_rbm(9)cipso_v4_gentag_enum(9)cipso_v4_parsetag_enum(9)cipso_v4_gentag_rng(9)cipso_v4_parsetag_rng(9)cipso_v4_gentag_loc(9)cipso_v4_parsetag_loc(9)cipso_v4_optptr(9)cipso_v4_validate(9)cipso_v4_error(9)cipso_v4_genopt(9)cipso_v4_sock_setattr(9)cipso_v4_req_setattr(9)cipso_v4_delopt(9)cipso_v4_sock_delattr(9)cipso_v4_req_delattr(9)cipso_v4_getattr(9)cipso_v4_sock_getattr(9)cipso_v4_skbuff_setattr(9)cipso_v4_skbuff_delattr(9)cipso_v4_init(9)
iykyk π«Ά go read them, they're iconic.
okay that's the whole page, mwah π this came out of ./net/ipv4 and it's dated October 2026 β periodt, that's the sign-off, bestie, go validate some categories β¨
π¦ 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