From 226274da23b7ddcfa6aaf037a3a570930f967a70 Mon Sep 17 00:00:00 2001 From: Firstyear Date: Sat, 4 Jan 2025 09:22:44 +1000 Subject: [PATCH] 20250102 freebsd client (#3333) Support freebsd as a unix client --- Cargo.lock | 5 +- libs/profiles/container_generic.toml | 9 +- libs/profiles/developer.toml | 9 +- libs/profiles/release_freebsd.toml | 7 + libs/profiles/release_linux.toml | 9 +- libs/profiles/src/lib.rs | 29 +- platform/freebsd/README.md | 4 + platform/freebsd/client/Makefile | 49 + platform/freebsd/client/Makefile.crates | 624 ++++++++ platform/freebsd/client/distinfo | 1251 +++++++++++++++++ platform/freebsd/client/files/kanidm_unixd.in | 27 + .../client/files/kanidm_unixd_tasks.in | 27 + platform/freebsd/client/pkg-descr | 1 + platform/freebsd/client/pkg-plist | 13 + server/core/src/config.rs | 2 +- server/core/src/https/mod.rs | 6 +- server/daemon/src/main.rs | 6 +- unix_integration/common/src/constants.rs | 4 +- unix_integration/nss_kanidm/Cargo.toml | 3 + unix_integration/nss_kanidm/build.rs | 12 + unix_integration/nss_kanidm/src/freebsd_nss.c | 94 ++ unix_integration/nss_kanidm/src/lib.rs | 26 + 22 files changed, 2182 insertions(+), 35 deletions(-) create mode 100644 libs/profiles/release_freebsd.toml create mode 100644 platform/freebsd/README.md create mode 100644 platform/freebsd/client/Makefile create mode 100644 platform/freebsd/client/Makefile.crates create mode 100644 platform/freebsd/client/distinfo create mode 100644 platform/freebsd/client/files/kanidm_unixd.in create mode 100644 platform/freebsd/client/files/kanidm_unixd_tasks.in create mode 100644 platform/freebsd/client/pkg-descr create mode 100644 platform/freebsd/client/pkg-plist create mode 100644 unix_integration/nss_kanidm/build.rs create mode 100644 unix_integration/nss_kanidm/src/freebsd_nss.c diff --git a/Cargo.lock b/Cargo.lock index 248ba49df..0f2523002 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -725,9 +725,9 @@ checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" [[package]] name = "cc" -version = "1.2.5" +version = "1.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31a0499c1dc64f458ad13872de75c0eb7e3fdb0e67964610c914b034fc5956e" +checksum = "8d6dbb628b8f8555f86d0323c2eb39e3ec81901f4b83e091db8a6a76d316a333" dependencies = [ "shlex", ] @@ -3789,6 +3789,7 @@ dependencies = [ name = "nss_kanidm" version = "1.5.0-dev" dependencies = [ + "cc", "kanidm_unix_common", "lazy_static", "libc", diff --git a/libs/profiles/container_generic.toml b/libs/profiles/container_generic.toml index b4049d809..614d93bff 100644 --- a/libs/profiles/container_generic.toml +++ b/libs/profiles/container_generic.toml @@ -1,6 +1,7 @@ -htmx_ui_pkg_path = "/hpkg" # Don't set the cpu_flags to autodetect for this platform # cpu_flags = "none" -admin_bind_path = "/data/kanidmd.sock" -default_config_path = "/data/server.toml" -default_unix_shell_path = "/bin/false" +server_admin_bind_path = "/data/kanidmd.sock" +server_ui_pkg_path = "/hpkg" +server_config_path = "/data/server.toml" +resolver_config_path = "/data/unixd" +resolver_unix_shell_path = "/bin/false" diff --git a/libs/profiles/developer.toml b/libs/profiles/developer.toml index bb0c79d55..42539e20f 100644 --- a/libs/profiles/developer.toml +++ b/libs/profiles/developer.toml @@ -1,6 +1,7 @@ -htmx_ui_pkg_path = "../core/static" # Set to native for developer machines. cpu_flags = "native" -admin_bind_path = "/tmp/kanidmd.sock" -default_config_path = "../../examples/insecure_server.toml" -default_unix_shell_path = "/bin/bash" +server_admin_bind_path = "/tmp/kanidmd.sock" +server_ui_pkg_path = "../core/static" +server_config_path = "../../examples/insecure_server.toml" +resolver_config_path = "/tmp/unixd" +resolver_unix_shell_path = "/bin/bash" diff --git a/libs/profiles/release_freebsd.toml b/libs/profiles/release_freebsd.toml new file mode 100644 index 000000000..305da3d1c --- /dev/null +++ b/libs/profiles/release_freebsd.toml @@ -0,0 +1,7 @@ +# Don't set the value for autodetect +# cpu_flags = "none" +server_admin_bind_path = "/var/run/kanidmd/sock" +server_ui_pkg_path = "/usr/local/share/kanidm/ui/hpkg" +server_config_path = "/usr/local/etc/kanidm/server.toml" +resolver_config_path = "/usr/local/etc/kanidm/unixd" +resolver_unix_shell_path = "/bin/sh" diff --git a/libs/profiles/release_linux.toml b/libs/profiles/release_linux.toml index 2b8239181..1b12a2309 100644 --- a/libs/profiles/release_linux.toml +++ b/libs/profiles/release_linux.toml @@ -1,6 +1,7 @@ -htmx_ui_pkg_path = "/usr/share/kanidm/ui/hpkg" # Don't set the value for autodetect # cpu_flags = "none" -admin_bind_path = "/var/run/kanidmd/sock" -default_config_path = "/etc/kanidm/server.toml" -default_unix_shell_path = "/bin/bash" +server_admin_bind_path = "/var/run/kanidmd/sock" +server_ui_pkg_path = "/usr/share/kanidm/ui/hpkg" +server_config_path = "/etc/kanidm/server.toml" +resolver_config_path = "/etc/kanidm/unixd" +resolver_unix_shell_path = "/bin/bash" diff --git a/libs/profiles/src/lib.rs b/libs/profiles/src/lib.rs index 6af08f586..784987130 100644 --- a/libs/profiles/src/lib.rs +++ b/libs/profiles/src/lib.rs @@ -54,12 +54,13 @@ impl std::fmt::Display for CpuOptLevel { #[derive(Debug, Deserialize)] #[serde(deny_unknown_fields)] struct ProfileConfig { - htmx_ui_pkg_path: String, #[serde(default)] cpu_flags: CpuOptLevel, - admin_bind_path: String, - default_config_path: String, - default_unix_shell_path: String, + server_admin_bind_path: String, + server_config_path: String, + server_ui_pkg_path: String, + resolver_config_path: String, + resolver_unix_shell_path: String, } pub fn apply_profile() { @@ -127,19 +128,23 @@ pub fn apply_profile() { println!("cargo:rustc-env=KANIDM_PROFILE_NAME={}", profile); println!("cargo:rustc-env=KANIDM_CPU_FLAGS={}", profile_cfg.cpu_flags); println!( - "cargo:rustc-env=KANIDM_HTMX_UI_PKG_PATH={}", - profile_cfg.htmx_ui_pkg_path + "cargo:rustc-env=KANIDM_SERVER_UI_PKG_PATH={}", + profile_cfg.server_ui_pkg_path ); println!( - "cargo:rustc-env=KANIDM_ADMIN_BIND_PATH={}", - profile_cfg.admin_bind_path + "cargo:rustc-env=KANIDM_SERVER_ADMIN_BIND_PATH={}", + profile_cfg.server_admin_bind_path ); println!( - "cargo:rustc-env=KANIDM_DEFAULT_CONFIG_PATH={}", - profile_cfg.default_config_path + "cargo:rustc-env=KANIDM_SERVER_CONFIG_PATH={}", + profile_cfg.server_config_path ); println!( - "cargo:rustc-env=KANIDM_DEFAULT_UNIX_SHELL_PATH={}", - profile_cfg.default_unix_shell_path + "cargo:rustc-env=KANIDM_RESOLVER_CONFIG_PATH={}", + profile_cfg.resolver_config_path + ); + println!( + "cargo:rustc-env=KANIDM_RESOLVER_UNIX_SHELL_PATH={}", + profile_cfg.resolver_unix_shell_path ); } diff --git a/platform/freebsd/README.md b/platform/freebsd/README.md new file mode 100644 index 000000000..87de87ed6 --- /dev/null +++ b/platform/freebsd/README.md @@ -0,0 +1,4 @@ +These are the FreeBSD port Makefiles and other supporting files. In the future we will submit +these to FreeBSD ports rather than maintaining them here. + + diff --git a/platform/freebsd/client/Makefile b/platform/freebsd/client/Makefile new file mode 100644 index 000000000..f54e0e672 --- /dev/null +++ b/platform/freebsd/client/Makefile @@ -0,0 +1,49 @@ + +PORTNAME= kanidm +# DISTVERSION= 1.5.0-dev +# DISTVERSIONPREFIX= v + +DISTVERSION= g20250102 +GH_TAGNAME= edb8cccc84e9dacd2ac31ea1162dd24c0c454c55 +GH_ACCOUNT= Firstyear + +CATEGORIES= security net databases + +LICENSE= MPL20 +LICENSE_FILE= ${WRKSRC}/LICENSE.md +MAINTAINER= william@blackhats.net.au +COMMENT= Simple and secure identity management platform +WWW= https://github.com/kanidm/kanidm/ + +USES= cargo ssl +USE_GITHUB= yes + +ONLY_FOR_ARCHS= aarch64 amd64 + +CARGO_ENV= KANIDM_BUILD_PROFILE=release_freebsd + +CARGO_BUILD_ARGS = -p kanidm_tools -p kanidm_unix_int -p nss_kanidm -p pam_kanidm + +CARGO_INSTALL= no + +USE_RC_SUBR= kanidm_unixd kanidm_unixd_tasks + +USERS= _kanidm_unixd +GROUPS= _kanidm_unixd + +do-install: + ${INSTALL_PROGRAM} ${WRKDIR}/target/release/kanidm ${STAGEDIR}${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKDIR}/target/release/kanidm-unix ${STAGEDIR}${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKDIR}/target/release/kanidm_ssh_authorizedkeys ${STAGEDIR}${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKDIR}/target/release/kanidm_ssh_authorizedkeys_direct ${STAGEDIR}${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKDIR}/target/release/kanidm_unixd ${STAGEDIR}${PREFIX}/libexec + ${INSTALL_PROGRAM} ${WRKDIR}/target/release/kanidm_unixd_tasks ${STAGEDIR}${PREFIX}/libexec + ${INSTALL_LIB} ${WRKDIR}/target/release/libnss_kanidm.so ${STAGEDIR}${PREFIX}/lib/nss_kanidm.so.1 + ${INSTALL_LIB} ${WRKDIR}/target/release/libpam_kanidm.so ${STAGEDIR}${PREFIX}/lib + ${MKDIR} ${STAGEDIR}${PREFIX}/etc + ${MKDIR} ${STAGEDIR}${PREFIX}/etc/kanidm + ${MKDIR} ${STAGEDIR}/var/run/kanidm-unixd + ${MKDIR} ${STAGEDIR}/var/lib/kanidm-unixd + ${MKDIR} ${STAGEDIR}/var/cache/kanidm-unixd + +.include diff --git a/platform/freebsd/client/Makefile.crates b/platform/freebsd/client/Makefile.crates new file mode 100644 index 000000000..461710e09 --- /dev/null +++ b/platform/freebsd/client/Makefile.crates @@ -0,0 +1,624 @@ +CARGO_CRATES= addr2line-0.24.2 \ + adler2-2.0.0 \ + ahash-0.8.11 \ + aho-corasick-1.1.3 \ + allocator-api2-0.2.21 \ + android-tzdata-0.1.1 \ + android_system_properties-0.1.5 \ + anstream-0.6.18 \ + anstyle-1.0.10 \ + anstyle-parse-0.2.6 \ + anstyle-query-1.1.2 \ + anstyle-wincon-3.0.6 \ + anyhow-1.0.95 \ + arc-swap-1.7.1 \ + argon2-0.5.3 \ + askama-0.12.1 \ + askama_axum-0.4.0 \ + askama_derive-0.12.5 \ + askama_escape-0.10.3 \ + askama_parser-0.2.1 \ + asn1-rs-0.6.2 \ + asn1-rs-derive-0.5.1 \ + asn1-rs-impl-0.2.0 \ + assert_cmd-2.0.16 \ + async-compression-0.4.18 \ + async-stream-0.3.6 \ + async-stream-impl-0.3.6 \ + async-trait-0.1.83 \ + atomic-waker-1.1.2 \ + authenticator-0.4.1 \ + autocfg-1.4.0 \ + axum-0.6.20 \ + axum-0.7.9 \ + axum-core-0.3.4 \ + axum-core-0.4.5 \ + axum-extra-0.9.6 \ + axum-htmx-0.5.0 \ + axum-macros-0.4.2 \ + axum-server-0.7.1 \ + backtrace-0.3.74 \ + base32-0.5.1 \ + base64-0.13.1 \ + base64-0.21.7 \ + base64-0.22.1 \ + base64ct-1.6.0 \ + base64urlsafedata-0.5.1 \ + basic-toml-0.1.9 \ + bindgen-0.66.1 \ + bindgen-0.70.1 \ + bit-set-0.5.3 \ + bit-set-0.8.0 \ + bit-vec-0.6.3 \ + bit-vec-0.8.0 \ + bitfield-0.13.2 \ + bitflags-1.3.2 \ + bitflags-2.6.0 \ + blake2-0.10.6 \ + block-buffer-0.10.4 \ + borrow-or-share-0.2.2 \ + bstr-1.11.1 \ + bumpalo-3.16.0 \ + bytecount-0.6.8 \ + bytemuck-1.21.0 \ + byteorder-1.5.0 \ + bytes-1.9.0 \ + cc-1.2.5 \ + cexpr-0.6.0 \ + cfg-if-1.0.0 \ + cfg_aliases-0.2.1 \ + checked_int_cast-1.0.0 \ + chrono-0.4.39 \ + clang-sys-1.8.1 \ + clap-4.5.23 \ + clap_builder-4.5.23 \ + clap_complete-4.5.40 \ + clap_derive-4.5.18 \ + clap_lex-0.7.4 \ + clru-0.6.2 \ + color_quant-1.1.0 \ + colorchoice-1.0.3 \ + compact_jwt-0.4.3 \ + concread-0.5.3 \ + console-0.15.10 \ + const-oid-0.9.6 \ + cookie-0.16.2 \ + cookie-0.18.1 \ + cookie_store-0.21.1 \ + core-foundation-0.9.4 \ + core-foundation-0.10.0 \ + core-foundation-sys-0.8.7 \ + cpufeatures-0.2.16 \ + crc32fast-1.4.2 \ + cron-0.12.1 \ + crossbeam-0.8.4 \ + crossbeam-channel-0.5.14 \ + crossbeam-deque-0.8.6 \ + crossbeam-epoch-0.9.18 \ + crossbeam-queue-0.3.12 \ + crossbeam-utils-0.8.21 \ + crypto-common-0.1.6 \ + csv-1.3.1 \ + csv-core-0.1.11 \ + darling-0.14.4 \ + darling-0.20.10 \ + darling_core-0.14.4 \ + darling_core-0.20.10 \ + darling_macro-0.14.4 \ + darling_macro-0.20.10 \ + data-encoding-2.6.0 \ + der-0.7.9 \ + der-parser-9.0.0 \ + der_derive-0.7.3 \ + deranged-0.3.11 \ + derive_builder-0.12.0 \ + derive_builder_core-0.12.0 \ + derive_builder_macro-0.12.0 \ + devd-rs-0.3.6 \ + dhat-0.3.3 \ + dialoguer-0.10.4 \ + difflib-0.4.0 \ + digest-0.10.7 \ + dirs-4.0.0 \ + dirs-sys-0.3.7 \ + displaydoc-0.2.5 \ + doc-comment-0.3.3 \ + document-features-0.2.10 \ + dunce-1.0.5 \ + dyn-clone-1.0.17 \ + either-1.13.0 \ + email_address-0.2.9 \ + encode_unicode-1.0.0 \ + encoding_rs-0.8.35 \ + enum-iterator-2.1.0 \ + enum-iterator-derive-1.4.0 \ + enumflags2-0.7.10 \ + enumflags2_derive-0.7.10 \ + equivalent-1.0.1 \ + errno-0.3.10 \ + escargot-0.5.13 \ + fallible-iterator-0.2.0 \ + fallible-streaming-iterator-0.1.9 \ + fancy-regex-0.11.0 \ + fancy-regex-0.14.0 \ + fantoccini-0.21.3 \ + faster-hex-0.9.0 \ + fastrand-2.3.0 \ + fernet-0.2.2 \ + file-id-0.1.0 \ + filetime-0.2.25 \ + fixedbitset-0.4.2 \ + flagset-0.4.6 \ + flate2-1.0.35 \ + fluent-uri-0.3.2 \ + fnv-1.0.7 \ + foldhash-0.1.4 \ + foreign-types-0.3.2 \ + foreign-types-shared-0.1.1 \ + form_urlencoded-1.2.1 \ + fraction-0.15.3 \ + fs4-0.8.4 \ + fsevent-sys-4.1.0 \ + 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-util-0.3.31 \ + generic-array-0.14.7 \ + gethostname-0.5.0 \ + getrandom-0.2.15 \ + gif-0.13.1 \ + gimli-0.31.1 \ + gix-0.64.0 \ + gix-actor-0.31.5 \ + gix-chunk-0.4.10 \ + gix-commitgraph-0.24.3 \ + gix-config-0.38.0 \ + gix-config-value-0.14.10 \ + gix-date-0.8.7 \ + gix-diff-0.44.1 \ + gix-discover-0.33.0 \ + gix-features-0.38.2 \ + gix-fs-0.11.3 \ + gix-glob-0.16.5 \ + gix-hash-0.14.2 \ + gix-hashtable-0.5.2 \ + gix-lock-14.0.0 \ + gix-macros-0.1.5 \ + gix-object-0.42.3 \ + gix-odb-0.61.1 \ + gix-pack-0.51.1 \ + gix-path-0.10.13 \ + gix-quote-0.4.14 \ + gix-ref-0.45.0 \ + gix-refspec-0.23.1 \ + gix-revision-0.27.2 \ + gix-revwalk-0.13.2 \ + gix-sec-0.10.10 \ + gix-tempfile-14.0.2 \ + gix-trace-0.1.11 \ + gix-traverse-0.39.2 \ + gix-url-0.27.5 \ + gix-utils-0.1.13 \ + gix-validate-0.8.5 \ + glob-0.3.1 \ + h2-0.3.26 \ + h2-0.4.7 \ + half-1.8.3 \ + hashbrown-0.12.3 \ + hashbrown-0.14.5 \ + hashbrown-0.15.2 \ + hashlink-0.8.4 \ + heck-0.5.0 \ + hex-0.4.3 \ + home-0.5.11 \ + hostname-validator-1.1.1 \ + http-0.2.12 \ + http-1.2.0 \ + http-body-0.4.6 \ + http-body-1.0.1 \ + http-body-util-0.1.2 \ + http-range-header-0.4.2 \ + httparse-1.9.5 \ + httpdate-1.0.3 \ + humansize-2.1.3 \ + hyper-0.14.32 \ + hyper-1.5.2 \ + hyper-rustls-0.24.2 \ + hyper-rustls-0.27.5 \ + hyper-timeout-0.4.1 \ + hyper-tls-0.6.0 \ + hyper-util-0.1.10 \ + iana-time-zone-0.1.61 \ + iana-time-zone-haiku-0.1.2 \ + 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 \ + idlset-0.2.5 \ + idna-1.0.3 \ + idna_adapter-1.2.0 \ + image-0.23.14 \ + image-0.24.9 \ + indexmap-1.9.3 \ + indexmap-2.7.0 \ + inotify-0.9.6 \ + inotify-sys-0.1.5 \ + ipnet-2.10.1 \ + is_terminal_polyfill-1.70.1 \ + itertools-0.10.5 \ + itertools-0.13.0 \ + itoa-1.0.14 \ + jpeg-decoder-0.3.1 \ + js-sys-0.3.76 \ + jsonschema-0.28.0 \ + kanidm-hsm-crypto-0.2.0 \ + kqueue-1.0.8 \ + kqueue-sys-1.0.4 \ + lazy_static-1.5.0 \ + lazycell-1.3.0 \ + lber-0.4.2 \ + ldap3_client-0.5.2 \ + ldap3_proto-0.5.2 \ + libc-0.2.169 \ + libloading-0.8.6 \ + libm-0.2.11 \ + libmimalloc-sys-0.1.39 \ + libnss-0.8.0 \ + libredox-0.1.3 \ + libsqlite3-sys-0.25.2 \ + libudev-0.2.0 \ + libudev-sys-0.1.4 \ + linux-raw-sys-0.4.14 \ + litemap-0.7.4 \ + litrs-0.4.1 \ + lock_api-0.4.12 \ + lodepng-3.10.7 \ + log-0.4.22 \ + lru-0.12.5 \ + malloced-1.3.1 \ + matchers-0.1.0 \ + matchit-0.7.3 \ + mathru-0.13.0 \ + memchr-2.7.4 \ + memmap2-0.9.5 \ + memoffset-0.8.0 \ + mimalloc-0.1.43 \ + mime-0.3.17 \ + mime_guess-2.0.5 \ + minimal-lexical-0.2.1 \ + miniz_oxide-0.8.2 \ + mintex-0.1.3 \ + mio-0.8.11 \ + mio-1.0.3 \ + multer-3.1.0 \ + native-tls-0.2.12 \ + nix-0.29.0 \ + nom-7.1.3 \ + nonempty-0.8.1 \ + notify-6.1.1 \ + notify-debouncer-full-0.1.0 \ + nu-ansi-term-0.46.0 \ + num-0.4.3 \ + num-bigint-0.4.6 \ + num-cmp-0.1.0 \ + num-complex-0.4.6 \ + num-conv-0.1.0 \ + num-derive-0.3.3 \ + num-integer-0.1.46 \ + num-iter-0.1.45 \ + num-rational-0.3.2 \ + num-rational-0.4.2 \ + num-traits-0.2.19 \ + num_enum-0.5.11 \ + num_enum_derive-0.5.11 \ + num_threads-0.1.7 \ + oauth2-4.4.2 \ + object-0.36.5 \ + oid-0.2.1 \ + oid-registry-0.7.1 \ + once_cell-1.20.2 \ + openssl-0.10.68 \ + openssl-macros-0.1.1 \ + openssl-probe-0.1.5 \ + openssl-sys-0.9.104 \ + opentelemetry-0.20.0 \ + opentelemetry-http-0.9.0 \ + opentelemetry-otlp-0.13.0 \ + opentelemetry-proto-0.3.0 \ + opentelemetry-semantic-conventions-0.12.0 \ + opentelemetry_api-0.20.0 \ + opentelemetry_sdk-0.20.0 \ + ordered-float-3.9.2 \ + outref-0.5.1 \ + overload-0.1.1 \ + parking_lot-0.12.3 \ + parking_lot_core-0.9.10 \ + password-hash-0.5.0 \ + paste-1.0.15 \ + peeking_take_while-0.1.2 \ + peg-0.8.4 \ + peg-macros-0.8.4 \ + peg-runtime-0.8.3 \ + pem-rfc7468-0.7.0 \ + percent-encoding-2.3.1 \ + petgraph-0.6.5 \ + picky-asn1-0.8.0 \ + picky-asn1-der-0.4.1 \ + picky-asn1-x509-0.12.0 \ + pin-project-1.1.7 \ + pin-project-internal-1.1.7 \ + pin-project-lite-0.2.15 \ + pin-utils-0.1.0 \ + pkg-config-0.3.31 \ + powerfmt-0.2.0 \ + ppv-lite86-0.2.20 \ + prctl-1.0.0 \ + predicates-3.1.3 \ + predicates-core-1.0.9 \ + predicates-tree-1.0.12 \ + prettyplease-0.2.25 \ + proc-macro-crate-1.3.1 \ + proc-macro-error-1.0.4 \ + proc-macro-error-attr-1.0.4 \ + proc-macro2-1.0.92 \ + prodash-28.0.0 \ + prost-0.11.9 \ + prost-derive-0.11.9 \ + psl-types-2.0.11 \ + publicsuffix-2.3.0 \ + qrcode-0.12.0 \ + quick-error-2.0.1 \ + quinn-0.11.6 \ + quinn-proto-0.11.9 \ + quinn-udp-0.5.9 \ + quote-1.0.38 \ + rand-0.8.5 \ + rand_chacha-0.3.1 \ + rand_core-0.6.4 \ + redox_syscall-0.5.8 \ + redox_users-0.4.6 \ + ref-cast-1.0.23 \ + ref-cast-impl-1.0.23 \ + reference-counted-singleton-0.1.5 \ + referencing-0.28.0 \ + regex-1.11.1 \ + regex-automata-0.1.10 \ + regex-automata-0.4.9 \ + regex-syntax-0.6.29 \ + regex-syntax-0.8.5 \ + reqwest-0.11.27 \ + reqwest-0.12.11 \ + rgb-0.8.50 \ + ring-0.17.8 \ + rpassword-5.0.1 \ + runloop-0.1.0 \ + rusqlite-0.28.0 \ + rust-embed-8.5.0 \ + rust-embed-impl-8.5.0 \ + rust-embed-utils-8.5.0 \ + rustc-demangle-0.1.24 \ + rustc-hash-1.1.0 \ + rustc-hash-2.1.0 \ + rusticata-macros-4.1.0 \ + rustix-0.38.42 \ + rustls-0.21.12 \ + rustls-0.23.20 \ + rustls-native-certs-0.8.1 \ + rustls-pemfile-1.0.4 \ + rustls-pemfile-2.2.0 \ + rustls-pki-types-1.10.1 \ + rustls-webpki-0.101.7 \ + rustls-webpki-0.102.8 \ + rustversion-1.0.18 \ + ryu-1.0.18 \ + same-file-1.0.6 \ + schannel-0.1.27 \ + scopeguard-1.2.0 \ + sct-0.7.1 \ + sd-notify-0.4.3 \ + security-framework-2.11.1 \ + security-framework-3.1.0 \ + security-framework-sys-2.13.0 \ + selinux-0.4.6 \ + selinux-sys-0.6.13 \ + semver-1.0.24 \ + serde-1.0.217 \ + serde_bytes-0.11.15 \ + serde_cbor-0.11.2 \ + serde_cbor_2-0.12.0-dev \ + serde_derive-1.0.217 \ + serde_json-1.0.134 \ + serde_path_to_error-0.1.16 \ + serde_urlencoded-0.7.1 \ + serde_with-3.12.0 \ + serde_with_macros-3.12.0 \ + sha-crypt-0.5.0 \ + sha1_smol-1.0.1 \ + sha2-0.10.8 \ + sharded-slab-0.1.7 \ + shell-words-1.1.0 \ + shellexpand-2.1.2 \ + shlex-1.3.0 \ + signal-hook-registry-1.4.2 \ + slab-0.4.9 \ + smallvec-1.13.2 \ + smartstring-1.0.1 \ + smolset-1.3.1 \ + socket2-0.5.8 \ + spin-0.9.8 \ + spki-0.7.3 \ + sptr-0.3.2 \ + sshkey-attest-0.5.0 \ + sshkeys-0.3.3 \ + stable_deref_trait-1.2.0 \ + static_assertions-1.1.0 \ + strsim-0.10.0 \ + strsim-0.11.1 \ + subtle-2.6.1 \ + svg-0.13.1 \ + syn-1.0.109 \ + syn-2.0.93 \ + sync_wrapper-0.1.2 \ + sync_wrapper-1.0.2 \ + synstructure-0.13.1 \ + system-configuration-0.5.1 \ + system-configuration-sys-0.5.0 \ + target-lexicon-0.12.16 \ + tempfile-3.14.0 \ + termtree-0.5.1 \ + thiserror-1.0.69 \ + thiserror-2.0.8 \ + thiserror-impl-1.0.69 \ + thiserror-impl-2.0.8 \ + thousands-0.2.0 \ + thread_local-1.1.8 \ + time-0.3.37 \ + time-core-0.1.2 \ + time-macros-0.2.19 \ + tinystr-0.7.6 \ + tinyvec-1.8.1 \ + tinyvec_macros-0.1.1 \ + tls_codec-0.4.1 \ + tls_codec_derive-0.4.1 \ + tokio-1.42.0 \ + tokio-io-timeout-1.2.0 \ + tokio-macros-2.4.0 \ + tokio-native-tls-0.3.1 \ + tokio-openssl-0.6.5 \ + tokio-rustls-0.24.1 \ + tokio-rustls-0.26.1 \ + tokio-stream-0.1.17 \ + tokio-util-0.7.13 \ + toml-0.5.11 \ + toml_datetime-0.6.8 \ + toml_edit-0.19.15 \ + tonic-0.9.2 \ + tower-0.4.13 \ + tower-0.5.2 \ + tower-http-0.6.2 \ + tower-layer-0.3.3 \ + tower-service-0.3.3 \ + tracing-0.1.41 \ + tracing-attributes-0.1.28 \ + tracing-core-0.1.33 \ + tracing-forest-0.1.6 \ + tracing-log-0.1.4 \ + tracing-log-0.2.0 \ + tracing-opentelemetry-0.21.0 \ + tracing-subscriber-0.3.19 \ + try-lock-0.2.5 \ + tss-esapi-8.0.0-alpha \ + tss-esapi-sys-0.5.0 \ + typenum-1.17.0 \ + unicase-2.8.0 \ + unicode-bom-2.0.3 \ + unicode-ident-1.0.14 \ + unicode-normalization-0.1.24 \ + unicode-segmentation-1.12.0 \ + unicode-width-0.2.0 \ + untrusted-0.9.0 \ + url-2.5.4 \ + urlencoding-2.1.3 \ + utf16_iter-1.0.5 \ + utf8_iter-1.0.4 \ + utf8parse-0.2.2 \ + utoipa-4.2.3 \ + utoipa-gen-4.3.1 \ + utoipa-swagger-ui-6.0.0 \ + uuid-1.11.0 \ + uuid-simd-0.8.0 \ + valuable-0.1.0 \ + vcpkg-0.2.15 \ + version_check-0.9.5 \ + vsimd-0.8.0 \ + wait-timeout-0.2.0 \ + walkdir-2.5.0 \ + want-0.3.1 \ + wasi-0.11.0+wasi-snapshot-preview1 \ + wasite-0.1.0 \ + wasm-bindgen-0.2.99 \ + wasm-bindgen-backend-0.2.99 \ + wasm-bindgen-futures-0.4.49 \ + wasm-bindgen-macro-0.2.99 \ + wasm-bindgen-macro-support-0.2.99 \ + wasm-bindgen-shared-0.2.99 \ + web-sys-0.3.76 \ + web-time-1.1.0 \ + webauthn-attestation-ca-0.5.1 \ + webauthn-authenticator-rs-0.5.1 \ + webauthn-rs-0.5.1 \ + webauthn-rs-core-0.5.1 \ + webauthn-rs-proto-0.5.1 \ + webdriver-0.50.0 \ + webpki-roots-0.25.4 \ + webpki-roots-0.26.7 \ + weezl-0.1.8 \ + which-4.4.2 \ + whoami-1.5.2 \ + winapi-0.3.9 \ + winapi-i686-pc-windows-gnu-0.4.0 \ + winapi-util-0.1.9 \ + winapi-x86_64-pc-windows-gnu-0.4.0 \ + windows-0.41.0 \ + windows-core-0.52.0 \ + windows-registry-0.2.0 \ + windows-result-0.2.0 \ + windows-strings-0.1.0 \ + windows-sys-0.48.0 \ + windows-sys-0.52.0 \ + windows-sys-0.59.0 \ + windows-targets-0.48.5 \ + windows-targets-0.52.6 \ + windows_aarch64_gnullvm-0.41.0 \ + windows_aarch64_gnullvm-0.48.5 \ + windows_aarch64_gnullvm-0.52.6 \ + windows_aarch64_msvc-0.41.0 \ + windows_aarch64_msvc-0.48.5 \ + windows_aarch64_msvc-0.52.6 \ + windows_i686_gnu-0.41.0 \ + windows_i686_gnu-0.48.5 \ + windows_i686_gnu-0.52.6 \ + windows_i686_gnullvm-0.52.6 \ + windows_i686_msvc-0.41.0 \ + windows_i686_msvc-0.48.5 \ + windows_i686_msvc-0.52.6 \ + windows_x86_64_gnu-0.41.0 \ + windows_x86_64_gnu-0.48.5 \ + windows_x86_64_gnu-0.52.6 \ + windows_x86_64_gnullvm-0.41.0 \ + windows_x86_64_gnullvm-0.48.5 \ + windows_x86_64_gnullvm-0.52.6 \ + windows_x86_64_msvc-0.41.0 \ + windows_x86_64_msvc-0.48.5 \ + windows_x86_64_msvc-0.52.6 \ + winnow-0.5.40 \ + winnow-0.6.20 \ + winreg-0.50.0 \ + write16-1.0.0 \ + writeable-0.5.5 \ + x509-cert-0.2.5 \ + x509-parser-0.16.0 \ + yoke-0.7.5 \ + yoke-derive-0.7.5 \ + zerocopy-0.7.35 \ + zerocopy-derive-0.7.35 \ + zerofrom-0.1.5 \ + zerofrom-derive-0.1.5 \ + zeroize-1.8.1 \ + zeroize_derive-1.4.2 \ + zerovec-0.10.4 \ + zerovec-derive-0.10.3 \ + zip-0.6.6 \ + zxcvbn-2.2.2 diff --git a/platform/freebsd/client/distinfo b/platform/freebsd/client/distinfo new file mode 100644 index 000000000..504decd07 --- /dev/null +++ b/platform/freebsd/client/distinfo @@ -0,0 +1,1251 @@ +TIMESTAMP = 1735779262 +SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1 +SIZE (rust/crates/addr2line-0.24.2.crate) = 39015 +SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627 +SIZE (rust/crates/adler2-2.0.0.crate) = 13529 +SHA256 (rust/crates/ahash-0.8.11.crate) = e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011 +SIZE (rust/crates/ahash-0.8.11.crate) = 43607 +SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916 +SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311 +SHA256 (rust/crates/allocator-api2-0.2.21.crate) = 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923 +SIZE (rust/crates/allocator-api2-0.2.21.crate) = 63622 +SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0 +SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674 +SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311 +SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243 +SHA256 (rust/crates/anstream-0.6.18.crate) = 8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b +SIZE (rust/crates/anstream-0.6.18.crate) = 29681 +SHA256 (rust/crates/anstyle-1.0.10.crate) = 55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9 +SIZE (rust/crates/anstyle-1.0.10.crate) = 15725 +SHA256 (rust/crates/anstyle-parse-0.2.6.crate) = 3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9 +SIZE (rust/crates/anstyle-parse-0.2.6.crate) = 22343 +SHA256 (rust/crates/anstyle-query-1.1.2.crate) = 79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c +SIZE (rust/crates/anstyle-query-1.1.2.crate) = 9969 +SHA256 (rust/crates/anstyle-wincon-3.0.6.crate) = 2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125 +SIZE (rust/crates/anstyle-wincon-3.0.6.crate) = 12271 +SHA256 (rust/crates/anyhow-1.0.95.crate) = 34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04 +SIZE (rust/crates/anyhow-1.0.95.crate) = 52155 +SHA256 (rust/crates/arc-swap-1.7.1.crate) = 69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457 +SIZE (rust/crates/arc-swap-1.7.1.crate) = 68512 +SHA256 (rust/crates/argon2-0.5.3.crate) = 3c3610892ee6e0cbce8ae2700349fcf8f98adb0dbfbee85aec3c9179d29cc072 +SIZE (rust/crates/argon2-0.5.3.crate) = 28795 +SHA256 (rust/crates/askama-0.12.1.crate) = b79091df18a97caea757e28cd2d5fda49c6cd4bd01ddffd7ff01ace0c0ad2c28 +SIZE (rust/crates/askama-0.12.1.crate) = 16976 +SHA256 (rust/crates/askama_axum-0.4.0.crate) = a41603f7cdbf5ac4af60760f17253eb6adf6ec5b6f14a7ed830cf687d375f163 +SIZE (rust/crates/askama_axum-0.4.0.crate) = 6649 +SHA256 (rust/crates/askama_derive-0.12.5.crate) = 19fe8d6cb13c4714962c072ea496f3392015f0989b1a2847bb4b2d9effd71d83 +SIZE (rust/crates/askama_derive-0.12.5.crate) = 31218 +SHA256 (rust/crates/askama_escape-0.10.3.crate) = 619743e34b5ba4e9703bba34deac3427c72507c7159f5fd030aea8cac0cfe341 +SIZE (rust/crates/askama_escape-0.10.3.crate) = 8875 +SHA256 (rust/crates/askama_parser-0.2.1.crate) = acb1161c6b64d1c3d83108213c2a2533a342ac225aabd0bda218278c2ddb00c0 +SIZE (rust/crates/askama_parser-0.2.1.crate) = 20707 +SHA256 (rust/crates/asn1-rs-0.6.2.crate) = 5493c3bedbacf7fd7382c6346bbd66687d12bbaad3a89a2d2c303ee6cf20b048 +SIZE (rust/crates/asn1-rs-0.6.2.crate) = 90647 +SHA256 (rust/crates/asn1-rs-derive-0.5.1.crate) = 965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490 +SIZE (rust/crates/asn1-rs-derive-0.5.1.crate) = 9692 +SHA256 (rust/crates/asn1-rs-impl-0.2.0.crate) = 7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7 +SIZE (rust/crates/asn1-rs-impl-0.2.0.crate) = 2261 +SHA256 (rust/crates/assert_cmd-2.0.16.crate) = dc1835b7f27878de8525dc71410b5a31cdcc5f230aed5ba5df968e09c201b23d +SIZE (rust/crates/assert_cmd-2.0.16.crate) = 26554 +SHA256 (rust/crates/async-compression-0.4.18.crate) = df895a515f70646414f4b45c0b79082783b80552b373a68283012928df56f522 +SIZE (rust/crates/async-compression-0.4.18.crate) = 111919 +SHA256 (rust/crates/async-stream-0.3.6.crate) = 0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476 +SIZE (rust/crates/async-stream-0.3.6.crate) = 13823 +SHA256 (rust/crates/async-stream-impl-0.3.6.crate) = c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d +SIZE (rust/crates/async-stream-impl-0.3.6.crate) = 4312 +SHA256 (rust/crates/async-trait-0.1.83.crate) = 721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd +SIZE (rust/crates/async-trait-0.1.83.crate) = 29054 +SHA256 (rust/crates/atomic-waker-1.1.2.crate) = 1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0 +SIZE (rust/crates/atomic-waker-1.1.2.crate) = 12422 +SHA256 (rust/crates/authenticator-0.4.1.crate) = 82d71e457dc518a15eecc90d3b0660dee4b51623b34ac4262c9326e0d7e0f8e2 +SIZE (rust/crates/authenticator-0.4.1.crate) = 198210 +SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26 +SIZE (rust/crates/autocfg-1.4.0.crate) = 17712 +SHA256 (rust/crates/axum-0.6.20.crate) = 3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf +SIZE (rust/crates/axum-0.6.20.crate) = 146227 +SHA256 (rust/crates/axum-0.7.9.crate) = edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f +SIZE (rust/crates/axum-0.7.9.crate) = 155272 +SHA256 (rust/crates/axum-core-0.3.4.crate) = 759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c +SIZE (rust/crates/axum-core-0.3.4.crate) = 21088 +SHA256 (rust/crates/axum-core-0.4.5.crate) = 09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199 +SIZE (rust/crates/axum-core-0.4.5.crate) = 22183 +SHA256 (rust/crates/axum-extra-0.9.6.crate) = c794b30c904f0a1c2fb7740f7df7f7972dfaa14ef6f57cb6178dc63e5dca2f04 +SIZE (rust/crates/axum-extra-0.9.6.crate) = 47663 +SHA256 (rust/crates/axum-htmx-0.5.0.crate) = 40f7051fdc094b6e5ea06cab9bca4b198c54dee4472a9419155f0ff19f19901e +SIZE (rust/crates/axum-htmx-0.5.0.crate) = 15894 +SHA256 (rust/crates/axum-macros-0.4.2.crate) = 57d123550fa8d071b7255cb0cc04dc302baa6c8c4a79f55701552684d8399bce +SIZE (rust/crates/axum-macros-0.4.2.crate) = 39245 +SHA256 (rust/crates/axum-server-0.7.1.crate) = 56bac90848f6a9393ac03c63c640925c4b7c8ca21654de40d53f55964667c7d8 +SIZE (rust/crates/axum-server-0.7.1.crate) = 41684 +SHA256 (rust/crates/backtrace-0.3.74.crate) = 8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a +SIZE (rust/crates/backtrace-0.3.74.crate) = 88516 +SHA256 (rust/crates/base32-0.5.1.crate) = 022dfe9eb35f19ebbcb51e0b40a5ab759f46ad60cadf7297e0bd085afb50e076 +SIZE (rust/crates/base32-0.5.1.crate) = 9238 +SHA256 (rust/crates/base64-0.13.1.crate) = 9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8 +SIZE (rust/crates/base64-0.13.1.crate) = 61002 +SHA256 (rust/crates/base64-0.21.7.crate) = 9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567 +SIZE (rust/crates/base64-0.21.7.crate) = 82576 +SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6 +SIZE (rust/crates/base64-0.22.1.crate) = 81597 +SHA256 (rust/crates/base64ct-1.6.0.crate) = 8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b +SIZE (rust/crates/base64ct-1.6.0.crate) = 28870 +SHA256 (rust/crates/base64urlsafedata-0.5.1.crate) = 72f0ad38ce7fbed55985ad5b2197f05cff8324ee6eb6638304e78f0108fae56c +SIZE (rust/crates/base64urlsafedata-0.5.1.crate) = 5683 +SHA256 (rust/crates/basic-toml-0.1.9.crate) = 823388e228f614e9558c6804262db37960ec8821856535f5c3f59913140558f8 +SIZE (rust/crates/basic-toml-0.1.9.crate) = 50234 +SHA256 (rust/crates/bindgen-0.66.1.crate) = f2b84e06fc203107bfbad243f4aba2af864eb7db3b1cf46ea0a023b0b433d2a7 +SIZE (rust/crates/bindgen-0.66.1.crate) = 218860 +SHA256 (rust/crates/bindgen-0.70.1.crate) = f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f +SIZE (rust/crates/bindgen-0.70.1.crate) = 226363 +SHA256 (rust/crates/bit-set-0.5.3.crate) = 0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1 +SIZE (rust/crates/bit-set-0.5.3.crate) = 14470 +SHA256 (rust/crates/bit-set-0.8.0.crate) = 08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3 +SIZE (rust/crates/bit-set-0.8.0.crate) = 16289 +SHA256 (rust/crates/bit-vec-0.6.3.crate) = 349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb +SIZE (rust/crates/bit-vec-0.6.3.crate) = 19927 +SHA256 (rust/crates/bit-vec-0.8.0.crate) = 5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7 +SIZE (rust/crates/bit-vec-0.8.0.crate) = 24132 +SHA256 (rust/crates/bitfield-0.13.2.crate) = 46afbd2983a5d5a7bd740ccb198caf5b82f45c40c09c0eed36052d91cb92e719 +SIZE (rust/crates/bitfield-0.13.2.crate) = 16479 +SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a +SIZE (rust/crates/bitflags-1.3.2.crate) = 23021 +SHA256 (rust/crates/bitflags-2.6.0.crate) = b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de +SIZE (rust/crates/bitflags-2.6.0.crate) = 45357 +SHA256 (rust/crates/blake2-0.10.6.crate) = 46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe +SIZE (rust/crates/blake2-0.10.6.crate) = 47234 +SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71 +SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538 +SHA256 (rust/crates/borrow-or-share-0.2.2.crate) = 3eeab4423108c5d7c744f4d234de88d18d636100093ae04caf4825134b9c3a32 +SIZE (rust/crates/borrow-or-share-0.2.2.crate) = 4871 +SHA256 (rust/crates/bstr-1.11.1.crate) = 786a307d683a5bf92e6fd5fd69a7eb613751668d1d8d67d802846dfe367c62c8 +SIZE (rust/crates/bstr-1.11.1.crate) = 351485 +SHA256 (rust/crates/bumpalo-3.16.0.crate) = 79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c +SIZE (rust/crates/bumpalo-3.16.0.crate) = 85677 +SHA256 (rust/crates/bytecount-0.6.8.crate) = 5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce +SIZE (rust/crates/bytecount-0.6.8.crate) = 14694 +SHA256 (rust/crates/bytemuck-1.21.0.crate) = ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3 +SIZE (rust/crates/bytemuck-1.21.0.crate) = 51553 +SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b +SIZE (rust/crates/byteorder-1.5.0.crate) = 23288 +SHA256 (rust/crates/bytes-1.9.0.crate) = 325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b +SIZE (rust/crates/bytes-1.9.0.crate) = 67320 +SHA256 (rust/crates/cc-1.2.5.crate) = c31a0499c1dc64f458ad13872de75c0eb7e3fdb0e67964610c914b034fc5956e +SIZE (rust/crates/cc-1.2.5.crate) = 99839 +SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766 +SIZE (rust/crates/cexpr-0.6.0.crate) = 17966 +SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd +SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 +SHA256 (rust/crates/cfg_aliases-0.2.1.crate) = 613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724 +SIZE (rust/crates/cfg_aliases-0.2.1.crate) = 6355 +SHA256 (rust/crates/checked_int_cast-1.0.0.crate) = 17cc5e6b5ab06331c33589842070416baa137e8b0eb912b008cfd4a78ada7919 +SIZE (rust/crates/checked_int_cast-1.0.0.crate) = 2669 +SHA256 (rust/crates/chrono-0.4.39.crate) = 7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825 +SIZE (rust/crates/chrono-0.4.39.crate) = 222248 +SHA256 (rust/crates/clang-sys-1.8.1.crate) = 0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4 +SIZE (rust/crates/clang-sys-1.8.1.crate) = 44009 +SHA256 (rust/crates/clap-4.5.23.crate) = 3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84 +SIZE (rust/crates/clap-4.5.23.crate) = 56460 +SHA256 (rust/crates/clap_builder-4.5.23.crate) = 30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838 +SIZE (rust/crates/clap_builder-4.5.23.crate) = 164180 +SHA256 (rust/crates/clap_complete-4.5.40.crate) = ac2e663e3e3bed2d32d065a8404024dad306e699a04263ec59919529f803aee9 +SIZE (rust/crates/clap_complete-4.5.40.crate) = 47827 +SHA256 (rust/crates/clap_derive-4.5.18.crate) = 4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab +SIZE (rust/crates/clap_derive-4.5.18.crate) = 30131 +SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6 +SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858 +SHA256 (rust/crates/clru-0.6.2.crate) = cbd0f76e066e64fdc5631e3bb46381254deab9ef1158292f27c8c57e3bf3fe59 +SIZE (rust/crates/clru-0.6.2.crate) = 16497 +SHA256 (rust/crates/color_quant-1.1.0.crate) = 3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b +SIZE (rust/crates/color_quant-1.1.0.crate) = 6649 +SHA256 (rust/crates/colorchoice-1.0.3.crate) = 5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990 +SIZE (rust/crates/colorchoice-1.0.3.crate) = 7923 +SHA256 (rust/crates/compact_jwt-0.4.3.crate) = 12bbab6445446e8d0b07468a01d0bfdae15879de5c440c5e47ae4ae0e18a1fba +SIZE (rust/crates/compact_jwt-0.4.3.crate) = 61901 +SHA256 (rust/crates/concread-0.5.3.crate) = cba00cef522c2597dfbb0a8d1b0ac8ac2b99714f50cc354cda71da63164da0be +SIZE (rust/crates/concread-0.5.3.crate) = 877996 +SHA256 (rust/crates/console-0.15.10.crate) = ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b +SIZE (rust/crates/console-0.15.10.crate) = 36449 +SHA256 (rust/crates/const-oid-0.9.6.crate) = c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8 +SIZE (rust/crates/const-oid-0.9.6.crate) = 45382 +SHA256 (rust/crates/cookie-0.16.2.crate) = e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb +SIZE (rust/crates/cookie-0.16.2.crate) = 34632 +SHA256 (rust/crates/cookie-0.18.1.crate) = 4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747 +SIZE (rust/crates/cookie-0.18.1.crate) = 43551 +SHA256 (rust/crates/cookie_store-0.21.1.crate) = 2eac901828f88a5241ee0600950ab981148a18f2f756900ffba1b125ca6a3ef9 +SIZE (rust/crates/cookie_store-0.21.1.crate) = 34692 +SHA256 (rust/crates/core-foundation-0.9.4.crate) = 91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f +SIZE (rust/crates/core-foundation-0.9.4.crate) = 27743 +SHA256 (rust/crates/core-foundation-0.10.0.crate) = b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63 +SIZE (rust/crates/core-foundation-0.10.0.crate) = 27023 +SHA256 (rust/crates/core-foundation-sys-0.8.7.crate) = 773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b +SIZE (rust/crates/core-foundation-sys-0.8.7.crate) = 37712 +SHA256 (rust/crates/cpufeatures-0.2.16.crate) = 16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3 +SIZE (rust/crates/cpufeatures-0.2.16.crate) = 13405 +SHA256 (rust/crates/crc32fast-1.4.2.crate) = a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3 +SIZE (rust/crates/crc32fast-1.4.2.crate) = 38491 +SHA256 (rust/crates/cron-0.12.1.crate) = 6f8c3e73077b4b4a6ab1ea5047c37c57aee77657bc8ecd6f29b0af082d0b0c07 +SIZE (rust/crates/cron-0.12.1.crate) = 18702 +SHA256 (rust/crates/crossbeam-0.8.4.crate) = 1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8 +SIZE (rust/crates/crossbeam-0.8.4.crate) = 10500 +SHA256 (rust/crates/crossbeam-channel-0.5.14.crate) = 06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471 +SIZE (rust/crates/crossbeam-channel-0.5.14.crate) = 92728 +SHA256 (rust/crates/crossbeam-deque-0.8.6.crate) = 9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51 +SIZE (rust/crates/crossbeam-deque-0.8.6.crate) = 22471 +SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e +SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875 +SHA256 (rust/crates/crossbeam-queue-0.3.12.crate) = 0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115 +SIZE (rust/crates/crossbeam-queue-0.3.12.crate) = 16270 +SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28 +SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691 +SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3 +SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760 +SHA256 (rust/crates/csv-1.3.1.crate) = acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf +SIZE (rust/crates/csv-1.3.1.crate) = 888542 +SHA256 (rust/crates/csv-core-0.1.11.crate) = 5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70 +SIZE (rust/crates/csv-core-0.1.11.crate) = 25852 +SHA256 (rust/crates/darling-0.14.4.crate) = 7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850 +SIZE (rust/crates/darling-0.14.4.crate) = 25168 +SHA256 (rust/crates/darling-0.20.10.crate) = 6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989 +SIZE (rust/crates/darling-0.20.10.crate) = 32031 +SHA256 (rust/crates/darling_core-0.14.4.crate) = 109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0 +SIZE (rust/crates/darling_core-0.14.4.crate) = 57485 +SHA256 (rust/crates/darling_core-0.20.10.crate) = 95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5 +SIZE (rust/crates/darling_core-0.20.10.crate) = 65015 +SHA256 (rust/crates/darling_macro-0.14.4.crate) = a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e +SIZE (rust/crates/darling_macro-0.14.4.crate) = 1896 +SHA256 (rust/crates/darling_macro-0.20.10.crate) = d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806 +SIZE (rust/crates/darling_macro-0.20.10.crate) = 1874 +SHA256 (rust/crates/data-encoding-2.6.0.crate) = e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2 +SIZE (rust/crates/data-encoding-2.6.0.crate) = 20769 +SHA256 (rust/crates/der-0.7.9.crate) = f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0 +SIZE (rust/crates/der-0.7.9.crate) = 85173 +SHA256 (rust/crates/der-parser-9.0.0.crate) = 5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553 +SIZE (rust/crates/der-parser-9.0.0.crate) = 63191 +SHA256 (rust/crates/der_derive-0.7.3.crate) = 8034092389675178f570469e6c3b0465d3d30b4505c294a6550db47f3c17ad18 +SIZE (rust/crates/der_derive-0.7.3.crate) = 24657 +SHA256 (rust/crates/deranged-0.3.11.crate) = b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4 +SIZE (rust/crates/deranged-0.3.11.crate) = 18043 +SHA256 (rust/crates/derive_builder-0.12.0.crate) = 8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8 +SIZE (rust/crates/derive_builder-0.12.0.crate) = 35456 +SHA256 (rust/crates/derive_builder_core-0.12.0.crate) = c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f +SIZE (rust/crates/derive_builder_core-0.12.0.crate) = 31438 +SHA256 (rust/crates/derive_builder_macro-0.12.0.crate) = ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e +SIZE (rust/crates/derive_builder_macro-0.12.0.crate) = 6288 +SHA256 (rust/crates/devd-rs-0.3.6.crate) = 9313f104b590510b46fc01c0a324fc76505c13871454d3c48490468d04c8d395 +SIZE (rust/crates/devd-rs-0.3.6.crate) = 6987 +SHA256 (rust/crates/dhat-0.3.3.crate) = 98cd11d84628e233de0ce467de10b8633f4ddaecafadefc86e13b84b8739b827 +SIZE (rust/crates/dhat-0.3.3.crate) = 32008 +SHA256 (rust/crates/dialoguer-0.10.4.crate) = 59c6f2989294b9a498d3ad5491a79c6deb604617378e1cdc4bfc1c1361fe2f87 +SIZE (rust/crates/dialoguer-0.10.4.crate) = 29928 +SHA256 (rust/crates/difflib-0.4.0.crate) = 6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8 +SIZE (rust/crates/difflib-0.4.0.crate) = 7638 +SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292 +SIZE (rust/crates/digest-0.10.7.crate) = 19557 +SHA256 (rust/crates/dirs-4.0.0.crate) = ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059 +SIZE (rust/crates/dirs-4.0.0.crate) = 12503 +SHA256 (rust/crates/dirs-sys-0.3.7.crate) = 1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6 +SIZE (rust/crates/dirs-sys-0.3.7.crate) = 10597 +SHA256 (rust/crates/displaydoc-0.2.5.crate) = 97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0 +SIZE (rust/crates/displaydoc-0.2.5.crate) = 24219 +SHA256 (rust/crates/doc-comment-0.3.3.crate) = fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10 +SIZE (rust/crates/doc-comment-0.3.3.crate) = 4123 +SHA256 (rust/crates/document-features-0.2.10.crate) = cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0 +SIZE (rust/crates/document-features-0.2.10.crate) = 14005 +SHA256 (rust/crates/dunce-1.0.5.crate) = 92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813 +SIZE (rust/crates/dunce-1.0.5.crate) = 8244 +SHA256 (rust/crates/dyn-clone-1.0.17.crate) = 0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125 +SIZE (rust/crates/dyn-clone-1.0.17.crate) = 11848 +SHA256 (rust/crates/either-1.13.0.crate) = 60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0 +SIZE (rust/crates/either-1.13.0.crate) = 19169 +SHA256 (rust/crates/email_address-0.2.9.crate) = e079f19b08ca6239f47f8ba8509c11cf3ea30095831f7fed61441475edd8c449 +SIZE (rust/crates/email_address-0.2.9.crate) = 21579 +SHA256 (rust/crates/encode_unicode-1.0.0.crate) = 34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0 +SIZE (rust/crates/encode_unicode-1.0.0.crate) = 56986 +SHA256 (rust/crates/encoding_rs-0.8.35.crate) = 75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3 +SIZE (rust/crates/encoding_rs-0.8.35.crate) = 1381050 +SHA256 (rust/crates/enum-iterator-2.1.0.crate) = c280b9e6b3ae19e152d8e31cf47f18389781e119d4013a2a2bb0180e5facc635 +SIZE (rust/crates/enum-iterator-2.1.0.crate) = 7668 +SHA256 (rust/crates/enum-iterator-derive-1.4.0.crate) = a1ab991c1362ac86c61ab6f556cff143daa22e5a15e4e189df818b2fd19fe65b +SIZE (rust/crates/enum-iterator-derive-1.4.0.crate) = 5516 +SHA256 (rust/crates/enumflags2-0.7.10.crate) = d232db7f5956f3f14313dc2f87985c58bd2c695ce124c8cdd984e08e15ac133d +SIZE (rust/crates/enumflags2-0.7.10.crate) = 16622 +SHA256 (rust/crates/enumflags2_derive-0.7.10.crate) = de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8 +SIZE (rust/crates/enumflags2_derive-0.7.10.crate) = 8104 +SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5 +SIZE (rust/crates/equivalent-1.0.1.crate) = 6615 +SHA256 (rust/crates/errno-0.3.10.crate) = 33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d +SIZE (rust/crates/errno-0.3.10.crate) = 11824 +SHA256 (rust/crates/escargot-0.5.13.crate) = 05a3ac187a16b5382fef8c69fd1bad123c67b7cf3932240a2d43dcdd32cded88 +SIZE (rust/crates/escargot-0.5.13.crate) = 20849 +SHA256 (rust/crates/fallible-iterator-0.2.0.crate) = 4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7 +SIZE (rust/crates/fallible-iterator-0.2.0.crate) = 18509 +SHA256 (rust/crates/fallible-streaming-iterator-0.1.9.crate) = 7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a +SIZE (rust/crates/fallible-streaming-iterator-0.1.9.crate) = 9249 +SHA256 (rust/crates/fancy-regex-0.11.0.crate) = b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2 +SIZE (rust/crates/fancy-regex-0.11.0.crate) = 82918 +SHA256 (rust/crates/fancy-regex-0.14.0.crate) = 6e24cb5a94bcae1e5408b0effca5cd7172ea3c5755049c5f3af4cd283a165298 +SIZE (rust/crates/fancy-regex-0.14.0.crate) = 86969 +SHA256 (rust/crates/fantoccini-0.21.3.crate) = 8e681009c468d99de858e7757b0cfd5f16311ca999b13ccf543c87da3c04c2c5 +SIZE (rust/crates/fantoccini-0.21.3.crate) = 80146 +SHA256 (rust/crates/faster-hex-0.9.0.crate) = a2a2b11eda1d40935b26cf18f6833c526845ae8c41e58d09af6adeb6f0269183 +SIZE (rust/crates/faster-hex-0.9.0.crate) = 13053 +SHA256 (rust/crates/fastrand-2.3.0.crate) = 37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be +SIZE (rust/crates/fastrand-2.3.0.crate) = 15076 +SHA256 (rust/crates/fernet-0.2.2.crate) = c66b725fe9483b9ee72ccaec072b15eb8ad95a3ae63a8c798d5748883b72fd33 +SIZE (rust/crates/fernet-0.2.2.crate) = 13494 +SHA256 (rust/crates/file-id-0.1.0.crate) = e13be71e6ca82e91bc0cb862bebaac0b2d1924a5a1d970c822b2f98b63fda8c3 +SIZE (rust/crates/file-id-0.1.0.crate) = 2094 +SHA256 (rust/crates/filetime-0.2.25.crate) = 35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586 +SIZE (rust/crates/filetime-0.2.25.crate) = 14940 +SHA256 (rust/crates/fixedbitset-0.4.2.crate) = 0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80 +SIZE (rust/crates/fixedbitset-0.4.2.crate) = 15954 +SHA256 (rust/crates/flagset-0.4.6.crate) = b3ea1ec5f8307826a5b71094dd91fc04d4ae75d5709b20ad351c7fb4815c86ec +SIZE (rust/crates/flagset-0.4.6.crate) = 13623 +SHA256 (rust/crates/flate2-1.0.35.crate) = c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c +SIZE (rust/crates/flate2-1.0.35.crate) = 109188 +SHA256 (rust/crates/fluent-uri-0.3.2.crate) = 1918b65d96df47d3591bed19c5cca17e3fa5d0707318e4b5ef2eae01764df7e5 +SIZE (rust/crates/fluent-uri-0.3.2.crate) = 43604 +SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1 +SIZE (rust/crates/fnv-1.0.7.crate) = 11266 +SHA256 (rust/crates/foldhash-0.1.4.crate) = a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f +SIZE (rust/crates/foldhash-0.1.4.crate) = 13764 +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/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456 +SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969 +SHA256 (rust/crates/fraction-0.15.3.crate) = 0f158e3ff0a1b334408dc9fb811cd99b446986f4d8b741bb08f9df1604085ae7 +SIZE (rust/crates/fraction-0.15.3.crate) = 95223 +SHA256 (rust/crates/fs4-0.8.4.crate) = f7e180ac76c23b45e767bd7ae9579bc0bb458618c4bc71835926e098e61d15f8 +SIZE (rust/crates/fs4-0.8.4.crate) = 18620 +SHA256 (rust/crates/fsevent-sys-4.1.0.crate) = 76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2 +SIZE (rust/crates/fsevent-sys-4.1.0.crate) = 4620 +SHA256 (rust/crates/futures-0.3.31.crate) = 65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876 +SIZE (rust/crates/futures-0.3.31.crate) = 54953 +SHA256 (rust/crates/futures-channel-0.3.31.crate) = 2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10 +SIZE (rust/crates/futures-channel-0.3.31.crate) = 31971 +SHA256 (rust/crates/futures-core-0.3.31.crate) = 05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e +SIZE (rust/crates/futures-core-0.3.31.crate) = 14318 +SHA256 (rust/crates/futures-executor-0.3.31.crate) = 1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f +SIZE (rust/crates/futures-executor-0.3.31.crate) = 17965 +SHA256 (rust/crates/futures-io-0.3.31.crate) = 9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6 +SIZE (rust/crates/futures-io-0.3.31.crate) = 9047 +SHA256 (rust/crates/futures-macro-0.3.31.crate) = 162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650 +SIZE (rust/crates/futures-macro-0.3.31.crate) = 11341 +SHA256 (rust/crates/futures-sink-0.3.31.crate) = e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7 +SIZE (rust/crates/futures-sink-0.3.31.crate) = 7958 +SHA256 (rust/crates/futures-task-0.3.31.crate) = f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988 +SIZE (rust/crates/futures-task-0.3.31.crate) = 11217 +SHA256 (rust/crates/futures-util-0.3.31.crate) = 9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81 +SIZE (rust/crates/futures-util-0.3.31.crate) = 162124 +SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a +SIZE (rust/crates/generic-array-0.14.7.crate) = 15950 +SHA256 (rust/crates/gethostname-0.5.0.crate) = dc3655aa6818d65bc620d6911f05aa7b6aeb596291e1e9f79e52df85583d1e30 +SIZE (rust/crates/gethostname-0.5.0.crate) = 8772 +SHA256 (rust/crates/getrandom-0.2.15.crate) = c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7 +SIZE (rust/crates/getrandom-0.2.15.crate) = 37163 +SHA256 (rust/crates/gif-0.13.1.crate) = 3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2 +SIZE (rust/crates/gif-0.13.1.crate) = 36408 +SHA256 (rust/crates/gimli-0.31.1.crate) = 07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f +SIZE (rust/crates/gimli-0.31.1.crate) = 279515 +SHA256 (rust/crates/gix-0.64.0.crate) = d78414d29fcc82329080166077e0f7689f4016551fdb334d787c3d040fe2634f +SIZE (rust/crates/gix-0.64.0.crate) = 273610 +SHA256 (rust/crates/gix-actor-0.31.5.crate) = a0e454357e34b833cc3a00b6efbbd3dd4d18b24b9fb0c023876ec2645e8aa3f2 +SIZE (rust/crates/gix-actor-0.31.5.crate) = 9335 +SHA256 (rust/crates/gix-chunk-0.4.10.crate) = c6ffbeb3a5c0b8b84c3fe4133a6f8c82fa962f4caefe8d0762eced025d3eb4f7 +SIZE (rust/crates/gix-chunk-0.4.10.crate) = 10131 +SHA256 (rust/crates/gix-commitgraph-0.24.3.crate) = 133b06f67f565836ec0c473e2116a60fb74f80b6435e21d88013ac0e3c60fc78 +SIZE (rust/crates/gix-commitgraph-0.24.3.crate) = 18242 +SHA256 (rust/crates/gix-config-0.38.0.crate) = 28f53fd03d1bf09ebcc2c8654f08969439c4556e644ca925f27cf033bc43e658 +SIZE (rust/crates/gix-config-0.38.0.crate) = 63374 +SHA256 (rust/crates/gix-config-value-0.14.10.crate) = 49aaeef5d98390a3bcf9dbc6440b520b793d1bf3ed99317dc407b02be995b28e +SIZE (rust/crates/gix-config-value-0.14.10.crate) = 13604 +SHA256 (rust/crates/gix-date-0.8.7.crate) = 9eed6931f21491ee0aeb922751bd7ec97b4b2fe8fbfedcb678e2a2dce5f3b8c0 +SIZE (rust/crates/gix-date-0.8.7.crate) = 10349 +SHA256 (rust/crates/gix-diff-0.44.1.crate) = 1996d5c8a305b59709467d80617c9fde48d9d75fd1f4179ea970912630886c9d +SIZE (rust/crates/gix-diff-0.44.1.crate) = 32197 +SHA256 (rust/crates/gix-discover-0.33.0.crate) = 67662731cec3cb31ba3ed2463809493f76d8e5d6c6d245de8b0560438c13450e +SIZE (rust/crates/gix-discover-0.33.0.crate) = 16632 +SHA256 (rust/crates/gix-features-0.38.2.crate) = ac7045ac9fe5f9c727f38799d002a7ed3583cd777e3322a7c4b43e3cf437dc69 +SIZE (rust/crates/gix-features-0.38.2.crate) = 30604 +SHA256 (rust/crates/gix-fs-0.11.3.crate) = f2bfe6249cfea6d0c0e0990d5226a4cb36f030444ba9e35e0639275db8f98575 +SIZE (rust/crates/gix-fs-0.11.3.crate) = 14867 +SHA256 (rust/crates/gix-glob-0.16.5.crate) = 74908b4bbc0a0a40852737e5d7889f676f081e340d5451a16e5b4c50d592f111 +SIZE (rust/crates/gix-glob-0.16.5.crate) = 13425 +SHA256 (rust/crates/gix-hash-0.14.2.crate) = f93d7df7366121b5018f947a04d37f034717e113dcf9ccd85c34b58e57a74d5e +SIZE (rust/crates/gix-hash-0.14.2.crate) = 12759 +SHA256 (rust/crates/gix-hashtable-0.5.2.crate) = 7ddf80e16f3c19ac06ce415a38b8591993d3f73aede049cb561becb5b3a8e242 +SIZE (rust/crates/gix-hashtable-0.5.2.crate) = 6421 +SHA256 (rust/crates/gix-lock-14.0.0.crate) = e3bc7fe297f1f4614774989c00ec8b1add59571dc9b024b4c00acb7dedd4e19d +SIZE (rust/crates/gix-lock-14.0.0.crate) = 9795 +SHA256 (rust/crates/gix-macros-0.1.5.crate) = 999ce923619f88194171a67fb3e6d613653b8d4d6078b529b15a765da0edcc17 +SIZE (rust/crates/gix-macros-0.1.5.crate) = 8627 +SHA256 (rust/crates/gix-object-0.42.3.crate) = 25da2f46b4e7c2fa7b413ce4dffb87f69eaf89c2057e386491f4c55cadbfe386 +SIZE (rust/crates/gix-object-0.42.3.crate) = 32497 +SHA256 (rust/crates/gix-odb-0.61.1.crate) = 20d384fe541d93d8a3bb7d5d5ef210780d6df4f50c4e684ccba32665a5e3bc9b +SIZE (rust/crates/gix-odb-0.61.1.crate) = 54308 +SHA256 (rust/crates/gix-pack-0.51.1.crate) = 3e0594491fffe55df94ba1c111a6566b7f56b3f8d2e1efc750e77d572f5f5229 +SIZE (rust/crates/gix-pack-0.51.1.crate) = 96737 +SHA256 (rust/crates/gix-path-0.10.13.crate) = afc292ef1a51e340aeb0e720800338c805975724c1dfbd243185452efd8645b7 +SIZE (rust/crates/gix-path-0.10.13.crate) = 22831 +SHA256 (rust/crates/gix-quote-0.4.14.crate) = 64a1e282216ec2ab2816cd57e6ed88f8009e634aec47562883c05ac8a7009a63 +SIZE (rust/crates/gix-quote-0.4.14.crate) = 7828 +SHA256 (rust/crates/gix-ref-0.45.0.crate) = 636e96a0a5562715153fee098c217110c33a6f8218f08f4687ff99afde159bb5 +SIZE (rust/crates/gix-ref-0.45.0.crate) = 56670 +SHA256 (rust/crates/gix-refspec-0.23.1.crate) = 6868f8cd2e62555d1f7c78b784bece43ace40dd2a462daf3b588d5416e603f37 +SIZE (rust/crates/gix-refspec-0.23.1.crate) = 16175 +SHA256 (rust/crates/gix-revision-0.27.2.crate) = 01b13e43c2118c4b0537ddac7d0821ae0dfa90b7b8dbf20c711e153fb749adce +SIZE (rust/crates/gix-revision-0.27.2.crate) = 19204 +SHA256 (rust/crates/gix-revwalk-0.13.2.crate) = 1b030ccaab71af141f537e0225f19b9e74f25fefdba0372246b844491cab43e0 +SIZE (rust/crates/gix-revwalk-0.13.2.crate) = 11854 +SHA256 (rust/crates/gix-sec-0.10.10.crate) = a8b876ef997a955397809a2ec398d6a45b7a55b4918f2446344330f778d14fd6 +SIZE (rust/crates/gix-sec-0.10.10.crate) = 10205 +SHA256 (rust/crates/gix-tempfile-14.0.2.crate) = 046b4927969fa816a150a0cda2e62c80016fe11fb3c3184e4dddf4e542f108aa +SIZE (rust/crates/gix-tempfile-14.0.2.crate) = 17489 +SHA256 (rust/crates/gix-trace-0.1.11.crate) = 04bdde120c29f1fc23a24d3e115aeeea3d60d8e65bab92cc5f9d90d9302eb952 +SIZE (rust/crates/gix-trace-0.1.11.crate) = 10424 +SHA256 (rust/crates/gix-traverse-0.39.2.crate) = e499a18c511e71cf4a20413b743b9f5bcf64b3d9e81e9c3c6cd399eae55a8840 +SIZE (rust/crates/gix-traverse-0.39.2.crate) = 17291 +SHA256 (rust/crates/gix-url-0.27.5.crate) = fd280c5e84fb22e128ed2a053a0daeacb6379469be6a85e3d518a0636e160c89 +SIZE (rust/crates/gix-url-0.27.5.crate) = 14367 +SHA256 (rust/crates/gix-utils-0.1.13.crate) = ba427e3e9599508ed98a6ddf8ed05493db114564e338e41f6a996d2e4790335f +SIZE (rust/crates/gix-utils-0.1.13.crate) = 10194 +SHA256 (rust/crates/gix-validate-0.8.5.crate) = 82c27dd34a49b1addf193c92070bcbf3beaf6e10f16a78544de6372e146a0acf +SIZE (rust/crates/gix-validate-0.8.5.crate) = 10408 +SHA256 (rust/crates/glob-0.3.1.crate) = d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b +SIZE (rust/crates/glob-0.3.1.crate) = 18880 +SHA256 (rust/crates/h2-0.3.26.crate) = 81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8 +SIZE (rust/crates/h2-0.3.26.crate) = 168315 +SHA256 (rust/crates/h2-0.4.7.crate) = ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e +SIZE (rust/crates/h2-0.4.7.crate) = 174114 +SHA256 (rust/crates/half-1.8.3.crate) = 1b43ede17f21864e81be2fa654110bf1e793774238d86ef8555c37e6519c0403 +SIZE (rust/crates/half-1.8.3.crate) = 41624 +SHA256 (rust/crates/hashbrown-0.12.3.crate) = 8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888 +SIZE (rust/crates/hashbrown-0.12.3.crate) = 102968 +SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1 +SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498 +SHA256 (rust/crates/hashbrown-0.15.2.crate) = bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289 +SIZE (rust/crates/hashbrown-0.15.2.crate) = 138478 +SHA256 (rust/crates/hashlink-0.8.4.crate) = e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7 +SIZE (rust/crates/hashlink-0.8.4.crate) = 26514 +SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea +SIZE (rust/crates/heck-0.5.0.crate) = 11517 +SHA256 (rust/crates/hex-0.4.3.crate) = 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70 +SIZE (rust/crates/hex-0.4.3.crate) = 13299 +SHA256 (rust/crates/home-0.5.11.crate) = 589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf +SIZE (rust/crates/home-0.5.11.crate) = 9926 +SHA256 (rust/crates/hostname-validator-1.1.1.crate) = f558a64ac9af88b5ba400d99b579451af0d39c6d360980045b91aac966d705e2 +SIZE (rust/crates/hostname-validator-1.1.1.crate) = 2377 +SHA256 (rust/crates/http-0.2.12.crate) = 601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1 +SIZE (rust/crates/http-0.2.12.crate) = 101964 +SHA256 (rust/crates/http-1.2.0.crate) = f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea +SIZE (rust/crates/http-1.2.0.crate) = 105932 +SHA256 (rust/crates/http-body-0.4.6.crate) = 7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2 +SIZE (rust/crates/http-body-0.4.6.crate) = 10773 +SHA256 (rust/crates/http-body-1.0.1.crate) = 1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184 +SIZE (rust/crates/http-body-1.0.1.crate) = 6125 +SHA256 (rust/crates/http-body-util-0.1.2.crate) = 793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f +SIZE (rust/crates/http-body-util-0.1.2.crate) = 12821 +SHA256 (rust/crates/http-range-header-0.4.2.crate) = 9171a2ea8a68358193d15dd5d70c1c10a2afc3e7e4c5bc92bc9f025cebd7359c +SIZE (rust/crates/http-range-header-0.4.2.crate) = 8545 +SHA256 (rust/crates/httparse-1.9.5.crate) = 7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946 +SIZE (rust/crates/httparse-1.9.5.crate) = 39029 +SHA256 (rust/crates/httpdate-1.0.3.crate) = df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9 +SIZE (rust/crates/httpdate-1.0.3.crate) = 10639 +SHA256 (rust/crates/humansize-2.1.3.crate) = 6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7 +SIZE (rust/crates/humansize-2.1.3.crate) = 11953 +SHA256 (rust/crates/hyper-0.14.32.crate) = 41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7 +SIZE (rust/crates/hyper-0.14.32.crate) = 199622 +SHA256 (rust/crates/hyper-1.5.2.crate) = 256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0 +SIZE (rust/crates/hyper-1.5.2.crate) = 152817 +SHA256 (rust/crates/hyper-rustls-0.24.2.crate) = ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590 +SIZE (rust/crates/hyper-rustls-0.24.2.crate) = 30195 +SHA256 (rust/crates/hyper-rustls-0.27.5.crate) = 2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2 +SIZE (rust/crates/hyper-rustls-0.27.5.crate) = 34660 +SHA256 (rust/crates/hyper-timeout-0.4.1.crate) = bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1 +SIZE (rust/crates/hyper-timeout-0.4.1.crate) = 13805 +SHA256 (rust/crates/hyper-tls-0.6.0.crate) = 70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0 +SIZE (rust/crates/hyper-tls-0.6.0.crate) = 15052 +SHA256 (rust/crates/hyper-util-0.1.10.crate) = df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4 +SIZE (rust/crates/hyper-util-0.1.10.crate) = 72887 +SHA256 (rust/crates/iana-time-zone-0.1.61.crate) = 235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220 +SIZE (rust/crates/iana-time-zone-0.1.61.crate) = 27685 +SHA256 (rust/crates/iana-time-zone-haiku-0.1.2.crate) = f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f +SIZE (rust/crates/iana-time-zone-haiku-0.1.2.crate) = 7185 +SHA256 (rust/crates/icu_collections-1.5.0.crate) = db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526 +SIZE (rust/crates/icu_collections-1.5.0.crate) = 82762 +SHA256 (rust/crates/icu_locid-1.5.0.crate) = 13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637 +SIZE (rust/crates/icu_locid-1.5.0.crate) = 55131 +SHA256 (rust/crates/icu_locid_transform-1.5.0.crate) = 01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e +SIZE (rust/crates/icu_locid_transform-1.5.0.crate) = 29094 +SHA256 (rust/crates/icu_locid_transform_data-1.5.0.crate) = fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e +SIZE (rust/crates/icu_locid_transform_data-1.5.0.crate) = 44727 +SHA256 (rust/crates/icu_normalizer-1.5.0.crate) = 19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f +SIZE (rust/crates/icu_normalizer-1.5.0.crate) = 53113 +SHA256 (rust/crates/icu_normalizer_data-1.5.0.crate) = f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516 +SIZE (rust/crates/icu_normalizer_data-1.5.0.crate) = 50561 +SHA256 (rust/crates/icu_properties-1.5.1.crate) = 93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5 +SIZE (rust/crates/icu_properties-1.5.1.crate) = 64479 +SHA256 (rust/crates/icu_properties_data-1.5.0.crate) = 67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569 +SIZE (rust/crates/icu_properties_data-1.5.0.crate) = 227993 +SHA256 (rust/crates/icu_provider-1.5.0.crate) = 6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9 +SIZE (rust/crates/icu_provider-1.5.0.crate) = 52722 +SHA256 (rust/crates/icu_provider_macros-1.5.0.crate) = 1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6 +SIZE (rust/crates/icu_provider_macros-1.5.0.crate) = 6436 +SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39 +SIZE (rust/crates/ident_case-1.0.1.crate) = 3492 +SHA256 (rust/crates/idlset-0.2.5.crate) = ef858150272c6cce9db3710a171edf5d3e8844d38680d7657e9b1698efe8d97b +SIZE (rust/crates/idlset-0.2.5.crate) = 106725 +SHA256 (rust/crates/idna-1.0.3.crate) = 686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e +SIZE (rust/crates/idna-1.0.3.crate) = 142515 +SHA256 (rust/crates/idna_adapter-1.2.0.crate) = daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71 +SIZE (rust/crates/idna_adapter-1.2.0.crate) = 8206 +SHA256 (rust/crates/image-0.23.14.crate) = 24ffcb7e7244a9bf19d35bf2883b9c080c4ced3c07a9895572178cdb8f13f6a1 +SIZE (rust/crates/image-0.23.14.crate) = 226804 +SHA256 (rust/crates/image-0.24.9.crate) = 5690139d2f55868e080017335e4b94cb7414274c74f1669c84fb5feba2c9f69d +SIZE (rust/crates/image-0.24.9.crate) = 9261055 +SHA256 (rust/crates/indexmap-1.9.3.crate) = bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99 +SIZE (rust/crates/indexmap-1.9.3.crate) = 54653 +SHA256 (rust/crates/indexmap-2.7.0.crate) = 62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f +SIZE (rust/crates/indexmap-2.7.0.crate) = 85335 +SHA256 (rust/crates/inotify-0.9.6.crate) = f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff +SIZE (rust/crates/inotify-0.9.6.crate) = 22971 +SHA256 (rust/crates/inotify-sys-0.1.5.crate) = e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb +SIZE (rust/crates/inotify-sys-0.1.5.crate) = 6965 +SHA256 (rust/crates/ipnet-2.10.1.crate) = ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708 +SIZE (rust/crates/ipnet-2.10.1.crate) = 28407 +SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf +SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492 +SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473 +SIZE (rust/crates/itertools-0.10.5.crate) = 115354 +SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186 +SIZE (rust/crates/itertools-0.13.0.crate) = 146261 +SHA256 (rust/crates/itoa-1.0.14.crate) = d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674 +SIZE (rust/crates/itoa-1.0.14.crate) = 11210 +SHA256 (rust/crates/jpeg-decoder-0.3.1.crate) = f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0 +SIZE (rust/crates/jpeg-decoder-0.3.1.crate) = 744364 +SHA256 (rust/crates/js-sys-0.3.76.crate) = 6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7 +SIZE (rust/crates/js-sys-0.3.76.crate) = 54420 +SHA256 (rust/crates/jsonschema-0.28.0.crate) = 74d8eb539cdb4222da29bb658cc9881aa2477b33fb1a74c5c31450395fc1a4b2 +SIZE (rust/crates/jsonschema-0.28.0.crate) = 99139 +SHA256 (rust/crates/kanidm-hsm-crypto-0.2.0.crate) = 10b3ed8e86cda3da4f274c677a3057d567bd7b715a0feb06a656e55cc75faf5e +SIZE (rust/crates/kanidm-hsm-crypto-0.2.0.crate) = 29700 +SHA256 (rust/crates/kqueue-1.0.8.crate) = 7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c +SIZE (rust/crates/kqueue-1.0.8.crate) = 12642 +SHA256 (rust/crates/kqueue-sys-1.0.4.crate) = ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b +SIZE (rust/crates/kqueue-sys-1.0.4.crate) = 7160 +SHA256 (rust/crates/lazy_static-1.5.0.crate) = bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe +SIZE (rust/crates/lazy_static-1.5.0.crate) = 14025 +SHA256 (rust/crates/lazycell-1.3.0.crate) = 830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55 +SIZE (rust/crates/lazycell-1.3.0.crate) = 12502 +SHA256 (rust/crates/lber-0.4.2.crate) = 2df7f9fd9f64cf8f59e1a4a0753fe7d575a5b38d3d7ac5758dcee9357d83ef0a +SIZE (rust/crates/lber-0.4.2.crate) = 8107 +SHA256 (rust/crates/ldap3_client-0.5.2.crate) = c6027fc899bda353fe645cdcab9de93b0d2fa4731c105ad449fed22c455b61ff +SIZE (rust/crates/ldap3_client-0.5.2.crate) = 7678 +SHA256 (rust/crates/ldap3_proto-0.5.2.crate) = e9a047c1b49d3b4da70f52ac54310dcd879c9b7fef658615ff17f6212ae7411e +SIZE (rust/crates/ldap3_proto-0.5.2.crate) = 43605 +SHA256 (rust/crates/libc-0.2.169.crate) = b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a +SIZE (rust/crates/libc-0.2.169.crate) = 757901 +SHA256 (rust/crates/libloading-0.8.6.crate) = fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34 +SIZE (rust/crates/libloading-0.8.6.crate) = 28922 +SHA256 (rust/crates/libm-0.2.11.crate) = 8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa +SIZE (rust/crates/libm-0.2.11.crate) = 111477 +SHA256 (rust/crates/libmimalloc-sys-0.1.39.crate) = 23aa6811d3bd4deb8a84dde645f943476d13b248d818edcf8ce0b2f37f036b44 +SIZE (rust/crates/libmimalloc-sys-0.1.39.crate) = 198523 +SHA256 (rust/crates/libnss-0.8.0.crate) = 3c4bc0291fc787d67c56e9ed79b80780e53bfb9be173177f301ee666cec1021b +SIZE (rust/crates/libnss-0.8.0.crate) = 7015 +SHA256 (rust/crates/libredox-0.1.3.crate) = c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d +SIZE (rust/crates/libredox-0.1.3.crate) = 6068 +SHA256 (rust/crates/libsqlite3-sys-0.25.2.crate) = 29f835d03d717946d28b1d1ed632eb6f0e24a299388ee623d0c23118d3e8a7fa +SIZE (rust/crates/libsqlite3-sys-0.25.2.crate) = 4841525 +SHA256 (rust/crates/libudev-0.2.0.crate) = ea626d3bdf40a1c5aee3bcd4f40826970cae8d80a8fec934c82a63840094dcfe +SIZE (rust/crates/libudev-0.2.0.crate) = 8833 +SHA256 (rust/crates/libudev-sys-0.1.4.crate) = 3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324 +SIZE (rust/crates/libudev-sys-0.1.4.crate) = 6177 +SHA256 (rust/crates/linux-raw-sys-0.4.14.crate) = 78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89 +SIZE (rust/crates/linux-raw-sys-0.4.14.crate) = 1826665 +SHA256 (rust/crates/litemap-0.7.4.crate) = 4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104 +SIZE (rust/crates/litemap-0.7.4.crate) = 28257 +SHA256 (rust/crates/litrs-0.4.1.crate) = b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5 +SIZE (rust/crates/litrs-0.4.1.crate) = 42603 +SHA256 (rust/crates/lock_api-0.4.12.crate) = 07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17 +SIZE (rust/crates/lock_api-0.4.12.crate) = 27591 +SHA256 (rust/crates/lodepng-3.10.7.crate) = 7b2dea7cda68e381418c985fd8f32a9c279a21ae8c715f2376adb20c27a0fad3 +SIZE (rust/crates/lodepng-3.10.7.crate) = 52706 +SHA256 (rust/crates/log-0.4.22.crate) = a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24 +SIZE (rust/crates/log-0.4.22.crate) = 44027 +SHA256 (rust/crates/lru-0.12.5.crate) = 234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38 +SIZE (rust/crates/lru-0.12.5.crate) = 16047 +SHA256 (rust/crates/malloced-1.3.1.crate) = 6dfebb2f9e0b39509c62eead6ec7ae0c0ed45bb61d12bbcf4e976c566c5400ec +SIZE (rust/crates/malloced-1.3.1.crate) = 12129 +SHA256 (rust/crates/matchers-0.1.0.crate) = 8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558 +SIZE (rust/crates/matchers-0.1.0.crate) = 6948 +SHA256 (rust/crates/matchit-0.7.3.crate) = 0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94 +SIZE (rust/crates/matchit-0.7.3.crate) = 30372 +SHA256 (rust/crates/mathru-0.13.0.crate) = 9a42bf938e4c9a6ad581cf528d5606eb50c5458ac759ca23719291e2f6499bec +SIZE (rust/crates/mathru-0.13.0.crate) = 494915 +SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3 +SIZE (rust/crates/memchr-2.7.4.crate) = 96670 +SHA256 (rust/crates/memmap2-0.9.5.crate) = fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f +SIZE (rust/crates/memmap2-0.9.5.crate) = 33280 +SHA256 (rust/crates/memoffset-0.8.0.crate) = d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1 +SIZE (rust/crates/memoffset-0.8.0.crate) = 8912 +SHA256 (rust/crates/mimalloc-0.1.43.crate) = 68914350ae34959d83f732418d51e2427a794055d0b9529f48259ac07af65633 +SIZE (rust/crates/mimalloc-0.1.43.crate) = 4075 +SHA256 (rust/crates/mime-0.3.17.crate) = 6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a +SIZE (rust/crates/mime-0.3.17.crate) = 15712 +SHA256 (rust/crates/mime_guess-2.0.5.crate) = f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e +SIZE (rust/crates/mime_guess-2.0.5.crate) = 27166 +SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a +SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841 +SHA256 (rust/crates/miniz_oxide-0.8.2.crate) = 4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394 +SIZE (rust/crates/miniz_oxide-0.8.2.crate) = 59068 +SHA256 (rust/crates/mintex-0.1.3.crate) = 9bec4598fddb13cc7b528819e697852653252b760f1228b7642679bf2ff2cd07 +SIZE (rust/crates/mintex-0.1.3.crate) = 6769 +SHA256 (rust/crates/mio-0.8.11.crate) = a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c +SIZE (rust/crates/mio-0.8.11.crate) = 102983 +SHA256 (rust/crates/mio-1.0.3.crate) = 2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd +SIZE (rust/crates/mio-1.0.3.crate) = 103703 +SHA256 (rust/crates/multer-3.1.0.crate) = 83e87776546dc87511aa5ee218730c92b666d7264ab6ed41f9d215af9cd5224b +SIZE (rust/crates/multer-3.1.0.crate) = 25980 +SHA256 (rust/crates/native-tls-0.2.12.crate) = a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466 +SIZE (rust/crates/native-tls-0.2.12.crate) = 29517 +SHA256 (rust/crates/nix-0.29.0.crate) = 71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46 +SIZE (rust/crates/nix-0.29.0.crate) = 318248 +SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a +SIZE (rust/crates/nom-7.1.3.crate) = 117570 +SHA256 (rust/crates/nonempty-0.8.1.crate) = aeaf4ad7403de93e699c191202f017118df734d3850b01e13a3a8b2e6953d3c9 +SIZE (rust/crates/nonempty-0.8.1.crate) = 9782 +SHA256 (rust/crates/notify-6.1.1.crate) = 6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d +SIZE (rust/crates/notify-6.1.1.crate) = 40117 +SHA256 (rust/crates/notify-debouncer-full-0.1.0.crate) = f4812c1eb49be776fb8df4961623bdc01ec9dfdc1abe8211ceb09150a2e64219 +SIZE (rust/crates/notify-debouncer-full-0.1.0.crate) = 13595 +SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84 +SIZE (rust/crates/nu-ansi-term-0.46.0.crate) = 24311 +SHA256 (rust/crates/num-0.4.3.crate) = 35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23 +SIZE (rust/crates/num-0.4.3.crate) = 9575 +SHA256 (rust/crates/num-bigint-0.4.6.crate) = a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9 +SIZE (rust/crates/num-bigint-0.4.6.crate) = 102801 +SHA256 (rust/crates/num-cmp-0.1.0.crate) = 63335b2e2c34fae2fb0aa2cecfd9f0832a1e24b3b32ecec612c3426d46dc8aaa +SIZE (rust/crates/num-cmp-0.1.0.crate) = 15375 +SHA256 (rust/crates/num-complex-0.4.6.crate) = 73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495 +SIZE (rust/crates/num-complex-0.4.6.crate) = 30352 +SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9 +SIZE (rust/crates/num-conv-0.1.0.crate) = 7444 +SHA256 (rust/crates/num-derive-0.3.3.crate) = 876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d +SIZE (rust/crates/num-derive-0.3.3.crate) = 14545 +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-rational-0.3.2.crate) = 12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07 +SIZE (rust/crates/num-rational-0.3.2.crate) = 26359 +SHA256 (rust/crates/num-rational-0.4.2.crate) = f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824 +SIZE (rust/crates/num-rational-0.4.2.crate) = 28159 +SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841 +SIZE (rust/crates/num-traits-0.2.19.crate) = 51631 +SHA256 (rust/crates/num_enum-0.5.11.crate) = 1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9 +SIZE (rust/crates/num_enum-0.5.11.crate) = 16772 +SHA256 (rust/crates/num_enum_derive-0.5.11.crate) = dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799 +SIZE (rust/crates/num_enum_derive-0.5.11.crate) = 15552 +SHA256 (rust/crates/num_threads-0.1.7.crate) = 5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9 +SIZE (rust/crates/num_threads-0.1.7.crate) = 7455 +SHA256 (rust/crates/oauth2-4.4.2.crate) = c38841cdd844847e3e7c8d29cef9dcfed8877f8f56f9071f77843ecf3baf937f +SIZE (rust/crates/oauth2-4.4.2.crate) = 74489 +SHA256 (rust/crates/object-0.36.5.crate) = aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e +SIZE (rust/crates/object-0.36.5.crate) = 327435 +SHA256 (rust/crates/oid-0.2.1.crate) = 9c19903c598813dba001b53beeae59bb77ad4892c5c1b9b3500ce4293a0d06c2 +SIZE (rust/crates/oid-0.2.1.crate) = 12533 +SHA256 (rust/crates/oid-registry-0.7.1.crate) = a8d8034d9489cdaf79228eb9f6a3b8d7bb32ba00d6645ebd48eef4077ceb5bd9 +SIZE (rust/crates/oid-registry-0.7.1.crate) = 15220 +SHA256 (rust/crates/once_cell-1.20.2.crate) = 1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775 +SIZE (rust/crates/once_cell-1.20.2.crate) = 33394 +SHA256 (rust/crates/openssl-0.10.68.crate) = 6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5 +SIZE (rust/crates/openssl-0.10.68.crate) = 276578 +SHA256 (rust/crates/openssl-macros-0.1.1.crate) = a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c +SIZE (rust/crates/openssl-macros-0.1.1.crate) = 5601 +SHA256 (rust/crates/openssl-probe-0.1.5.crate) = ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf +SIZE (rust/crates/openssl-probe-0.1.5.crate) = 7227 +SHA256 (rust/crates/openssl-sys-0.9.104.crate) = 45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741 +SIZE (rust/crates/openssl-sys-0.9.104.crate) = 72287 +SHA256 (rust/crates/opentelemetry-0.20.0.crate) = 9591d937bc0e6d2feb6f71a559540ab300ea49955229c347a517a28d27784c54 +SIZE (rust/crates/opentelemetry-0.20.0.crate) = 15313 +SHA256 (rust/crates/opentelemetry-http-0.9.0.crate) = c7594ec0e11d8e33faf03530a4c49af7064ebba81c1480e01be67d90b356508b +SIZE (rust/crates/opentelemetry-http-0.9.0.crate) = 8772 +SHA256 (rust/crates/opentelemetry-otlp-0.13.0.crate) = 7e5e5a5c4135864099f3faafbe939eb4d7f9b80ebf68a8448da961b32a7c1275 +SIZE (rust/crates/opentelemetry-otlp-0.13.0.crate) = 30421 +SHA256 (rust/crates/opentelemetry-proto-0.3.0.crate) = b1e3f814aa9f8c905d0ee4bde026afd3b2577a97c10e1699912e3e44f0c4cbeb +SIZE (rust/crates/opentelemetry-proto-0.3.0.crate) = 182707 +SHA256 (rust/crates/opentelemetry-semantic-conventions-0.12.0.crate) = 73c9f9340ad135068800e7f1b24e9e09ed9e7143f5bf8518ded3d3ec69789269 +SIZE (rust/crates/opentelemetry-semantic-conventions-0.12.0.crate) = 32096 +SHA256 (rust/crates/opentelemetry_api-0.20.0.crate) = 8a81f725323db1b1206ca3da8bb19874bbd3f57c3bcd59471bfb04525b265b9b +SIZE (rust/crates/opentelemetry_api-0.20.0.crate) = 60100 +SHA256 (rust/crates/opentelemetry_sdk-0.20.0.crate) = fa8e705a0612d48139799fcbaba0d4a90f06277153e43dd2bdc16c6f0edd8026 +SIZE (rust/crates/opentelemetry_sdk-0.20.0.crate) = 103022 +SHA256 (rust/crates/ordered-float-3.9.2.crate) = f1e1c390732d15f1d48471625cd92d154e66db2c56645e29a9cd26f4699f72dc +SIZE (rust/crates/ordered-float-3.9.2.crate) = 19788 +SHA256 (rust/crates/outref-0.5.1.crate) = 4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a +SIZE (rust/crates/outref-0.5.1.crate) = 3957 +SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39 +SIZE (rust/crates/overload-0.1.1.crate) = 24439 +SHA256 (rust/crates/parking_lot-0.12.3.crate) = f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27 +SIZE (rust/crates/parking_lot-0.12.3.crate) = 41860 +SHA256 (rust/crates/parking_lot_core-0.9.10.crate) = 1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8 +SIZE (rust/crates/parking_lot_core-0.9.10.crate) = 32406 +SHA256 (rust/crates/password-hash-0.5.0.crate) = 346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166 +SIZE (rust/crates/password-hash-0.5.0.crate) = 26884 +SHA256 (rust/crates/paste-1.0.15.crate) = 57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a +SIZE (rust/crates/paste-1.0.15.crate) = 18374 +SHA256 (rust/crates/peeking_take_while-0.1.2.crate) = 19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099 +SIZE (rust/crates/peeking_take_while-0.1.2.crate) = 6697 +SHA256 (rust/crates/peg-0.8.4.crate) = 295283b02df346d1ef66052a757869b2876ac29a6bb0ac3f5f7cd44aebe40e8f +SIZE (rust/crates/peg-0.8.4.crate) = 19291 +SHA256 (rust/crates/peg-macros-0.8.4.crate) = bdad6a1d9cf116a059582ce415d5f5566aabcd4008646779dab7fdc2a9a9d426 +SIZE (rust/crates/peg-macros-0.8.4.crate) = 29722 +SHA256 (rust/crates/peg-runtime-0.8.3.crate) = e3aeb8f54c078314c2065ee649a7241f46b9d8e418e1a9581ba0546657d7aa3a +SIZE (rust/crates/peg-runtime-0.8.3.crate) = 4159 +SHA256 (rust/crates/pem-rfc7468-0.7.0.crate) = 88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412 +SIZE (rust/crates/pem-rfc7468-0.7.0.crate) = 24159 +SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e +SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235 +SHA256 (rust/crates/petgraph-0.6.5.crate) = b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db +SIZE (rust/crates/petgraph-0.6.5.crate) = 710970 +SHA256 (rust/crates/picky-asn1-0.8.0.crate) = 295eea0f33c16be21e2a98b908fdd4d73c04dd48c8480991b76dbcf0cb58b212 +SIZE (rust/crates/picky-asn1-0.8.0.crate) = 19901 +SHA256 (rust/crates/picky-asn1-der-0.4.1.crate) = 5df7873a9e36d42dadb393bea5e211fe83d793c172afad5fb4ec846ec582793f +SIZE (rust/crates/picky-asn1-der-0.4.1.crate) = 20924 +SHA256 (rust/crates/picky-asn1-x509-0.12.0.crate) = 2c5f20f71a68499ff32310f418a6fad8816eac1a2859ed3f0c5c741389dd6208 +SIZE (rust/crates/picky-asn1-x509-0.12.0.crate) = 98267 +SHA256 (rust/crates/pin-project-1.1.7.crate) = be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95 +SIZE (rust/crates/pin-project-1.1.7.crate) = 55438 +SHA256 (rust/crates/pin-project-internal-1.1.7.crate) = 3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c +SIZE (rust/crates/pin-project-internal-1.1.7.crate) = 28549 +SHA256 (rust/crates/pin-project-lite-0.2.15.crate) = 915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff +SIZE (rust/crates/pin-project-lite-0.2.15.crate) = 29683 +SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184 +SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580 +SHA256 (rust/crates/pkg-config-0.3.31.crate) = 953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2 +SIZE (rust/crates/pkg-config-0.3.31.crate) = 20880 +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.20.crate) = 77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04 +SIZE (rust/crates/ppv-lite86-0.2.20.crate) = 22478 +SHA256 (rust/crates/prctl-1.0.0.crate) = 059a34f111a9dee2ce1ac2826a68b24601c4298cfeb1a587c3cb493d5ab46f52 +SIZE (rust/crates/prctl-1.0.0.crate) = 5084 +SHA256 (rust/crates/predicates-3.1.3.crate) = a5d19ee57562043d37e82899fade9a22ebab7be9cef5026b07fda9cdd4293573 +SIZE (rust/crates/predicates-3.1.3.crate) = 24063 +SHA256 (rust/crates/predicates-core-1.0.9.crate) = 727e462b119fe9c93fd0eb1429a5f7647394014cf3c04ab2c0350eeb09095ffa +SIZE (rust/crates/predicates-core-1.0.9.crate) = 8618 +SHA256 (rust/crates/predicates-tree-1.0.12.crate) = 72dd2d6d381dfb73a193c7fca536518d7caee39fc8503f74e7dc0be0531b425c +SIZE (rust/crates/predicates-tree-1.0.12.crate) = 8392 +SHA256 (rust/crates/prettyplease-0.2.25.crate) = 64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033 +SIZE (rust/crates/prettyplease-0.2.25.crate) = 58681 +SHA256 (rust/crates/proc-macro-crate-1.3.1.crate) = 7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919 +SIZE (rust/crates/proc-macro-crate-1.3.1.crate) = 9678 +SHA256 (rust/crates/proc-macro-error-1.0.4.crate) = da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c +SIZE (rust/crates/proc-macro-error-1.0.4.crate) = 25293 +SHA256 (rust/crates/proc-macro-error-attr-1.0.4.crate) = a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869 +SIZE (rust/crates/proc-macro-error-attr-1.0.4.crate) = 7971 +SHA256 (rust/crates/proc-macro2-1.0.92.crate) = 37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0 +SIZE (rust/crates/proc-macro2-1.0.92.crate) = 52353 +SHA256 (rust/crates/prodash-28.0.0.crate) = 744a264d26b88a6a7e37cbad97953fa233b94d585236310bcbc88474b4092d79 +SIZE (rust/crates/prodash-28.0.0.crate) = 90695 +SHA256 (rust/crates/prost-0.11.9.crate) = 0b82eaa1d779e9a4bc1c3217db8ffbeabaae1dca241bf70183242128d48681cd +SIZE (rust/crates/prost-0.11.9.crate) = 28958 +SHA256 (rust/crates/prost-derive-0.11.9.crate) = e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4 +SIZE (rust/crates/prost-derive-0.11.9.crate) = 19513 +SHA256 (rust/crates/psl-types-2.0.11.crate) = 33cb294fe86a74cbcf50d4445b37da762029549ebeea341421c7c70370f86cac +SIZE (rust/crates/psl-types-2.0.11.crate) = 7959 +SHA256 (rust/crates/publicsuffix-2.3.0.crate) = 6f42ea446cab60335f76979ec15e12619a2165b5ae2c12166bef27d283a9fadf +SIZE (rust/crates/publicsuffix-2.3.0.crate) = 87890 +SHA256 (rust/crates/qrcode-0.12.0.crate) = 16d2f1455f3630c6e5107b4f2b94e74d76dea80736de0981fd27644216cff57f +SIZE (rust/crates/qrcode-0.12.0.crate) = 58072 +SHA256 (rust/crates/quick-error-2.0.1.crate) = a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3 +SIZE (rust/crates/quick-error-2.0.1.crate) = 14265 +SHA256 (rust/crates/quinn-0.11.6.crate) = 62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef +SIZE (rust/crates/quinn-0.11.6.crate) = 78222 +SHA256 (rust/crates/quinn-proto-0.11.9.crate) = a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d +SIZE (rust/crates/quinn-proto-0.11.9.crate) = 209286 +SHA256 (rust/crates/quinn-udp-0.5.9.crate) = 1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904 +SIZE (rust/crates/quinn-udp-0.5.9.crate) = 25342 +SHA256 (rust/crates/quote-1.0.38.crate) = 0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc +SIZE (rust/crates/quote-1.0.38.crate) = 31252 +SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404 +SIZE (rust/crates/rand-0.8.5.crate) = 87113 +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/redox_syscall-0.5.8.crate) = 03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834 +SIZE (rust/crates/redox_syscall-0.5.8.crate) = 26319 +SHA256 (rust/crates/redox_users-0.4.6.crate) = ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43 +SIZE (rust/crates/redox_users-0.4.6.crate) = 15585 +SHA256 (rust/crates/ref-cast-1.0.23.crate) = ccf0a6f84d5f1d581da8b41b47ec8600871962f2a528115b542b362d4b744931 +SIZE (rust/crates/ref-cast-1.0.23.crate) = 12795 +SHA256 (rust/crates/ref-cast-impl-1.0.23.crate) = bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6 +SIZE (rust/crates/ref-cast-impl-1.0.23.crate) = 9360 +SHA256 (rust/crates/reference-counted-singleton-0.1.5.crate) = 5daffa8f5ca827e146485577fa9dba9bd9c6921e06e954ab8f6408c10f753086 +SIZE (rust/crates/reference-counted-singleton-0.1.5.crate) = 6309 +SHA256 (rust/crates/referencing-0.28.0.crate) = 093a875008827c0ae15c746189966e162faa05bf347719d06302c548ac63630f +SIZE (rust/crates/referencing-0.28.0.crate) = 28820 +SHA256 (rust/crates/regex-1.11.1.crate) = b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191 +SIZE (rust/crates/regex-1.11.1.crate) = 254170 +SHA256 (rust/crates/regex-automata-0.1.10.crate) = 6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132 +SIZE (rust/crates/regex-automata-0.1.10.crate) = 114533 +SHA256 (rust/crates/regex-automata-0.4.9.crate) = 809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908 +SIZE (rust/crates/regex-automata-0.4.9.crate) = 618525 +SHA256 (rust/crates/regex-syntax-0.6.29.crate) = f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1 +SIZE (rust/crates/regex-syntax-0.6.29.crate) = 299752 +SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c +SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541 +SHA256 (rust/crates/reqwest-0.11.27.crate) = dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62 +SIZE (rust/crates/reqwest-0.11.27.crate) = 163155 +SHA256 (rust/crates/reqwest-0.12.11.crate) = 7fe060fe50f524be480214aba758c71f99f90ee8c83c5a36b5e9e1d568eb4eb3 +SIZE (rust/crates/reqwest-0.12.11.crate) = 193279 +SHA256 (rust/crates/rgb-0.8.50.crate) = 57397d16646700483b67d2dd6511d79318f9d057fdbd21a4066aeac8b41d310a +SIZE (rust/crates/rgb-0.8.50.crate) = 21980 +SHA256 (rust/crates/ring-0.17.8.crate) = c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d +SIZE (rust/crates/ring-0.17.8.crate) = 4188554 +SHA256 (rust/crates/rpassword-5.0.1.crate) = ffc936cf8a7ea60c58f030fd36a612a48f440610214dc54bc36431f9ea0c3efb +SIZE (rust/crates/rpassword-5.0.1.crate) = 11109 +SHA256 (rust/crates/runloop-0.1.0.crate) = 5d79b4b604167921892e84afbbaad9d5ad74e091bf6c511d9dbfb0593f09fabd +SIZE (rust/crates/runloop-0.1.0.crate) = 8610 +SHA256 (rust/crates/rusqlite-0.28.0.crate) = 01e213bc3ecb39ac32e81e51ebe31fd888a940515173e3a18a35f8c6e896422a +SIZE (rust/crates/rusqlite-0.28.0.crate) = 137504 +SHA256 (rust/crates/rust-embed-8.5.0.crate) = fa66af4a4fdd5e7ebc276f115e895611a34739a9c1c01028383d612d550953c0 +SIZE (rust/crates/rust-embed-8.5.0.crate) = 904054 +SHA256 (rust/crates/rust-embed-impl-8.5.0.crate) = 6125dbc8867951125eec87294137f4e9c2c96566e61bf72c45095a7c77761478 +SIZE (rust/crates/rust-embed-impl-8.5.0.crate) = 6004 +SHA256 (rust/crates/rust-embed-utils-8.5.0.crate) = 2e5347777e9aacb56039b0e1f28785929a8a3b709e87482e7442c72e7c12529d +SIZE (rust/crates/rust-embed-utils-8.5.0.crate) = 3445 +SHA256 (rust/crates/rustc-demangle-0.1.24.crate) = 719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f +SIZE (rust/crates/rustc-demangle-0.1.24.crate) = 29047 +SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2 +SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331 +SHA256 (rust/crates/rustc-hash-2.1.0.crate) = c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497 +SIZE (rust/crates/rustc-hash-2.1.0.crate) = 13316 +SHA256 (rust/crates/rusticata-macros-4.1.0.crate) = faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632 +SIZE (rust/crates/rusticata-macros-4.1.0.crate) = 11746 +SHA256 (rust/crates/rustix-0.38.42.crate) = f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85 +SIZE (rust/crates/rustix-0.38.42.crate) = 378683 +SHA256 (rust/crates/rustls-0.21.12.crate) = 3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e +SIZE (rust/crates/rustls-0.21.12.crate) = 285674 +SHA256 (rust/crates/rustls-0.23.20.crate) = 5065c3f250cbd332cd894be57c40fa52387247659b14a2d6041d121547903b1b +SIZE (rust/crates/rustls-0.23.20.crate) = 335933 +SHA256 (rust/crates/rustls-native-certs-0.8.1.crate) = 7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3 +SIZE (rust/crates/rustls-native-certs-0.8.1.crate) = 31129 +SHA256 (rust/crates/rustls-pemfile-1.0.4.crate) = 1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c +SIZE (rust/crates/rustls-pemfile-1.0.4.crate) = 22092 +SHA256 (rust/crates/rustls-pemfile-2.2.0.crate) = dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50 +SIZE (rust/crates/rustls-pemfile-2.2.0.crate) = 25849 +SHA256 (rust/crates/rustls-pki-types-1.10.1.crate) = d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37 +SIZE (rust/crates/rustls-pki-types-1.10.1.crate) = 58944 +SHA256 (rust/crates/rustls-webpki-0.101.7.crate) = 8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765 +SIZE (rust/crates/rustls-webpki-0.101.7.crate) = 168808 +SHA256 (rust/crates/rustls-webpki-0.102.8.crate) = 64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9 +SIZE (rust/crates/rustls-webpki-0.102.8.crate) = 204327 +SHA256 (rust/crates/rustversion-1.0.18.crate) = 0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248 +SIZE (rust/crates/rustversion-1.0.18.crate) = 17794 +SHA256 (rust/crates/ryu-1.0.18.crate) = f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f +SIZE (rust/crates/ryu-1.0.18.crate) = 47713 +SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502 +SIZE (rust/crates/same-file-1.0.6.crate) = 10183 +SHA256 (rust/crates/schannel-0.1.27.crate) = 1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d +SIZE (rust/crates/schannel-0.1.27.crate) = 42772 +SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 +SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 +SHA256 (rust/crates/sct-0.7.1.crate) = da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414 +SIZE (rust/crates/sct-0.7.1.crate) = 27501 +SHA256 (rust/crates/sd-notify-0.4.3.crate) = 1be20c5f7f393ee700f8b2f28ea35812e4e212f40774b550cd2a93ea91684451 +SIZE (rust/crates/sd-notify-0.4.3.crate) = 11900 +SHA256 (rust/crates/security-framework-2.11.1.crate) = 897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02 +SIZE (rust/crates/security-framework-2.11.1.crate) = 80188 +SHA256 (rust/crates/security-framework-3.1.0.crate) = 81d3f8c9bfcc3cbb6b0179eb57042d75b1582bdc65c3cb95f3fa999509c03cbc +SIZE (rust/crates/security-framework-3.1.0.crate) = 85399 +SHA256 (rust/crates/security-framework-sys-2.13.0.crate) = 1863fd3768cd83c56a7f60faa4dc0d403f1b6df0a38c3c25f44b7894e45370d5 +SIZE (rust/crates/security-framework-sys-2.13.0.crate) = 20496 +SHA256 (rust/crates/selinux-0.4.6.crate) = 0139b2436c81305eb6bda33af151851f75bd62783817b25f44daa371119c30b5 +SIZE (rust/crates/selinux-0.4.6.crate) = 37249 +SHA256 (rust/crates/selinux-sys-0.6.13.crate) = e5e6e2b8e07a8ff45c90f8e3611bf10c4da7a28d73a26f9ede04f927da234f52 +SIZE (rust/crates/selinux-sys-0.6.13.crate) = 9067 +SHA256 (rust/crates/semver-1.0.24.crate) = 3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba +SIZE (rust/crates/semver-1.0.24.crate) = 31267 +SHA256 (rust/crates/serde-1.0.217.crate) = 02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70 +SIZE (rust/crates/serde-1.0.217.crate) = 79019 +SHA256 (rust/crates/serde_bytes-0.11.15.crate) = 387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a +SIZE (rust/crates/serde_bytes-0.11.15.crate) = 12191 +SHA256 (rust/crates/serde_cbor-0.11.2.crate) = 2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5 +SIZE (rust/crates/serde_cbor-0.11.2.crate) = 44570 +SHA256 (rust/crates/serde_cbor_2-0.12.0-dev.crate) = b46d75f449e01f1eddbe9b00f432d616fbbd899b809c837d0fbc380496a0dd55 +SIZE (rust/crates/serde_cbor_2-0.12.0-dev.crate) = 44766 +SHA256 (rust/crates/serde_derive-1.0.217.crate) = 5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0 +SIZE (rust/crates/serde_derive-1.0.217.crate) = 57749 +SHA256 (rust/crates/serde_json-1.0.134.crate) = d00f4175c42ee48b15416f6193a959ba3a0d67fc699a0db9ad12df9f83991c7d +SIZE (rust/crates/serde_json-1.0.134.crate) = 154351 +SHA256 (rust/crates/serde_path_to_error-0.1.16.crate) = af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6 +SIZE (rust/crates/serde_path_to_error-0.1.16.crate) = 16657 +SHA256 (rust/crates/serde_urlencoded-0.7.1.crate) = d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd +SIZE (rust/crates/serde_urlencoded-0.7.1.crate) = 12822 +SHA256 (rust/crates/serde_with-3.12.0.crate) = d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa +SIZE (rust/crates/serde_with-3.12.0.crate) = 148666 +SHA256 (rust/crates/serde_with_macros-3.12.0.crate) = 8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e +SIZE (rust/crates/serde_with_macros-3.12.0.crate) = 32089 +SHA256 (rust/crates/sha-crypt-0.5.0.crate) = 88e79009728d8311d42d754f2f319a975f9e38f156fd5e422d2451486c78b286 +SIZE (rust/crates/sha-crypt-0.5.0.crate) = 14603 +SHA256 (rust/crates/sha1_smol-1.0.1.crate) = bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d +SIZE (rust/crates/sha1_smol-1.0.1.crate) = 9809 +SHA256 (rust/crates/sha2-0.10.8.crate) = 793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8 +SIZE (rust/crates/sha2-0.10.8.crate) = 26357 +SHA256 (rust/crates/sharded-slab-0.1.7.crate) = f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6 +SIZE (rust/crates/sharded-slab-0.1.7.crate) = 58227 +SHA256 (rust/crates/shell-words-1.1.0.crate) = 24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde +SIZE (rust/crates/shell-words-1.1.0.crate) = 9871 +SHA256 (rust/crates/shellexpand-2.1.2.crate) = 7ccc8076840c4da029af4f87e4e8daeb0fca6b87bbb02e10cb60b791450e11e4 +SIZE (rust/crates/shellexpand-2.1.2.crate) = 16884 +SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64 +SIZE (rust/crates/shlex-1.3.0.crate) = 18713 +SHA256 (rust/crates/signal-hook-registry-1.4.2.crate) = a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1 +SIZE (rust/crates/signal-hook-registry-1.4.2.crate) = 18064 +SHA256 (rust/crates/slab-0.4.9.crate) = 8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67 +SIZE (rust/crates/slab-0.4.9.crate) = 17108 +SHA256 (rust/crates/smallvec-1.13.2.crate) = 3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67 +SIZE (rust/crates/smallvec-1.13.2.crate) = 35216 +SHA256 (rust/crates/smartstring-1.0.1.crate) = 3fb72c633efbaa2dd666986505016c32c3044395ceaf881518399d2f4127ee29 +SIZE (rust/crates/smartstring-1.0.1.crate) = 29555 +SHA256 (rust/crates/smolset-1.3.1.crate) = a8d372e8fe15dc5229e7d6c65f5810849385e79e24f9d9d64263e132879c7be0 +SIZE (rust/crates/smolset-1.3.1.crate) = 7321 +SHA256 (rust/crates/socket2-0.5.8.crate) = c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8 +SIZE (rust/crates/socket2-0.5.8.crate) = 56309 +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/sptr-0.3.2.crate) = 3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a +SIZE (rust/crates/sptr-0.3.2.crate) = 14598 +SHA256 (rust/crates/sshkey-attest-0.5.0.crate) = 34285eaade87ba166c4f17c0ae1e35d52659507db81888beae277e962b9e5a02 +SIZE (rust/crates/sshkey-attest-0.5.0.crate) = 10028 +SHA256 (rust/crates/sshkeys-0.3.3.crate) = 45287473d24bf7ad9ebad1aff097ad0424c16cd9430549170c3a67c5b05705bd +SIZE (rust/crates/sshkeys-0.3.3.crate) = 32125 +SHA256 (rust/crates/stable_deref_trait-1.2.0.crate) = a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3 +SIZE (rust/crates/stable_deref_trait-1.2.0.crate) = 8054 +SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f +SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480 +SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623 +SIZE (rust/crates/strsim-0.10.0.crate) = 11355 +SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f +SIZE (rust/crates/strsim-0.11.1.crate) = 14266 +SHA256 (rust/crates/subtle-2.6.1.crate) = 13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292 +SIZE (rust/crates/subtle-2.6.1.crate) = 14562 +SHA256 (rust/crates/svg-0.13.1.crate) = 02d815ad337e8449d2374d4248448645edfe74e699343dd5719139d93fa87112 +SIZE (rust/crates/svg-0.13.1.crate) = 17320 +SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237 +SIZE (rust/crates/syn-1.0.109.crate) = 237611 +SHA256 (rust/crates/syn-2.0.93.crate) = 9c786062daee0d6db1132800e623df74274a0a87322d8e183338e01b3d98d058 +SIZE (rust/crates/syn-2.0.93.crate) = 293925 +SHA256 (rust/crates/sync_wrapper-0.1.2.crate) = 2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160 +SIZE (rust/crates/sync_wrapper-0.1.2.crate) = 6933 +SHA256 (rust/crates/sync_wrapper-1.0.2.crate) = 0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263 +SIZE (rust/crates/sync_wrapper-1.0.2.crate) = 6958 +SHA256 (rust/crates/synstructure-0.13.1.crate) = c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971 +SIZE (rust/crates/synstructure-0.13.1.crate) = 18327 +SHA256 (rust/crates/system-configuration-0.5.1.crate) = ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7 +SIZE (rust/crates/system-configuration-0.5.1.crate) = 12618 +SHA256 (rust/crates/system-configuration-sys-0.5.0.crate) = a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9 +SIZE (rust/crates/system-configuration-sys-0.5.0.crate) = 6730 +SHA256 (rust/crates/target-lexicon-0.12.16.crate) = 61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1 +SIZE (rust/crates/target-lexicon-0.12.16.crate) = 26488 +SHA256 (rust/crates/tempfile-3.14.0.crate) = 28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c +SIZE (rust/crates/tempfile-3.14.0.crate) = 35065 +SHA256 (rust/crates/termtree-0.5.1.crate) = 8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683 +SIZE (rust/crates/termtree-0.5.1.crate) = 8498 +SHA256 (rust/crates/thiserror-1.0.69.crate) = b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52 +SIZE (rust/crates/thiserror-1.0.69.crate) = 22198 +SHA256 (rust/crates/thiserror-2.0.8.crate) = 08f5383f3e0071702bf93ab5ee99b52d26936be9dedd9413067cbdcddcb6141a +SIZE (rust/crates/thiserror-2.0.8.crate) = 28536 +SHA256 (rust/crates/thiserror-impl-1.0.69.crate) = 4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1 +SIZE (rust/crates/thiserror-impl-1.0.69.crate) = 18365 +SHA256 (rust/crates/thiserror-impl-2.0.8.crate) = f2f357fcec90b3caef6623a099691be676d033b40a058ac95d2a6ade6fa0c943 +SIZE (rust/crates/thiserror-impl-2.0.8.crate) = 21014 +SHA256 (rust/crates/thousands-0.2.0.crate) = 3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820 +SIZE (rust/crates/thousands-0.2.0.crate) = 11060 +SHA256 (rust/crates/thread_local-1.1.8.crate) = 8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c +SIZE (rust/crates/thread_local-1.1.8.crate) = 13962 +SHA256 (rust/crates/time-0.3.37.crate) = 35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21 +SIZE (rust/crates/time-0.3.37.crate) = 123257 +SHA256 (rust/crates/time-core-0.1.2.crate) = ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3 +SIZE (rust/crates/time-core-0.1.2.crate) = 7191 +SHA256 (rust/crates/time-macros-0.2.19.crate) = 2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de +SIZE (rust/crates/time-macros-0.2.19.crate) = 24268 +SHA256 (rust/crates/tinystr-0.7.6.crate) = 9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f +SIZE (rust/crates/tinystr-0.7.6.crate) = 16971 +SHA256 (rust/crates/tinyvec-1.8.1.crate) = 022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8 +SIZE (rust/crates/tinyvec-1.8.1.crate) = 47269 +SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20 +SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865 +SHA256 (rust/crates/tls_codec-0.4.1.crate) = b5e78c9c330f8c85b2bae7c8368f2739157db9991235123aa1b15ef9502bfb6a +SIZE (rust/crates/tls_codec-0.4.1.crate) = 23077 +SHA256 (rust/crates/tls_codec_derive-0.4.1.crate) = 8d9ef545650e79f30233c0003bcc2504d7efac6dad25fca40744de773fe2049c +SIZE (rust/crates/tls_codec_derive-0.4.1.crate) = 18463 +SHA256 (rust/crates/tokio-1.42.0.crate) = 5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551 +SIZE (rust/crates/tokio-1.42.0.crate) = 806998 +SHA256 (rust/crates/tokio-io-timeout-1.2.0.crate) = 30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf +SIZE (rust/crates/tokio-io-timeout-1.2.0.crate) = 8993 +SHA256 (rust/crates/tokio-macros-2.4.0.crate) = 693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752 +SIZE (rust/crates/tokio-macros-2.4.0.crate) = 12501 +SHA256 (rust/crates/tokio-native-tls-0.3.1.crate) = bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2 +SIZE (rust/crates/tokio-native-tls-0.3.1.crate) = 20676 +SHA256 (rust/crates/tokio-openssl-0.6.5.crate) = 59df6849caa43bb7567f9a36f863c447d95a11d5903c9cc334ba32576a27eadd +SIZE (rust/crates/tokio-openssl-0.6.5.crate) = 11977 +SHA256 (rust/crates/tokio-rustls-0.24.1.crate) = c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081 +SIZE (rust/crates/tokio-rustls-0.24.1.crate) = 33049 +SHA256 (rust/crates/tokio-rustls-0.26.1.crate) = 5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37 +SIZE (rust/crates/tokio-rustls-0.26.1.crate) = 31214 +SHA256 (rust/crates/tokio-stream-0.1.17.crate) = eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047 +SIZE (rust/crates/tokio-stream-0.1.17.crate) = 38477 +SHA256 (rust/crates/tokio-util-0.7.13.crate) = d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078 +SIZE (rust/crates/tokio-util-0.7.13.crate) = 115191 +SHA256 (rust/crates/toml-0.5.11.crate) = f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234 +SIZE (rust/crates/toml-0.5.11.crate) = 54910 +SHA256 (rust/crates/toml_datetime-0.6.8.crate) = 0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41 +SIZE (rust/crates/toml_datetime-0.6.8.crate) = 12028 +SHA256 (rust/crates/toml_edit-0.19.15.crate) = 1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421 +SIZE (rust/crates/toml_edit-0.19.15.crate) = 95324 +SHA256 (rust/crates/tonic-0.9.2.crate) = 3082666a3a6433f7f511c7192923fa1fe07c69332d3c6a2e6bb040b569199d5a +SIZE (rust/crates/tonic-0.9.2.crate) = 92598 +SHA256 (rust/crates/tower-0.4.13.crate) = b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c +SIZE (rust/crates/tower-0.4.13.crate) = 106906 +SHA256 (rust/crates/tower-0.5.2.crate) = d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9 +SIZE (rust/crates/tower-0.5.2.crate) = 109417 +SHA256 (rust/crates/tower-http-0.6.2.crate) = 403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697 +SIZE (rust/crates/tower-http-0.6.2.crate) = 129672 +SHA256 (rust/crates/tower-layer-0.3.3.crate) = 121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e +SIZE (rust/crates/tower-layer-0.3.3.crate) = 6180 +SHA256 (rust/crates/tower-service-0.3.3.crate) = 8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3 +SIZE (rust/crates/tower-service-0.3.3.crate) = 6950 +SHA256 (rust/crates/tracing-0.1.41.crate) = 784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0 +SIZE (rust/crates/tracing-0.1.41.crate) = 82448 +SHA256 (rust/crates/tracing-attributes-0.1.28.crate) = 395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d +SIZE (rust/crates/tracing-attributes-0.1.28.crate) = 33280 +SHA256 (rust/crates/tracing-core-0.1.33.crate) = e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c +SIZE (rust/crates/tracing-core-0.1.33.crate) = 63434 +SHA256 (rust/crates/tracing-forest-0.1.6.crate) = ee40835db14ddd1e3ba414292272eddde9dad04d3d4b65509656414d1c42592f +SIZE (rust/crates/tracing-forest-0.1.6.crate) = 28565 +SHA256 (rust/crates/tracing-log-0.1.4.crate) = f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2 +SIZE (rust/crates/tracing-log-0.1.4.crate) = 20640 +SHA256 (rust/crates/tracing-log-0.2.0.crate) = ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3 +SIZE (rust/crates/tracing-log-0.2.0.crate) = 17561 +SHA256 (rust/crates/tracing-opentelemetry-0.21.0.crate) = 75327c6b667828ddc28f5e3f169036cb793c3f588d83bf0f262a7f062ffed3c8 +SIZE (rust/crates/tracing-opentelemetry-0.21.0.crate) = 131576 +SHA256 (rust/crates/tracing-subscriber-0.3.19.crate) = e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008 +SIZE (rust/crates/tracing-subscriber-0.3.19.crate) = 198345 +SHA256 (rust/crates/try-lock-0.2.5.crate) = e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b +SIZE (rust/crates/try-lock-0.2.5.crate) = 4314 +SHA256 (rust/crates/tss-esapi-8.0.0-alpha.crate) = 3c1617a46161846de3a3d3e407cd30cb345599bc5e440c3907a59b34b75a2731 +SIZE (rust/crates/tss-esapi-8.0.0-alpha.crate) = 290448 +SHA256 (rust/crates/tss-esapi-sys-0.5.0.crate) = 535cd192581c2ec4d5f82e670b1d3fbba6a23ccce8c85de387642051d7cad5b5 +SIZE (rust/crates/tss-esapi-sys-0.5.0.crate) = 167811 +SHA256 (rust/crates/typenum-1.17.0.crate) = 42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825 +SIZE (rust/crates/typenum-1.17.0.crate) = 42849 +SHA256 (rust/crates/unicase-2.8.0.crate) = 7e51b68083f157f853b6379db119d1c1be0e6e4dec98101079dec41f6f5cf6df +SIZE (rust/crates/unicase-2.8.0.crate) = 23843 +SHA256 (rust/crates/unicode-bom-2.0.3.crate) = 7eec5d1121208364f6793f7d2e222bf75a915c19557537745b195b253dd64217 +SIZE (rust/crates/unicode-bom-2.0.3.crate) = 10773 +SHA256 (rust/crates/unicode-ident-1.0.14.crate) = adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83 +SIZE (rust/crates/unicode-ident-1.0.14.crate) = 47547 +SHA256 (rust/crates/unicode-normalization-0.1.24.crate) = 5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956 +SIZE (rust/crates/unicode-normalization-0.1.24.crate) = 126536 +SHA256 (rust/crates/unicode-segmentation-1.12.0.crate) = f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493 +SIZE (rust/crates/unicode-segmentation-1.12.0.crate) = 106323 +SHA256 (rust/crates/unicode-width-0.2.0.crate) = 1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd +SIZE (rust/crates/unicode-width-0.2.0.crate) = 271509 +SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1 +SIZE (rust/crates/untrusted-0.9.0.crate) = 14447 +SHA256 (rust/crates/url-2.5.4.crate) = 32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60 +SIZE (rust/crates/url-2.5.4.crate) = 81097 +SHA256 (rust/crates/urlencoding-2.1.3.crate) = daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da +SIZE (rust/crates/urlencoding-2.1.3.crate) = 6538 +SHA256 (rust/crates/utf16_iter-1.0.5.crate) = c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246 +SIZE (rust/crates/utf16_iter-1.0.5.crate) = 9736 +SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be +SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437 +SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821 +SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499 +SHA256 (rust/crates/utoipa-4.2.3.crate) = c5afb1a60e207dca502682537fefcfd9921e71d0b83e9576060f09abc6efab23 +SIZE (rust/crates/utoipa-4.2.3.crate) = 54759 +SHA256 (rust/crates/utoipa-gen-4.3.1.crate) = 20c24e8ab68ff9ee746aad22d39b5535601e6416d1b0feeabf78be986a5c4392 +SIZE (rust/crates/utoipa-gen-4.3.1.crate) = 142985 +SHA256 (rust/crates/utoipa-swagger-ui-6.0.0.crate) = 0b39868d43c011961e04b41623e050aedf2cc93652562ff7935ce0f819aaf2da +SIZE (rust/crates/utoipa-swagger-ui-6.0.0.crate) = 4372387 +SHA256 (rust/crates/uuid-1.11.0.crate) = f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a +SIZE (rust/crates/uuid-1.11.0.crate) = 47683 +SHA256 (rust/crates/uuid-simd-0.8.0.crate) = 23b082222b4f6619906941c17eb2297fff4c2fb96cb60164170522942a200bd8 +SIZE (rust/crates/uuid-simd-0.8.0.crate) = 6959 +SHA256 (rust/crates/valuable-0.1.0.crate) = 830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d +SIZE (rust/crates/valuable-0.1.0.crate) = 27718 +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/vsimd-0.8.0.crate) = 5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64 +SIZE (rust/crates/vsimd-0.8.0.crate) = 21377 +SHA256 (rust/crates/wait-timeout-0.2.0.crate) = 9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6 +SIZE (rust/crates/wait-timeout-0.2.0.crate) = 12441 +SHA256 (rust/crates/walkdir-2.5.0.crate) = 29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b +SIZE (rust/crates/walkdir-2.5.0.crate) = 23951 +SHA256 (rust/crates/want-0.3.1.crate) = bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e +SIZE (rust/crates/want-0.3.1.crate) = 6398 +SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423 +SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131 +SHA256 (rust/crates/wasite-0.1.0.crate) = b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b +SIZE (rust/crates/wasite-0.1.0.crate) = 2346 +SHA256 (rust/crates/wasm-bindgen-0.2.99.crate) = a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396 +SIZE (rust/crates/wasm-bindgen-0.2.99.crate) = 46136 +SHA256 (rust/crates/wasm-bindgen-backend-0.2.99.crate) = 5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79 +SIZE (rust/crates/wasm-bindgen-backend-0.2.99.crate) = 30928 +SHA256 (rust/crates/wasm-bindgen-futures-0.4.49.crate) = 38176d9b44ea84e9184eff0bc34cc167ed044f816accfe5922e54d84cf48eca2 +SIZE (rust/crates/wasm-bindgen-futures-0.4.49.crate) = 14838 +SHA256 (rust/crates/wasm-bindgen-macro-0.2.99.crate) = 2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe +SIZE (rust/crates/wasm-bindgen-macro-0.2.99.crate) = 7011 +SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.99.crate) = 30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2 +SIZE (rust/crates/wasm-bindgen-macro-support-0.2.99.crate) = 22800 +SHA256 (rust/crates/wasm-bindgen-shared-0.2.99.crate) = 943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6 +SIZE (rust/crates/wasm-bindgen-shared-0.2.99.crate) = 7773 +SHA256 (rust/crates/web-sys-0.3.76.crate) = 04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc +SIZE (rust/crates/web-sys-0.3.76.crate) = 635842 +SHA256 (rust/crates/web-time-1.1.0.crate) = 5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb +SIZE (rust/crates/web-time-1.1.0.crate) = 18026 +SHA256 (rust/crates/webauthn-attestation-ca-0.5.1.crate) = 29e77e8859ecb93b00e4a8e56ae45f8a8dd69b1539e3d32cf4cce1db9a3a0b99 +SIZE (rust/crates/webauthn-attestation-ca-0.5.1.crate) = 3903 +SHA256 (rust/crates/webauthn-authenticator-rs-0.5.1.crate) = 1bc2f8b61965979d9dd561dc8288a89e01ecf224179b40d5d496141225b540b4 +SIZE (rust/crates/webauthn-authenticator-rs-0.5.1.crate) = 207382 +SHA256 (rust/crates/webauthn-rs-0.5.1.crate) = 8b44347ee0d66f222043663a6aaf5ec78022b9b11c3a9ed488c21f2bd5680856 +SIZE (rust/crates/webauthn-rs-0.5.1.crate) = 20150 +SHA256 (rust/crates/webauthn-rs-core-0.5.1.crate) = 2ef48f07ed8f3dfe304d6c48e85317feba0439675f31a13063b2936c9b4eaf0d +SIZE (rust/crates/webauthn-rs-core-0.5.1.crate) = 123169 +SHA256 (rust/crates/webauthn-rs-proto-0.5.1.crate) = 14e1367f70e7dc7b83afc971ce8a54d578f4fdf488ea093021180e073744a69f +SIZE (rust/crates/webauthn-rs-proto-0.5.1.crate) = 13873 +SHA256 (rust/crates/webdriver-0.50.0.crate) = 144ab979b12d36d65065635e646549925de229954de2eb3b47459b432a42db71 +SIZE (rust/crates/webdriver-0.50.0.crate) = 32046 +SHA256 (rust/crates/webpki-roots-0.25.4.crate) = 5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1 +SIZE (rust/crates/webpki-roots-0.25.4.crate) = 253559 +SHA256 (rust/crates/webpki-roots-0.26.7.crate) = 5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e +SIZE (rust/crates/webpki-roots-0.26.7.crate) = 249392 +SHA256 (rust/crates/weezl-0.1.8.crate) = 53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082 +SIZE (rust/crates/weezl-0.1.8.crate) = 42175 +SHA256 (rust/crates/which-4.4.2.crate) = 87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7 +SIZE (rust/crates/which-4.4.2.crate) = 15953 +SHA256 (rust/crates/whoami-1.5.2.crate) = 372d5b87f58ec45c384ba03563b03544dc5fadc3983e434b286913f5b4a9bb6d +SIZE (rust/crates/whoami-1.5.2.crate) = 24204 +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-util-0.1.9.crate) = cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb +SIZE (rust/crates/winapi-util-0.1.9.crate) = 12464 +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-0.41.0.crate) = 5a3ed69de2c1f8d0524a8a3417a80a85dd316a071745fbfdf5eb028b310058ab +SIZE (rust/crates/windows-0.41.0.crate) = 11980400 +SHA256 (rust/crates/windows-core-0.52.0.crate) = 33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9 +SIZE (rust/crates/windows-core-0.52.0.crate) = 42154 +SHA256 (rust/crates/windows-registry-0.2.0.crate) = e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0 +SIZE (rust/crates/windows-registry-0.2.0.crate) = 10470 +SHA256 (rust/crates/windows-result-0.2.0.crate) = 1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e +SIZE (rust/crates/windows-result-0.2.0.crate) = 12756 +SHA256 (rust/crates/windows-strings-0.1.0.crate) = 4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10 +SIZE (rust/crates/windows-strings-0.1.0.crate) = 13832 +SHA256 (rust/crates/windows-sys-0.48.0.crate) = 677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9 +SIZE (rust/crates/windows-sys-0.48.0.crate) = 2628884 +SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d +SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877 +SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b +SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323 +SHA256 (rust/crates/windows-targets-0.48.5.crate) = 9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c +SIZE (rust/crates/windows-targets-0.48.5.crate) = 6904 +SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973 +SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.41.0.crate) = 163d2761774f2278ecb4e6719e80b2b5e92e5a2be73a7bcd3ef624dd5e3091fd +SIZE (rust/crates/windows_aarch64_gnullvm-0.41.0.crate) = 357917 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8 +SIZE (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 418492 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3 +SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718 +SHA256 (rust/crates/windows_aarch64_msvc-0.41.0.crate) = ef005ff2bceb00d3b84166a359cc19084f9459754fd3fe5a504dee3dddcd0a0c +SIZE (rust/crates/windows_aarch64_msvc-0.41.0.crate) = 659427 +SHA256 (rust/crates/windows_aarch64_msvc-0.48.5.crate) = dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc +SIZE (rust/crates/windows_aarch64_msvc-0.48.5.crate) = 798483 +SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469 +SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615 +SHA256 (rust/crates/windows_i686_gnu-0.41.0.crate) = 02b4df2d51e32f03f8b4b228e487828c03bcb36d97b216fc5463bcea5bb1440b +SIZE (rust/crates/windows_i686_gnu-0.41.0.crate) = 728572 +SHA256 (rust/crates/windows_i686_gnu-0.48.5.crate) = a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e +SIZE (rust/crates/windows_i686_gnu-0.48.5.crate) = 844891 +SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b +SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402 +SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66 +SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940 +SHA256 (rust/crates/windows_i686_msvc-0.41.0.crate) = 568a966834571f2f3267f07dd72b4d8507381f25e53d056808483b2637385ef7 +SIZE (rust/crates/windows_i686_msvc-0.41.0.crate) = 717481 +SHA256 (rust/crates/windows_i686_msvc-0.48.5.crate) = 8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406 +SIZE (rust/crates/windows_i686_msvc-0.48.5.crate) = 864300 +SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66 +SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163 +SHA256 (rust/crates/windows_x86_64_gnu-0.41.0.crate) = fc395dac1adf444e276d096d933ae7961361c8cda3245cffef7a9b3a70a8f994 +SIZE (rust/crates/windows_x86_64_gnu-0.41.0.crate) = 692491 +SHA256 (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e +SIZE (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 801619 +SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78 +SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.41.0.crate) = 90e8ec22b715d5b436e1d59c8adad6c744dc20cd984710121d5836b4e8dbb5e0 +SIZE (rust/crates/windows_x86_64_gnullvm-0.41.0.crate) = 357903 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc +SIZE (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 418486 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d +SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707 +SHA256 (rust/crates/windows_x86_64_msvc-0.41.0.crate) = 8b9761f0216b669019df1512f6e25e5ee779bf61c5cdc43c7293858e7efd7926 +SIZE (rust/crates/windows_x86_64_msvc-0.41.0.crate) = 659379 +SHA256 (rust/crates/windows_x86_64_msvc-0.48.5.crate) = ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538 +SIZE (rust/crates/windows_x86_64_msvc-0.48.5.crate) = 798412 +SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec +SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564 +SHA256 (rust/crates/winnow-0.5.40.crate) = f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876 +SIZE (rust/crates/winnow-0.5.40.crate) = 159316 +SHA256 (rust/crates/winnow-0.6.20.crate) = 36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b +SIZE (rust/crates/winnow-0.6.20.crate) = 163617 +SHA256 (rust/crates/winreg-0.50.0.crate) = 524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1 +SIZE (rust/crates/winreg-0.50.0.crate) = 29703 +SHA256 (rust/crates/write16-1.0.0.crate) = d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936 +SIZE (rust/crates/write16-1.0.0.crate) = 7218 +SHA256 (rust/crates/writeable-0.5.5.crate) = 1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51 +SIZE (rust/crates/writeable-0.5.5.crate) = 22354 +SHA256 (rust/crates/x509-cert-0.2.5.crate) = 1301e935010a701ae5f8655edc0ad17c44bad3ac5ce8c39185f75453b720ae94 +SIZE (rust/crates/x509-cert-0.2.5.crate) = 99819 +SHA256 (rust/crates/x509-parser-0.16.0.crate) = fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69 +SIZE (rust/crates/x509-parser-0.16.0.crate) = 92925 +SHA256 (rust/crates/yoke-0.7.5.crate) = 120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40 +SIZE (rust/crates/yoke-0.7.5.crate) = 29673 +SHA256 (rust/crates/yoke-derive-0.7.5.crate) = 2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154 +SIZE (rust/crates/yoke-derive-0.7.5.crate) = 7525 +SHA256 (rust/crates/zerocopy-0.7.35.crate) = 1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0 +SIZE (rust/crates/zerocopy-0.7.35.crate) = 152645 +SHA256 (rust/crates/zerocopy-derive-0.7.35.crate) = fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e +SIZE (rust/crates/zerocopy-derive-0.7.35.crate) = 37829 +SHA256 (rust/crates/zerofrom-0.1.5.crate) = cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e +SIZE (rust/crates/zerofrom-0.1.5.crate) = 5091 +SHA256 (rust/crates/zerofrom-derive-0.1.5.crate) = 595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808 +SIZE (rust/crates/zerofrom-derive-0.1.5.crate) = 8285 +SHA256 (rust/crates/zeroize-1.8.1.crate) = ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde +SIZE (rust/crates/zeroize-1.8.1.crate) = 20029 +SHA256 (rust/crates/zeroize_derive-1.4.2.crate) = ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69 +SIZE (rust/crates/zeroize_derive-1.4.2.crate) = 11141 +SHA256 (rust/crates/zerovec-0.10.4.crate) = aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079 +SIZE (rust/crates/zerovec-0.10.4.crate) = 126398 +SHA256 (rust/crates/zerovec-derive-0.10.3.crate) = 6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6 +SIZE (rust/crates/zerovec-derive-0.10.3.crate) = 19438 +SHA256 (rust/crates/zip-0.6.6.crate) = 760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261 +SIZE (rust/crates/zip-0.6.6.crate) = 65789 +SHA256 (rust/crates/zxcvbn-2.2.2.crate) = 103fa851fff70ea29af380e87c25c48ff7faac5c530c70bd0e65366d4e0c94e4 +SIZE (rust/crates/zxcvbn-2.2.2.crate) = 423636 +SHA256 (kanidm-kanidm-g20250201-5eb9a4430f4beab41aed7d5d77414ceea6b2eb1c_GH0.tar.gz) = 4fe80989fe900ad05cb73c076a298e70804231c16f3b02df2b71f2dcbc9f0ead +SIZE (kanidm-kanidm-g20250201-5eb9a4430f4beab41aed7d5d77414ceea6b2eb1c_GH0.tar.gz) = 8594529 diff --git a/platform/freebsd/client/files/kanidm_unixd.in b/platform/freebsd/client/files/kanidm_unixd.in new file mode 100644 index 000000000..77e87f6b6 --- /dev/null +++ b/platform/freebsd/client/files/kanidm_unixd.in @@ -0,0 +1,27 @@ +#!/bin/sh + +# PROVIDE: kanidm_unixd +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Add these lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# kanidm_unixd_enable (bool): Set to NO by default. +# Set it to YES to enable kanidm_unixd. + +. /etc/rc.subr + +name=kanidm_unixd +rcvar=kanidm_unixd_enable + +load_rc_config $name + +: ${kanidm_unixd_enable:="NO"} + +pidfile="/var/run/kanidm-unixd.pid" +command=/usr/sbin/daemon +command_args="-u _kanidm_unixd -p /var/run/kanidm-unixd.pid -T kanidm_unixd /usr/local/libexec/${name}" +procname=/usr/local/libexec/${name} + +run_rc_command "$1" diff --git a/platform/freebsd/client/files/kanidm_unixd_tasks.in b/platform/freebsd/client/files/kanidm_unixd_tasks.in new file mode 100644 index 000000000..1ed3000e7 --- /dev/null +++ b/platform/freebsd/client/files/kanidm_unixd_tasks.in @@ -0,0 +1,27 @@ +#!/bin/sh + +# PROVIDE: kanidm_unixd_tasks +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Add these lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# kanidm_unixd_tasks_enable (bool): Set to NO by default. +# Set it to YES to enable kanidm_unixd_tasks. + +. /etc/rc.subr + +name=kanidm_unixd_tasks +rcvar=kanidm_unixd_tasks_enable + +load_rc_config $name + +: ${kanidm_unixd_tasks_enable:="NO"} + +pidfile="/var/run/kanidm-unixd-tasks.pid" +command=/usr/sbin/daemon +command_args="-u _kanidm_unixd -p /var/run/kanidm-unixd-tasks.pid -T kanidm_unixd_tasks /usr/local/libexec/${name}" +procname=/usr/local/libexec/${name} + +run_rc_command "$1" diff --git a/platform/freebsd/client/pkg-descr b/platform/freebsd/client/pkg-descr new file mode 100644 index 000000000..9d0b9947d --- /dev/null +++ b/platform/freebsd/client/pkg-descr @@ -0,0 +1 @@ +Kanidm is a simple and secure identity provider and client for UNIX systems diff --git a/platform/freebsd/client/pkg-plist b/platform/freebsd/client/pkg-plist new file mode 100644 index 000000000..a4cc43986 --- /dev/null +++ b/platform/freebsd/client/pkg-plist @@ -0,0 +1,13 @@ +bin/kanidm +bin/kanidm-unix +bin/kanidm_ssh_authorizedkeys +bin/kanidm_ssh_authorizedkeys_direct +lib/nss_kanidm.so.1 +lib/libpam_kanidm.so +libexec/kanidm_unixd +libexec/kanidm_unixd_tasks +@dir %%ETCDIR%% +@dir /var/lib +@dir(_kanidm_unixd,_kanidm_unixd,750) /var/cache/kanidm-unixd +@dir(_kanidm_unixd,_kanidm_unixd,750) /var/lib/kanidm-unixd +@dir(_kanidm_unixd,_kanidm_unixd,750) /var/run/kanidm-unixd diff --git a/server/core/src/config.rs b/server/core/src/config.rs index 1f089a6ca..62b0e1888 100644 --- a/server/core/src/config.rs +++ b/server/core/src/config.rs @@ -574,7 +574,7 @@ impl Configuration { Configuration { address: DEFAULT_SERVER_ADDRESS.to_string(), ldapaddress: None, - adminbindpath: env!("KANIDM_ADMIN_BIND_PATH").to_string(), + adminbindpath: env!("KANIDM_SERVER_ADMIN_BIND_PATH").to_string(), threads: std::thread::available_parallelism() .map(|t| t.get()) .unwrap_or_else(|_e| { diff --git a/server/core/src/https/mod.rs b/server/core/src/https/mod.rs index ae48307fa..6b8e34cdd 100644 --- a/server/core/src/https/mod.rs +++ b/server/core/src/https/mod.rs @@ -131,7 +131,7 @@ pub(crate) fn get_js_files(role: ServerRole) -> Result, ()> if !matches!(role, ServerRole::WriteReplicaNoUI) { // let's set up the list of js module hashes - let pkg_path = env!("KANIDM_HTMX_UI_PKG_PATH").to_owned(); + let pkg_path = env!("KANIDM_SERVER_UI_PKG_PATH").to_owned(); let filelist = [ "external/bootstrap.bundle.min.js", @@ -254,11 +254,11 @@ pub async fn create_https_server( let app = match config.role { ServerRole::WriteReplicaNoUI => app, ServerRole::WriteReplica | ServerRole::ReadOnlyReplica => { - let pkg_path = PathBuf::from(env!("KANIDM_HTMX_UI_PKG_PATH")); + let pkg_path = PathBuf::from(env!("KANIDM_SERVER_UI_PKG_PATH")); if !pkg_path.exists() { eprintln!( "Couldn't find htmx UI package path: ({}), quitting.", - env!("KANIDM_HTMX_UI_PKG_PATH") + env!("KANIDM_SERVER_UI_PKG_PATH") ); std::process::exit(1); } diff --git a/server/daemon/src/main.rs b/server/daemon/src/main.rs index 6501c5fe6..4f44f3dba 100644 --- a/server/daemon/src/main.rs +++ b/server/daemon/src/main.rs @@ -560,12 +560,12 @@ fn main() -> ExitCode { let mut config_error: Vec = Vec::new(); let mut config = Configuration::new(); - if env!("KANIDM_DEFAULT_CONFIG_PATH").is_empty() { - println!("CRITICAL: Kanidmd was not built correctly and is missing a valid KANIDM_DEFAULT_CONFIG_PATH value"); + if env!("KANIDM_SERVER_CONFIG_PATH").is_empty() { + println!("CRITICAL: Kanidmd was not built correctly and is missing a valid KANIDM_SERVER_CONFIG_PATH value"); return ExitCode::FAILURE; } - let default_config_path = PathBuf::from(env!("KANIDM_DEFAULT_CONFIG_PATH")); + let default_config_path = PathBuf::from(env!("KANIDM_SERVER_CONFIG_PATH")); let maybe_config_path = if let Some(p) = opt.config_path() { Some(p) diff --git a/unix_integration/common/src/constants.rs b/unix_integration/common/src/constants.rs index 9ddf23e78..7f5ec9f3f 100644 --- a/unix_integration/common/src/constants.rs +++ b/unix_integration/common/src/constants.rs @@ -1,13 +1,13 @@ use crate::unix_config::{HomeAttr, UidAttr}; -pub const DEFAULT_CONFIG_PATH: &str = "/etc/kanidm/unixd"; +pub const DEFAULT_CONFIG_PATH: &str = env!("KANIDM_RESOLVER_CONFIG_PATH"); pub const DEFAULT_SOCK_PATH: &str = "/var/run/kanidm-unixd/sock"; pub const DEFAULT_TASK_SOCK_PATH: &str = "/var/run/kanidm-unixd/task_sock"; pub const DEFAULT_PERSISTENT_DB_PATH: &str = "/var/lib/kanidm-unixd/kanidm.db"; pub const DEFAULT_CACHE_DB_PATH: &str = "/var/cache/kanidm-unixd/kanidm.cache.db"; pub const DEFAULT_CONN_TIMEOUT: u64 = 2; pub const DEFAULT_CACHE_TIMEOUT: u64 = 15; -pub const DEFAULT_SHELL: &str = env!("KANIDM_DEFAULT_UNIX_SHELL_PATH"); +pub const DEFAULT_SHELL: &str = env!("KANIDM_RESOLVER_UNIX_SHELL_PATH"); pub const DEFAULT_HOME_PREFIX: &str = "/home/"; pub const DEFAULT_HOME_ATTR: HomeAttr = HomeAttr::Uuid; pub const DEFAULT_HOME_ALIAS: Option = Some(HomeAttr::Spn); diff --git a/unix_integration/nss_kanidm/Cargo.toml b/unix_integration/nss_kanidm/Cargo.toml index 0f145d3fb..76ba3bf07 100644 --- a/unix_integration/nss_kanidm/Cargo.toml +++ b/unix_integration/nss_kanidm/Cargo.toml @@ -24,6 +24,9 @@ libc = { workspace = true } paste = { workspace = true } lazy_static = { workspace = true } +[target."cfg(target_os = \"freebsd\")".build-dependencies] +cc = "^1.2.6" + ## Debian packaging # The base metadata does **not** work to build a functioning package! # A target specific variant must be used to get the right multiarch path. diff --git a/unix_integration/nss_kanidm/build.rs b/unix_integration/nss_kanidm/build.rs new file mode 100644 index 000000000..e270996e8 --- /dev/null +++ b/unix_integration/nss_kanidm/build.rs @@ -0,0 +1,12 @@ +fn main() { + #[cfg(target_os = "freebsd")] + { + println!("cargo::rerun-if-changed=src/freebsd_nss.c"); + + cc::Build::new() + .file("src/freebsd_nss.c") + .static_flag(true) + .link_lib_modifier("+whole-archive") + .compile("freebsd_nss"); + } +} diff --git a/unix_integration/nss_kanidm/src/freebsd_nss.c b/unix_integration/nss_kanidm/src/freebsd_nss.c new file mode 100644 index 000000000..58da969d1 --- /dev/null +++ b/unix_integration/nss_kanidm/src/freebsd_nss.c @@ -0,0 +1,94 @@ +#include +#include +#include +#include +#include +#include +#include + +extern enum nss_status _nss_kanidm_getgrent_r(struct group *, char *, size_t, + int *); +extern enum nss_status _nss_kanidm_getgrnam_r(const char *, struct group *, + char *, size_t, int *); +extern enum nss_status _nss_kanidm_getgrgid_r(gid_t gid, struct group *, char *, + size_t, int *); +extern enum nss_status _nss_kanidm_setgrent(void); +extern enum nss_status _nss_kanidm_endgrent(void); + +extern enum nss_status _nss_kanidm_getpwent_r(struct passwd *, char *, size_t, + int *); +extern enum nss_status _nss_kanidm_getpwnam_r(const char *, struct passwd *, + char *, size_t, int *); +extern enum nss_status _nss_kanidm_getpwuid_r(gid_t gid, struct passwd *, char *, + size_t, int *); +extern enum nss_status _nss_kanidm_setpwent(void); +extern enum nss_status _nss_kanidm_endpwent(void); + +extern enum nss_status _nss_kanidm_gethostbyname_r(const char *name, + struct hostent * result, + char *buffer, size_t buflen, + int *errnop, + int *h_errnop); + +extern enum nss_status _nss_kanidm_gethostbyname2_r(const char *name, int af, + struct hostent * result, + char *buffer, size_t buflen, + int *errnop, + int *h_errnop); +extern enum nss_status _nss_kanidm_gethostbyaddr_r(struct in_addr * addr, int len, + int type, + struct hostent * result, + char *buffer, size_t buflen, + int *errnop, int *h_errnop); + +extern enum nss_status _nss_kanidm_getgroupmembership(const char *uname, + gid_t agroup, gid_t *groups, + int maxgrp, int *grpcnt); + +NSS_METHOD_PROTOTYPE(__nss_compat_getgrnam_r); +NSS_METHOD_PROTOTYPE(__nss_compat_getgrgid_r); +NSS_METHOD_PROTOTYPE(__nss_compat_getgrent_r); +NSS_METHOD_PROTOTYPE(__nss_compat_setgrent); +NSS_METHOD_PROTOTYPE(__nss_compat_endgrent); + +NSS_METHOD_PROTOTYPE(__nss_compat_getpwnam_r); +NSS_METHOD_PROTOTYPE(__nss_compat_getpwuid_r); +NSS_METHOD_PROTOTYPE(__nss_compat_getpwent_r); +NSS_METHOD_PROTOTYPE(__nss_compat_setpwent); +NSS_METHOD_PROTOTYPE(__nss_compat_endpwent); + +static ns_mtab methods[] = { + { NSDB_GROUP, "getgrnam_r", __nss_compat_getgrnam_r, _nss_kanidm_getgrnam_r }, + { NSDB_GROUP, "getgrgid_r", __nss_compat_getgrgid_r, _nss_kanidm_getgrgid_r }, + { NSDB_GROUP, "getgrent_r", __nss_compat_getgrent_r, _nss_kanidm_getgrent_r }, + { NSDB_GROUP, "setgrent", __nss_compat_setgrent, _nss_kanidm_setgrent }, + { NSDB_GROUP, "endgrent", __nss_compat_endgrent, _nss_kanidm_endgrent }, + + { NSDB_PASSWD, "getpwnam_r", __nss_compat_getpwnam_r, _nss_kanidm_getpwnam_r }, + { NSDB_PASSWD, "getpwuid_r", __nss_compat_getpwuid_r, _nss_kanidm_getpwuid_r }, + { NSDB_PASSWD, "getpwent_r", __nss_compat_getpwent_r, _nss_kanidm_getpwent_r }, + { NSDB_PASSWD, "setpwent", __nss_compat_setpwent, _nss_kanidm_setpwent }, + { NSDB_PASSWD, "endpwent", __nss_compat_endpwent, _nss_kanidm_endpwent }, + + { NSDB_GROUP_COMPAT, "getgrnam_r", __nss_compat_getgrnam_r, _nss_kanidm_getgrnam_r }, + { NSDB_GROUP_COMPAT, "getgrgid_r", __nss_compat_getgrgid_r, _nss_kanidm_getgrgid_r }, + { NSDB_GROUP_COMPAT, "getgrent_r", __nss_compat_getgrent_r, _nss_kanidm_getgrent_r }, + { NSDB_GROUP_COMPAT, "setgrent", __nss_compat_setgrent, _nss_kanidm_setgrent }, + { NSDB_GROUP_COMPAT, "endgrent", __nss_compat_endgrent, _nss_kanidm_endgrent }, + + { NSDB_PASSWD_COMPAT, "getpwnam_r", __nss_compat_getpwnam_r, _nss_kanidm_getpwnam_r }, + { NSDB_PASSWD_COMPAT, "getpwuid_r", __nss_compat_getpwuid_r, _nss_kanidm_getpwuid_r }, + { NSDB_PASSWD_COMPAT, "getpwent_r", __nss_compat_getpwent_r, _nss_kanidm_getpwent_r }, + { NSDB_PASSWD_COMPAT, "setpwent", __nss_compat_setpwent, _nss_kanidm_setpwent }, + { NSDB_PASSWD_COMPAT, "endpwent", __nss_compat_endpwent, _nss_kanidm_endpwent }, +}; + +ns_mtab * +_nss_module_register(__attribute__((unused)) const char *source, unsigned int *mtabsize, + nss_module_unregister_fn *unreg) +{ + *mtabsize = sizeof(methods)/sizeof(methods[0]); + *unreg = NULL; + return (methods); +} + diff --git a/unix_integration/nss_kanidm/src/lib.rs b/unix_integration/nss_kanidm/src/lib.rs index 0ac5c7cbc..afefb4d80 100644 --- a/unix_integration/nss_kanidm/src/lib.rs +++ b/unix_integration/nss_kanidm/src/lib.rs @@ -10,6 +10,32 @@ #![deny(clippy::needless_pass_by_value)] #![deny(clippy::trivially_copy_pass_by_ref)] +#[cfg(target_os = "freebsd")] +/// BSD nss is quite different to that of linux (rather, glibc). As a result of this +/// FreeBSD kindly offers us wrappers to allow compatability of the two. But to +/// do this we need a .c file to include the macros and export tables, as well as +/// handling the variadic args (which rust doesn't). +/// +/// The issue is that even though we link our static archive, rust won't export any +/// of the symbols from it *unless* a rust source file actually consumes at least +/// one of them. This means we can't just link to our .a and have it do the work, +/// we need to wrap and expose this shim function to convince rust to actually +/// link to the archive +/// +/// https://github.com/rust-lang/rust/issues/78827 +mod bsd_nss_compat { + use std::ffi::c_void; + + extern "C" { + pub fn _nss_module_register(a: *mut c_void, b: *mut c_void, c: *mut c_void); + } + + #[no_mangle] + pub extern "C" fn nss_module_register(a: *mut c_void, b: *mut c_void, c: *mut c_void) { + unsafe { _nss_module_register(a, b, c) } + } +} + #[cfg(target_family = "unix")] #[macro_use] extern crate libnss;