We are pleased to release the 1.0.3 version of pwru.
The major changes include:
- Added support for L2 filters. For example, to filter ARP replies you can run
pwru 'arp and arp[6:2] == 2'
(#255). - Added
--filter-ifname
which allows users to select which device packets should be filtered. The option can be used with--filter-netns
which was changed to accept either inode number (inode:
) or a file path to a network namespace. For example, to filter onlyeth0
packets in the42
pid's network namespace you can runpwru --filter-iface eth0 --filter-netns /proc/42/ns/net
(#257). - The
--output-meta
was extended to print a network interface name. For example,iface=3(wlan0)
(#259).
Functional changes:
- 93ca1a5 - Output iface name when --output-meta is set (@brb)
- e98de68 - Vendor jsimonetti/rtnetlink (@brb)
- 0ea4a67 - Add CI test for --filter-ifname (@jschwinger233)
- 77ad6fc - Update README (@jschwinger233)
- 0e514b0 - Vendor vishvananda/netns (@jschwinger233)
- 0deaf79 - Add --filter-ifname (@jschwinger233)
- 207ae70 - Add CI test for arp filter (@jschwinger233)
- 088110f - Reject L3 skb more efficiently (@jschwinger233)
- 8a14820 - Allow to inject L2 filters (@jschwinger233)
- 8f4317a - Compile and inject ebpf for both L3 and L2 skb (@jschwinger233)
- 02f0619 - Distinguish L3 skb and L2 skb in bpf (@jschwinger233)
- 5d66305 - Correctly calculate data_end (@jschwinger233)
- b8dbecf - Add CI testcases (@jschwinger233)
- f26ea48 - Add action pwru-test (@jschwinger233)
- f87a0c4 - Define StackOffset constant vars to avoid hardcode (@jschwinger233)
- 97ab6e2 - Use bpf2bpf to simplify libpcap ebpf injection (@jschwinger233)
- 03e1711 - Allow example to run as script (@azzid)
Dependency changes: