ate) = 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/libc-0.2.176.crate) = 58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174 > +SIZE (rust/crates/libc-0.2.176.crate) = 790040 > +SHA256 (rust/crates/libloading-0.8.9.crate) = d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55 > +SIZE (rust/crates/libloading-0.8.9.crate) = 30222 > +SHA256 (rust/crates/linux-raw-sys-0.4.15.crate) = d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab > +SIZE (rust/crates/linux-raw-sys-0.4.15.crate) = 2150898 > +SHA256 (rust/crates/lock_api-0.4.14.crate) = 224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965 > +SIZE (rust/crates/lock_api-0.4.14.crate) = 29249 > +SHA256 (rust/crates/log-0.4.28.crate) = 34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432 > +SIZE (rust/crates/log-0.4.28.crate) = 51131 > +SHA256 (rust/crates/memchr-2.7.6.crate) = f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273 > +SIZE (rust/crates/memchr-2.7.6.crate) = 97616 > +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.9.crate) = 1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316 > +SIZE (rust/crates/miniz_oxide-0.8.9.crate) = 67132 > +SHA256 (rust/crates/mio-1.0.4.crate) = 78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c > +SIZE (rust/crates/mio-1.0.4.crate) = 104212 > +SHA256 (rust/crates/nginx-sys-0.5.0.crate) = 3c85fc3a3b71cdb9269103e3934e989fe5c9f22a34d9068c1b23db1f0349ca79 > +SIZE (rust/crates/nginx-sys-0.5.0.crate) = 26184 > +SHA256 (rust/crates/ngx-0.5.0.crate) = 3cafa4700c0836055c5c78ba9defc418cea187d92ac65478bb7053a5a1d39775 > +SIZE (rust/crates/ngx-0.5.0.crate) = 60872 > +SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a > +SIZE (rust/crates/nom-7.1.3.crate) = 117570 > +SHA256 (rust/crates/object-0.37.3.crate) = ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe > +SIZE (rust/crates/object-0.37.3.crate) = 344032 > +SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d > +SIZE (rust/crates/once_cell-1.21.3.crate) = 34534 > +SHA256 (rust/crates/openssl-0.10.73.crate) = 8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8 > +SIZE (rust/crates/openssl-0.10.73.crate) = 283994 > +SHA256 (rust/crates/openssl-macros-0.1.1.crate) = a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c > +SIZE (rust/crates/openssl-macros-0.1.1.crate) = 5601 > +SHA256 (rust/crates/openssl-sys-0.9.109.crate) = 90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571 > +SIZE (rust/crates/openssl-sys-0.9.109.crate) = 78247 > +SHA256 (rust/crates/pin-project-lite-0.2.16.crate) = 3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b > +SIZE (rust/crates/pin-project-lite-0.2.16.crate) = 30504 > +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.32.crate) = 7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c > +SIZE (rust/crates/pkg-config-0.3.32.crate) = 21370 > +SHA256 (rust/crates/prettyplease-0.2.37.crate) = 479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b > +SIZE (rust/crates/prettyplease-0.2.37.crate) = 72033 > +SHA256 (rust/crates/proc-macro2-1.0.101.crate) = 89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de > +SIZE (rust/crates/proc-macro2-1.0.101.crate) = 53886 > +SHA256 (rust/crates/quote-1.0.41.crate) = ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1 > +SIZE (rust/crates/quote-1.0.41.crate) = 31408 > +SHA256 (rust/crates/regex-1.11.3.crate) = 8b5288124840bee7b386bc413c487869b360b2b4ec421ea56425128692f2a82c > +SIZE (rust/crates/regex-1.11.3.crate) = 163275 > +SHA256 (rust/crates/regex-automata-0.4.11.crate) = 833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad > +SIZE (rust/crates/regex-automata-0.4.11.crate) = 622880 > +SHA256 (rust/crates/regex-syntax-0.8.6.crate) = caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001 > +SIZE (rust/crates/regex-syntax-0.8.6.crate) = 358808 > +SHA256 (rust/crates/rustc-demangle-0.1.26.crate) = 56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace > +SIZE (rust/crates/rustc-demangle-0.1.26.crate) = 30340 > +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.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d > +SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154 > +SHA256 (rust/crates/rustix-0.38.44.crate) = fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154 > +SIZE (rust/crates/rustix-0.38.44.crate) = 379347 > +SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f > +SIZE (rust/crates/ryu-1.0.20.crate) = 48738 > +SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 > +SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 > +SHA256 (rust/crates/serde-1.0.228.crate) = 9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e > +SIZE (rust/crates/serde-1.0.228.crate) = 83652 > +SHA256 (rust/crates/serde_core-1.0.228.crate) = 41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad > +SIZE (rust/crates/serde_core-1.0.228.crate) = 63111 > +SHA256 (rust/crates/serde_derive-1.0.228.crate) = d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79 > +SIZE (rust/crates/serde_derive-1.0.228.crate) = 59605 > +SHA256 (rust/crates/serde_json-1.0.145.crate) = 402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c > +SIZE (rust/crates/serde_json-1.0.145.crate) = 155748 > +SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64 > +SIZE (rust/crates/shlex-1.3.0.crate) = 18713 > +SHA256 (rust/crates/siphasher-1.0.1.crate) = 56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d > +SIZE (rust/crates/siphasher-1.0.1.crate) = 10351 > +SHA256 (rust/crates/slab-0.4.11.crate) = 7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589 > +SIZE (rust/crates/slab-0.4.11.crate) = 18549 > +SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03 > +SIZE (rust/crates/smallvec-1.15.1.crate) = 38116 > +SHA256 (rust/crates/syn-2.0.106.crate) = ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6 > +SIZE (rust/crates/syn-2.0.106.crate) = 301514 > +SHA256 (rust/crates/thiserror-2.0.17.crate) = f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8 > +SIZE (rust/crates/thiserror-2.0.17.crate) = 28857 > +SHA256 (rust/crates/thiserror-impl-2.0.17.crate) = 3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913 > +SIZE (rust/crates/thiserror-impl-2.0.17.crate) = 21344 > +SHA256 (rust/crates/tokio-1.47.1.crate) = 89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038 > +SIZE (rust/crates/tokio-1.47.1.crate) = 829790 > +SHA256 (rust/crates/try-lock-0.2.5.crate) = e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b > +SIZE (rust/crates/try-lock-0.2.5.crate) = 4314 > +SHA256 (rust/crates/unicode-ident-1.0.19.crate) = f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d > +SIZE (rust/crates/unicode-ident-1.0.19.crate) = 47480 > +SHA256 (rust/crates/unicode-width-0.1.14.crate) = 7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af > +SIZE (rust/crates/unicode-width-0.1.14.crate) = 271615 > +SHA256 (rust/crates/vcpkg-0.2.15.crate) = accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426 > +SIZE (rust/crates/vcpkg-0.2.15.crate) = 228735 > +SHA256 (rust/crates/want-0.3.1.crate) = bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e > +SIZE (rust/crates/want-0.3.1.crate) = 6398 > +SHA256 (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b > +SIZE (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = 28477 > +SHA256 (rust/crates/which-4.4.2.crate) = 87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7 > +SIZE (rust/crates/which-4.4.2.crate) = 15953 > +SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419 > +SIZE (rust/crates/winapi-0.3.9.crate) = 1200382 > +SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6 > +SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815 > +SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f > +SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998 > +SHA256 (rust/crates/windows-link-0.2.1.crate) = f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5 > +SIZE (rust/crates/windows-link-0.2.1.crate) = 6133 > +SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b > +SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323 > +SHA256 (rust/crates/windows-sys-0.61.2.crate) = ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc > +SIZE (rust/crates/windows-sys-0.61.2.crate) = 2517186 > +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.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3 > +SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718 > +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.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.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66 > +SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163 > +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.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d > +SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707 > +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/yansi-term-0.1.2.crate) = fe5c30ade05e61656247b2e334a031dfd0cc466fadef865bdcdea8d537951bf1 > +SIZE (rust/crates/yansi-term-0.1.2.crate) = 14342 > +SHA256 (rust/crates/zeroize-1.8.2.crate) = b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0 > +SIZE (rust/crates/zeroize-1.8.2.crate) = 20907 > diff --git a/www/freenginx-acme/files/patch-build.rs b/www/freenginx-acme/files/patch-build.rs > new file mode 100644 > index 000000000000..c45057b059a1 > --- /dev/null > +++ b/www/freenginx-acme/files/patch-build.rs > @@ -0,0 +1,37 @@ > +--- build.rs.orig 2025-10-08 22:59:16 UTC > ++++ build.rs > +@@ -50,6 +50,11 @@ fn detect_nginx_features() { > + if let Ok(os) = env::var("DEP_NGINX_OS") { > + println!("cargo::rustc-cfg=ngx_os=\"{os}\""); > + } > ++ // Read nginx name detected by nginx-sys and pass to the compiler. > ++ println!("cargo::rerun-if-env-changed=DEP_NGINX_NAME"); > ++ if let Ok(ngx_name) = env::var("DEP_NGINX_NAME") { > ++ println!("cargo::rustc-cfg=ngx_name=\"{ngx_name}\""); > ++ } > + > + // Generate cfg values for version checks > + > +@@ -58,13 +63,16 @@ fn detect_nginx_features() { > + println!("cargo::rerun-if-env-changed=DEP_NGINX_VERSION_NUMBER"); > + if let Ok(version) = env::var("DEP_NGINX_VERSION_NUMBER") { > + let version: u64 = version.parse().unwrap(); > ++ let ngx_name: String = env::var("DEP_NGINX_NAME").unwrap_or("any()".to_string()); > + > +- if version >= 1_027_002 { > +- println!("cargo::rustc-cfg=ngx_ssl_cache"); > +- } > +- > +- if version >= 1_029_002 { > +- println!("cargo::rustc-cfg=ngx_ssl_client_hello_cb"); > ++ if ngx_name != "freenginx" { > ++ if version >= 1_027_002 { > ++ println!("cargo::rustc-cfg=ngx_ssl_cache"); > ++ } > ++ > ++ if version >= 1_029_002 { > ++ println!("cargo::rustc-cfg=ngx_ssl_client_hello_cb"); > ++ } > + } > + } > + } > diff --git a/www/freenginx-acme/files/patch-cargo-crates_nginx-sys-0.5.0_build_main.rs b/www/freenginx-acme/files/patch-cargo-crates_nginx-sys-0.5.0_build_main.rs > new file mode 100644 > index 000000000000..079db70f01b4 > --- /dev/null > +++ b/www/freenginx-acme/files/patch-cargo-crates_nginx-sys-0.5.0_build_main.rs > @@ -0,0 +1,19 @@ > +--- cargo-crates/nginx-sys-0.5.0/build/main.rs.orig 2006-07-24 01:21:28 UTC > ++++ cargo-crates/nginx-sys-0.5.0/build/main.rs > +@@ -364,6 +364,8 @@ pub fn print_cargo_metadata>( > + > + if name == "nginx_build" { > + println!("cargo::metadata=build={}", unquote(value)); > ++ } else if name == "nginx_name" { > ++ println!("cargo::metadata=name={}", unquote(value)); > + } else if name == "nginx_version" { > + println!("cargo::metadata=version={}", unquote(value)); > + } else if name == "nginx_version_number" { > +@@ -453,6 +455,7 @@ RUST_CONF_NGINX_BUILD=NGINX_VER_BUILD > + #endif > + > + RUST_CONF_NGINX_BUILD=NGINX_VER_BUILD > ++RUST_CONF_NGINX_NAME=NGINX_NAME > + RUST_CONF_NGINX_VERSION=NGINX_VER > + RUST_CONF_NGINX_VERSION_NUMBER=nginx_version > + " > diff --git a/www/freenginx-acme/pkg-descr b/www/freenginx-acme/pkg-descr > new file mode 100644 > index 000000000000..28655bae33ab > --- /dev/null > +++ b/www/freenginx-acme/pkg-descr > @@ -0,0 +1,2 @@ > +ACME shared library for the NGINX OSS server. > +This library is the requirement for ACME support. > >