Commit Graph

1534 Commits (60d6a536fad90c5967da7e3dafe4fc055c7fdf30)
 

Author SHA1 Message Date
Alessandro Decina 61299e128e
Merge pull request #119 from eero-thia/thia/xdp_metadata
aya-bpf: expose xdp_md of XdpContext and add metadata functions.
3 years ago
Thia Wyrod d280b856bd
aya-bpf: expose xdp_md of XdpContext and add metadata functions. 3 years ago
Thia Wyrod daa7ea6d0d
aya: remove unnecessary usage of &dyn trait in favor of impl trait.
This should improve performance in most situations by eliminating
unnecessary fat pointer indirection.
3 years ago
Alessandro Decina 98b36b23bc
Merge pull request #116 from eero-thia/thia/close
aya: close file descriptors on Map drop.
3 years ago
Alessandro Decina 2955ca1d1f
Merge pull request #121 from eero-thia/thia/programs_mut
aya: programs_mut iterator to complement programs.
3 years ago
Thia Wyrod c7f8db9a0b
aya: programs_mut iterator to complement programs. 3 years ago
Alessandro Decina a6bf554a74
Merge pull request #122 from eero-thia/thia/include_bytes_aligned
aya: expand include_bytes_aligned to accept expressions.
3 years ago
Thia Wyrod 1584bc47bd
aya: close file descriptors on Map drop. 3 years ago
Thia Wyrod f8f17a09fb
aya: expand include_bytes_aligned to accept expressions.
This allows one to this macro with literal expressions involving macros
such as concat! and env!.
3 years ago
Alessandro Decina df393690d3
Merge pull request #114 from deverton/wrap-bpf_get_current_uid_gid
Add wrapper and docs for for bpf_get_current_uid_gid
3 years ago
Dan Everton fa23052e34
Add wrapper and docs for for bpf_get_current_uid_gid 3 years ago
Alessandro Decina 6db30fad9c
Merge pull request #108 from deverton/kprobe-debugfs
Support k/uprobes on older kernels.
3 years ago
Dan Everton 0e84610976
Refactoring after feedback. 3 years ago
Alessandro Decina d983836959
Merge pull request #112 from dave-tucker/fix_cgroup_skb_attach
bpf: Fix cgroup_skb macro
3 years ago
Dave Tucker eadba79deb bpf: Add tests for cgroup_skb macro
This checks that the expand function produces the expected link_section
given certain input

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker fa037a88e2 bpf: Fix cgroup_skb macro
This commit ensures that if no attach type is provided, that we use the
cgroup/skb section. If an attach type is provided we use the
cgroup_skb/$attach_type section.

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Rust Plumber 761cb79fe3
aya: fix test warnings (#111) 3 years ago
Dan Everton 606c3267c4
Support pid filtering in debugfs 3 years ago
Dan Everton 1dc75542b4
Handle probe entry offsets 3 years ago
Dan Everton 4e6aeb2e69
Merge branch 'main' into kprobe-debugfs 3 years ago
Alessandro Decina b82d7f0515
Merge pull request #109 from deverton/dynamic-kver
Use current kernel version as default if not specified
3 years ago
Dan Everton 3dff6e8555
Updates based on feedback 3 years ago
Dan Everton 4277205e9d
Use current kernel version as default if not specified
When a BPF program doesn't specify the target kernel version, the
most compatible option is to set the program kernel version to match
the currently running kernel.
3 years ago
Dan Everton 42c9737d47
Functional detach of debugfs probes. 3 years ago
Dan Everton a4faabcf93
Fix event_alias comparison when looking in event list 3 years ago
Dan Everton 84fa2197ec
Don't duplicate perf_attach code and formatting 3 years ago
Dan Everton d0321bd1ee
Attempt auto detach of probe for debugfs 3 years ago
Dan Everton 34aa790a91
Support k/uprobes on older kernels.
Prior to kernel 4.17 probes were attached via debugfs and this patch
attempts to make that work.

Tested on kernel 4.14.
3 years ago
Alessandro Decina 5b0e518641
Merge pull request #107 from deverton/skip-map-name
fix: make maps compatible with kernel <= 4.14
3 years ago
Dan Everton 07e3824aa4
chore: formatting 3 years ago
Dan Everton 49f6a8e819
Stub `kernel_version` for tests 3 years ago
Dan Everton d966881e46
Fix lint issues 3 years ago
Dan Everton fc0861105a
fix: make maps compatible with kernel <= 4.14
In kernel 4.15 and additional parameter was added to allow maps to have
names but using this breaks on older kernels.

This change makes it so the name is only added on kernels 4.15 and
newer.
3 years ago
Alessandro Decina 182182d840 (cargo-release) version 0.10.6 3 years ago
Alessandro Decina 170e98e71e bpf: fix doc tests 3 years ago
Alessandro Decina 31f96450d4 bpf: add bpf_probe_read_buf, bpf_probe_read_user_buf and bpf_probe_read_kernel_buf 3 years ago
Alessandro Decina f1fe817022
Merge pull request #106 from dave-tucker/skbcontext
bpf: Rename SkSkbContext to SkBuffContext
3 years ago
Dave Tucker 8a6fe4a640 bpf: Rename SkSkbContext to SkBuffContext
This is necessary since the context is used in many other program types
and not just in SK_SKB programs.

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Alessandro Decina 685b68359e
Merge pull request #105 from dave-tucker/socket_filter
bpf: Add macro for socket_filter programs
3 years ago
Dave Tucker a4bb29a3cc bpf: Add macro for socket_filter programs
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Alessandro Decina 5ea450f0ec
Merge pull request #102 from dave-tucker/skskb
bpf: Add macros for sk_skb programs
3 years ago
Alessandro Decina 0b3e398f11
Merge pull request #103 from dave-tucker/redirect_sk
bpf: Implement redirect for skbs on sockmap/sockhash
3 years ago
Alessandro Decina daf8630133
Merge pull request #104 from dave-tucker/fix_skskb_load
obj: fix name parsing for sk_skb sections
3 years ago
Dave Tucker 352e54b724 obj: fix name parsing for sk_skb sections
This commit fixes name parsing of sk_skb sections such that both named
and unnamed variants will work correctly.

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker 2a8ba55b7e bpf: Implement redirect for skbs on sockmap/sockhash
This implements redirect_skb and renames redirect to redirect_msg

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Dave Tucker 0c7e9b94ea bpf: Add macros for sk_skb programs
This commit adds the stream_parser and stream_verdict macros for use in
bpf programs

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
3 years ago
Alessandro Decina 2206fb6456
Merge pull request #83 from willfindlay/arguments
aya-bpf: introduce argument coercion
3 years ago
William Findlay 89dee1a114
aya-bpf: implement argument coercion for pt_regs and BTF programs
Implements argument and return value coercion helpers for:
    - LSM programs
    - BTF tracepoints
    - [ku]{ret}probes

Signed-off-by: William Findlay <william@williamfindlay.com>
3 years ago
William Findlay 972e5e636a
aya-bpf-macros: fix tests
Doctests were failing due to a dependency on the aya-bpf crate.
3 years ago
Alessandro Decina f632f81db1
Merge pull request #98 from aya-rs/codegen
Update libbpf to 16dfb4ffe4aed03fafc00e0557b1ce1310a09731
3 years ago