STRUCT L3MDEV_OPS(9)
π struct l3mdev_ops(9) β from the Kernel API Manual, bestie
okay so picture this: you're deep in the kernel, poking at L3 master devices, and you need to know what knobs a driver can hook into. that's literally this whole page. it's the ops struct for l3mdev β the l3mdev operations, periodt. π
β¨ NAME β¨
struct l3mdev_ops β l3mdev operations. that's it, that's the vibe. π¦
πΈ SYNOPSIS πΈ
here's the whole shape of it, copy it exactly, no cap:
struct l3mdev_ops {
u32 (*l3mdev_fib_table)(const struct net_device *dev);
struct sk_buff * (*l3mdev_l3_rcv)(struct net_device *dev, struct
sk_buff *skb, u16 proto);
struct sk_buff * (*l3mdev_l3_out)(struct net_device *dev, struct
sock *sk, struct sk_buff *skb, u16 proto);
struct dst_entry * (*l3mdev_link_scope_lookup)(const struct
net_device *dev, struct flowi6 *fl6);
};
likeβ¦ four function pointers, all gorgeous, all doing their own little job. main character energy from every single one. π
π Members π
l3mdev_fib_tableβ hands you the FIB table id to use for lookups. it's giving "which table are we even using" energy. π₯l3mdev_l3_rcvβ the hook that plugs into the L3 receive path. incoming packets, we see you. πl3mdev_l3_outβ the hook that plugs into the L3 output path. bye bestie, off you go. β¨l3mdev_link_scope_lookupβ the IPv6 lookup for linklocal and mcast destinations. lowkey the most niche one and honestly? iconic. π
π¦ SEE ALSO π¦
- Kernel file
./include/net/l3mdev.hβ go read the source, iykyk. π
and that's the page, bestie! π«Ά this little masterpiece is from ./include/net, dated October 2026, and it's filed under struct l3mdev_ops(9) β go forth and hook those ops, you're gonna slay. πβπ
π¦ 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