tipc_crypto_rcv(9)
๐ tipc_crypto_rcv(9) ๐
okay bestie, welcome to the Kernel API Manual โ yes we're in the kernel now, put your hair up ๐ this one's called tipc_crypto_rcv(9) and it's literally the "open the envelope" girlie of TIPC.
โจ NAME โจ
tipc_crypto_rcv โ decrypt an encrypted TIPC message from peer ๐ฆ
๐ธ SYNOPSIS ๐ธ
int tipc_crypto_rcv (struct net *net , struct tipc_crypto *rx , struct
sk_buff **skb , struct tipc_bearer * b );
๐ ARGUMENTS ๐
netโ astruct net, the network namespace babe, that's it, that's the whole viberxโ the RX crypto handle โจ your receiving-side main characterskbโ input/output message skb pointer โ yeah it's a pointer to a pointer, she's double iconic ๐bโ the bearer where the message has been received ๐
๐ซถ DESCRIPTION ๐ซถ
so here's the tea, fr fr: if the decryption is successful, the decrypted skb is returned directly or as the callback โ and before it gets forwarded to tipc_rcv via the tipc_crypto_rcv_complete, the encryption header and auth tag will be trimmed out. clean. โ๏ธโจ
otherwise?? the skb will be freed! ๐ no cap. gone. not me crying over a freed skb ๐ญ
๐ง NOTE ๐ง
RX key(s) can be re-aligned, or in case of no key suitable, TX cluster key(s) can be taken for decryption (- recursive). lowkey recursive, highkey slay ๐ฅ
โญ RETURN โญ
0โ the decryption has successfully completed ๐ ate and left no crumbs-EINPROGRESS/-EBUSYโ the decryption is ongoing, a callback will be made โณ she's still cooking-ENOKEYโ the decryption has failed due to no key ๐๐-EBADMSGโ the decryption has failed due to bad message ๐ that message was NOT it-ENOMEMโ the decryption has failed due to no memory ๐ญ brain empty< 0โ the decryption has failed due to other reasons ๐ซ misc. chaos, we don't know her
๐ฎ SEE ALSO ๐ฎ
Kernel file ./net/tipc/crypto.c โ plus the whole friend group, iykyk:
struct tipc_tfm(9)struct tipc_aead(9)struct tipc_crypto_stats(9)struct tipc_crypto(9)tipc_aead_key_validate(9)tipc_aead_key_generate(9)tipc_aead_free(9)tipc_aead_tfm_next(9)tipc_aead_init(9)tipc_aead_clone(9)tipc_aead_mem_alloc(9)tipc_aead_encrypt(9)tipc_aead_decrypt(9)tipc_ehdr_validate(9)tipc_ehdr_build(9)tipc_crypto_key_init(9)tipc_crypto_key_attach(9)tipc_crypto_key_try_align(9)tipc_crypto_key_pick_tx(9)tipc_crypto_key_synch(9)tipc_crypto_xmit(9)tipc_crypto_msg_rcv(9)tipc_crypto_key_distr(9)tipc_crypto_key_xmit(9)tipc_crypto_key_rcv(9)tipc_crypto_work_rx(9)tipc_crypto_rekeying_sched(9)tipc_crypto_work_tx(9)
okay that's the whole page, mwah ๐ signing off from ./net/tipc โ dated October 2026, no cap, periodt. go decrypt something cute ๐ฆโจ
๐ฆ 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