1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-19 00:13:33 +00:00

games/veloren-weekly: unbreak without security/ca_root_nss

PanicInfo: panicked at cargo-crates/hyper-rustls-0.24.2/src/config.rs:48:9:
no CA certificates found
Game version: b47aa6ae [2024-05-09]

Backtrace:
   0: veloren_voxygen::panic_handler::set_panic_hook::{{closure}}
   1: std::panicking::rust_panic_with_hook
   2: std::panicking::begin_panic_handler::{{closure}}
   3: std::sys_common::backtrace::__rust_end_short_backtrace
   4: rust_begin_unwind
   5: core::panicking::panic_fmt
   6: authc::AuthClient::new
   7: veloren_client::Client:🆕:{{closure}}
   8: veloren_voxygen::menu::main::client_init::ClientInit:🆕:{{closure}}
   9: tokio::runtime::task::raw::poll
  10: tokio::runtime::scheduler::multi_thread::worker::Context::run_task
  11: tokio::runtime::scheduler::multi_thread::worker::run
  12: tokio::runtime::task::raw::poll
  13: std::sys_common::backtrace::__rust_begin_short_backtrace
  14: core::ops::function::FnOnce::call_once{{vtable.shim}}
  15: std::sys::pal::unix:🧵:Thread:🆕:thread_start
  16: <unknown>
This commit is contained in:
Jan Beich 2024-05-11 00:45:31 +02:00
parent d45df5a868
commit 4e9f09f249
2 changed files with 37 additions and 1 deletions

View File

@ -1,6 +1,6 @@
PORTNAME= veloren
PORTVERSION= s20240509
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= games wayland
PKGNAMESUFFIX= -weekly

View File

@ -0,0 +1,36 @@
https://github.com/rustls/rustls-native-certs/issues/28
https://github.com/rustls/rustls-native-certs/commit/8162b232045e
--- cargo-crates/rustls-native-certs-0.6.3/src/unix.rs.orig 1970-01-01 00:00:00 UTC
+++ cargo-crates/rustls-native-certs-0.6.3/src/unix.rs
@@ -1,13 +1,27 @@ use crate::Certificate;
use crate::load_pem_certs;
use crate::Certificate;
+use std::fs;
use std::io::Error;
pub fn load_native_certs() -> Result<Vec<Certificate>, Error> {
let likely_locations = openssl_probe::probe();
- match likely_locations.cert_file {
- Some(cert_file) => load_pem_certs(&cert_file),
- None => Ok(Vec::new()),
+ let mut certs = match likely_locations.cert_file {
+ Some(cert_file) => load_pem_certs(&cert_file)?,
+ None => Vec::new(),
+ };
+
+ if let Some(cert_dir) = likely_locations.cert_dir {
+ let dir_reader = fs::read_dir(cert_dir)?;
+ for entry in dir_reader {
+ let entry = entry?;
+ let path = entry.path();
+ if fs::metadata(&path)?.is_file() {
+ certs.append(&mut load_pem_certs(&path)?);
+ }
+ }
}
+
+ Ok(certs)
}