git: 27006a0d4c72 - main - ssecurity/pam_ssh_agent: New port

Matthew Seaman <[email protected]>
Newsgroups gmane.os.freebsd.devel.cvs.ports
Message-ID <[email protected]>
The branch main has been updated by matthew:

URL: https://cgit.FreeBSD.org/ports/commit/?id=27006a0d4c726a5d207fca9d469d0e3043a4b8c3

commit 27006a0d4c726a5d207fca9d469d0e3043a4b8c3
Author:     Matthew Seaman <[email protected]>
AuthorDate: 2026-08-08 10:42:48 +0000
Commit:     Matthew Seaman <[email protected]>
CommitDate: 2026-08-08 10:47:16 +0000

    ssecurity/pam_ssh_agent: New port
    
    pam_ssh_agent is a PAM module for authenticating using ssh-agent.
    
    A PAM authentication module determining the identity of a user based
    on a signature request and response sent via the ssh-agent protocol to
    a potentially remote ssh-agent.
    
    This project is a re-implementation of the pam_ssh_agent_auth module
    but does not share any code with that project. We are pretty close to
    covering all the features of the original implementation, along with
    some additional features such as authentication using SSH
    Certificates.
    
    See also: security/pam_rssh security/pam_ssh_agent_auth
---
 security/Makefile                |   1 +
 security/pam_ssh_agent/Makefile  | 190 +++++++++++++++++++++++
 security/pam_ssh_agent/distinfo  | 323 +++++++++++++++++++++++++++++++++++++++
 security/pam_ssh_agent/pkg-descr |  11 ++
 4 files changed, 525 insertions(+)

diff --git a/security/Makefile b/security/Makefile
index 7df2a8d50d6a..1e7fa3e08baf 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -781,6 +781,7 @@
     SUBDIR += pam_rssh
     SUBDIR += pam_script
     SUBDIR += pam_search_list
+    SUBDIR += pam_ssh_agent
     SUBDIR += pam_ssh_agent_auth
     SUBDIR += pam_u2f
     SUBDIR += pam_worker
