├── .github ├── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── custom.md │ └── feature_request.md └── workflows │ ├── main.yml │ ├── test-eunomia.yaml │ ├── test-libbpf.yml │ └── trigger-sync.yml ├── .gitignore ├── .gitmodules ├── LICENSE ├── README.md ├── README.zh.md ├── book.toml ├── imgs ├── code-button.png ├── codespace.png ├── docker.png ├── ebpf-chatgpt-signal.png └── ebpf-chatgpt-signal2.png └── src ├── .mdbookignore ├── 0-introduce ├── README.md ├── README_en.md ├── kernel-arch.png └── new-os-model.png ├── 1-helloworld ├── .gitignore ├── README.md ├── README_en.md └── minimal.bpf.c ├── 10-hardirqs ├── .gitignore ├── README.md ├── README_en.md ├── bits.bpf.h ├── hardirqs.bpf.c ├── hardirqs.h ├── maps.bpf.h ├── softirqs.bpf.c └── softirqs.h ├── 11-bootstrap ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── bootstrap.bpf.c ├── bootstrap.c └── bootstrap.h ├── 12-profile ├── Makefile ├── README.md ├── README_en.md ├── profile.bpf.c ├── profile.c └── profile.h ├── 13-tcpconnlat ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── tcpconnlat.bpf.c ├── tcpconnlat.c ├── tcpconnlat.h └── tcpconnlat1.png ├── 14-tcpstates ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── bits.bpf.h ├── maps.bpf.h ├── tcprtt.bpf.c ├── tcprtt.h ├── tcpstates.bpf.c ├── tcpstates.c └── tcpstates.h ├── 15-javagc ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── javagc.bpf.c ├── javagc.c ├── javagc.h └── tests │ ├── HelloWorld.java │ └── Makefile ├── 16-memleak ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── core_fixes.bpf.h ├── maps.bpf.h ├── memleak.bpf.c ├── memleak.c ├── memleak.h ├── trace_helpers.c └── trace_helpers.h ├── 17-biopattern ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── biopattern.bpf.c ├── biopattern.c ├── biopattern.h ├── core_fixes.bpf.h ├── maps.bpf.h ├── trace_helpers.c └── trace_helpers.h ├── 18-further-reading ├── README.md ├── README_en.md ├── ebpf-security.md └── ebpf-security.zh.md ├── 19-lsm-connect ├── .gitignore ├── README.md ├── README_en.md └── lsm-connect.bpf.c ├── 2-kprobe-unlink ├── .gitignore ├── README.md ├── README_en.md └── kprobe-link.bpf.c ├── 20-tc ├── .gitignore ├── README.md ├── README_en.md └── tc.bpf.c ├── 21-xdp ├── .gitignore ├── README.md ├── README_en.md └── xdp.bpf.c ├── 22-android ├── README.md └── README_en.md ├── 23-http ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── accept.bpf.c ├── accept.h ├── sockfilter.bpf.c ├── sockfilter.c └── sockfilter.h ├── 24-hide ├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── README_en.md ├── pidhide.bpf.c ├── pidhide.c └── pidhide.h ├── 25-signal ├── .gitignore ├── LICENSE ├── README.md ├── README_en.md ├── common.h ├── signal.bpf.c └── signal.h ├── 26-sudo ├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── README_en.md ├── common.h ├── common_um.h ├── sudoadd.bpf.c └── sudoadd.c ├── 27-replace ├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── README_en.md ├── replace.bpf.c ├── replace.c └── replace.h ├── 28-detach ├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── README_en.md ├── textreplace2.bpf.c ├── textreplace2.c └── textreplace2.h ├── 29-sockops ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── bpf_contrack.bpf.c ├── bpf_redirect.bpf.c ├── bpf_sockmap.h ├── envoy │ ├── Dockerfile │ └── envoy.yaml ├── load.sh ├── merbridge.png ├── trace_bpf_output.sh ├── trace_lo_traffic.sh └── unload.sh ├── 3-fentry-unlink ├── .gitignore ├── README.md ├── README_en.md └── fentry-link.bpf.c ├── 30-sslsniff ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── sslsniff.bpf.c ├── sslsniff.c └── sslsniff.h ├── 31-goroutine ├── .gitignore ├── LICENSE ├── README.md ├── README_en.md ├── go-server-http │ ├── main │ └── main.go ├── goroutine.bpf.c └── goroutine.h ├── 32-http2 └── README.md ├── 33-funclatency ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── bits.bpf.h ├── funclatency.bpf.c ├── funclatency.c └── funclatency.h ├── 34-syscall ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── exechijack.bpf.c ├── exechijack.h ├── open_modify.bpf.c ├── open_modify.h └── victim.cpp ├── 35-user-ringbuf ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── user_ringbuf.bpf.c ├── user_ringbuf.c └── user_ringbuf.h ├── 36-userspace-ebpf ├── README.md └── README_en.md ├── 37-uprobe-rust ├── README.md ├── README_en.md ├── args │ ├── .gitignore │ ├── Cargo.toml │ └── src │ │ └── main.rs └── helloworld │ ├── .gitignore │ ├── Cargo.toml │ └── src │ └── main.rs ├── 38-btf-uprobe ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── examples │ ├── .gitignore │ ├── Makefile │ ├── btf-base-new.c │ ├── btf-base.c │ └── btf-relo.bpf.c ├── merge-btf.c ├── uprobe.bpf.c └── uprobe.c ├── 39-nginx ├── README.md ├── README_en.md └── trace.bt ├── 4-opensnoop ├── .gitignore ├── README.md ├── README_en.md └── opensnoop.bpf.c ├── 40-mysql ├── README.md ├── README_en.md └── dispatch_command.bt ├── 41-xdp-tcpdump ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── xdp-tcpdump.bpf.c └── xdp-tcpdump.c ├── 42-xdp-loadbalancer ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── connect.md ├── no-docker │ ├── xdp_pass.c │ └── xdp_pass.o ├── setup.sh ├── teardown.sh ├── xdp_lb.bpf.c ├── xdp_lb.c └── xx_hash.h ├── 43-kfuncs ├── .gitignore ├── Makefile ├── README.md ├── README_en.md ├── kfunc.bpf.c ├── kfunc.c └── module │ ├── .gitignore │ ├── Makefile │ ├── README.md │ ├── compact.h │ └── hello.c ├── 5-uprobe-bashreadline ├── .gitignore ├── README.md ├── README_en.md └── bashreadline.bpf.c ├── 6-sigsnoop ├── .gitignore ├── README.md ├── README_en.md └── sigsnoop.bpf.c ├── 7-execsnoop ├── .gitignore ├── README.md ├── README_en.md ├── execsnoop.bpf.c └── execsnoop.h ├── 8-exitsnoop ├── .gitignore ├── README.md ├── README_en.md ├── exitsnoop.bpf.c └── exitsnoop.h ├── 9-runqlat ├── .gitignore ├── README.md ├── README_en.md ├── bits.bpf.h ├── core_fixes.bpf.h ├── maps.bpf.h ├── runqlat.bpf.c └── runqlat.h ├── SUMMARY.md ├── SUMMARY_en.md ├── bcc-documents ├── kernel-versions.md ├── kernel-versions_en.md ├── kernel_config.md ├── kernel_config_en.md ├── reference_guide.md ├── reference_guide_en.md ├── special_filtering.md ├── special_filtering_en.md ├── tutorial.md ├── tutorial_bcc_python_developer.md ├── tutorial_bcc_python_developer_en.md └── tutorial_en.md ├── bpftrace-tutorial ├── README.md └── README_en.md ├── guideline.md └── third_party ├── libbpf └── vmlinux ├── arm ├── vmlinux.h └── vmlinux_62.h ├── arm64 ├── vmlinux.h ├── vmlinux_516.h └── vmlinux_601.h ├── loongarch ├── vmlinux.h └── vmlinux_602.h ├── powerpc ├── vmlinux.h └── vmlinux_600.h ├── riscv ├── vmlinux.h └── vmlinux_602.h ├── vmlinux.h └── x86 ├── vmlinux.h └── vmlinux_601.h /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.github/ISSUE_TEMPLATE/bug_report.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/custom.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.github/ISSUE_TEMPLATE/custom.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.github/ISSUE_TEMPLATE/feature_request.md -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.github/workflows/main.yml -------------------------------------------------------------------------------- /.github/workflows/test-eunomia.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.github/workflows/test-eunomia.yaml -------------------------------------------------------------------------------- /.github/workflows/test-libbpf.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.github/workflows/test-libbpf.yml -------------------------------------------------------------------------------- /.github/workflows/trigger-sync.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.github/workflows/trigger-sync.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/.gitmodules -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/README.md -------------------------------------------------------------------------------- /README.zh.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/README.zh.md -------------------------------------------------------------------------------- /book.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/book.toml -------------------------------------------------------------------------------- /imgs/code-button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/imgs/code-button.png -------------------------------------------------------------------------------- /imgs/codespace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/imgs/codespace.png -------------------------------------------------------------------------------- /imgs/docker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/imgs/docker.png -------------------------------------------------------------------------------- /imgs/ebpf-chatgpt-signal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/imgs/ebpf-chatgpt-signal.png -------------------------------------------------------------------------------- /imgs/ebpf-chatgpt-signal2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/imgs/ebpf-chatgpt-signal2.png -------------------------------------------------------------------------------- /src/.mdbookignore: -------------------------------------------------------------------------------- 1 | third_party 2 | -------------------------------------------------------------------------------- /src/0-introduce/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/0-introduce/README.md -------------------------------------------------------------------------------- /src/0-introduce/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/0-introduce/README_en.md -------------------------------------------------------------------------------- /src/0-introduce/kernel-arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/0-introduce/kernel-arch.png -------------------------------------------------------------------------------- /src/0-introduce/new-os-model.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/0-introduce/new-os-model.png -------------------------------------------------------------------------------- /src/1-helloworld/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/1-helloworld/.gitignore -------------------------------------------------------------------------------- /src/1-helloworld/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/1-helloworld/README.md -------------------------------------------------------------------------------- /src/1-helloworld/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/1-helloworld/README_en.md -------------------------------------------------------------------------------- /src/1-helloworld/minimal.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/1-helloworld/minimal.bpf.c -------------------------------------------------------------------------------- /src/10-hardirqs/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/.gitignore -------------------------------------------------------------------------------- /src/10-hardirqs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/README.md -------------------------------------------------------------------------------- /src/10-hardirqs/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/README_en.md -------------------------------------------------------------------------------- /src/10-hardirqs/bits.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/bits.bpf.h -------------------------------------------------------------------------------- /src/10-hardirqs/hardirqs.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/hardirqs.bpf.c -------------------------------------------------------------------------------- /src/10-hardirqs/hardirqs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/hardirqs.h -------------------------------------------------------------------------------- /src/10-hardirqs/maps.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/maps.bpf.h -------------------------------------------------------------------------------- /src/10-hardirqs/softirqs.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/softirqs.bpf.c -------------------------------------------------------------------------------- /src/10-hardirqs/softirqs.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/10-hardirqs/softirqs.h -------------------------------------------------------------------------------- /src/11-bootstrap/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/11-bootstrap/.gitignore -------------------------------------------------------------------------------- /src/11-bootstrap/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/11-bootstrap/Makefile -------------------------------------------------------------------------------- /src/11-bootstrap/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/11-bootstrap/README.md -------------------------------------------------------------------------------- /src/11-bootstrap/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/11-bootstrap/README_en.md -------------------------------------------------------------------------------- /src/11-bootstrap/bootstrap.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/11-bootstrap/bootstrap.bpf.c -------------------------------------------------------------------------------- /src/11-bootstrap/bootstrap.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/11-bootstrap/bootstrap.c -------------------------------------------------------------------------------- /src/11-bootstrap/bootstrap.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/11-bootstrap/bootstrap.h -------------------------------------------------------------------------------- /src/12-profile/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/12-profile/Makefile -------------------------------------------------------------------------------- /src/12-profile/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/12-profile/README.md -------------------------------------------------------------------------------- /src/12-profile/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/12-profile/README_en.md -------------------------------------------------------------------------------- /src/12-profile/profile.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/12-profile/profile.bpf.c -------------------------------------------------------------------------------- /src/12-profile/profile.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/12-profile/profile.c -------------------------------------------------------------------------------- /src/12-profile/profile.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/12-profile/profile.h -------------------------------------------------------------------------------- /src/13-tcpconnlat/.gitignore: -------------------------------------------------------------------------------- 1 | .vscode 2 | package.json 3 | tcpconnlat 4 | .output 5 | -------------------------------------------------------------------------------- /src/13-tcpconnlat/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/13-tcpconnlat/Makefile -------------------------------------------------------------------------------- /src/13-tcpconnlat/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/13-tcpconnlat/README.md -------------------------------------------------------------------------------- /src/13-tcpconnlat/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/13-tcpconnlat/README_en.md -------------------------------------------------------------------------------- /src/13-tcpconnlat/tcpconnlat.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/13-tcpconnlat/tcpconnlat.bpf.c -------------------------------------------------------------------------------- /src/13-tcpconnlat/tcpconnlat.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/13-tcpconnlat/tcpconnlat.c -------------------------------------------------------------------------------- /src/13-tcpconnlat/tcpconnlat.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/13-tcpconnlat/tcpconnlat.h -------------------------------------------------------------------------------- /src/13-tcpconnlat/tcpconnlat1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/13-tcpconnlat/tcpconnlat1.png -------------------------------------------------------------------------------- /src/14-tcpstates/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/.gitignore -------------------------------------------------------------------------------- /src/14-tcpstates/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/Makefile -------------------------------------------------------------------------------- /src/14-tcpstates/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/README.md -------------------------------------------------------------------------------- /src/14-tcpstates/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/README_en.md -------------------------------------------------------------------------------- /src/14-tcpstates/bits.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/bits.bpf.h -------------------------------------------------------------------------------- /src/14-tcpstates/maps.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/maps.bpf.h -------------------------------------------------------------------------------- /src/14-tcpstates/tcprtt.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/tcprtt.bpf.c -------------------------------------------------------------------------------- /src/14-tcpstates/tcprtt.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/tcprtt.h -------------------------------------------------------------------------------- /src/14-tcpstates/tcpstates.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/tcpstates.bpf.c -------------------------------------------------------------------------------- /src/14-tcpstates/tcpstates.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/tcpstates.c -------------------------------------------------------------------------------- /src/14-tcpstates/tcpstates.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/14-tcpstates/tcpstates.h -------------------------------------------------------------------------------- /src/15-javagc/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/.gitignore -------------------------------------------------------------------------------- /src/15-javagc/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/Makefile -------------------------------------------------------------------------------- /src/15-javagc/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/README.md -------------------------------------------------------------------------------- /src/15-javagc/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/README_en.md -------------------------------------------------------------------------------- /src/15-javagc/javagc.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/javagc.bpf.c -------------------------------------------------------------------------------- /src/15-javagc/javagc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/javagc.c -------------------------------------------------------------------------------- /src/15-javagc/javagc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/javagc.h -------------------------------------------------------------------------------- /src/15-javagc/tests/HelloWorld.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/tests/HelloWorld.java -------------------------------------------------------------------------------- /src/15-javagc/tests/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/15-javagc/tests/Makefile -------------------------------------------------------------------------------- /src/16-memleak/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/.gitignore -------------------------------------------------------------------------------- /src/16-memleak/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/Makefile -------------------------------------------------------------------------------- /src/16-memleak/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/README.md -------------------------------------------------------------------------------- /src/16-memleak/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/README_en.md -------------------------------------------------------------------------------- /src/16-memleak/core_fixes.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/core_fixes.bpf.h -------------------------------------------------------------------------------- /src/16-memleak/maps.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/maps.bpf.h -------------------------------------------------------------------------------- /src/16-memleak/memleak.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/memleak.bpf.c -------------------------------------------------------------------------------- /src/16-memleak/memleak.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/memleak.c -------------------------------------------------------------------------------- /src/16-memleak/memleak.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/memleak.h -------------------------------------------------------------------------------- /src/16-memleak/trace_helpers.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/trace_helpers.c -------------------------------------------------------------------------------- /src/16-memleak/trace_helpers.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/16-memleak/trace_helpers.h -------------------------------------------------------------------------------- /src/17-biopattern/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/.gitignore -------------------------------------------------------------------------------- /src/17-biopattern/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/Makefile -------------------------------------------------------------------------------- /src/17-biopattern/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/README.md -------------------------------------------------------------------------------- /src/17-biopattern/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/README_en.md -------------------------------------------------------------------------------- /src/17-biopattern/biopattern.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/biopattern.bpf.c -------------------------------------------------------------------------------- /src/17-biopattern/biopattern.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/biopattern.c -------------------------------------------------------------------------------- /src/17-biopattern/biopattern.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/biopattern.h -------------------------------------------------------------------------------- /src/17-biopattern/core_fixes.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/core_fixes.bpf.h -------------------------------------------------------------------------------- /src/17-biopattern/maps.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/maps.bpf.h -------------------------------------------------------------------------------- /src/17-biopattern/trace_helpers.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/trace_helpers.c -------------------------------------------------------------------------------- /src/17-biopattern/trace_helpers.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/17-biopattern/trace_helpers.h -------------------------------------------------------------------------------- /src/18-further-reading/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/18-further-reading/README.md -------------------------------------------------------------------------------- /src/18-further-reading/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/18-further-reading/README_en.md -------------------------------------------------------------------------------- /src/18-further-reading/ebpf-security.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/18-further-reading/ebpf-security.md -------------------------------------------------------------------------------- /src/18-further-reading/ebpf-security.zh.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/18-further-reading/ebpf-security.zh.md -------------------------------------------------------------------------------- /src/19-lsm-connect/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/19-lsm-connect/.gitignore -------------------------------------------------------------------------------- /src/19-lsm-connect/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/19-lsm-connect/README.md -------------------------------------------------------------------------------- /src/19-lsm-connect/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/19-lsm-connect/README_en.md -------------------------------------------------------------------------------- /src/19-lsm-connect/lsm-connect.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/19-lsm-connect/lsm-connect.bpf.c -------------------------------------------------------------------------------- /src/2-kprobe-unlink/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/2-kprobe-unlink/.gitignore -------------------------------------------------------------------------------- /src/2-kprobe-unlink/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/2-kprobe-unlink/README.md -------------------------------------------------------------------------------- /src/2-kprobe-unlink/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/2-kprobe-unlink/README_en.md -------------------------------------------------------------------------------- /src/2-kprobe-unlink/kprobe-link.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/2-kprobe-unlink/kprobe-link.bpf.c -------------------------------------------------------------------------------- /src/20-tc/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/20-tc/.gitignore -------------------------------------------------------------------------------- /src/20-tc/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/20-tc/README.md -------------------------------------------------------------------------------- /src/20-tc/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/20-tc/README_en.md -------------------------------------------------------------------------------- /src/20-tc/tc.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/20-tc/tc.bpf.c -------------------------------------------------------------------------------- /src/21-xdp/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/21-xdp/.gitignore -------------------------------------------------------------------------------- /src/21-xdp/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/21-xdp/README.md -------------------------------------------------------------------------------- /src/21-xdp/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/21-xdp/README_en.md -------------------------------------------------------------------------------- /src/21-xdp/xdp.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/21-xdp/xdp.bpf.c -------------------------------------------------------------------------------- /src/22-android/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/22-android/README.md -------------------------------------------------------------------------------- /src/22-android/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/22-android/README_en.md -------------------------------------------------------------------------------- /src/23-http/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/.gitignore -------------------------------------------------------------------------------- /src/23-http/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/Makefile -------------------------------------------------------------------------------- /src/23-http/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/README.md -------------------------------------------------------------------------------- /src/23-http/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/README_en.md -------------------------------------------------------------------------------- /src/23-http/accept.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/accept.bpf.c -------------------------------------------------------------------------------- /src/23-http/accept.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/accept.h -------------------------------------------------------------------------------- /src/23-http/sockfilter.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/sockfilter.bpf.c -------------------------------------------------------------------------------- /src/23-http/sockfilter.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/sockfilter.c -------------------------------------------------------------------------------- /src/23-http/sockfilter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/23-http/sockfilter.h -------------------------------------------------------------------------------- /src/24-hide/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/24-hide/.gitignore -------------------------------------------------------------------------------- /src/24-hide/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/24-hide/LICENSE -------------------------------------------------------------------------------- /src/24-hide/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/24-hide/Makefile -------------------------------------------------------------------------------- /src/24-hide/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/24-hide/README.md -------------------------------------------------------------------------------- /src/24-hide/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/24-hide/README_en.md -------------------------------------------------------------------------------- /src/24-hide/pidhide.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/24-hide/pidhide.bpf.c -------------------------------------------------------------------------------- /src/24-hide/pidhide.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/24-hide/pidhide.c -------------------------------------------------------------------------------- /src/24-hide/pidhide.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/24-hide/pidhide.h -------------------------------------------------------------------------------- /src/25-signal/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/25-signal/.gitignore -------------------------------------------------------------------------------- /src/25-signal/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/25-signal/LICENSE -------------------------------------------------------------------------------- /src/25-signal/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/25-signal/README.md -------------------------------------------------------------------------------- /src/25-signal/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/25-signal/README_en.md -------------------------------------------------------------------------------- /src/25-signal/common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/25-signal/common.h -------------------------------------------------------------------------------- /src/25-signal/signal.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/25-signal/signal.bpf.c -------------------------------------------------------------------------------- /src/25-signal/signal.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/25-signal/signal.h -------------------------------------------------------------------------------- /src/26-sudo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/.gitignore -------------------------------------------------------------------------------- /src/26-sudo/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/LICENSE -------------------------------------------------------------------------------- /src/26-sudo/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/Makefile -------------------------------------------------------------------------------- /src/26-sudo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/README.md -------------------------------------------------------------------------------- /src/26-sudo/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/README_en.md -------------------------------------------------------------------------------- /src/26-sudo/common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/common.h -------------------------------------------------------------------------------- /src/26-sudo/common_um.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/common_um.h -------------------------------------------------------------------------------- /src/26-sudo/sudoadd.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/sudoadd.bpf.c -------------------------------------------------------------------------------- /src/26-sudo/sudoadd.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/26-sudo/sudoadd.c -------------------------------------------------------------------------------- /src/27-replace/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/27-replace/.gitignore -------------------------------------------------------------------------------- /src/27-replace/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/27-replace/LICENSE -------------------------------------------------------------------------------- /src/27-replace/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/27-replace/Makefile -------------------------------------------------------------------------------- /src/27-replace/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/27-replace/README.md -------------------------------------------------------------------------------- /src/27-replace/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/27-replace/README_en.md -------------------------------------------------------------------------------- /src/27-replace/replace.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/27-replace/replace.bpf.c -------------------------------------------------------------------------------- /src/27-replace/replace.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/27-replace/replace.c -------------------------------------------------------------------------------- /src/27-replace/replace.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/27-replace/replace.h -------------------------------------------------------------------------------- /src/28-detach/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/28-detach/.gitignore -------------------------------------------------------------------------------- /src/28-detach/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/28-detach/LICENSE -------------------------------------------------------------------------------- /src/28-detach/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/28-detach/Makefile -------------------------------------------------------------------------------- /src/28-detach/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/28-detach/README.md -------------------------------------------------------------------------------- /src/28-detach/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/28-detach/README_en.md -------------------------------------------------------------------------------- /src/28-detach/textreplace2.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/28-detach/textreplace2.bpf.c -------------------------------------------------------------------------------- /src/28-detach/textreplace2.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/28-detach/textreplace2.c -------------------------------------------------------------------------------- /src/28-detach/textreplace2.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/28-detach/textreplace2.h -------------------------------------------------------------------------------- /src/29-sockops/.gitignore: -------------------------------------------------------------------------------- 1 | .output 2 | .vscode -------------------------------------------------------------------------------- /src/29-sockops/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/Makefile -------------------------------------------------------------------------------- /src/29-sockops/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/README.md -------------------------------------------------------------------------------- /src/29-sockops/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/README_en.md -------------------------------------------------------------------------------- /src/29-sockops/bpf_contrack.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/bpf_contrack.bpf.c -------------------------------------------------------------------------------- /src/29-sockops/bpf_redirect.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/bpf_redirect.bpf.c -------------------------------------------------------------------------------- /src/29-sockops/bpf_sockmap.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/bpf_sockmap.h -------------------------------------------------------------------------------- /src/29-sockops/envoy/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/envoy/Dockerfile -------------------------------------------------------------------------------- /src/29-sockops/envoy/envoy.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/envoy/envoy.yaml -------------------------------------------------------------------------------- /src/29-sockops/load.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/load.sh -------------------------------------------------------------------------------- /src/29-sockops/merbridge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/merbridge.png -------------------------------------------------------------------------------- /src/29-sockops/trace_bpf_output.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/trace_bpf_output.sh -------------------------------------------------------------------------------- /src/29-sockops/trace_lo_traffic.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/trace_lo_traffic.sh -------------------------------------------------------------------------------- /src/29-sockops/unload.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/29-sockops/unload.sh -------------------------------------------------------------------------------- /src/3-fentry-unlink/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/3-fentry-unlink/.gitignore -------------------------------------------------------------------------------- /src/3-fentry-unlink/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/3-fentry-unlink/README.md -------------------------------------------------------------------------------- /src/3-fentry-unlink/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/3-fentry-unlink/README_en.md -------------------------------------------------------------------------------- /src/3-fentry-unlink/fentry-link.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/3-fentry-unlink/fentry-link.bpf.c -------------------------------------------------------------------------------- /src/30-sslsniff/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/30-sslsniff/.gitignore -------------------------------------------------------------------------------- /src/30-sslsniff/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/30-sslsniff/Makefile -------------------------------------------------------------------------------- /src/30-sslsniff/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/30-sslsniff/README.md -------------------------------------------------------------------------------- /src/30-sslsniff/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/30-sslsniff/README_en.md -------------------------------------------------------------------------------- /src/30-sslsniff/sslsniff.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/30-sslsniff/sslsniff.bpf.c -------------------------------------------------------------------------------- /src/30-sslsniff/sslsniff.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/30-sslsniff/sslsniff.c -------------------------------------------------------------------------------- /src/30-sslsniff/sslsniff.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/30-sslsniff/sslsniff.h -------------------------------------------------------------------------------- /src/31-goroutine/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/31-goroutine/.gitignore -------------------------------------------------------------------------------- /src/31-goroutine/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/31-goroutine/LICENSE -------------------------------------------------------------------------------- /src/31-goroutine/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/31-goroutine/README.md -------------------------------------------------------------------------------- /src/31-goroutine/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/31-goroutine/README_en.md -------------------------------------------------------------------------------- /src/31-goroutine/go-server-http/main: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/31-goroutine/go-server-http/main -------------------------------------------------------------------------------- /src/31-goroutine/go-server-http/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/31-goroutine/go-server-http/main.go -------------------------------------------------------------------------------- /src/31-goroutine/goroutine.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/31-goroutine/goroutine.bpf.c -------------------------------------------------------------------------------- /src/31-goroutine/goroutine.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/31-goroutine/goroutine.h -------------------------------------------------------------------------------- /src/32-http2/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/32-http2/README.md -------------------------------------------------------------------------------- /src/33-funclatency/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/33-funclatency/.gitignore -------------------------------------------------------------------------------- /src/33-funclatency/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/33-funclatency/Makefile -------------------------------------------------------------------------------- /src/33-funclatency/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/33-funclatency/README.md -------------------------------------------------------------------------------- /src/33-funclatency/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/33-funclatency/README_en.md -------------------------------------------------------------------------------- /src/33-funclatency/bits.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/33-funclatency/bits.bpf.h -------------------------------------------------------------------------------- /src/33-funclatency/funclatency.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/33-funclatency/funclatency.bpf.c -------------------------------------------------------------------------------- /src/33-funclatency/funclatency.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/33-funclatency/funclatency.c -------------------------------------------------------------------------------- /src/33-funclatency/funclatency.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/33-funclatency/funclatency.h -------------------------------------------------------------------------------- /src/34-syscall/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/.gitignore -------------------------------------------------------------------------------- /src/34-syscall/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/Makefile -------------------------------------------------------------------------------- /src/34-syscall/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/README.md -------------------------------------------------------------------------------- /src/34-syscall/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/README_en.md -------------------------------------------------------------------------------- /src/34-syscall/exechijack.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/exechijack.bpf.c -------------------------------------------------------------------------------- /src/34-syscall/exechijack.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/exechijack.h -------------------------------------------------------------------------------- /src/34-syscall/open_modify.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/open_modify.bpf.c -------------------------------------------------------------------------------- /src/34-syscall/open_modify.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/open_modify.h -------------------------------------------------------------------------------- /src/34-syscall/victim.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/34-syscall/victim.cpp -------------------------------------------------------------------------------- /src/35-user-ringbuf/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/35-user-ringbuf/.gitignore -------------------------------------------------------------------------------- /src/35-user-ringbuf/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/35-user-ringbuf/Makefile -------------------------------------------------------------------------------- /src/35-user-ringbuf/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/35-user-ringbuf/README.md -------------------------------------------------------------------------------- /src/35-user-ringbuf/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/35-user-ringbuf/README_en.md -------------------------------------------------------------------------------- /src/35-user-ringbuf/user_ringbuf.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/35-user-ringbuf/user_ringbuf.bpf.c -------------------------------------------------------------------------------- /src/35-user-ringbuf/user_ringbuf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/35-user-ringbuf/user_ringbuf.c -------------------------------------------------------------------------------- /src/35-user-ringbuf/user_ringbuf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/35-user-ringbuf/user_ringbuf.h -------------------------------------------------------------------------------- /src/36-userspace-ebpf/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/36-userspace-ebpf/README.md -------------------------------------------------------------------------------- /src/36-userspace-ebpf/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/36-userspace-ebpf/README_en.md -------------------------------------------------------------------------------- /src/37-uprobe-rust/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/37-uprobe-rust/README.md -------------------------------------------------------------------------------- /src/37-uprobe-rust/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/37-uprobe-rust/README_en.md -------------------------------------------------------------------------------- /src/37-uprobe-rust/args/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /src/37-uprobe-rust/args/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/37-uprobe-rust/args/Cargo.toml -------------------------------------------------------------------------------- /src/37-uprobe-rust/args/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/37-uprobe-rust/args/src/main.rs -------------------------------------------------------------------------------- /src/37-uprobe-rust/helloworld/.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /src/37-uprobe-rust/helloworld/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/37-uprobe-rust/helloworld/Cargo.toml -------------------------------------------------------------------------------- /src/37-uprobe-rust/helloworld/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/37-uprobe-rust/helloworld/src/main.rs -------------------------------------------------------------------------------- /src/38-btf-uprobe/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/.gitignore -------------------------------------------------------------------------------- /src/38-btf-uprobe/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/Makefile -------------------------------------------------------------------------------- /src/38-btf-uprobe/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/README.md -------------------------------------------------------------------------------- /src/38-btf-uprobe/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/README_en.md -------------------------------------------------------------------------------- /src/38-btf-uprobe/examples/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/examples/.gitignore -------------------------------------------------------------------------------- /src/38-btf-uprobe/examples/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/examples/Makefile -------------------------------------------------------------------------------- /src/38-btf-uprobe/examples/btf-base-new.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/examples/btf-base-new.c -------------------------------------------------------------------------------- /src/38-btf-uprobe/examples/btf-base.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/examples/btf-base.c -------------------------------------------------------------------------------- /src/38-btf-uprobe/examples/btf-relo.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/examples/btf-relo.bpf.c -------------------------------------------------------------------------------- /src/38-btf-uprobe/merge-btf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/merge-btf.c -------------------------------------------------------------------------------- /src/38-btf-uprobe/uprobe.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/uprobe.bpf.c -------------------------------------------------------------------------------- /src/38-btf-uprobe/uprobe.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/38-btf-uprobe/uprobe.c -------------------------------------------------------------------------------- /src/39-nginx/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/39-nginx/README.md -------------------------------------------------------------------------------- /src/39-nginx/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/39-nginx/README_en.md -------------------------------------------------------------------------------- /src/39-nginx/trace.bt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/39-nginx/trace.bt -------------------------------------------------------------------------------- /src/4-opensnoop/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/4-opensnoop/.gitignore -------------------------------------------------------------------------------- /src/4-opensnoop/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/4-opensnoop/README.md -------------------------------------------------------------------------------- /src/4-opensnoop/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/4-opensnoop/README_en.md -------------------------------------------------------------------------------- /src/4-opensnoop/opensnoop.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/4-opensnoop/opensnoop.bpf.c -------------------------------------------------------------------------------- /src/40-mysql/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/40-mysql/README.md -------------------------------------------------------------------------------- /src/40-mysql/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/40-mysql/README_en.md -------------------------------------------------------------------------------- /src/40-mysql/dispatch_command.bt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/40-mysql/dispatch_command.bt -------------------------------------------------------------------------------- /src/41-xdp-tcpdump/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/41-xdp-tcpdump/.gitignore -------------------------------------------------------------------------------- /src/41-xdp-tcpdump/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/41-xdp-tcpdump/Makefile -------------------------------------------------------------------------------- /src/41-xdp-tcpdump/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/41-xdp-tcpdump/README.md -------------------------------------------------------------------------------- /src/41-xdp-tcpdump/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/41-xdp-tcpdump/README_en.md -------------------------------------------------------------------------------- /src/41-xdp-tcpdump/xdp-tcpdump.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/41-xdp-tcpdump/xdp-tcpdump.bpf.c -------------------------------------------------------------------------------- /src/41-xdp-tcpdump/xdp-tcpdump.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/41-xdp-tcpdump/xdp-tcpdump.c -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/.gitignore -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/Makefile -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/README.md -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/README_en.md -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/connect.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/connect.md -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/no-docker/xdp_pass.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/no-docker/xdp_pass.c -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/no-docker/xdp_pass.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/no-docker/xdp_pass.o -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/setup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/setup.sh -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/teardown.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/teardown.sh -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/xdp_lb.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/xdp_lb.bpf.c -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/xdp_lb.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/xdp_lb.c -------------------------------------------------------------------------------- /src/42-xdp-loadbalancer/xx_hash.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/42-xdp-loadbalancer/xx_hash.h -------------------------------------------------------------------------------- /src/43-kfuncs/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/.gitignore -------------------------------------------------------------------------------- /src/43-kfuncs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/Makefile -------------------------------------------------------------------------------- /src/43-kfuncs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/README.md -------------------------------------------------------------------------------- /src/43-kfuncs/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/README_en.md -------------------------------------------------------------------------------- /src/43-kfuncs/kfunc.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/kfunc.bpf.c -------------------------------------------------------------------------------- /src/43-kfuncs/kfunc.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/kfunc.c -------------------------------------------------------------------------------- /src/43-kfuncs/module/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/module/.gitignore -------------------------------------------------------------------------------- /src/43-kfuncs/module/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/module/Makefile -------------------------------------------------------------------------------- /src/43-kfuncs/module/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/module/README.md -------------------------------------------------------------------------------- /src/43-kfuncs/module/compact.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/module/compact.h -------------------------------------------------------------------------------- /src/43-kfuncs/module/hello.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/43-kfuncs/module/hello.c -------------------------------------------------------------------------------- /src/5-uprobe-bashreadline/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/5-uprobe-bashreadline/.gitignore -------------------------------------------------------------------------------- /src/5-uprobe-bashreadline/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/5-uprobe-bashreadline/README.md -------------------------------------------------------------------------------- /src/5-uprobe-bashreadline/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/5-uprobe-bashreadline/README_en.md -------------------------------------------------------------------------------- /src/5-uprobe-bashreadline/bashreadline.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/5-uprobe-bashreadline/bashreadline.bpf.c -------------------------------------------------------------------------------- /src/6-sigsnoop/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/6-sigsnoop/.gitignore -------------------------------------------------------------------------------- /src/6-sigsnoop/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/6-sigsnoop/README.md -------------------------------------------------------------------------------- /src/6-sigsnoop/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/6-sigsnoop/README_en.md -------------------------------------------------------------------------------- /src/6-sigsnoop/sigsnoop.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/6-sigsnoop/sigsnoop.bpf.c -------------------------------------------------------------------------------- /src/7-execsnoop/.gitignore: -------------------------------------------------------------------------------- 1 | ecli 2 | *.json 3 | 4 | -------------------------------------------------------------------------------- /src/7-execsnoop/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/7-execsnoop/README.md -------------------------------------------------------------------------------- /src/7-execsnoop/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/7-execsnoop/README_en.md -------------------------------------------------------------------------------- /src/7-execsnoop/execsnoop.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/7-execsnoop/execsnoop.bpf.c -------------------------------------------------------------------------------- /src/7-execsnoop/execsnoop.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/7-execsnoop/execsnoop.h -------------------------------------------------------------------------------- /src/8-exitsnoop/.gitignore: -------------------------------------------------------------------------------- 1 | .vscode 2 | eunomia-exporter 3 | ecli 4 | *.json 5 | -------------------------------------------------------------------------------- /src/8-exitsnoop/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/8-exitsnoop/README.md -------------------------------------------------------------------------------- /src/8-exitsnoop/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/8-exitsnoop/README_en.md -------------------------------------------------------------------------------- /src/8-exitsnoop/exitsnoop.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/8-exitsnoop/exitsnoop.bpf.c -------------------------------------------------------------------------------- /src/8-exitsnoop/exitsnoop.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/8-exitsnoop/exitsnoop.h -------------------------------------------------------------------------------- /src/9-runqlat/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/9-runqlat/.gitignore -------------------------------------------------------------------------------- /src/9-runqlat/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/9-runqlat/README.md -------------------------------------------------------------------------------- /src/9-runqlat/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/9-runqlat/README_en.md -------------------------------------------------------------------------------- /src/9-runqlat/bits.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/9-runqlat/bits.bpf.h -------------------------------------------------------------------------------- /src/9-runqlat/core_fixes.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/9-runqlat/core_fixes.bpf.h -------------------------------------------------------------------------------- /src/9-runqlat/maps.bpf.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/9-runqlat/maps.bpf.h -------------------------------------------------------------------------------- /src/9-runqlat/runqlat.bpf.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/9-runqlat/runqlat.bpf.c -------------------------------------------------------------------------------- /src/9-runqlat/runqlat.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/9-runqlat/runqlat.h -------------------------------------------------------------------------------- /src/SUMMARY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/SUMMARY.md -------------------------------------------------------------------------------- /src/SUMMARY_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/SUMMARY_en.md -------------------------------------------------------------------------------- /src/bcc-documents/kernel-versions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/kernel-versions.md -------------------------------------------------------------------------------- /src/bcc-documents/kernel-versions_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/kernel-versions_en.md -------------------------------------------------------------------------------- /src/bcc-documents/kernel_config.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/kernel_config.md -------------------------------------------------------------------------------- /src/bcc-documents/kernel_config_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/kernel_config_en.md -------------------------------------------------------------------------------- /src/bcc-documents/reference_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/reference_guide.md -------------------------------------------------------------------------------- /src/bcc-documents/reference_guide_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/reference_guide_en.md -------------------------------------------------------------------------------- /src/bcc-documents/special_filtering.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/special_filtering.md -------------------------------------------------------------------------------- /src/bcc-documents/special_filtering_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/special_filtering_en.md -------------------------------------------------------------------------------- /src/bcc-documents/tutorial.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/tutorial.md -------------------------------------------------------------------------------- /src/bcc-documents/tutorial_bcc_python_developer.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/tutorial_bcc_python_developer.md -------------------------------------------------------------------------------- /src/bcc-documents/tutorial_bcc_python_developer_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/tutorial_bcc_python_developer_en.md -------------------------------------------------------------------------------- /src/bcc-documents/tutorial_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bcc-documents/tutorial_en.md -------------------------------------------------------------------------------- /src/bpftrace-tutorial/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bpftrace-tutorial/README.md -------------------------------------------------------------------------------- /src/bpftrace-tutorial/README_en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/bpftrace-tutorial/README_en.md -------------------------------------------------------------------------------- /src/guideline.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/guideline.md -------------------------------------------------------------------------------- /src/third_party/libbpf: -------------------------------------------------------------------------------- 1 | bpftool/libbpf -------------------------------------------------------------------------------- /src/third_party/vmlinux/arm/vmlinux.h: -------------------------------------------------------------------------------- 1 | vmlinux_62.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/arm/vmlinux_62.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/third_party/vmlinux/arm/vmlinux_62.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/arm64/vmlinux.h: -------------------------------------------------------------------------------- 1 | vmlinux_601.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/arm64/vmlinux_516.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/third_party/vmlinux/arm64/vmlinux_516.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/arm64/vmlinux_601.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/third_party/vmlinux/arm64/vmlinux_601.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/loongarch/vmlinux.h: -------------------------------------------------------------------------------- 1 | vmlinux_602.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/loongarch/vmlinux_602.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/third_party/vmlinux/loongarch/vmlinux_602.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/powerpc/vmlinux.h: -------------------------------------------------------------------------------- 1 | vmlinux_600.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/powerpc/vmlinux_600.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/third_party/vmlinux/powerpc/vmlinux_600.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/riscv/vmlinux.h: -------------------------------------------------------------------------------- 1 | vmlinux_602.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/riscv/vmlinux_602.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/third_party/vmlinux/riscv/vmlinux_602.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/vmlinux.h: -------------------------------------------------------------------------------- 1 | x86/vmlinux_601.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/x86/vmlinux.h: -------------------------------------------------------------------------------- 1 | vmlinux_601.h -------------------------------------------------------------------------------- /src/third_party/vmlinux/x86/vmlinux_601.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yunwei37/bpf-developer-tutorial/HEAD/src/third_party/vmlinux/x86/vmlinux_601.h --------------------------------------------------------------------------------