git: 189ac1b8947b - main - security/solana: Move to security/agave; Update 2.2.10 → 2.2.10

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sat, 19 Apr 2025 00:00:22 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=189ac1b8947b111aa4c49daa919550b69f097804

commit 189ac1b8947b111aa4c49daa919550b69f097804
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2025-04-18 23:55:50 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2025-04-18 23:57:59 +0000

    security/solana: Move to security/agave; Update 2.2.10 → 2.2.10
    
    Solana repository was archived, Agave is a maintained fork.
    
    PR:             285935
---
 MOVED                                |    1 +
 security/Makefile                    |    2 +-
 security/agave/Makefile              |  911 ++++++++++++++++++
 security/agave/distinfo              | 1731 ++++++++++++++++++++++++++++++++++
 security/{solana => agave}/pkg-descr |    0
 security/{solana => agave}/pkg-plist |   20 +-
 security/solana/Makefile             |  708 --------------
 security/solana/distinfo             | 1327 --------------------------
 8 files changed, 2655 insertions(+), 2045 deletions(-)

diff --git a/MOVED b/MOVED
index 4d2d8bee30fb..f7e73bd09a01 100644
--- a/MOVED
+++ b/MOVED
@@ -4310,3 +4310,4 @@ net-im/py-punjab||2025-04-13|Has expired: Abandoned project, not compatible with
 devel/linux-rl9-libsigsegv|emulators/linux_base-rl9|2025-04-15|Integrated into linux_base-rl9
 devel/linux-rl9-libatomic|devel/linux-rl9-devtools|2025-04-15|Integrated into linux-rl9-devtools
 devel/rubygem-sidekiq72|devel/rubygem-sidekiq-gitlab|2025-04-18|Please use devel/sidekiq-gitlab instead
+security/solana|security/agave|2025-04-18|Solana repository is archived, switched to the fork Agave
diff --git a/security/Makefile b/security/Makefile
index fb890d0ef84b..347754ee9a4b 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -21,6 +21,7 @@
     SUBDIR += aespipe
     SUBDIR += afl++
     SUBDIR += afterglow
+    SUBDIR += agave
     SUBDIR += age
     SUBDIR += aide
     SUBDIR += amavisd-milter
@@ -1303,7 +1304,6 @@
     SUBDIR += softether-devel
     SUBDIR += softether5
     SUBDIR += softhsm2
-    SUBDIR += solana
     SUBDIR += sops
     SUBDIR += spass
     SUBDIR += spass-qt5
