1fe12b9990 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix aya-ebpf-* riscv64 build ( #1139 )  
							
							... 
							
							
							
							bpf_target_arch should be riscv64, but target triple starts with riscv64gc (and possibly riscv64 followed by any combination of extensions). 
							
						 
						
							9 months ago  
				
					
						
							
							
								 
						
							
							
								29b821376e 
								
							
								 
							
						 
						
							
							
								
								public-api: regenerate  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								356cf45914 
								
							
								 
							
						 
						
							
							
								
								Use Set (instead of Map) to hold links  
							
							... 
							
							
							
							This uses hashbrown instead of std because the latter relies on Borrow
which requires a reference; hashbrown's Equivalent is more flexible. 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								69144a977e 
								
							
								 
							
						 
						
							
							
								
								Appease clippy  
							
							... 
							
							
							
							```
error: called `Iterator::last` on a `DoubleEndedIterator`; this will needlessly iterate the entire iterator
   --> aya/src/programs/uprobe.rs:282:64
    |
282 |             let path = line.split(|b| b.is_ascii_whitespace()).last()?;
    |                                                                ^^^^^^ help: try: `next_back()`
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#double_ended_iterator_last 
``` 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								114e7a6906 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #1133  from ajwerner/uprobe-cookie  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								628b7fb022 
								
							
								 
							
						 
						
							
							
								
								aya::programs::uprobe: add support for cookies  
							
							... 
							
							
							
							Fixes  #1132 .
Note that this change does not add support in the public API for kprobes
or tracepoints, but it's a trivial matter of plumbing.
Along the way, the Uprobe::attach API is cleaned up to make the
attachment location more coherent. The logic being: if we're going to be
breaking the API anyway, may as well clean it up a bit.
Furthermore, the aya::sys::bpf_link_attach function is cleaned up by
properly modeling the the union in the final field with a rust enum. 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								f34d355d7d 
								
							
								 
							
						 
						
							
							
								
								bpf: Handle raw tracepoint arguments  
							
							... 
							
							
							
							Provide an `arg()` method in `RawTracepointArgs` wrapper of
`bpf_raw_tracepoint_args` and also in `RawTracepointContext`, so
it's directly available in raw tracepoint programs.
The methods and traits implemented here are unsafe. There is no
way to reliably check the number of available arguments, so
requesting a non-existing one leads to undefined behavior. 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								28a28c9872 
								
							
								 
							
						 
						
							
							
								
								aya-tool: enable clang_macro_fallback  
							
							... 
							
							
							
							See
https://docs.rs/bindgen/latest/bindgen/struct.Builder.html#method.clang_macro_fallback . 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								be6370c7cd 
								
							
								 
							
						 
						
							
							
								
								aya-tool: extract common helper  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								1355a2094f 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #1126  from aya-rs/dependabot/github_actions/github-actions-4fb87efe6a  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								e8b8467c18 
								
									
								
							
								 
							
						 
						
							
							
								
								build(deps): bump DavidAnson/markdownlint-cli2-action  
							
							... 
							
							
							
							Bumps the github-actions group with 1 update: [DavidAnson/markdownlint-cli2-action](https://github.com/davidanson/markdownlint-cli2-action ).
Updates `DavidAnson/markdownlint-cli2-action` from 18 to 19
- [Release notes](https://github.com/davidanson/markdownlint-cli2-action/releases )
- [Commits](https://github.com/davidanson/markdownlint-cli2-action/compare/v18...v19 )
---
updated-dependencies:
- dependency-name: DavidAnson/markdownlint-cli2-action
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...
Signed-off-by: dependabot[bot] <support@github.com> 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								f26ccde136 
								
							
								 
							
						 
						
							
							
								
								Allow `+bpo` kernels  
							
							... 
							
							
							
							Seems 6.10 is now being marked `+bpo`.
Improve error handling while I'm here. 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								df053f095b 
								
									
								
							
								 
							
						 
						
							
							
								
								docs: update docs for load to mention include_bytes_aligned ( #1119 )  
							
							... 
							
							
							
							* docs: update docs for load to mention include_bytes_aligned
This macro is required if you are bundling programs statically into your binary, which is not an uncommon thing to do.
This change updates the documentation for the load function to mention this macro and the need for alignment. 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								78ee9a4634 
								
							
								 
							
						 
						
							
							
								
								Avoid useless conversions  
							
							... 
							
							
							
							Use native C types to avoid platform-dependent conversions. 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								4257643354 
								
							
								 
							
						 
						
							
							
								
								Clean up C type imports  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								41706d74e4 
								
							
								 
							
						 
						
							
							
								
								Narrow clippy allowances  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								1bf6a38619 
								
							
								 
							
						 
						
							
							
								
								Simplify `parse_param`  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								4f0559f2af 
								
							
								 
							
						 
						
							
							
								
								chore: Fix cippy errors  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								aea3efecd5 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #1120  from aya-rs/dependabot/cargo/cargo-crates-f75f554572  
							
							
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								af4254bc57 
								
									
								
							
								 
							
						 
						
							
							
								
								build(deps): update octorust requirement in the cargo-crates group  
							
							... 
							
							
							
							---
updated-dependencies:
- dependency-name: octorust
  dependency-type: direct:production
  dependency-group: cargo-crates
...
Signed-off-by: dependabot[bot] <support@github.com> 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								d1457acc6d 
								
							
								 
							
						 
						
							
							
								
								ci: cache downloads  
							
							... 
							
							
							
							We're seeing 429 from Github trying to download gen_init_cpio, so cache
it using actions cache. Since I'm here add this for kernel images as
well to save time waiting on slow Debian servers. 
							
						 
						
							10 months ago  
				
					
						
							
							
								 
						
							
							
								cc2da4a2a4 
								
							
								 
							
						 
						
							
							
								
								ci: download gen_init_cpio with authentication  
							
							... 
							
							
							
							The raw endpoint[0] now[1] seems to return HTTP 429 on the first request
and unauthenticated API limits are exceeded after one request (so one of
ubuntu/macos builders fails). Hopefully this works with authentication.
Link: https://raw.githubusercontent.com/torvalds/linux/refs/heads/master/usr/gen_init_cpio.c  [0]
Link: https://github.com/orgs/community/discussions/146957  [1] 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								1dfcfbcf90 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #1113  from aya-rs/dependabot/cargo/cargo-crates-ab63383a63  
							
							
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								4f3ea551f3 
								
									
								
							
								 
							
						 
						
							
							
								
								build(deps): update bindgen requirement in the cargo-crates group  
							
							... 
							
							
							
							Updates the requirements on [bindgen](https://github.com/rust-lang/rust-bindgen ) to permit the latest version.
Updates `bindgen` to 0.70.1
- [Release notes](https://github.com/rust-lang/rust-bindgen/releases )
- [Changelog](https://github.com/rust-lang/rust-bindgen/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/rust-bindgen/compare/v0.70.0...v0.70.1 )
---
updated-dependencies:
- dependency-name: bindgen
  dependency-type: direct:production
  dependency-group: cargo-crates
...
Signed-off-by: dependabot[bot] <support@github.com> 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								5a43bedc01 
								
							
								 
							
						 
						
							
							
								
								Replace proc-macro-error with proc-macro2-diagnostics  
							
							... 
							
							
							
							proc-macro-error is unmaintained. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								dae394e199 
								
							
								 
							
						 
						
							
							
								
								aya-ebpf-macros: remove aya-ebpf version  
							
							... 
							
							
							
							The presence of this version specification causes cargo-smart-release to
trip on the circular dependency.
Fixes  #1050 . 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								3d8cb08b7f 
								
							
								 
							
						 
						
							
							
								
								aya-build: add explicit irrefutable pattern  
							
							... 
							
							
							
							This is required in Rust 1.80 at least. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								015c0df0f4 
								
							
								 
							
						 
						
							
							
								
								aya-build: enable anyhow/std  
							
							... 
							
							
							
							This is needed before Rust 1.81. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								6970353b58 
								
							
								 
							
						 
						
							
							
								
								aya-build: add description  
							
							
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								b01bc3f49b 
								
							
								 
							
						 
						
							
							
								
								Use Result in integration-test's build script  
							
							... 
							
							
							
							Something of an experiment. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								2b2af44915 
								
							
								 
							
						 
						
							
							
								
								Extract aya-build for building eBPF crates  
							
							... 
							
							
							
							We'll use this in the template and book to avoid duplicating all the
code. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								e0c4948e36 
								
							
								 
							
						 
						
							
							
								
								Extract integration-common for shared types  
							
							
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								c5172def75 
								
							
								 
							
						 
						
							
							
								
								Avoid reading env needlessly  
							
							
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								806783c0fc 
								
							
								 
							
						 
						
							
							
								
								Remove integration-ebp/rust-toolchain  
							
							... 
							
							
							
							Centralize the knowledge in build.rs instead. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								fd00b39f09 
								
							
								 
							
						 
						
							
							
								
								Enable unwinding in userspace  
							
							... 
							
							
							
							Unwinding gives us more information, so we shouldn't disable it
globally. It is already disabled for BPF targets via the target configs
in rustc itself.
This complicates the clippy invocation somewhat, so put it in a shell
script for developer as well as CI use. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								1de7e728b6 
								
							
								 
							
						 
						
							
							
								
								Allow aya-ebpf to clippy with stable rust  
							
							... 
							
							
							
							The const-assert crate doesn't even compile with stable rust, so we
shouldn't depend on it. Instead we replicate its functionality behind
cfg(unstable) which is set at build time based on the toolchain in use. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								964d63ab37 
								
							
								 
							
						 
						
							
							
								
								Remove stale comment  
							
							... 
							
							
							
							The panic has been fixed. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								09eefd366f 
								
							
								 
							
						 
						
							
							
								
								Remove long-dead travis config  
							
							
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								d92fc95c39 
								
							
								 
							
						 
						
							
							
								
								ci: remove cross toolchain  
							
							... 
							
							
							
							We aren't actually building for these targets, we only use this to pick
the set of generated definitions to use in BPF which is the true target. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								0eb6d8c09e 
								
							
								 
							
						 
						
							
							
								
								Revert "chore: Pin `libc` to `0.2.163`"  
							
							... 
							
							
							
							This reverts commit c6ec4f9b80 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								0bf67c3ce5 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge pull request  #1095  from aya-rs/dependabot/cargo/cargo-crates-ed849d205f  
							
							
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								5ab67dce08 
								
									
								
							
								 
							
						 
						
							
							
								
								Use TargetKind enum and Target::is_proc_macro  
							
							... 
							
							
							
							These are added in cargo_metadata 0.19.0. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								ea139050cf 
								
									
								
							
								 
							
						 
						
							
							
								
								build(deps): bump the cargo-crates group with 2 updates  
							
							... 
							
							
							
							Updates the requirements on [cargo_metadata](https://github.com/oli-obk/cargo_metadata ) and [public-api](https://github.com/cargo-public-api/cargo-public-api ) to permit the latest version.
Updates `cargo_metadata` to 0.18.1
- [Release notes](https://github.com/oli-obk/cargo_metadata/releases )
- [Changelog](https://github.com/oli-obk/cargo_metadata/blob/main/CHANGELOG.md )
- [Commits](https://github.com/oli-obk/cargo_metadata/compare/0.18.0...0.18.1 )
Updates `public-api` to 0.41.0
- [Release notes](https://github.com/cargo-public-api/cargo-public-api/releases )
- [Changelog](https://github.com/cargo-public-api/cargo-public-api/blob/main/CHANGELOG.md )
- [Commits](https://github.com/cargo-public-api/cargo-public-api/compare/public-api-v0.41.0...public-api-v0.41.0 )
---
updated-dependencies:
- dependency-name: cargo_metadata
  dependency-type: direct:production
  dependency-group: cargo-crates
- dependency-name: public-api
  dependency-type: direct:production
  dependency-group: cargo-crates
...
Signed-off-by: dependabot[bot] <support@github.com> 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								c6ec4f9b80 
								
							
								 
							
						 
						
							
							
								
								chore: Pin `libc` to `0.2.163`  
							
							... 
							
							
							
							`0.2.164` and `0.2.165` are affected by rust-lang/libc#4149 . Pin the
last working version until a proper fix is released. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								119049f2a2 
								
							
								 
							
						 
						
							
							
								
								Define `{detach,take_link}` in macro when possible  
							
							
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								85c73af1fe 
								
							
								 
							
						 
						
							
							
								
								doc(aya): Improve the description of `take_link` methods  
							
							... 
							
							
							
							Don't mix the tenses. 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								bf2164c92f 
								
							
								 
							
						 
						
							
							
								
								feat(aya): Add iterator program type  
							
							... 
							
							
							
							BPF iterators[0] are a way to dump kernel data into user-space and an
alternative to `/proc` filesystem.
This change adds support for BPF iterators on the user-space side. It
provides a possibility to retrieve the outputs of BPF iterator programs
both from sync and async Rust code.
[0] https://docs.kernel.org/bpf/bpf_iterators.html  
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								c81f5e475e 
								
									
								
							
								 
							
						 
						
							
							
								
								Introducing Aya Guru on Gurubase.io ( #1085 )  
							
							... 
							
							
							
							Introducing Aya Guru on Gurubase.io
Signed-off-by: Kursat Aktas <kursat.ce@gmail.com> 
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								a77db17ec8 
								
							
								 
							
						 
						
							
							
								
								cargo fmt  
							
							
							
						 
						
							11 months ago  
				
					
						
							
							
								 
						
							
							
								a16755089b 
								
							
								 
							
						 
						
							
							
								
								Avoid warning with `allow_unsupported_maps`  
							
							... 
							
							
							
							Remove the warning log altogether; either it's an error or it isn't. 
							
						 
						
							11 months ago