diff --git a/security/pam_ssh_agent/Makefile b/security/pam_ssh_agent/Makefile
new file mode 100644
index 000000000000..cff0f93907c4
--- /dev/null
+++ b/security/pam_ssh_agent/Makefile
@@ -0,0 +1,190 @@
+PORTNAME=	pam-ssh-agent
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.9.7
+CATEGORIES=	security
+
+MAINTAINER=	[email protected]
+COMMENT=	PAM module for authenticating using ssh-agent
+WWW=		https://github.com/nresare/pam-ssh-agent
+
+LICENSE=	MIT APACHE20
+LICENSE_COMB=	dual
+LICENSE_FILE_MIT=	${WRKSRC}/LICENSE-MIT
+LICENSE_FILE_APACHE20=	${WRKSRC}/LICENSE-APACHE
+
+USES=		cargo ssl
+USE_GITHUB=	yes
+
+GH_ACCOUNT=	nresare
+
+CARGO_CRATES=	aho-corasick-1.1.4 \
+		anstream-1.0.0 \
+		anstyle-1.0.14 \
+		anstyle-parse-1.0.0 \
+		anstyle-query-1.1.5 \
+		anstyle-wincon-3.0.11 \
+		anyhow-1.0.102 \
+		autocfg-1.5.1 \
+		base16ct-0.2.0 \
+		base64-0.22.1 \
+		base64ct-1.8.3 \
+		bitflags-2.13.0 \
+		block-buffer-0.10.4 \
+		bytes-1.11.1 \
+		cc-1.2.63 \
+		cfg-if-1.0.4 \
+		cipher-0.4.4 \
+		colorchoice-1.0.5 \
+		const-oid-0.9.6 \
+		cpufeatures-0.2.17 \
+		crypto-bigint-0.5.5 \
+		crypto-common-0.1.6 \
+		curve25519-dalek-4.1.3 \
+		curve25519-dalek-derive-0.1.1 \
+		der-0.7.10 \
+		deranged-0.5.8 \
+		digest-0.10.7 \
+		doctest-file-1.1.1 \
+		ecdsa-0.16.9 \
+		ed25519-2.2.3 \
+		ed25519-dalek-2.2.0 \
+		elliptic-curve-0.13.8 \
+		env_filter-1.0.1 \
+		env_logger-0.11.10 \
+		equivalent-1.0.2 \
+		error-chain-0.12.4 \
+		ff-0.13.1 \
+		fiat-crypto-0.2.9 \
+		find-msvc-tools-0.1.9 \
+		foldhash-0.1.5 \
+		foreign-types-0.3.2 \
+		foreign-types-shared-0.1.1 \
+		generic-array-0.14.9 \
+		getrandom-0.2.17 \
+		getrandom-0.4.2 \
+		group-0.13.0 \
+		hashbrown-0.15.5 \
+		hashbrown-0.17.1 \
+		heck-0.5.0 \
+		hkdf-0.12.4 \
+		hmac-0.12.1 \
+		hostname-0.3.1 \
+		hostname-0.4.2 \
+		id-arena-2.3.0 \
+		indexmap-2.14.0 \
+		inout-0.1.4 \
+		interprocess-2.4.2 \
+		is_terminal_polyfill-1.70.2 \
+		itoa-1.0.18 \
+		jiff-0.2.28 \
+		jiff-static-0.2.28 \
+		lazy_static-1.5.0 \
+		leb128fmt-0.1.0 \
+		libc-0.2.186 \
+		libm-0.2.16 \
+		log-0.4.32 \
+		match_cfg-0.1.0 \
+		memchr-2.8.1 \
+		num-bigint-dig-0.8.6 \
+		num-conv-0.2.2 \
+		num-integer-0.1.46 \
+		num-iter-0.1.45 \
+		num-traits-0.2.19 \
+		num_threads-0.1.7 \
+		once_cell_polyfill-1.70.2 \
+		openssl-0.10.80 \
+		openssl-macros-0.1.1 \
+		openssl-sys-0.9.116 \
+		p256-0.13.2 \
+		p384-0.13.1 \
+		p521-0.13.3 \
+		pam-bindings-0.3.0 \
+		pem-rfc7468-0.7.0 \
+		pkcs1-0.7.5 \
+		pkcs8-0.10.2 \
+		pkg-config-0.3.33 \
+		portable-atomic-1.13.1 \
+		portable-atomic-util-0.2.7 \
+		powerfmt-0.2.0 \
+		ppv-lite86-0.2.21 \
+		prettyplease-0.2.37 \
+		primeorder-0.13.6 \
+		proc-macro2-1.0.106 \
+		quote-1.0.45 \
+		r-efi-6.0.0 \
+		rand-0.8.6 \
+		rand_chacha-0.3.1 \
+		rand_core-0.6.4 \
+		recvmsg-1.0.0 \
+		regex-1.12.3 \
+		regex-automata-0.4.14 \
+		regex-syntax-0.8.10 \
+		rfc6979-0.4.0 \
+		rsa-0.9.10 \
+		rustc_version-0.4.1 \
+		sec1-0.7.3 \
+		semver-1.0.28 \
+		serde-1.0.228 \
+		serde_core-1.0.228 \
+		serde_derive-1.0.228 \
+		serde_json-1.0.150 \
+		sha2-0.10.9 \
+		shlex-2.0.1 \
+		signature-2.2.0 \
+		smallvec-1.15.1 \
+		spin-0.9.8 \
+		spki-0.7.3 \
+		ssh-agent-client-rs-1.1.3 \
+		ssh-cipher-0.2.0 \
+		ssh-encoding-0.2.0 \
+		ssh-key-0.6.7 \
+		subtle-2.6.1 \
+		syn-2.0.117 \
+		syslog-6.1.1 \
+		thiserror-2.0.18 \
+		thiserror-impl-2.0.18 \
+		time-0.3.47 \
+		time-core-0.1.8 \
+		time-macros-0.2.27 \
+		typenum-1.20.1 \
+		unicode-ident-1.0.24 \
+		unicode-xid-0.2.6 \
+		utf8parse-0.2.2 \
+		uzers-0.12.2 \
+		vcpkg-0.2.15 \
+		version_check-0.9.5 \
+		wait-timeout-0.2.1 \
+		wasi-0.11.1+wasi-snapshot-preview1 \
+		wasip2-1.0.3+wasi-0.2.9 \
+		wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06 \
+		wasm-encoder-0.244.0 \
+		wasm-metadata-0.244.0 \
+		wasmparser-0.244.0 \
+		widestring-1.2.1 \
+		winapi-0.3.9 \
+		winapi-i686-pc-windows-gnu-0.4.0 \
+		winapi-x86_64-pc-windows-gnu-0.4.0 \
+		windows-link-0.2.1 \
+		windows-sys-0.61.2 \
+		wit-bindgen-0.51.0 \
+		wit-bindgen-0.57.1 \
+		wit-bindgen-core-0.51.0 \
+		wit-bindgen-rust-0.51.0 \
+		wit-bindgen-rust-macro-0.51.0 \
+		wit-component-0.244.0 \
+		wit-parser-0.244.0 \
+		zerocopy-0.8.50 \
+		zerocopy-derive-0.8.50 \
+		zeroize-1.8.2 \
+		zmij-1.0.21
+
+PLIST_FILES=	lib/pam_ssh_agent.so
+
+do-install:
+.ifdef WITH_DEBUG
+	${INSTALL_LIB} ${CARGO_TARGET_DIR}/debug/libpam_ssh_agent.so ${STAGEDIR}${PREFIX}/lib/pam_ssh_agent.so
+.else
+	${INSTALL_LIB} ${CARGO_TARGET_DIR}/release/libpam_ssh_agent.so ${STAGEDIR}${PREFIX}/lib/pam_ssh_agent.so
+.endif
+
+.include <bsd.port.mk>
diff --git a/security/pam_ssh_agent/distinfo b/security/pam_ssh_agent/distinfo
new file mode 100644
index 000000000000..47329ac1be0a
--- /dev/null
+++ b/security/pam_ssh_agent/distinfo
@@ -0,0 +1,323 @@
+TIMESTAMP = 1786183664
+SHA256 (rust/crates/aho-corasick-1.1.4.crate) = ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301
+SIZE (rust/crates/aho-corasick-1.1.4.crate) = 184015
+SHA256 (rust/crates/anstream-1.0.0.crate) = 824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d
+SIZE (rust/crates/anstream-1.0.0.crate) = 28916
+SHA256 (rust/crates/anstyle-1.0.14.crate) = 940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000
+SIZE (rust/crates/anstyle-1.0.14.crate) = 17787
+SHA256 (rust/crates/anstyle-parse-1.0.0.crate) = 52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e
+SIZE (rust/crates/anstyle-parse-1.0.0.crate) = 22042
+SHA256 (rust/crates/anstyle-query-1.1.5.crate) = 40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc
+SIZE (rust/crates/anstyle-query-1.1.5.crate) = 10264
+SHA256 (rust/crates/anstyle-wincon-3.0.11.crate) = 291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d
+SIZE (rust/crates/anstyle-wincon-3.0.11.crate) = 12638
+SHA256 (rust/crates/anyhow-1.0.102.crate) = 7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c
+SIZE (rust/crates/anyhow-1.0.102.crate) = 48658
+SHA256 (rust/crates/autocfg-1.5.1.crate) = f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53
+SIZE (rust/crates/autocfg-1.5.1.crate) = 18911
+SHA256 (rust/crates/base16ct-0.2.0.crate) = 4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf
+SIZE (rust/crates/base16ct-0.2.0.crate) = 10240
+SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6
+SIZE (rust/crates/base64-0.22.1.crate) = 81597
+SHA256 (rust/crates/base64ct-1.8.3.crate) = 2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06
+SIZE (rust/crates/base64ct-1.8.3.crate) = 32227
+SHA256 (rust/crates/bitflags-2.13.0.crate) = b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8
+SIZE (rust/crates/bitflags-2.13.0.crate) = 51280
+SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71
+SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538
+SHA256 (rust/crates/bytes-1.11.1.crate) = 1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33
+SIZE (rust/crates/bytes-1.11.1.crate) = 78584
+SHA256 (rust/crates/cc-1.2.63.crate) = 556e016178bb5662a08681bbe0f00f8e17631781a4dfc8c45e466e4b185ec27f
+SIZE (rust/crates/cc-1.2.63.crate) = 97259
+SHA256 (rust/crates/cfg-if-1.0.4.crate) = 9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801
+SIZE (rust/crates/cfg-if-1.0.4.crate) = 9360
+SHA256 (rust/crates/cipher-0.4.4.crate) = 773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad
+SIZE (rust/crates/cipher-0.4.4.crate) = 19073
+SHA256 (rust/crates/colorchoice-1.0.5.crate) = 1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570
+SIZE (rust/crates/colorchoice-1.0.5.crate) = 8187
+SHA256 (rust/crates/const-oid-0.9.6.crate) = c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8
+SIZE (rust/crates/const-oid-0.9.6.crate) = 45382
+SHA256 (rust/crates/cpufeatures-0.2.17.crate) = 59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280
+SIZE (rust/crates/cpufeatures-0.2.17.crate) = 13466
+SHA256 (rust/crates/crypto-bigint-0.5.5.crate) = 0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76
+SIZE (rust/crates/crypto-bigint-0.5.5.crate) = 83384
+SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3
+SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760
+SHA256 (rust/crates/curve25519-dalek-4.1.3.crate) = 97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be
+SIZE (rust/crates/curve25519-dalek-4.1.3.crate) = 306017
+SHA256 (rust/crates/curve25519-dalek-derive-0.1.1.crate) = f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3
+SIZE (rust/crates/curve25519-dalek-derive-0.1.1.crate) = 11723
+SHA256 (rust/crates/der-0.7.10.crate) = e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb
+SIZE (rust/crates/der-0.7.10.crate) = 90111
+SHA256 (rust/crates/deranged-0.5.8.crate) = 7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c
+SIZE (rust/crates/deranged-0.5.8.crate) = 26885
+SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292
+SIZE (rust/crates/digest-0.10.7.crate) = 19557
+SHA256 (rust/crates/doctest-file-1.1.1.crate) = c2db04e74f0a9a93103b50e90b96024c9b2bdca8bce6a632ec71b88736d3d359
+SIZE (rust/crates/doctest-file-1.1.1.crate) = 14391
+SHA256 (rust/crates/ecdsa-0.16.9.crate) = ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca
+SIZE (rust/crates/ecdsa-0.16.9.crate) = 31406
+SHA256 (rust/crates/ed25519-2.2.3.crate) = 115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53
+SIZE (rust/crates/ed25519-2.2.3.crate) = 17802
+SHA256 (rust/crates/ed25519-dalek-2.2.0.crate) = 70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9
+SIZE (rust/crates/ed25519-dalek-2.2.0.crate) = 98034
+SHA256 (rust/crates/elliptic-curve-0.13.8.crate) = b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47
+SIZE (rust/crates/elliptic-curve-0.13.8.crate) = 63198
+SHA256 (rust/crates/env_filter-1.0.1.crate) = 32e90c2accc4b07a8456ea0debdc2e7587bdd890680d71173a15d4ae604f6eef
+SIZE (rust/crates/env_filter-1.0.1.crate) = 15045
+SHA256 (rust/crates/env_logger-0.11.10.crate) = 0621c04f2196ac3f488dd583365b9c09be011a4ab8b9f37248ffcc8f6198b56a
+SIZE (rust/crates/env_logger-0.11.10.crate) = 31613
+SHA256 (rust/crates/equivalent-1.0.2.crate) = 877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f
+SIZE (rust/crates/equivalent-1.0.2.crate) = 7419
+SHA256 (rust/crates/error-chain-0.12.4.crate) = 2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc
+SIZE (rust/crates/error-chain-0.12.4.crate) = 29274
+SHA256 (rust/crates/ff-0.13.1.crate) = c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393
+SIZE (rust/crates/ff-0.13.1.crate) = 18607
+SHA256 (rust/crates/fiat-crypto-0.2.9.crate) = 28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d
+SIZE (rust/crates/fiat-crypto-0.2.9.crate) = 495390
+SHA256 (rust/crates/find-msvc-tools-0.1.9.crate) = 5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582
+SIZE (rust/crates/find-msvc-tools-0.1.9.crate) = 31493
+SHA256 (rust/crates/foldhash-0.1.5.crate) = d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2
+SIZE (rust/crates/foldhash-0.1.5.crate) = 21901
+SHA256 (rust/crates/foreign-types-0.3.2.crate) = f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1
+SIZE (rust/crates/foreign-types-0.3.2.crate) = 7504
+SHA256 (rust/crates/foreign-types-shared-0.1.1.crate) = 00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b
+SIZE (rust/crates/foreign-types-shared-0.1.1.crate) = 5672
+SHA256 (rust/crates/generic-array-0.14.9.crate) = 4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2
+SIZE (rust/crates/generic-array-0.14.9.crate) = 17439
+SHA256 (rust/crates/getrandom-0.2.17.crate) = ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0
+SIZE (rust/crates/getrandom-0.2.17.crate) = 40780
+SHA256 (rust/crates/getrandom-0.4.2.crate) = 0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555
+SIZE (rust/crates/getrandom-0.4.2.crate) = 53905
+SHA256 (rust/crates/group-0.13.0.crate) = f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63
+SIZE (rust/crates/group-0.13.0.crate) = 16526
+SHA256 (rust/crates/hashbrown-0.15.5.crate) = 9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1
+SIZE (rust/crates/hashbrown-0.15.5.crate) = 140908
+SHA256 (rust/crates/hashbrown-0.17.1.crate) = ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a
+SIZE (rust/crates/hashbrown-0.17.1.crate) = 155512
+SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
+SIZE (rust/crates/heck-0.5.0.crate) = 11517
+SHA256 (rust/crates/hkdf-0.12.4.crate) = 7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7
+SIZE (rust/crates/hkdf-0.12.4.crate) = 171163
+SHA256 (rust/crates/hmac-0.12.1.crate) = 6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e
+SIZE (rust/crates/hmac-0.12.1.crate) = 42657
+SHA256 (rust/crates/hostname-0.3.1.crate) = 3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867
+SIZE (rust/crates/hostname-0.3.1.crate) = 9272
+SHA256 (rust/crates/hostname-0.4.2.crate) = 617aaa3557aef3810a6369d0a99fac8a080891b68bd9f9812a1eeda0c0730cbd
+SIZE (rust/crates/hostname-0.4.2.crate) = 12983
+SHA256 (rust/crates/id-arena-2.3.0.crate) = 3d3067d79b975e8844ca9eb072e16b31c3c1c36928edf9c6789548c524d0d954
+SIZE (rust/crates/id-arena-2.3.0.crate) = 12883
+SHA256 (rust/crates/indexmap-2.14.0.crate) = d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9
+SIZE (rust/crates/indexmap-2.14.0.crate) = 104085
+SHA256 (rust/crates/inout-0.1.4.crate) = 879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01
+SIZE (rust/crates/inout-0.1.4.crate) = 11280
+SHA256 (rust/crates/interprocess-2.4.2.crate) = 069323743400cb7ab06a8fe5c1ed911d36b6919ec531661d034c89083629595b
+SIZE (rust/crates/interprocess-2.4.2.crate) = 150979
+SHA256 (rust/crates/is_terminal_polyfill-1.70.2.crate) = a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695
+SIZE (rust/crates/is_terminal_polyfill-1.70.2.crate) = 7548
+SHA256 (rust/crates/itoa-1.0.18.crate) = 8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682
+SIZE (rust/crates/itoa-1.0.18.crate) = 15935
+SHA256 (rust/crates/jiff-0.2.28.crate) = 4603d3033e49e2b0e31229fcab20a5d40089c607d975cd9c80551dc69eed9102
+SIZE (rust/crates/jiff-0.2.28.crate) = 763563
+SHA256 (rust/crates/jiff-static-0.2.28.crate) = 782d32378dddf207193ac91cefb848ad41abb58195c95168e1291227a0832b47
+SIZE (rust/crates/jiff-static-0.2.28.crate) = 83742
+SHA256 (rust/crates/lazy_static-1.5.0.crate) = bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe
+SIZE (rust/crates/lazy_static-1.5.0.crate) = 14025
+SHA256 (rust/crates/leb128fmt-0.1.0.crate) = 09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2
+SIZE (rust/crates/leb128fmt-0.1.0.crate) = 14138
+SHA256 (rust/crates/libc-0.2.186.crate) = 68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66
+SIZE (rust/crates/libc-0.2.186.crate) = 821883
+SHA256 (rust/crates/libm-0.2.16.crate) = b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981
+SIZE (rust/crates/libm-0.2.16.crate) = 164243
+SHA256 (rust/crates/log-0.4.32.crate) = 953f07c43838f8e6f9758cab68bf5bed85465e7587ebe0b823f1bcd81978ad3a
+SIZE (rust/crates/log-0.4.32.crate) = 52697
+SHA256 (rust/crates/match_cfg-0.1.0.crate) = ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4
+SIZE (rust/crates/match_cfg-0.1.0.crate) = 7153
+SHA256 (rust/crates/memchr-2.8.1.crate) = 6b947ae49db0d222b1dbc6b113ce7248a3fc3a6ca21b696717bfc000ba4484d8
+SIZE (rust/crates/memchr-2.8.1.crate) = 98743
+SHA256 (rust/crates/num-bigint-dig-0.8.6.crate) = e661dda6640fad38e827a6d4a310ff4763082116fe217f279885c97f511bb0b7
+SIZE (rust/crates/num-bigint-dig-0.8.6.crate) = 126196
+SHA256 (rust/crates/num-conv-0.2.2.crate) = 521739c6d2bac4aa25192232afe6841231376b2b26d4d9fae5ecf8ca5772e441
+SIZE (rust/crates/num-conv-0.2.2.crate) = 7441
+SHA256 (rust/crates/num-integer-0.1.46.crate) = 7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f
+SIZE (rust/crates/num-integer-0.1.46.crate) = 22331
+SHA256 (rust/crates/num-iter-0.1.45.crate) = 1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf
+SIZE (rust/crates/num-iter-0.1.45.crate) = 10320
+SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841
+SIZE (rust/crates/num-traits-0.2.19.crate) = 51631
+SHA256 (rust/crates/num_threads-0.1.7.crate) = 5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9
+SIZE (rust/crates/num_threads-0.1.7.crate) = 7455
+SHA256 (rust/crates/once_cell_polyfill-1.70.2.crate) = 384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe
+SIZE (rust/crates/once_cell_polyfill-1.70.2.crate) = 7448
+SHA256 (rust/crates/openssl-0.10.80.crate) = a45fa2aa886c42762255da344f0a0d313e254066c46aad76f300c3d3da62d967
+SIZE (rust/crates/openssl-0.10.80.crate) = 307341
+SHA256 (rust/crates/openssl-macros-0.1.1.crate) = a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c
+SIZE (rust/crates/openssl-macros-0.1.1.crate) = 5601
+SHA256 (rust/crates/openssl-sys-0.9.116.crate) = f28a22dc7140cda5f096e5e7724a6962ca81a7f8bfd2979f9b18c11af56318c4
+SIZE (rust/crates/openssl-sys-0.9.116.crate) = 75899
+SHA256 (rust/crates/p256-0.13.2.crate) = c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b
+SIZE (rust/crates/p256-0.13.2.crate) = 63434
+SHA256 (rust/crates/p384-0.13.1.crate) = fe42f1670a52a47d448f14b6a5c61dd78fce51856e68edaa38f7ae3a46b8d6b6
+SIZE (rust/crates/p384-0.13.1.crate) = 193022
+SHA256 (rust/crates/p521-0.13.3.crate) = 0fc9e2161f1f215afdfce23677034ae137bbd45016a880c2eb3ba8eb95f085b2
+SIZE (rust/crates/p521-0.13.3.crate) = 138499
+SHA256 (rust/crates/pam-bindings-0.3.0.crate) = 95ca8ded51d7b55e02c84ee36e024ea9843d800da0ed371e07e6733092bd073e
+SIZE (rust/crates/pam-bindings-0.3.0.crate) = 18525
+SHA256 (rust/crates/pem-rfc7468-0.7.0.crate) = 88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412
+SIZE (rust/crates/pem-rfc7468-0.7.0.crate) = 24159
+SHA256 (rust/crates/pkcs1-0.7.5.crate) = c8ffb9f10fa047879315e6625af03c164b16962a5368d724ed16323b68ace47f
+SIZE (rust/crates/pkcs1-0.7.5.crate) = 35790
+SHA256 (rust/crates/pkcs8-0.10.2.crate) = f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7
+SIZE (rust/crates/pkcs8-0.10.2.crate) = 26360
+SHA256 (rust/crates/pkg-config-0.3.33.crate) = 19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e
+SIZE (rust/crates/pkg-config-0.3.33.crate) = 21590
+SHA256 (rust/crates/portable-atomic-1.13.1.crate) = c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49
+SIZE (rust/crates/portable-atomic-1.13.1.crate) = 197001
+SHA256 (rust/crates/portable-atomic-util-0.2.7.crate) = c2a106d1259c23fac8e543272398ae0e3c0b8d33c88ed73d0cc71b0f1d902618
+SIZE (rust/crates/portable-atomic-util-0.2.7.crate) = 53577
+SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391
+SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165
+SHA256 (rust/crates/ppv-lite86-0.2.21.crate) = 85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9
+SIZE (rust/crates/ppv-lite86-0.2.21.crate) = 22522
+SHA256 (rust/crates/prettyplease-0.2.37.crate) = 479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b
+SIZE (rust/crates/prettyplease-0.2.37.crate) = 72033
+SHA256 (rust/crates/primeorder-0.13.6.crate) = 353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6
+SIZE (rust/crates/primeorder-0.13.6.crate) = 21296
+SHA256 (rust/crates/proc-macro2-1.0.106.crate) = 8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934
+SIZE (rust/crates/proc-macro2-1.0.106.crate) = 59765
+SHA256 (rust/crates/quote-1.0.45.crate) = 41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924
+SIZE (rust/crates/quote-1.0.45.crate) = 31564
+SHA256 (rust/crates/r-efi-6.0.0.crate) = f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf
+SIZE (rust/crates/r-efi-6.0.0.crate) = 65303
+SHA256 (rust/crates/rand-0.8.6.crate) = 5ca0ecfa931c29007047d1bc58e623ab12e5590e8c7cc53200d5202b69266d8a
+SIZE (rust/crates/rand-0.8.6.crate) = 83339
+SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88
+SIZE (rust/crates/rand_chacha-0.3.1.crate) = 15251
+SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c
+SIZE (rust/crates/rand_core-0.6.4.crate) = 22666
+SHA256 (rust/crates/recvmsg-1.0.0.crate) = d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175
+SIZE (rust/crates/recvmsg-1.0.0.crate) = 29694
+SHA256 (rust/crates/regex-1.12.3.crate) = e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276
+SIZE (rust/crates/regex-1.12.3.crate) = 153392
+SHA256 (rust/crates/regex-automata-0.4.14.crate) = 6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f
+SIZE (rust/crates/regex-automata-0.4.14.crate) = 618012
+SHA256 (rust/crates/regex-syntax-0.8.10.crate) = dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a
+SIZE (rust/crates/regex-syntax-0.8.10.crate) = 358781
+SHA256 (rust/crates/rfc6979-0.4.0.crate) = f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2
+SIZE (rust/crates/rfc6979-0.4.0.crate) = 9140
+SHA256 (rust/crates/rsa-0.9.10.crate) = b8573f03f5883dcaebdfcf4725caa1ecb9c15b2ef50c43a07b816e06799bb12d
+SIZE (rust/crates/rsa-0.9.10.crate) = 86417
+SHA256 (rust/crates/rustc_version-0.4.1.crate) = cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92
+SIZE (rust/crates/rustc_version-0.4.1.crate) = 12245
+SHA256 (rust/crates/sec1-0.7.3.crate) = d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc
+SIZE (rust/crates/sec1-0.7.3.crate) = 17979
+SHA256 (rust/crates/semver-1.0.28.crate) = 8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd
+SIZE (rust/crates/semver-1.0.28.crate) = 33064
+SHA256 (rust/crates/serde-1.0.228.crate) = 9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e
+SIZE (rust/crates/serde-1.0.228.crate) = 83652
+SHA256 (rust/crates/serde_core-1.0.228.crate) = 41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad
+SIZE (rust/crates/serde_core-1.0.228.crate) = 63111
+SHA256 (rust/crates/serde_derive-1.0.228.crate) = d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79
+SIZE (rust/crates/serde_derive-1.0.228.crate) = 59605
+SHA256 (rust/crates/serde_json-1.0.150.crate) = e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9
+SIZE (rust/crates/serde_json-1.0.150.crate) = 155574
+SHA256 (rust/crates/sha2-0.10.9.crate) = a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283
+SIZE (rust/crates/sha2-0.10.9.crate) = 29271
+SHA256 (rust/crates/shlex-2.0.1.crate) = f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba
+SIZE (rust/crates/shlex-2.0.1.crate) = 19332
+SHA256 (rust/crates/signature-2.2.0.crate) = 77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de
+SIZE (rust/crates/signature-2.2.0.crate) = 15531
+SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03
+SIZE (rust/crates/smallvec-1.15.1.crate) = 38116
+SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67
+SIZE (rust/crates/spin-0.9.8.crate) = 38958
+SHA256 (rust/crates/spki-0.7.3.crate) = d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d
+SIZE (rust/crates/spki-0.7.3.crate) = 16409
+SHA256 (rust/crates/ssh-agent-client-rs-1.1.3.crate) = d0eca9f3c8984d0deb4e773ab3bb8aab0c9c0276b63b72d82c090fe58a620cf9
+SIZE (rust/crates/ssh-agent-client-rs-1.1.3.crate) = 30179
+SHA256 (rust/crates/ssh-cipher-0.2.0.crate) = caac132742f0d33c3af65bfcde7f6aa8f62f0e991d80db99149eb9d44708784f
+SIZE (rust/crates/ssh-cipher-0.2.0.crate) = 10843
+SHA256 (rust/crates/ssh-encoding-0.2.0.crate) = eb9242b9ef4108a78e8cd1a2c98e193ef372437f8c22be363075233321dd4a15
+SIZE (rust/crates/ssh-encoding-0.2.0.crate) = 13600
+SHA256 (rust/crates/ssh-key-0.6.7.crate) = 3b86f5297f0f04d08cabaa0f6bff7cb6aec4d9c3b49d87990d63da9d9156a8c3
+SIZE (rust/crates/ssh-key-0.6.7.crate) = 112921
+SHA256 (rust/crates/subtle-2.6.1.crate) = 13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292
+SIZE (rust/crates/subtle-2.6.1.crate) = 14562
+SHA256 (rust/crates/syn-2.0.117.crate) = e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99
+SIZE (rust/crates/syn-2.0.117.crate) = 306011
+SHA256 (rust/crates/syslog-6.1.1.crate) = dfc7e95b5b795122fafe6519e27629b5ab4232c73ebb2428f568e82b1a457ad3
+SIZE (rust/crates/syslog-6.1.1.crate) = 10017
+SHA256 (rust/crates/thiserror-2.0.18.crate) = 4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4
+SIZE (rust/crates/thiserror-2.0.18.crate) = 28875
+SHA256 (rust/crates/thiserror-impl-2.0.18.crate) = ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5
+SIZE (rust/crates/thiserror-impl-2.0.18.crate) = 21413
+SHA256 (rust/crates/time-0.3.47.crate) = 743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c
+SIZE (rust/crates/time-0.3.47.crate) = 225161
+SHA256 (rust/crates/time-core-0.1.8.crate) = 7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca
+SIZE (rust/crates/time-core-0.1.8.crate) = 9634
+SHA256 (rust/crates/time-macros-0.2.27.crate) = 2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215
+SIZE (rust/crates/time-macros-0.2.27.crate) = 25144
+SHA256 (rust/crates/typenum-1.20.1.crate) = b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20
+SIZE (rust/crates/typenum-1.20.1.crate) = 105479
+SHA256 (rust/crates/unicode-ident-1.0.24.crate) = e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75
+SIZE (rust/crates/unicode-ident-1.0.24.crate) = 49298
+SHA256 (rust/crates/unicode-xid-0.2.6.crate) = ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853
+SIZE (rust/crates/unicode-xid-0.2.6.crate) = 15744
+SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821
+SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
+SHA256 (rust/crates/uzers-0.12.2.crate) = 0b8275fb1afee25b4111d2dc8b5c505dbbc4afd0b990cb96deb2d88bff8be18d
+SIZE (rust/crates/uzers-0.12.2.crate) = 29598
+SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426
+SIZE (rust/crates/vcpkg-0.2.15.crate) = 228735
+SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a
+SIZE (rust/crates/version_check-0.9.5.crate) = 15554
+SHA256 (rust/crates/wait-timeout-0.2.1.crate) = 09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11
+SIZE (rust/crates/wait-timeout-0.2.1.crate) = 11435
+SHA256 (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b
+SIZE (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = 28477
+SHA256 (rust/crates/wasip2-1.0.3+wasi-0.2.9.crate) = 20064672db26d7cdc89c7798c48a0fdfac8213434a1186e5ef29fd560ae223d6
+SIZE (rust/crates/wasip2-1.0.3+wasi-0.2.9.crate) = 134512
+SHA256 (rust/crates/wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06.crate) = 5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5
+SIZE (rust/crates/wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06.crate) = 123354
+SHA256 (rust/crates/wasm-encoder-0.244.0.crate) = 990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319
+SIZE (rust/crates/wasm-encoder-0.244.0.crate) = 85804
+SHA256 (rust/crates/wasm-metadata-0.244.0.crate) = bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909
+SIZE (rust/crates/wasm-metadata-0.244.0.crate) = 21500
+SHA256 (rust/crates/wasmparser-0.244.0.crate) = 47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe
+SIZE (rust/crates/wasmparser-0.244.0.crate) = 265607
+SHA256 (rust/crates/widestring-1.2.1.crate) = 72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471
+SIZE (rust/crates/widestring-1.2.1.crate) = 90350
+SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
+SIZE (rust/crates/winapi-0.3.9.crate) = 1200382
+SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6
+SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
+SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
+SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
+SHA256 (rust/crates/windows-link-0.2.1.crate) = f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5
+SIZE (rust/crates/windows-link-0.2.1.crate) = 6133
+SHA256 (rust/crates/windows-sys-0.61.2.crate) = ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc
+SIZE (rust/crates/windows-sys-0.61.2.crate) = 2517186
+SHA256 (rust/crates/wit-bindgen-0.51.0.crate) = d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5
+SIZE (rust/crates/wit-bindgen-0.51.0.crate) = 68035
+SHA256 (rust/crates/wit-bindgen-0.57.1.crate) = 1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e
+SIZE (rust/crates/wit-bindgen-0.57.1.crate) = 71227
+SHA256 (rust/crates/wit-bindgen-core-0.51.0.crate) = ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc
+SIZE (rust/crates/wit-bindgen-core-0.51.0.crate) = 35048
+SHA256 (rust/crates/wit-bindgen-rust-0.51.0.crate) = b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21
+SIZE (rust/crates/wit-bindgen-rust-0.51.0.crate) = 57051
+SHA256 (rust/crates/wit-bindgen-rust-macro-0.51.0.crate) = 0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a
+SIZE (rust/crates/wit-bindgen-rust-macro-0.51.0.crate) = 14283
+SHA256 (rust/crates/wit-component-0.244.0.crate) = 9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2
+SIZE (rust/crates/wit-component-0.244.0.crate) = 256882
+SHA256 (rust/crates/wit-parser-0.244.0.crate) = ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736
+SIZE (rust/crates/wit-parser-0.244.0.crate) = 159371
+SHA256 (rust/crates/zerocopy-0.8.50.crate) = 3b065d4f0e55f82fae73202e189638116a87c55ab6b8e6c2721e13dd9d854ad1
+SIZE (rust/crates/zerocopy-0.8.50.crate) = 287760
+SHA256 (rust/crates/zerocopy-derive-0.8.50.crate) = 0b631b19d36a892ab55420c92dbc83ccd79274f25be714855d3074aa71cab639
+SIZE (rust/crates/zerocopy-derive-0.8.50.crate) = 97640
+SHA256 (rust/crates/zeroize-1.8.2.crate) = b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0
+SIZE (rust/crates/zeroize-1.8.2.crate) = 20907
+SHA256 (rust/crates/zmij-1.0.21.crate) = b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa
+SIZE (rust/crates/zmij-1.0.21.crate) = 26665
+SHA256 (nresare-pam-ssh-agent-v0.9.7_GH0.tar.gz) = 05da5216ff81cce623d27a8c428785e1b7d41ecff9847773b73ccf44fd8ec079
+SIZE (nresare-pam-ssh-agent-v0.9.7_GH0.tar.gz) = 46106
diff --git a/security/pam_ssh_agent/pkg-descr b/security/pam_ssh_agent/pkg-descr
new file mode 100644
index 000000000000..cb514c7d148a
--- /dev/null
+++ b/security/pam_ssh_agent/pkg-descr
@@ -0,0 +1,11 @@
+A PAM authentication module determining the identity of a user based
+on a signature request and response sent via the ssh-agent protocol to
+a potentially remote ssh-agent.
+
+This project is a re-implementation of the pam_ssh_agent_auth module
+but does not share any code with that project. We are pretty close to
+covering all the features of the original implementation, along with
+some additional features such as authentication using SSH
+Certificates.
+
+See also: security/pam_rssh security/pam_ssh_agent_auth
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.