diff --git a/security/agave/Makefile b/security/agave/Makefile
new file mode 100644
index 000000000000..c23f02587c7c
--- /dev/null
+++ b/security/agave/Makefile
@@ -0,0 +1,911 @@
+PORTNAME=	agave
+DISTVERSIONPREFIX=	v
+DISTVERSION=	2.2.10
+CATEGORIES=	security
+PKGNAMESUFFIX=	-blockchain
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Web-scale blockchain for decentralized apps and marketplaces
+WWW=		https://www.anza.xyz \
+		https://github.com/anza-xyz/agave
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BROKEN_armv7=		compilation failure: error[E0512]: cannot transmute between types of different sizes, or dependently-sized types --> programs/bpf_loader/src/syscalls/mod.rs:489:21
+BROKEN_i386=		fails on 32-bit systems: https://github.com/solana-labs/solana/issues/16811
+BROKEN_powerpc64le=	compilation failure: called `Option::unwrap()` on a `None` value in ring-0.16.20/build.rs:358:10 # see https://github.com/rust-lang/rust/issues/119901
+
+BUILD_DEPENDS=	protoc:devel/protobuf \
+		gmake:devel/gmake
+LIB_DEPENDS=	libhidapi.so:comms/hidapi \
+		libzstd.so:archivers/zstd
+
+USES=		cargo llvm:lib pkgconfig ssl
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	anza-xyz
+
+CARGO_CRATES=	Inflector-0.11.4 \
+		addr2line-0.20.0 \
+		adler-1.0.2 \
+		aead-0.5.2 \
+		aes-0.8.4 \
+		aes-gcm-siv-0.11.1 \
+		affinity-0.1.2 \
+		ahash-0.7.8 \
+		ahash-0.8.11 \
+		aho-corasick-0.7.18 \
+		aho-corasick-1.0.1 \
+		alloc-no-stdlib-2.0.3 \
+		alloc-stdlib-0.2.1 \
+		allocator-api2-0.2.16 \
+		android-tzdata-0.1.1 \
+		android_system_properties-0.1.4 \
+		anes-0.1.6 \
+		ansi_term-0.11.0 \
+		anstyle-1.0.10 \
+		anyhow-1.0.95 \
+		aquamarine-0.6.0 \
+		arc-swap-1.5.0 \
+		ark-bn254-0.4.0 \
+		ark-ec-0.4.2 \
+		ark-ff-0.4.2 \
+		ark-ff-asm-0.4.2 \
+		ark-ff-macros-0.4.2 \
+		ark-poly-0.4.2 \
+		ark-serialize-0.4.2 \
+		ark-serialize-derive-0.4.2 \
+		ark-std-0.4.0 \
+		arrayref-0.3.9 \
+		arrayvec-0.7.6 \
+		ascii-0.9.3 \
+		asn1-rs-0.5.1 \
+		asn1-rs-derive-0.4.0 \
+		asn1-rs-impl-0.1.0 \
+		assert_cmd-2.0.8 \
+		assert_matches-1.5.0 \
+		assoc-0.1.3 \
+		async-channel-1.9.0 \
+		async-compression-0.4.1 \
+		async-lock-3.4.0 \
+		async-stream-0.3.2 \
+		async-stream-impl-0.3.2 \
+		async-trait-0.1.86 \
+		atty-0.2.14 \
+		autocfg-1.1.0 \
+		autotools-0.2.5 \
+		axum-0.6.20 \
+		axum-0.7.9 \
+		axum-core-0.3.4 \
+		axum-core-0.4.5 \
+		backoff-0.4.0 \
+		backtrace-0.3.68 \
+		base64-0.12.3 \
+		base64-0.13.1 \
+		base64-0.21.7 \
+		base64-0.22.1 \
+		bincode-1.3.3 \
+		bindgen-0.69.4 \
+		bit-set-0.8.0 \
+		bit-vec-0.8.0 \
+		bitflags-1.3.2 \
+		bitflags-2.8.0 \
+		bitmaps-2.1.0 \
+		bitvec-1.0.1 \
+		blake3-1.5.5 \
+		block-buffer-0.7.3 \
+		block-buffer-0.9.0 \
+		block-buffer-0.10.4 \
+		block-padding-0.1.5 \
+		borsh-0.10.3 \
+		borsh-1.5.5 \
+		borsh-derive-0.10.3 \
+		borsh-derive-1.5.5 \
+		borsh-derive-internal-0.10.3 \
+		borsh-schema-derive-internal-0.10.3 \
+		brotli-3.3.4 \
+		brotli-decompressor-2.3.2 \
+		bs58-0.5.1 \
+		bstr-0.2.17 \
+		bstr-1.4.0 \
+		bumpalo-3.12.0 \
+		bv-0.11.1 \
+		byte-tools-0.3.1 \
+		byte-unit-4.0.19 \
+		bytecount-0.6.8 \
+		bytemuck-1.21.0 \
+		bytemuck_derive-1.8.1 \
+		byteorder-1.5.0 \
+		bytes-1.10.0 \
+		bytesize-1.1.0 \
+		bzip2-0.4.4 \
+		bzip2-sys-0.1.11+1.0.8 \
+		camino-1.0.9 \
+		caps-0.5.5 \
+		cargo-platform-0.1.2 \
+		cargo_metadata-0.15.4 \
+		cast-0.2.7 \
+		cast-0.3.0 \
+		cc-1.1.19 \
+		cesu8-1.1.0 \
+		cexpr-0.6.0 \
+		cfg-if-0.1.10 \
+		cfg-if-1.0.0 \
+		cfg_aliases-0.2.1 \
+		cfg_eval-0.1.2 \
+		chrono-0.4.39 \
+		chrono-humanize-0.2.3 \
+		ciborium-0.2.1 \
+		ciborium-io-0.2.1 \
+		ciborium-ll-0.2.1 \
+		cipher-0.4.4 \
+		clang-sys-1.2.2 \
+		clap-2.33.3 \
+		clap-3.2.23 \
+		clap-4.3.21 \
+		clap_builder-4.3.21 \
+		clap_derive-3.2.18 \
+		clap_lex-0.2.4 \
+		clap_lex-0.5.0 \
+		combine-3.8.1 \
+		combine-4.6.7 \
+		concurrent-queue-2.5.0 \
+		console-0.15.10 \
+		console_error_panic_hook-0.1.7 \
+		console_log-0.2.2 \
+		const_format-0.2.34 \
+		const_format_proc_macros-0.2.34 \
+		constant_time_eq-0.3.1 \
+		convert_case-0.4.0 \
+		convert_case-0.6.0 \
+		core-foundation-0.9.4 \
+		core-foundation-sys-0.8.7 \
+		core_affinity-0.5.10 \
+		cpufeatures-0.2.7 \
+		crc32fast-1.2.1 \
+		criterion-0.5.1 \
+		criterion-plot-0.5.0 \
+		criterion-stats-0.3.0 \
+		crossbeam-channel-0.5.15 \
+		crossbeam-deque-0.8.1 \
+		crossbeam-utils-0.8.18 \
+		crunchy-0.2.2 \
+		crypto-common-0.1.6 \
+		crypto-mac-0.8.0 \
+		csv-1.3.1 \
+		csv-core-0.1.11 \
+		ctr-0.9.2 \
+		ctrlc-3.4.5 \
+		curve25519-dalek-3.2.0 \
+		curve25519-dalek-4.1.3 \
+		curve25519-dalek-derive-0.1.1 \
+		darling-0.20.1 \
+		darling_core-0.20.1 \
+		darling_macro-0.20.1 \
+		dashmap-5.5.3 \
+		data-encoding-2.3.2 \
+		der-parser-8.1.0 \
+		derivation-path-0.2.0 \
+		derivative-2.2.0 \
+		derive-where-1.2.7 \
+		derive_more-0.99.16 \
+		derive_more-1.0.0 \
+		derive_more-impl-1.0.0 \
+		dialoguer-0.10.4 \
+		difflib-0.4.0 \
+		digest-0.8.1 \
+		digest-0.9.0 \
+		digest-0.10.7 \
+		dir-diff-0.3.3 \
+		dirs-next-2.0.0 \
+		dirs-sys-next-0.1.2 \
+		displaydoc-0.2.3 \
+		dlopen2-0.5.0 \
+		dlopen2_derive-0.3.0 \
+		doc-comment-0.3.3 \
+		downcast-0.11.0 \
+		dyn-clone-1.0.18 \
+		eager-0.1.0 \
+		ed25519-1.2.0 \
+		ed25519-dalek-1.0.1 \
+		ed25519-dalek-bip32-0.2.0 \
+		educe-0.4.18 \
+		either-1.11.0 \
+		encode_unicode-1.0.0 \
+		encoding_rs-0.8.29 \
+		enum-iterator-1.5.0 \
+		enum-iterator-derive-1.3.0 \
+		enum-ordinalize-3.1.10 \
+		env_logger-0.9.3 \
+		equivalent-1.0.0 \
+		errno-0.3.8 \
+		etcd-client-0.11.1 \
+		event-listener-2.5.2 \
+		event-listener-5.3.1 \
+		event-listener-strategy-0.5.2 \
+		fake-simd-0.1.2 \
+		fast-math-0.1.1 \
+		fastrand-2.1.1 \
+		fd-lock-3.0.13 \
+		feature-probe-0.1.1 \
+		fiat-crypto-0.2.9 \
+		filedescriptor-0.8.1 \
+		filetime-0.2.15 \
+		five8_const-0.1.3 \
+		five8_core-0.1.0 \
+		fixedbitset-0.4.0 \
+		flate2-1.0.31 \
+		float-cmp-0.9.0 \
+		fnv-1.0.7 \
+		foreign-types-0.3.2 \
+		foreign-types-shared-0.1.1 \
+		form_urlencoded-1.2.1 \
+		fragile-2.0.0 \
+		fs_extra-1.3.0 \
+		fuchsia-cprng-0.1.1 \
+		funty-2.0.0 \
+		futures-0.1.31 \
+		futures-0.3.31 \
+		futures-channel-0.3.31 \
+		futures-core-0.3.31 \
+		futures-executor-0.3.31 \
+		futures-io-0.3.31 \
+		futures-macro-0.3.31 \
+		futures-sink-0.3.31 \
+		futures-task-0.3.31 \
+		futures-timer-3.0.3 \
+		futures-util-0.3.31 \
+		gag-1.0.0 \
+		gdbstub-0.6.3 \
+		generator-0.8.1 \
+		generic-array-0.12.4 \
+		generic-array-0.14.7 \
+		gethostname-0.2.3 \
+		getrandom-0.1.16 \
+		getrandom-0.2.10 \
+		getrandom-0.3.1 \
+		gimli-0.27.3 \
+		glob-0.3.0 \
+		globset-0.4.8 \
+		goauth-0.13.1 \
+		governor-0.6.3 \
+		h2-0.3.26 \
+		half-1.8.2 \
+		hash32-0.2.1 \
+		hashbrown-0.12.3 \
+		hashbrown-0.13.2 \
+		hashbrown-0.14.3 \
+		hashbrown-0.15.1 \
+		headers-0.3.7 \
+		headers-core-0.2.0 \
+		heck-0.4.0 \
+		hermit-abi-0.1.19 \
+		hermit-abi-0.3.9 \
+		hex-0.4.3 \
+		hidapi-2.6.3 \
+		histogram-0.6.9 \
+		hmac-0.8.1 \
+		hmac-0.12.1 \
+		hmac-drbg-0.3.0 \
+		http-0.2.12 \
+		http-1.1.0 \
+		http-body-0.4.5 \
+		http-body-1.0.1 \
+		http-body-util-0.1.2 \
+		httparse-1.8.0 \
+		httpdate-1.0.1 \
+		humantime-2.1.0 \
+		hyper-0.14.32 \
+		hyper-1.5.1 \
+		hyper-proxy-0.9.1 \
+		hyper-rustls-0.24.1 \
+		hyper-timeout-0.4.1 \
+		hyper-tls-0.5.0 \
+		hyper-util-0.1.10 \
+		iana-time-zone-0.1.46 \
+		icu_collections-1.5.0 \
+		icu_locid-1.5.0 \
+		icu_locid_transform-1.5.0 \
+		icu_locid_transform_data-1.5.0 \
+		icu_normalizer-1.5.0 \
+		icu_normalizer_data-1.5.0 \
+		icu_properties-1.5.1 \
+		icu_properties_data-1.5.0 \
+		icu_provider-1.5.0 \
+		icu_provider_macros-1.5.0 \
+		ident_case-1.0.1 \
+		idna-0.1.5 \
+		idna-1.0.3 \
+		idna_adapter-1.2.0 \
+		ieee754-0.2.6 \
+		im-15.1.0 \
+		include_dir-0.7.3 \
+		include_dir_macros-0.7.3 \
+		index_list-0.2.15 \
+		indexmap-1.9.3 \
+		indexmap-2.7.1 \
+		indicatif-0.17.11 \
+		inout-0.1.3 \
+		instant-0.1.12 \
+		ipnet-2.3.1 \
+		is-terminal-0.4.9 \
+		itertools-0.10.5 \
+		itertools-0.12.1 \
+		itoa-1.0.9 \
+		jni-0.19.0 \
+		jni-sys-0.3.0 \
+		jobserver-0.1.32 \
+		js-sys-0.3.77 \
+		json5-0.4.1 \
+		jsonrpc-client-transports-18.0.0 \
+		jsonrpc-core-18.0.0 \
+		jsonrpc-core-client-18.0.0 \
+		jsonrpc-derive-18.0.0 \
+		jsonrpc-http-server-18.0.0 \
+		jsonrpc-ipc-server-18.0.0 \
+		jsonrpc-pubsub-18.0.0 \
+		jsonrpc-server-utils-18.0.0 \
+		keccak-0.1.5 \
+		kernel32-sys-0.2.2 \
+		lazy-lru-0.1.3 \
+		lazy_static-1.5.0 \
+		lazycell-1.3.0 \
+		libc-0.2.170 \
+		libloading-0.7.4 \
+		libm-0.2.1 \
+		librocksdb-sys-0.16.0+8.10.0 \
+		libsecp256k1-0.6.0 \
+		libsecp256k1-core-0.2.2 \
+		libsecp256k1-gen-ecmult-0.2.1 \
+		libsecp256k1-gen-genmult-0.2.1 \
+		libz-sys-1.1.3 \
+		light-poseidon-0.2.0 \
+		linked-hash-map-0.5.4 \
+		linux-raw-sys-0.4.14 \
+		litemap-0.7.3 \
+		lock_api-0.4.10 \
+		log-0.4.25 \
+		lru-0.7.8 \
+		lz4-1.28.1 \
+		lz4-sys-1.11.1+lz4-1.10.0 \
+		managed-0.8.0 \
+		maplit-1.0.2 \
+		matches-0.1.10 \
+		matchit-0.7.0 \
+		memchr-2.6.3 \
+		memmap2-0.5.10 \
+		memoffset-0.6.4 \
+		memoffset-0.9.1 \
+		merlin-3.0.0 \
+		mime-0.3.16 \
+		mime_guess-2.0.4 \
+		min-max-heap-1.3.0 \
+		minimal-lexical-0.1.4 \
+		miniz_oxide-0.7.1 \
+		mio-1.0.3 \
+		mockall-0.11.4 \
+		mockall_derive-0.11.4 \
+		modular-bitfield-0.11.2 \
+		modular-bitfield-impl-0.11.2 \
+		multimap-0.8.3 \
+		native-tls-0.2.11 \
+		net2-0.2.37 \
+		nix-0.29.0 \
+		no-std-compat-0.4.1 \
+		nom-7.0.0 \
+		nonzero_ext-0.3.0 \
+		normalize-line-endings-0.3.0 \
+		num-0.2.1 \
+		num-bigint-0.2.6 \
+		num-bigint-0.4.6 \
+		num-complex-0.2.4 \
+		num-derive-0.4.2 \
+		num-integer-0.1.46 \
+		num-iter-0.1.43 \
+		num-rational-0.2.4 \
+		num-traits-0.2.19 \
+		num_cpus-1.16.0 \
+		num_enum-0.7.3 \
+		num_enum_derive-0.7.3 \
+		num_threads-0.1.3 \
+		number_prefix-0.4.0 \
+		object-0.31.1 \
+		oid-registry-0.6.0 \
+		once_cell-1.19.0 \
+		oorandom-11.1.3 \
+		opaque-debug-0.2.3 \
+		opaque-debug-0.3.0 \
+		openssl-0.10.70 \
+		openssl-macros-0.1.1 \
+		openssl-probe-0.1.4 \
+		openssl-src-300.3.1+3.3.1 \
+		openssl-sys-0.9.105 \
+		opentelemetry-0.17.0 \
+		os_str_bytes-6.0.0 \
+		owo-colors-3.5.0 \
+		parity-tokio-ipc-0.9.0 \
+		parking-2.2.1 \
+		parking_lot-0.11.2 \
+		parking_lot-0.12.3 \
+		parking_lot_core-0.8.5 \
+		parking_lot_core-0.9.8 \
+		paste-1.0.9 \
+		pbkdf2-0.4.0 \
+		pbkdf2-0.11.0 \
+		pem-1.1.1 \
+		percent-encoding-1.0.1 \
+		percent-encoding-2.3.1 \
+		percentage-0.1.0 \
+		pest-2.1.3 \
+		pest_derive-2.1.0 \
+		pest_generator-2.1.3 \
+		pest_meta-2.1.3 \
+		petgraph-0.6.0 \
+		pickledb-0.5.1 \
+		pin-project-1.0.12 \
+		pin-project-internal-1.0.12 \
+		pin-project-lite-0.2.14 \
+		pin-utils-0.1.0 \
+		pkg-config-0.3.22 \
+		plotters-0.3.4 \
+		plotters-backend-0.3.4 \
+		plotters-svg-0.3.3 \
+		polyval-0.6.2 \
+		portable-atomic-1.7.0 \
+		ppv-lite86-0.2.15 \
+		predicates-2.1.5 \
+		predicates-core-1.0.2 \
+		predicates-tree-1.0.4 \
+		pretty-hex-0.3.0 \
+		prettyplease-0.1.9 \
+		prio-graph-0.3.0 \
+		proc-macro-crate-0.1.5 \
+		proc-macro-crate-3.1.0 \
+		proc-macro-error-1.0.4 \
+		proc-macro-error-attr-1.0.4 \
+		proc-macro-error-attr2-2.0.0 \
+		proc-macro-error2-2.0.1 \
+		proc-macro2-1.0.93 \
+		proptest-1.6.0 \
+		prost-0.11.9 \
+		prost-build-0.11.9 \
+		prost-derive-0.11.9 \
+		prost-types-0.11.9 \
+		protobuf-src-1.1.0+21.5 \
+		qstring-0.7.2 \
+		qualifier_attr-0.2.2 \
+		quanta-0.12.3 \
+		quick-error-1.2.3 \
+		quinn-0.11.6 \
+		quinn-proto-0.11.9 \
+		quinn-udp-0.5.5 \
+		quote-1.0.38 \
+		radium-0.7.0 \
+		rand-0.4.6 \
+		rand-0.7.3 \
+		rand-0.8.5 \
+		rand_chacha-0.2.2 \
+		rand_chacha-0.3.1 \
+		rand_core-0.3.1 \
+		rand_core-0.4.2 \
+		rand_core-0.5.1 \
+		rand_core-0.6.4 \
+		rand_hc-0.2.0 \
+		rand_pcg-0.3.1 \
+		rand_xorshift-0.3.0 \
+		rand_xoshiro-0.6.0 \
+		raw-cpuid-11.1.0 \
+		rayon-1.10.0 \
+		rayon-core-1.12.1 \
+		rdrand-0.4.0 \
+		redox_syscall-0.2.10 \
+		redox_syscall-0.3.5 \
+		redox_users-0.4.0 \
+		reed-solomon-erasure-6.0.0 \
+		regex-1.11.1 \
+		regex-automata-0.1.10 \
+		regex-automata-0.4.8 \
+		regex-syntax-0.8.5 \
+		reqwest-0.11.27 \
+		reqwest-middleware-0.2.5 \
+		ring-0.16.20 \
+		ring-0.17.3 \
+		rocksdb-0.22.0 \
+		rolling-file-0.2.0 \
+		rpassword-7.3.1 \
+		rtoolbox-0.0.1 \
+		rustc-demangle-0.1.21 \
+		rustc-hash-1.1.0 \
+		rustc-hash-2.0.0 \
+		rustc_version-0.3.3 \
+		rustc_version-0.4.1 \
+		rusticata-macros-4.1.0 \
+		rustix-0.38.39 \
+		rustls-0.21.12 \
+		rustls-0.23.22 \
+		rustls-native-certs-0.7.3 \
+		rustls-pemfile-1.0.0 \
+		rustls-pemfile-2.1.3 \
+		rustls-pki-types-1.10.0 \
+		rustls-platform-verifier-0.4.0 \
+		rustls-platform-verifier-android-0.1.1 \
+		rustls-webpki-0.101.7 \
+		rustls-webpki-0.102.8 \
+		rustversion-1.0.17 \
+		rusty-fork-0.3.0 \
+		ryu-1.0.5 \
+		same-file-1.0.6 \
+		schannel-0.1.19 \
+		scoped-tls-1.0.1 \
+		scopeguard-1.2.0 \
+		sct-0.7.0 \
+		security-framework-2.11.1 \
+		security-framework-sys-2.12.1 \
+		semver-0.11.0 \
+		semver-1.0.25 \
+		semver-parser-0.10.2 \
+		seqlock-0.2.0 \
+		serde-1.0.217 \
+		serde-big-array-0.5.1 \
+		serde_bytes-0.11.15 \
+		serde_derive-1.0.217 \
+		serde_json-1.0.139 \
+		serde_path_to_error-0.1.16 \
+		serde_spanned-0.6.5 \
+		serde_urlencoded-0.7.1 \
+		serde_with-3.12.0 \
+		serde_with_macros-3.12.0 \
+		serde_yaml-0.8.26 \
+		serde_yaml-0.9.34+deprecated \
+		serial_test-2.0.0 \
+		serial_test_derive-2.0.0 \
+		sha-1-0.8.2 \
+		sha-1-0.9.8 \
+		sha-1-0.10.0 \
+		sha1-0.10.5 \
+		sha2-0.9.9 \
+		sha2-0.10.8 \
+		sha3-0.10.8 \
+		sharded-slab-0.1.4 \
+		shell-words-1.1.0 \
+		shlex-1.3.0 \
+		shuttle-0.7.1 \
+		signal-hook-0.3.17 \
+		signal-hook-registry-1.4.0 \
+		signature-1.4.0 \
+		simpl-0.1.0 \
+		siphasher-0.3.11 \
+		sized-chunks-0.6.5 \
+		slab-0.4.9 \
+		smallvec-1.13.2 \
+		smpl_jwt-0.7.1 \
+		socket2-0.5.8 \
+		soketto-0.7.1 \
+		solana-account-2.2.1 \
+		solana-account-info-2.2.1 \
+		solana-address-lookup-table-interface-2.2.2 \
+		solana-atomic-u64-2.2.1 \
+		solana-big-mod-exp-2.2.1 \
+		solana-bincode-2.2.1 \
+		solana-blake3-hasher-2.2.1 \
+		solana-bn254-2.2.2 \
+		solana-borsh-2.2.1 \
+		solana-client-traits-2.2.1 \
+		solana-clock-2.2.1 \
+		solana-cluster-type-2.2.1 \
+		solana-commitment-config-2.2.1 \
+		solana-compute-budget-interface-2.2.1 \
+		solana-cpi-2.2.1 \
+		solana-decode-error-2.2.1 \
+		solana-define-syscall-2.2.1 \
+		solana-derivation-path-2.2.1 \
+		solana-ed25519-program-2.2.2 \
+		solana-epoch-info-2.2.1 \
+		solana-epoch-rewards-2.2.1 \
+		solana-epoch-rewards-hasher-2.2.1 \
+		solana-epoch-schedule-2.2.1 \
+		solana-example-mocks-2.2.1 \
+		solana-feature-gate-client-0.0.2 \
+		solana-feature-gate-interface-2.2.1 \
+		solana-feature-set-2.2.4 \
+		solana-fee-calculator-2.2.1 \
+		solana-fee-structure-2.2.1 \
+		solana-file-download-2.2.1 \
+		solana-frozen-abi-2.2.1 \
+		solana-frozen-abi-macro-2.2.1 \
+		solana-genesis-config-2.2.1 \
+		solana-hard-forks-2.2.1 \
+		solana-hash-2.2.1 \
+		solana-inflation-2.2.1 \
+		solana-instruction-2.2.1 \
+		solana-instructions-sysvar-2.2.1 \
+		solana-keccak-hasher-2.2.1 \
+		solana-keypair-2.2.1 \
+		solana-last-restart-slot-2.2.1 \
+		solana-loader-v2-interface-2.2.1 \
+		solana-loader-v3-interface-3.0.0 \
+		solana-loader-v4-interface-2.2.1 \
+		solana-logger-2.3.1 \
+		solana-message-2.2.1 \
+		solana-msg-2.2.1 \
+		solana-native-token-2.2.1 \
+		solana-nohash-hasher-0.2.1 \
+		solana-nonce-2.2.1 \
+		solana-nonce-account-2.2.1 \
+		solana-offchain-message-2.2.1 \
+		solana-packet-2.2.1 \
+		solana-poh-config-2.2.1 \
+		solana-precompile-error-2.2.1 \
+		solana-precompiles-2.2.1 \
+		solana-presigner-2.2.1 \
+		solana-program-2.2.1 \
+		solana-program-entrypoint-2.2.1 \
+		solana-program-error-2.2.1 \
+		solana-program-memory-2.2.1 \
+		solana-program-option-2.2.1 \
+		solana-program-pack-2.2.1 \
+		solana-pubkey-2.2.1 \
+		solana-quic-definitions-2.2.1 \
+		solana-rent-2.2.1 \
+		solana-rent-collector-2.2.1 \
+		solana-rent-debits-2.2.1 \
+		solana-reserved-account-keys-2.2.1 \
+		solana-reward-info-2.2.1 \
+		solana-sanitize-2.2.1 \
+		solana-sbpf-0.10.0 \
+		solana-sdk-2.2.2 \
+		solana-sdk-ids-2.2.1 \
+		solana-sdk-macro-2.2.1 \
+		solana-secp256k1-program-2.2.1 \
+		solana-secp256k1-recover-2.2.1 \
+		solana-secp256r1-program-2.2.2 \
+		solana-security-txt-1.1.1 \
+		solana-seed-derivable-2.2.1 \
+		solana-seed-phrase-2.2.1 \
+		solana-serde-2.2.1 \
+		solana-serde-varint-2.2.1 \
+		solana-serialize-utils-2.2.1 \
+		solana-sha256-hasher-2.2.1 \
+		solana-short-vec-2.2.1 \
+		solana-shred-version-2.2.1 \
+		solana-signature-2.2.1 \
+		solana-signer-2.2.1 \
+		solana-slot-hashes-2.2.1 \
+		solana-slot-history-2.2.1 \
+		solana-stable-layout-2.2.1 \
+		solana-stake-interface-1.2.1 \
+		solana-system-interface-1.0.0 \
+		solana-system-transaction-2.2.1 \
+		solana-sysvar-2.2.1 \
+		solana-sysvar-id-2.2.1 \
+		solana-time-utils-2.2.1 \
+		solana-transaction-2.2.2 \
+		solana-transaction-context-2.2.1 \
+		solana-transaction-error-2.2.1 \
+		solana-validator-exit-2.2.1 \
+		solana-vote-interface-2.2.3 \
+		spin-0.5.2 \
+		spin-0.9.8 \
+		spinning_top-0.3.0 \
+		spl-associated-token-account-6.0.0 \
+		spl-associated-token-account-client-2.0.0 \
+		spl-discriminator-0.4.0 \
+		spl-discriminator-derive-0.2.0 \
+		spl-discriminator-syn-0.2.0 \
+		spl-elgamal-registry-0.1.1 \
+		spl-instruction-padding-0.3.0 \
+		spl-memo-6.0.0 \
+		spl-pod-0.5.0 \
+		spl-program-error-0.6.0 \
+		spl-program-error-derive-0.4.1 \
+		spl-tlv-account-resolution-0.9.0 \
+		spl-token-7.0.0 \
+		spl-token-2022-6.0.0 \
+		spl-token-2022-7.0.0 \
+		spl-token-confidential-transfer-ciphertext-arithmetic-0.2.1 \
+		spl-token-confidential-transfer-proof-extraction-0.2.1 \
+		spl-token-confidential-transfer-proof-generation-0.2.0 \
+		spl-token-confidential-transfer-proof-generation-0.3.0 \
+		spl-token-group-interface-0.5.0 \
+		spl-token-metadata-interface-0.6.0 \
+		spl-transfer-hook-interface-0.9.0 \
+		spl-type-length-value-0.7.0 \
+		stable_deref_trait-1.2.0 \
+		static_assertions-1.1.0 \
+		stream-cancel-0.8.2 \
+		strsim-0.8.0 \
+		strsim-0.10.0 \
+		strum-0.24.1 \
+		strum_macros-0.24.3 \
+		subtle-2.6.1 \
+		symlink-0.1.0 \
+		syn-1.0.109 \
+		syn-2.0.98 \
+		sync_wrapper-0.1.2 \
+		sync_wrapper-1.0.2 \
+		synstructure-0.12.6 \
+		synstructure-0.13.1 \
+		sys-info-0.9.1 \
+		sysctl-0.4.6 \
+		system-configuration-0.5.1 \
+		system-configuration-sys-0.5.0 \
+		systemstat-0.2.4 \
+		tap-1.0.1 \
+		tar-0.4.43 \
+		tarpc-0.29.0 \
+		tarpc-plugins-0.12.0 \
+		task-local-extensions-0.1.4 \
+		tempfile-3.16.0 \
+		termcolor-1.4.1 \
+		termtree-0.2.3 \
+		test-case-3.3.1 \
+		test-case-core-3.2.1 \
+		test-case-macros-3.2.1 \
+		textwrap-0.11.0 \
+		textwrap-0.16.0 \
+		thiserror-1.0.69 \
+		thiserror-2.0.11 \
+		thiserror-impl-1.0.69 \
+		thiserror-impl-2.0.11 \
+		thread-priority-1.2.0 \
+		thread-scoped-1.0.2 \
+		thread_local-1.1.4 \
+		tikv-jemalloc-sys-0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7 \
+		tikv-jemallocator-0.6.0 \
+		time-0.3.9 \
+		time-macros-0.2.4 \
+		tiny-bip39-0.8.2 \
+		tinystr-0.7.6 \
+		tinytemplate-1.2.1 \
+		tinyvec-1.6.0 \
+		tinyvec_macros-0.1.0 \
+		tokio-1.43.0 \
+		tokio-io-timeout-1.1.1 \
+		tokio-macros-2.5.0 \
+		tokio-native-tls-0.3.0 \
+		tokio-rustls-0.24.1 \
+		tokio-serde-0.8.0 \
+		tokio-stream-0.1.17 \
+		tokio-tungstenite-0.20.1 \
+		tokio-util-0.6.10 \
+		tokio-util-0.7.13 \
+		toml-0.5.8 \
+		toml-0.8.12 \
+		toml_datetime-0.6.5 \
+		toml_edit-0.21.1 \
+		toml_edit-0.22.12 \
+		tonic-0.9.2 \
+		tonic-build-0.9.2 \
+		tower-0.4.13 \
+		tower-0.5.2 \
+		tower-layer-0.3.3 \
+		tower-service-0.3.3 \
+		tracing-0.1.40 \
+		tracing-attributes-0.1.27 \
+		tracing-core-0.1.32 \
+		tracing-opentelemetry-0.17.2 \
+		tracing-subscriber-0.3.7 \
+		trait-set-0.3.0 \
+		trees-0.4.2 \
+		try-lock-0.2.3 \
+		tungstenite-0.20.1 \
+		typenum-1.15.0 \
+		ucd-trie-0.1.3 \
+		unarray-0.1.4 \
+		unicase-2.6.0 \
+		unicode-bidi-0.3.13 \
+		unicode-ident-1.0.14 \
+		unicode-normalization-0.1.22 \
+		unicode-segmentation-1.12.0 \
+		unicode-width-0.1.9 \
+		unicode-width-0.2.0 \
+		unicode-xid-0.2.2 \
+		universal-hash-0.5.1 \
+		unreachable-1.0.0 \
+		unsafe-libyaml-0.2.11 \
+		untrusted-0.7.1 \
+		untrusted-0.9.0 \
+		uriparse-0.6.4 \
+		url-1.7.2 \
+		url-2.5.4 \
+		utf-8-0.7.6 \
+		utf16_iter-1.0.5 \
+		utf8-width-0.1.5 \
+		utf8_iter-1.0.4 \
+		valuable-0.1.0 \
+		vcpkg-0.2.15 \
+		vec_extract_if_polyfill-0.1.0 \
+		vec_map-0.8.2 \
+		version_check-0.9.4 \
+		void-1.0.2 \
+		wait-timeout-0.2.0 \
+		walkdir-2.3.2 \
+		want-0.3.0 \
+		wasi-0.9.0+wasi-snapshot-preview1 \
+		wasi-0.11.0+wasi-snapshot-preview1 \
+		wasi-0.13.3+wasi-0.2.2 \
+		wasm-bindgen-0.2.100 \
+		wasm-bindgen-backend-0.2.100 \
+		wasm-bindgen-futures-0.4.28 \
+		wasm-bindgen-macro-0.2.100 \
+		wasm-bindgen-macro-support-0.2.100 \
+		wasm-bindgen-shared-0.2.100 \
+		web-sys-0.3.55 \
+		web-time-1.1.0 \
+		webpki-root-certs-0.26.6 \
+		webpki-roots-0.24.0 \
+		webpki-roots-0.25.2 \
+		which-4.2.2 \
+		winapi-0.2.8 \
+		winapi-0.3.9 \
+		winapi-build-0.1.1 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-util-0.1.5 \
+		winapi-x86_64-pc-windows-gnu-0.4.0 \
+		windows-0.54.0 \
+		windows-core-0.54.0 \
+		windows-result-0.1.1 \
+		windows-sys-0.48.0 \
+		windows-sys-0.52.0 \
+		windows-sys-0.59.0 \
+		windows-targets-0.48.0 \
+		windows-targets-0.52.6 \
+		windows_aarch64_gnullvm-0.48.0 \
+		windows_aarch64_gnullvm-0.52.6 \
+		windows_aarch64_msvc-0.48.0 \
+		windows_aarch64_msvc-0.52.6 \
+		windows_i686_gnu-0.48.0 \
+		windows_i686_gnu-0.52.6 \
+		windows_i686_gnullvm-0.52.6 \
+		windows_i686_msvc-0.48.0 \
+		windows_i686_msvc-0.52.6 \
+		windows_x86_64_gnu-0.48.0 \
+		windows_x86_64_gnu-0.52.6 \
+		windows_x86_64_gnullvm-0.48.0 \
+		windows_x86_64_gnullvm-0.52.6 \
+		windows_x86_64_msvc-0.48.0 \
+		windows_x86_64_msvc-0.52.6 \
+		winnow-0.5.16 \
+		winnow-0.6.13 \
+		winreg-0.50.0 \
+		wit-bindgen-rt-0.33.0 \
+		write16-1.0.0 \
+		writeable-0.5.5 \
+		wyz-0.5.1 \
+		x509-parser-0.14.0 \
+		xattr-1.3.1 \
+		yaml-rust-0.4.5 \
+		yoke-0.7.4 \
+		yoke-derive-0.7.4 \
+		zerocopy-0.7.31 \
+		zerocopy-derive-0.7.31 \
+		zerofrom-0.1.4 \
+		zerofrom-derive-0.1.4 \
+		zeroize-1.8.1 \
+		zeroize_derive-1.4.2 \
+		zerovec-0.10.4 \
+		zerovec-derive-0.10.3 \
+		zstd-0.13.2 \
+		zstd-safe-7.2.1 \
+		zstd-sys-2.0.13+zstd.1.5.6 \
+		crossbeam-epoch@git+https://github.com/anza-xyz/crossbeam?rev=fd279d707025f0e60951e429bf778b4813d1b6bf\#fd279d707025f0e60951e429bf778b4813d1b6bf
+
+XARCH=		${ARCH:S/amd64/x86_64/:tu}
+
+MAKE_ENV=	${XARCH}_UNKNOWN_FREEBSD_OPENSSL_INCLUDE_DIR=${OPENSSLINC} \
+		${XARCH}_UNKNOWN_FREEBSD_OPENSSL_LIB_DIR=${OPENSSLLIB}
+
+BINARY_ALIAS=	llvm-config=${LOCALBASE}/bin/${LLVM_CONFIG}
+
+do-install:
+	for f in ${CARGO_TARGET_DIR}/*/${PORTNAME}* ${CARGO_TARGET_DIR}/*/solana*; do \
+		if [ -f $$f -a -x $$f ]; then \
+			${INSTALL_PROGRAM} $$f ${STAGEDIR}${PREFIX}/bin; \
+		fi \
+	done
+
+do-test:
+	@${CARGO_CARGO_RUN} test
+
+.include <bsd.port.mk>
diff --git a/security/agave/distinfo b/security/agave/distinfo
new file mode 100644
index 000000000000..3efe7f5d17ae
--- /dev/null
+++ b/security/agave/distinfo
@@ -0,0 +1,1731 @@
+TIMESTAMP = 1744998301
+SHA256 (rust/crates/Inflector-0.11.4.crate) = fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3
+SIZE (rust/crates/Inflector-0.11.4.crate) = 17438
+SHA256 (rust/crates/addr2line-0.20.0.crate) = f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3
+SIZE (rust/crates/addr2line-0.20.0.crate) = 39558
+SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe
+SIZE (rust/crates/adler-1.0.2.crate) = 12778
+SHA256 (rust/crates/aead-0.5.2.crate) = d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0
*** 3823 LINES SKIPPED ***