batadv_mcast_forw_scrape(9)
π
batadv_mcast_forw_scrape (9) β Kernel API Manual, bestie edition π
okay so picture this: you're deep in the kernel, the manual page is literally called batadv_mcast_forw_scrape(9), and it does exactly one (1) iconic thing. it's giving "small but mighty." let's get into it β¨
πΈ NAME πΈ
batadv_mcast_forw_scrape β remove bytes within skb data π«Ά
π¦ SYNOPSIS π¦
void batadv_mcast_forw_scrape (struct sk_buff *skb , unsigned short
offset , unsigned short len );
no cap, that's the whole signature. she's void, she takes three args, she does not return a thing. lowkey elegant π
π ARGUMENTS π
skbβ the skb you're removing bytes from. yes, that skb. she's the main character here πoffsetβ the offset from the skb data where the scraping starts. like, where in the buffer you begin, bestie πlenβ how many bytes you're scraping, counting fromoffset. this is the amount, not the end point, don't get it twisted π
π DESCRIPTION π
so like, what does it do? it scrapes/removes len bytes from the given skb, at the given offset from the skb data. that's it. that's the vibe. it's a little byte-removal moment and honestly it ate π₯
but β and this is the part where you listen to me π β the caller needs to ensure that the region from the skb data's start up to/including the to-be-removed bytes are linearized. that's on you, not on her. she is not doing that for you. periodt.
β οΈ that linearization requirement is a real one, bestie. no cap, don't skip it. the region from the start of the skb data through the bytes you're removing has to be linearized before you call this. fr fr.
β SEE ALSO β
the whole friend group π«Άβ¨
- Kernel file
./net/batman-adv/multicast_forw.cβ that's where she lives, iykyk batadv_mcast_forw_skb_push(9)batadv_mcast_forw_push_padding(9)batadv_mcast_forw_push_est_padding(9)batadv_mcast_forw_orig_entry(9)batadv_mcast_forw_push_dest(9)batadv_mcast_forw_push_dests_list(9)batadv_mcast_forw_push_tt(9)batadv_mcast_forw_push_want_all(9)batadv_mcast_forw_push_want_rtr(9)batadv_mcast_forw_push_scrape_padding(9)batadv_mcast_forw_push_insert_padding(9)batadv_mcast_forw_push_adjust_padding(9)batadv_mcast_forw_push_dests(9)batadv_mcast_forw_push_tracker(9)batadv_mcast_forw_push_tvlvs(9)batadv_mcast_forw_push_hdr(9)batadv_mcast_forw_scrub_dests(9)batadv_mcast_forw_shrink_fill(9)batadv_mcast_forw_shrink_pack_dests(9)batadv_mcast_forw_shrink_align_offset(9)batadv_mcast_forw_shrink_update_headers(9)batadv_mcast_forw_shrink_move_headers(9)batadv_mcast_forw_shrink_tracker(9)batadv_mcast_forw_packet(9)batadv_mcast_forw_tracker_tvlv_handler(9)batadv_mcast_forw_packet_hdrlen(9)batadv_mcast_forw_expand_head(9)batadv_mcast_forw_push(9)batadv_mcast_forw_mcsend(9)
okay that's the whole page, you're officially educated π this cutie lives in ./net/batman-adv, dated October 2026, and the page itself is batadv_mcast_forw_scrape(9). mwah, go scrape responsibly πβ¨
π¦ 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