From 5a49c670975006d5d28bb44780eb4ae6ae5d01fd Mon Sep 17 00:00:00 2001 From: pseusys Date: Mon, 27 Oct 2025 02:13:51 +0100 Subject: [PATCH 01/67] config + editor --- .gitignore | 9 +- viridian/barnacles/README.md | 0 viridian/barnacles/network-manager/Makefile | 94 ++++++ viridian/barnacles/network-manager/README.md | 1 + .../configuration/descriptor.ini | 19 ++ .../configuration/service.conf | 14 + .../network-manager/editor/dialog.ui | 22 ++ .../barnacles/network-manager/editor/editor.c | 273 ++++++++++++++++++ .../barnacles/network-manager/editor/editor.h | 47 +++ .../network-manager/editor/gresource.xml | 6 + 10 files changed, 484 insertions(+), 1 deletion(-) create mode 100644 viridian/barnacles/README.md create mode 100644 viridian/barnacles/network-manager/Makefile create mode 100644 viridian/barnacles/network-manager/README.md create mode 100644 viridian/barnacles/network-manager/configuration/descriptor.ini create mode 100644 viridian/barnacles/network-manager/configuration/service.conf create mode 100644 viridian/barnacles/network-manager/editor/dialog.ui create mode 100644 viridian/barnacles/network-manager/editor/editor.c create mode 100644 viridian/barnacles/network-manager/editor/editor.h create mode 100644 viridian/barnacles/network-manager/editor/gresource.xml diff --git a/.gitignore b/.gitignore index 8fd15663..59fed1b7 100644 --- a/.gitignore +++ b/.gitignore @@ -80,7 +80,7 @@ viridian/reef/Cargo.lock viridian/reef/target ## Rust generated files: -viridian/reef/src/generated +viridian/reef/shared_library/include ## Test files: viridian/reef/certificates/ @@ -89,3 +89,10 @@ viridian/reef/certificates/ viridian/reef/WinDivert-*.zip viridian/reef/windivert-bin/ viridian/reef/windivert-source/ + + + +# C and C++: + +## Binary build: +viridian/barnacles/network-manager/build diff --git a/viridian/barnacles/README.md b/viridian/barnacles/README.md new file mode 100644 index 00000000..e69de29b diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile new file mode 100644 index 00000000..71408660 --- /dev/null +++ b/viridian/barnacles/network-manager/Makefile @@ -0,0 +1,94 @@ +.ONESHELL: +.EXPORT_ALL_VARIABLES: +.DEFAULT_GOAL := help + +SHELL := /bin/bash +.SHELLFLAGS := -c -e + +BUILD_TYPE := debug + + + +help: + @ # Print available make target information + echo -e "help" +.PHONY: help + + + +# Building and setting up system: + +G_C_FLAGS := $(shell pkg-config --cflags --libs libnm gtk+-3.0) +BUILD_ARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) + +PLUGIN_NAME := seasidevpn +SERVICE_NAME := org.freedesktop.NetworkManager.$(PLUGIN_NAME) + +LIB_DIR := /usr/lib/NetworkManager/VPN +PLUGIN_DIR := /usr/lib/$(BUILD_ARCH)/NetworkManager +SERVICE_DIR := /usr/libexec +NM_DBUS_DIR := /usr/share/dbus-1/system.d + +NM_CONFIGURATION_DIR := configuration +NM_PLUGIN_DIR := plugin +NM_EDITOR_DIR := editor +NM_BUILD_DIR := build + +INSTALL_BIN := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-service +INSTALL_NAME := $(LIB_DIR)/nm-$(PLUGIN_NAME)-service.name +INSTALL_CONF := $(NM_DBUS_DIR)/nm-$(PLUGIN_NAME)-service.conf +INSTALL_EDITOR := $(PLUGIN_DIR)/libnm-vpn-plugin-$(PLUGIN_NAME).so + + +G_C_FLAGS := $(G_C_FLAGS) -DSEASIDE_PLUGIN_SERVICE="\"$(SERVICE_NAME)\"" +ifeq ($(BUILD_TYPE),debug) + G_C_FLAGS := $(G_C_FLAGS) -Og +endif + + +dir-build: + @ # Create build directory + mkdir -p $(NM_BUILD_DIR) +.PHONY: dir-build + +editor-build: dir-build + @ # Build network manager reef editor + glib-compile-resources $(NM_EDITOR_DIR)/gresource.xml --sourcedir=$(NM_EDITOR_DIR) --target=$(NM_BUILD_DIR)/resources.gen.c --generate-source + gcc -fPIC -shared $(NM_EDITOR_DIR)/editor.c $(NM_BUILD_DIR)/resources.gen.c $(NM_EDITOR_DIR)/editor.h -o $(NM_BUILD_DIR)/editor.so $(G_C_FLAGS) +.PHONY: editor-build + +plugin-build: dir-build + @ # Build network manager reef plugin + gcc -fPIC $(NM_PLUGIN_DIR)/plugin.c $(NM_PLUGIN_DIR)/plugin.h -o $(NM_BUILD_DIR)/plugin $(G_C_FLAGS) +.PHONY: plugin-build + +config-build: dir-build + @ # Build network manager reef configuration + sed "s|SEASIDE-PLUGIN-NAME|$(PLUGIN_NAME)|" $(NM_CONFIGURATION_DIR)/descriptor.ini > $(NM_BUILD_DIR)/descriptor.ini.gen + sed -i "s|DBUS-SERVICE-NAME|$(SERVICE_NAME)|" $(NM_BUILD_DIR)/descriptor.ini.gen + sed -i "s|PATH-TO-SEASIDEVPN-BIN|$(INSTALL_BIN)|" $(NM_BUILD_DIR)/descriptor.ini.gen + sed -i "s|PATH-TO-SEASIDEVPN-EDITOR|$(INSTALL_EDITOR)|" $(NM_BUILD_DIR)/descriptor.ini.gen +.PHONY: config-build + +build: editor-build plugin-build config-build + @ # Build network manager reef plugin +.PHONY: build + +install: build + @ # Install network manager reef plugin + # sudo install -D -m 755 $(NM_BUILD_DIR)/plugin $(INSTALL_BIN) + sudo install -D -m 644 $(NM_BUILD_DIR)/descriptor.ini.gen $(INSTALL_NAME) + sudo install -D -m 644 $(NM_CONFIGURATION_DIR)/service.conf $(INSTALL_CONF) + sudo install -D -m 644 $(NM_BUILD_DIR)/editor.so $(INSTALL_EDITOR) + sudo systemctl restart NetworkManager +.PHONY: install + + + +# Artifact cleaning: + +clean: rust-clean + @ # Clean network manager plugin build artifacts + rm -f $(NM_BUILD_DIR) + sudo rm -f $(INSTALL_BIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) +.PHONY: clean diff --git a/viridian/barnacles/network-manager/README.md b/viridian/barnacles/network-manager/README.md new file mode 100644 index 00000000..d73002e8 --- /dev/null +++ b/viridian/barnacles/network-manager/README.md @@ -0,0 +1 @@ +> `build-essential libglib2.0-dev libglib2.0-dev-bin libnm-dev pkg-config` \ No newline at end of file diff --git a/viridian/barnacles/network-manager/configuration/descriptor.ini b/viridian/barnacles/network-manager/configuration/descriptor.ini new file mode 100644 index 00000000..14001be3 --- /dev/null +++ b/viridian/barnacles/network-manager/configuration/descriptor.ini @@ -0,0 +1,19 @@ +[VPN Connection] +name=SEASIDE-PLUGIN-NAME +service=DBUS-SERVICE-NAME +program=PATH-TO-SEASIDEVPN-BIN +supports-multiple-connections=false +supports-secrets=false +supports-save-password=false +supports-save-username=false +supports-user-interaction=false +supports-ipv6=false +supports-mtu-setting=true +supports-routing=true +supports-bypass=false + +[libnm] +plugin=PATH-TO-SEASIDEVPN-EDITOR + +[GNOME] +supports-external-ui-mode=true diff --git a/viridian/barnacles/network-manager/configuration/service.conf b/viridian/barnacles/network-manager/configuration/service.conf new file mode 100644 index 00000000..26f48d1a --- /dev/null +++ b/viridian/barnacles/network-manager/configuration/service.conf @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/viridian/barnacles/network-manager/editor/dialog.ui b/viridian/barnacles/network-manager/editor/dialog.ui new file mode 100644 index 00000000..62bf71b0 --- /dev/null +++ b/viridian/barnacles/network-manager/editor/dialog.ui @@ -0,0 +1,22 @@ + + + + vertical + 6 + + + + Certificate file (.sea): + start + + + + + + Select Seaside Certificate + open + false + + + + diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/barnacles/network-manager/editor/editor.c new file mode 100644 index 00000000..ac5f1dcf --- /dev/null +++ b/viridian/barnacles/network-manager/editor/editor.c @@ -0,0 +1,273 @@ +#include +#include +#include +#include +#include +#include + +#include + +#define SEASIDE_EDITOR_PLUGIN_ERROR NM_CONNECTION_ERROR +#define SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY NM_CONNECTION_ERROR_INVALID_PROPERTY + +#include "editor.h" + +#define SEASIDE_PLUGIN_NAME "SeasideVPN" +#define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" + +#define NM_SEASIDE_KEY_CERTIFICATE "certificate" + +// PLUGIN: + +enum { + PROP_0, + PROP_NAME, + PROP_DESC, + PROP_SERVICE +}; + +static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* iface_class); + +G_DEFINE_TYPE_EXTENDED(SeasideEditorPlugin, seaside_editor_plugin, G_TYPE_OBJECT, 0, G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR_PLUGIN, seaside_editor_plugin_interface_init)) + +// UI WIDGET: + +static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class); + +typedef struct { + GtkBuilder *builder; + GtkWidget *widget; + GtkSizeGroup *group; + gboolean window_added; +} SeasideEditorPrivate; + +G_DEFINE_TYPE_WITH_CODE(SeasideEditor, seaside_editor, G_TYPE_OBJECT, G_ADD_PRIVATE(SeasideEditor) G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR, seaside_editor_interface_init)) + +typedef enum { + NM_SEASIDE_IMPORT_EXPORT_ERROR_UNKNOWN = 0, + NM_SEASIDE_IMPORT_EXPORT_ERROR_NOT_SEASIDE, + NM_SEASIDE_IMPORT_EXPORT_ERROR_BAD_DATA, +} NMSeasideImportError; + +// CODE: + +#define NM_SEASIDE_IMPORT_EXPORT_ERROR nm_seaside_import_export_error_quark() + +static GQuark nm_seaside_import_export_error_quark(void) { + static GQuark quark = 0; + if (G_UNLIKELY(quark == 0)) quark = g_quark_from_static_string("nm-seaside-import-export-error-quark"); + return quark; +} + +static NMConnection* import(NMVpnEditorPlugin* iface, const char* path, GError** error) { + g_message("Importing SeasideVPN connection..."); + + NMConnection* connection = nm_simple_connection_new(); + + NMSettingConnection* s_con = NM_SETTING_CONNECTION(nm_setting_connection_new()); + nm_connection_add_setting(connection, NM_SETTING(s_con)); + + NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); + g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); + nm_connection_add_setting(connection, NM_SETTING(s_vpn)); + + NMSettingIP4Config* s_ip4 = NM_SETTING_IP4_CONFIG(nm_setting_ip4_config_new()); + nm_connection_add_setting(connection, NM_SETTING(s_ip4)); + + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, path); + return connection; +} + +static gboolean check_validity(SeasideEditor* self, GError** error) { + SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + GtkWidget* widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); + char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(widget)); + + if (!filename || !strlen(filename)) { + g_set_error (error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "No certificate file selected"); + g_free(filename); + return FALSE; + } + + if (!g_file_test(filename, G_FILE_TEST_EXISTS)) { + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "Selected certificate file does not exist: %s", filename); + g_free(filename); + return FALSE; + } + + g_free(filename); + return TRUE; +} + +static void stuff_changed_cb(GtkWidget* widget, gpointer user_data) { + g_signal_emit_by_name(SEASIDE_EDITOR(user_data), "changed"); +} + +static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { + g_message("Initializing SeasideVPN editor plugin..."); + + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); + + GtkWidget* widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); + if (!widget) return FALSE; + + GtkFileFilter *filter_cert = gtk_file_filter_new(); + gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); + gtk_file_filter_add_pattern(filter_cert, "*.sea"); + gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(widget), filter_cert); + + GtkFileFilter *filter_all = gtk_file_filter_new(); + gtk_file_filter_set_name(filter_all, "All Files"); + gtk_file_filter_add_pattern(filter_all, "*"); + gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(widget), filter_all); + + if (s_vpn) { + const char* value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); + if (value) gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(widget), value); + } + + g_signal_connect(G_OBJECT(widget), "file-set", G_CALLBACK(stuff_changed_cb), self); + return TRUE; +} + +static GObject* get_widget(NMVpnEditor* iface) { + SeasideEditor* self = SEASIDE_EDITOR(iface); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + return G_OBJECT(priv->widget); +} + +static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, GError** error) { + g_message("Updating SeasideVPN connection..."); + + SeasideEditor* self = SEASIDE_EDITOR(iface); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + if (!check_validity(self, error)) return FALSE; + + NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); + g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); + + GtkWidget* widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); + const char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(widget)); + if (filename && strlen(filename)) nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, filename); + + nm_connection_add_setting(connection, NM_SETTING(s_vpn)); + return TRUE; +} + +static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError** error) { + g_message("Constructing SeasideVPN editor interface..."); + if (error) g_return_val_if_fail(*error == NULL, NULL); + + NMVpnEditor* object = g_object_new(SEASIDE_TYPE_EDITOR, NULL); + if (!object) { + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not create seaside object"); + return NULL; + } + + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(object)); + priv->builder = gtk_builder_new(); + + if (!gtk_builder_add_from_resource(priv->builder, "/org/freedesktop/network-manager-seasidevpn/dialog.ui", error)) { + g_object_unref(object); + return NULL; + } + + priv->widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "root_box")); + if (!priv->widget) { + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + g_object_unref(object); + return NULL; + } + g_object_ref_sink(priv->widget); + + if (!init_editor_plugin(SEASIDE_EDITOR(object), connection, error)) { + g_object_unref(object); + return NULL; + } + return object; +} + +static void dispose(GObject* object) { + SeasideEditor* self = SEASIDE_EDITOR(object); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(self)); + + if (priv->group) g_object_unref(priv->group); + if (priv->widget) g_object_unref(priv->widget); + if (priv->builder) g_object_unref(priv->builder); + + G_OBJECT_CLASS(seaside_editor_parent_class)->dispose(object); +} + +static void seaside_editor_class_init (SeasideEditorClass* req_class) { + GObjectClass* object_class = G_OBJECT_CLASS(req_class); + object_class->dispose = dispose; +} + +static void seaside_editor_init(SeasideEditor* plugin) {} + +static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { + g_message("Initializing SeasideVPN editor interface..."); + + iface_class->get_widget = get_widget; + iface_class->update_connection = update_connection; +} + +static guint32 get_capabilities (NMVpnEditorPlugin* iface) { + return NM_VPN_EDITOR_PLUGIN_CAPABILITY_IMPORT; +} + +static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface, NMConnection* connection, GError** error) { + return nm_vpn_editor_interface_new(connection, error); +} + +static void get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec) { + switch (prop_id) { + case PROP_NAME: + g_value_set_string(value, SEASIDE_PLUGIN_NAME); + break; + case PROP_DESC: + g_value_set_string(value, SEASIDE_PLUGIN_DESC); + break; + case PROP_SERVICE: + g_value_set_string(value, SEASIDE_PLUGIN_SERVICE); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); + break; + } +} + +static void seaside_editor_plugin_class_init(SeasideEditorPluginClass* req_class) { + g_message("Constructing SeasideVPN plugin class interface..."); + + GObjectClass* object_class = G_OBJECT_CLASS(req_class); + object_class->get_property = get_property; + + g_object_class_override_property(object_class, PROP_NAME, NM_VPN_EDITOR_PLUGIN_NAME); + g_object_class_override_property(object_class, PROP_DESC, NM_VPN_EDITOR_PLUGIN_DESCRIPTION); + g_object_class_override_property(object_class, PROP_SERVICE, NM_VPN_EDITOR_PLUGIN_SERVICE); +} + +static void seaside_editor_plugin_init(SeasideEditorPlugin* plugin) {} + +static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* iface_class) { + g_message("Constructing SeasideVPN plugin interface interface..."); + + iface_class->get_editor = get_editor; + iface_class->get_capabilities = get_capabilities; + iface_class->import_from_file = import; +} + +G_MODULE_EXPORT NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin *editor_plugin, NMConnection* connection, GError** error) { + g_message("SeasideVPN editor factory called..."); + if (error) g_return_val_if_fail(*error == NULL, NULL); + return nm_vpn_editor_interface_new(connection, error); +} + + +G_MODULE_EXPORT NMVpnEditorPlugin* nm_vpn_editor_plugin_factory(GError** error) { + g_message("SeasideVPN editor plugin factory called..."); + if (error) g_return_val_if_fail(*error == NULL, NULL); + return g_object_new(SEASIDE_TYPE_EDITOR_PLUGIN, NULL); +} diff --git a/viridian/barnacles/network-manager/editor/editor.h b/viridian/barnacles/network-manager/editor/editor.h new file mode 100644 index 00000000..e14437c0 --- /dev/null +++ b/viridian/barnacles/network-manager/editor/editor.h @@ -0,0 +1,47 @@ +#ifndef NM_SEASIDE_EDITOR_H +#define NM_SEASIDE_EDITOR_H + +#include + +#define SEASIDE_TYPE_EDITOR_PLUGIN (seaside_editor_plugin_get_type()) +#define SEASIDE_EDITOR_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SEASIDE_TYPE_EDITOR_PLUGIN, SeasideEditorPlugin)) +#define SEASIDE_EDITOR_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), SEASIDE_TYPE_EDITOR_PLUGIN, SeasideEditorPluginClass)) +#define SEASIDE_IS_EDITOR_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SEASIDE_TYPE_EDITOR_PLUGIN)) +#define SEASIDE_IS_EDITOR_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SEASIDE_TYPE_EDITOR_PLUGIN)) +#define SEASIDE_EDITOR_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), SEASIDE_TYPE_EDITOR_PLUGIN, SeasideEditorPluginClass)) + +typedef struct _SeasideEditorPlugin SeasideEditorPlugin; +typedef struct _SeasideEditorPluginClass SeasideEditorPluginClass; + +struct _SeasideEditorPlugin { + GObject parent; +}; + +struct _SeasideEditorPluginClass { + GObjectClass parent; +}; + +GType seaside_editor_plugin_get_type(void); + + +#define SEASIDE_TYPE_EDITOR (seaside_editor_get_type()) +#define SEASIDE_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SEASIDE_TYPE_EDITOR, SeasideEditor)) +#define SEASIDE_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), SEASIDE_TYPE_EDITOR, SeasideEditorClass)) +#define SEASIDE_IS_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SEASIDE_TYPE_EDITOR)) +#define SEASIDE_IS_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SEASIDE_TYPE_EDITOR)) +#define SEASIDE_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), SEASIDE_TYPE_EDITOR, SeasideEditorClass)) + +typedef struct _SeasideEditor SeasideEditor; +typedef struct _SeasideEditorClass SeasideEditorClass; + +struct _SeasideEditor { + GObject parent; +}; + +struct _SeasideEditorClass { + GObjectClass parent; +}; + +GType seaside_editor_get_type(void); + +#endif /* NM_SEASIDE_EDITOR_H */ diff --git a/viridian/barnacles/network-manager/editor/gresource.xml b/viridian/barnacles/network-manager/editor/gresource.xml new file mode 100644 index 00000000..cc46b1b1 --- /dev/null +++ b/viridian/barnacles/network-manager/editor/gresource.xml @@ -0,0 +1,6 @@ + + + + dialog.ui + + From 7dac5e93394ffb7c1e660d2ad608a290843cc5b9 Mon Sep 17 00:00:00 2001 From: pseusys Date: Mon, 27 Oct 2025 02:38:21 +0100 Subject: [PATCH 02/67] default action --- .github/actions/setup-server/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 2a7c127a..eae8b788 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -94,7 +94,7 @@ runs: echo "connection-certificate=${CONNECTION_CERTIFICATE_FILE}" >> $GITHUB_OUTPUT - name: Test Echo Server Access (no VPN) - if: ${{ inputs.test-command != '' }} + if: ${{ inputs.test-command }} shell: bash env: RUNNER: ${{ runner.os == 'Linux' && 'bash -c' || 'powershell -Command' }} From 4f839ca8094abac4efa0422d898baec12a6074a4 Mon Sep 17 00:00:00 2001 From: pseusys Date: Thu, 30 Oct 2025 02:15:10 +0100 Subject: [PATCH 03/67] reef library split --- .github/workflows/test.yml | 2 +- bump-version.sh | 6 +- viridian/barnacles/network-manager/Makefile | 16 +- .../configuration/descriptor.ini | 2 +- .../network-manager/editor/dialog.ui | 28 + .../barnacles/network-manager/editor/editor.c | 49 +- .../barnacles/network-manager/plugin/plugin.c | 239 +++++++++ .../barnacles/network-manager/plugin/plugin.h | 34 ++ viridian/reef/Cargo.toml | 77 +-- viridian/reef/Dockerfile | 20 +- viridian/reef/Makefile | 85 +-- viridian/reef/cli_executable/Cargo.toml | 37 ++ .../{src/cli.rs => cli_executable/src/mod.rs} | 32 +- .../src}/tunnel/linux.rs | 174 +----- .../lib => cli_executable/src}/tunnel/mod.rs | 4 +- .../src}/tunnel/windows.rs | 0 .../mod.rs => cli_executable/src/viridian.rs} | 35 +- .../tests/tunnel/linux.rs | 94 +--- viridian/reef/example.conf.env | 2 +- viridian/reef/rust_library/Cargo.toml | 64 +++ viridian/reef/{ => rust_library}/build.rs | 2 +- .../{src => rust_library}/lib/bytes/buffer.rs | 0 .../{src => rust_library}/lib/bytes/mod.rs | 0 .../{src => rust_library}/lib/bytes/pool.rs | 0 .../{src => rust_library}/lib/bytes/utils.rs | 0 .../lib/crypto/asymmetric.rs | 0 .../{src => rust_library}/lib/crypto/mod.rs | 0 .../lib/crypto/symmetric.rs | 2 +- .../reef/{src => rust_library}/lib/general.rs | 0 .../reef/{src => rust_library}/lib/mod.rs | 0 .../lib/protocol/common.rs | 0 .../{src => rust_library}/lib/protocol/mod.rs | 0 .../lib/protocol/port_client.rs | 0 .../lib/protocol/port_core.rs | 0 .../lib/protocol/typhoon_client.rs | 0 .../lib/protocol/typhoon_core.rs | 0 .../lib/protocol/utils.rs | 0 .../reef/{src => rust_library}/lib/rng.rs | 10 +- .../reef/{src => rust_library}/lib/runtime.rs | 0 .../reef/rust_library/lib/tunnel/linux.rs | 169 ++++++ viridian/reef/rust_library/lib/tunnel/mod.rs | 9 + .../reef/rust_library/lib/tunnel/windows.rs | 503 ++++++++++++++++++ .../reef/{src => rust_library}/lib/utils.rs | 0 .../lib/viridian/linux.rs | 3 - .../reef/rust_library/lib/viridian/mod.rs | 17 + .../lib/viridian/windows.rs | 0 .../tests/crypto/symmetric.rs | 0 .../reef/rust_library/tests/tunnel/linux.rs | 90 ++++ viridian/reef/shared_library/Cargo.toml | 34 ++ viridian/reef/shared_library/build.rs | 9 + viridian/reef/shared_library/cbindgen.toml | 6 + viridian/reef/shared_library/lib/mod.rs | 143 +++++ .../reef/shared_library/lib/tunnel/linux.rs | 38 ++ .../reef/shared_library/lib/tunnel/mod.rs | 60 +++ .../reef/shared_library/lib/tunnel/windows.rs | 503 ++++++++++++++++++ viridian/reef/shared_library/lib/viridian.rs | 97 ++++ viridian/reef/test_library/Cargo.toml | 21 + viridian/reef/test_library/lib/mod.rs | 2 + .../reef/test_library/lib/tunnel/linux.rs | 41 ++ viridian/reef/test_library/lib/tunnel/mod.rs | 9 + .../reef/test_library/lib/tunnel/windows.rs | 0 61 files changed, 2326 insertions(+), 442 deletions(-) create mode 100644 viridian/barnacles/network-manager/plugin/plugin.c create mode 100644 viridian/barnacles/network-manager/plugin/plugin.h create mode 100644 viridian/reef/cli_executable/Cargo.toml rename viridian/reef/{src/cli.rs => cli_executable/src/mod.rs} (86%) rename viridian/reef/{src/lib => cli_executable/src}/tunnel/linux.rs (73%) rename viridian/reef/{src/lib => cli_executable/src}/tunnel/mod.rs (95%) rename viridian/reef/{src/lib => cli_executable/src}/tunnel/windows.rs (100%) rename viridian/reef/{src/lib/viridian/mod.rs => cli_executable/src/viridian.rs} (90%) rename viridian/reef/{ => cli_executable}/tests/tunnel/linux.rs (66%) create mode 100644 viridian/reef/rust_library/Cargo.toml rename viridian/reef/{ => rust_library}/build.rs (89%) rename viridian/reef/{src => rust_library}/lib/bytes/buffer.rs (100%) rename viridian/reef/{src => rust_library}/lib/bytes/mod.rs (100%) rename viridian/reef/{src => rust_library}/lib/bytes/pool.rs (100%) rename viridian/reef/{src => rust_library}/lib/bytes/utils.rs (100%) rename viridian/reef/{src => rust_library}/lib/crypto/asymmetric.rs (100%) rename viridian/reef/{src => rust_library}/lib/crypto/mod.rs (100%) rename viridian/reef/{src => rust_library}/lib/crypto/symmetric.rs (97%) rename viridian/reef/{src => rust_library}/lib/general.rs (100%) rename viridian/reef/{src => rust_library}/lib/mod.rs (100%) rename viridian/reef/{src => rust_library}/lib/protocol/common.rs (100%) rename viridian/reef/{src => rust_library}/lib/protocol/mod.rs (100%) rename viridian/reef/{src => rust_library}/lib/protocol/port_client.rs (100%) rename viridian/reef/{src => rust_library}/lib/protocol/port_core.rs (100%) rename viridian/reef/{src => rust_library}/lib/protocol/typhoon_client.rs (100%) rename viridian/reef/{src => rust_library}/lib/protocol/typhoon_core.rs (100%) rename viridian/reef/{src => rust_library}/lib/protocol/utils.rs (100%) rename viridian/reef/{src => rust_library}/lib/rng.rs (75%) rename viridian/reef/{src => rust_library}/lib/runtime.rs (100%) create mode 100644 viridian/reef/rust_library/lib/tunnel/linux.rs create mode 100644 viridian/reef/rust_library/lib/tunnel/mod.rs create mode 100644 viridian/reef/rust_library/lib/tunnel/windows.rs rename viridian/reef/{src => rust_library}/lib/utils.rs (100%) rename viridian/reef/{src => rust_library}/lib/viridian/linux.rs (85%) create mode 100644 viridian/reef/rust_library/lib/viridian/mod.rs rename viridian/reef/{src => rust_library}/lib/viridian/windows.rs (100%) rename viridian/reef/{ => rust_library}/tests/crypto/symmetric.rs (100%) create mode 100644 viridian/reef/rust_library/tests/tunnel/linux.rs create mode 100644 viridian/reef/shared_library/Cargo.toml create mode 100644 viridian/reef/shared_library/build.rs create mode 100644 viridian/reef/shared_library/cbindgen.toml create mode 100644 viridian/reef/shared_library/lib/mod.rs create mode 100644 viridian/reef/shared_library/lib/tunnel/linux.rs create mode 100644 viridian/reef/shared_library/lib/tunnel/mod.rs create mode 100644 viridian/reef/shared_library/lib/tunnel/windows.rs create mode 100644 viridian/reef/shared_library/lib/viridian.rs create mode 100644 viridian/reef/test_library/Cargo.toml create mode 100644 viridian/reef/test_library/lib/mod.rs create mode 100644 viridian/reef/test_library/lib/tunnel/linux.rs create mode 100644 viridian/reef/test_library/lib/tunnel/mod.rs create mode 100644 viridian/reef/test_library/lib/tunnel/windows.rs diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 62ea5a6b..8edb2dbc 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -111,7 +111,7 @@ jobs: - name: Test Viridian Reef (unit) ๐Ÿงช working-directory: viridian/reef - run: ${{ env.SUDO }} cargo test --package SeasideVPN-Reef --lib -- --nocapture --show-output + run: ${{ env.SUDO }} cargo test --workspace -- --nocapture --show-output - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server diff --git a/bump-version.sh b/bump-version.sh index fea2a2aa..b4da8bfa 100644 --- a/bump-version.sh +++ b/bump-version.sh @@ -31,9 +31,11 @@ VERSIONED_FILES=( "viridian/algae/README.md" \ "viridian/algae/sources/version.py" \ "viridian/algae/setup/whirlpool.py" \ - "viridian/reef/Cargo.toml" \ + "viridian/reef/cli_executable/Cargo.toml" \ + "viridian/reef/rust_library/Cargo.toml" \ + "viridian/reef/shared_library/Cargo.toml" \ + "viridian/reef/test_library/Cargo.toml" \ "viridian/reef/README.md" \ - "viridian/reef/src/lib/mod.rs" \ "caerulean/whirlpool/README.md" \ "caerulean/whirlpool/protocol/protocol_utils.go" ) diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index 71408660..ef4aaa48 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -25,16 +25,20 @@ PLUGIN_NAME := seasidevpn SERVICE_NAME := org.freedesktop.NetworkManager.$(PLUGIN_NAME) LIB_DIR := /usr/lib/NetworkManager/VPN -PLUGIN_DIR := /usr/lib/$(BUILD_ARCH)/NetworkManager +BIN_DIR := /usr/lib/$(BUILD_ARCH) +PLUGIN_DIR := $(BIN_DIR)/NetworkManager SERVICE_DIR := /usr/libexec NM_DBUS_DIR := /usr/share/dbus-1/system.d +REEF_DIR := ../../reef NM_CONFIGURATION_DIR := configuration NM_PLUGIN_DIR := plugin NM_EDITOR_DIR := editor NM_BUILD_DIR := build +NM_BIN_DIR := $(REEF_DIR)/target/$(BUILD_TYPE) -INSTALL_BIN := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-service +INSTALL_BIN := $(BIN_DIR)/libseaside.so +INSTALL_PLUGIN := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-service INSTALL_NAME := $(LIB_DIR)/nm-$(PLUGIN_NAME)-service.name INSTALL_CONF := $(NM_DBUS_DIR)/nm-$(PLUGIN_NAME)-service.conf INSTALL_EDITOR := $(PLUGIN_DIR)/libnm-vpn-plugin-$(PLUGIN_NAME).so @@ -59,6 +63,7 @@ editor-build: dir-build plugin-build: dir-build @ # Build network manager reef plugin + $(MAKE) -C $(REEF_DIR) -s --no-print-directory build-lib gcc -fPIC $(NM_PLUGIN_DIR)/plugin.c $(NM_PLUGIN_DIR)/plugin.h -o $(NM_BUILD_DIR)/plugin $(G_C_FLAGS) .PHONY: plugin-build @@ -66,7 +71,7 @@ config-build: dir-build @ # Build network manager reef configuration sed "s|SEASIDE-PLUGIN-NAME|$(PLUGIN_NAME)|" $(NM_CONFIGURATION_DIR)/descriptor.ini > $(NM_BUILD_DIR)/descriptor.ini.gen sed -i "s|DBUS-SERVICE-NAME|$(SERVICE_NAME)|" $(NM_BUILD_DIR)/descriptor.ini.gen - sed -i "s|PATH-TO-SEASIDEVPN-BIN|$(INSTALL_BIN)|" $(NM_BUILD_DIR)/descriptor.ini.gen + sed -i "s|PATH-TO-SEASIDEVPN-PLUGIN|$(INSTALL_PLUGIN)|" $(NM_BUILD_DIR)/descriptor.ini.gen sed -i "s|PATH-TO-SEASIDEVPN-EDITOR|$(INSTALL_EDITOR)|" $(NM_BUILD_DIR)/descriptor.ini.gen .PHONY: config-build @@ -76,10 +81,11 @@ build: editor-build plugin-build config-build install: build @ # Install network manager reef plugin - # sudo install -D -m 755 $(NM_BUILD_DIR)/plugin $(INSTALL_BIN) + sudo install -D -m 755 $(NM_BUILD_DIR)/plugin $(INSTALL_PLUGIN) sudo install -D -m 644 $(NM_BUILD_DIR)/descriptor.ini.gen $(INSTALL_NAME) sudo install -D -m 644 $(NM_CONFIGURATION_DIR)/service.conf $(INSTALL_CONF) sudo install -D -m 644 $(NM_BUILD_DIR)/editor.so $(INSTALL_EDITOR) + sudo install -D -m 644 $(NM_BIN_DIR)/libseaside.so $(INSTALL_BIN) sudo systemctl restart NetworkManager .PHONY: install @@ -90,5 +96,5 @@ install: build clean: rust-clean @ # Clean network manager plugin build artifacts rm -f $(NM_BUILD_DIR) - sudo rm -f $(INSTALL_BIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) + sudo rm -f $(INSTALL_PLUGIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) $(INSTALL_BIN) .PHONY: clean diff --git a/viridian/barnacles/network-manager/configuration/descriptor.ini b/viridian/barnacles/network-manager/configuration/descriptor.ini index 14001be3..90154028 100644 --- a/viridian/barnacles/network-manager/configuration/descriptor.ini +++ b/viridian/barnacles/network-manager/configuration/descriptor.ini @@ -1,7 +1,7 @@ [VPN Connection] name=SEASIDE-PLUGIN-NAME service=DBUS-SERVICE-NAME -program=PATH-TO-SEASIDEVPN-BIN +program=PATH-TO-SEASIDEVPN-PLUGIN supports-multiple-connections=false supports-secrets=false supports-save-password=false diff --git a/viridian/barnacles/network-manager/editor/dialog.ui b/viridian/barnacles/network-manager/editor/dialog.ui index 62bf71b0..84c51bda 100644 --- a/viridian/barnacles/network-manager/editor/dialog.ui +++ b/viridian/barnacles/network-manager/editor/dialog.ui @@ -18,5 +18,33 @@ false + + + + Protocol: + start + + + + + + horizontal + 6 + + + + TYPHOON + true + + + + + + PORT + radio_typhoon + + + + diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/barnacles/network-manager/editor/editor.c index ac5f1dcf..55b6822a 100644 --- a/viridian/barnacles/network-manager/editor/editor.c +++ b/viridian/barnacles/network-manager/editor/editor.c @@ -16,6 +16,7 @@ #define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" #define NM_SEASIDE_KEY_CERTIFICATE "certificate" +#define NM_SEASIDE_KEY_PROTOCOL "protocol" // PLUGIN: @@ -109,25 +110,44 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); - GtkWidget* widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); - if (!widget) return FALSE; + GtkWidget* filechooser = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); + if (!filechooser) return FALSE; GtkFileFilter *filter_cert = gtk_file_filter_new(); gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); gtk_file_filter_add_pattern(filter_cert, "*.sea"); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(widget), filter_cert); + gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(filechooser), filter_cert); GtkFileFilter *filter_all = gtk_file_filter_new(); gtk_file_filter_set_name(filter_all, "All Files"); gtk_file_filter_add_pattern(filter_all, "*"); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(widget), filter_all); + gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(filechooser), filter_all); + + GtkRadioButton* radio_typhoon = GTK_RADIO_BUTTON(gtk_builder_get_object(priv->builder, "radio_typhoon")); + GtkRadioButton* radio_port = GTK_RADIO_BUTTON(gtk_builder_get_object(priv->builder, "radio_port")); + if (!radio_typhoon || !radio_port) return FALSE; if (s_vpn) { - const char* value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); - if (value) gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(widget), value); + const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); + if (cert_value) gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(filechooser), cert_value); + + const char* proto_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); + if (proto_value) { + if (radio_typhoon && g_strcmp0(proto_value, "typhoon") == 0) + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_typhoon), TRUE); + else if (radio_port && g_strcmp0(proto_value, "port") == 0) + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_port), TRUE); + else + return FALSE; + } else { + if (radio_typhoon) + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_typhoon), TRUE); + } } - g_signal_connect(G_OBJECT(widget), "file-set", G_CALLBACK(stuff_changed_cb), self); + g_signal_connect(G_OBJECT(filechooser), "file-set", G_CALLBACK(stuff_changed_cb), self); + g_signal_connect(G_OBJECT(radio_typhoon), "toggled", G_CALLBACK(stuff_changed_cb), self); + g_signal_connect(G_OBJECT(radio_port), "toggled", G_CALLBACK(stuff_changed_cb), self); return TRUE; } @@ -147,14 +167,25 @@ static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); - GtkWidget* widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); - const char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(widget)); + GtkWidget* filechooser = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); + const char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(filechooser)); if (filename && strlen(filename)) nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, filename); + GtkRadioButton* radio_typhoon = GTK_RADIO_BUTTON(gtk_builder_get_object(priv->builder, "radio_typhoon")); + GtkRadioButton* radio_port = GTK_RADIO_BUTTON(gtk_builder_get_object(priv->builder, "radio_port")); + + const char* protocol_value = "typhoon"; + if (radio_typhoon && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radio_typhoon))) + protocol_value = "typhoon"; + else if (radio_port && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radio_port))) + protocol_value = "port"; + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, protocol_value); + nm_connection_add_setting(connection, NM_SETTING(s_vpn)); return TRUE; } + static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError** error) { g_message("Constructing SeasideVPN editor interface..."); if (error) g_return_val_if_fail(*error == NULL, NULL); diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c new file mode 100644 index 00000000..58baf038 --- /dev/null +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -0,0 +1,239 @@ +#define _GNU_SOURCE +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include "plugin.h" +#include "../../../reef/shared_library/include/seaside.h" + +/* Shared library base names to try letting the loader find them */ +#define LIB_BASENAME "libseaside.so" + +typedef bool (*vpn_init_fn)(const char*, const char*, struct VPNConfig*, void**, char**); +typedef bool (*vpn_start_fn)(void*, const void*, char**); +typedef bool (*vpn_stop_fn)(void*, char**); + +/* Private plugin state */ +typedef struct { + void *lib_handle; + void *coordinator; + vpn_init_fn vpn_init; + vpn_start_fn vpn_start; + vpn_stop_fn vpn_stop; + gboolean running; +} NMSeasidePluginPrivate; + +G_DEFINE_TYPE_WITH_PRIVATE(NMSeasidePlugin, nm_seaside_plugin, NM_TYPE_VPN_SERVICE_PLUGIN) + +/* Try to dlopen letting the system search for the library; fall back to explicit paths. */ +static gboolean +seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) +{ + if (priv->lib_handle) + return TRUE; + + /* Let the loader search soname */ + priv->lib_handle = dlopen(LIB_BASENAME, RTLD_NOW | RTLD_LOCAL); + if (!priv->lib_handle) { + g_set_error (error, + NM_VPN_PLUGIN_ERROR, + NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, + "Failed to load libseaside: %s", dlerror()); + return FALSE; + } + + /* Resolve symbols */ + priv->vpn_init = (vpn_init_fn) dlsym(priv->lib_handle, "vpn_init"); + priv->vpn_start = (vpn_start_fn) dlsym(priv->lib_handle, "vpn_start"); + priv->vpn_stop = (vpn_stop_fn) dlsym(priv->lib_handle, "vpn_stop"); + + if (!priv->vpn_init || !priv->vpn_start || !priv->vpn_stop) { + g_set_error (error, + NM_VPN_PLUGIN_ERROR, + NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, + "libseaside missing required symbols"); + dlclose(priv->lib_handle); + priv->lib_handle = NULL; + return FALSE; + } + + return TRUE; +} + +/* Build and send NM IPv4 config from VPNConfig */ +static void +seaside_set_ip4_from_vpnconfig(NMVpnServicePlugin *plugin, const VPNConfig *cfg) +{ + GVariantBuilder b; + g_variant_builder_init(&b, G_VARIANT_TYPE_VARDICT); + + if (cfg->tunnel_name && cfg->tunnel_name[0]) { + GVariant *v = g_variant_new_string(cfg->tunnel_name); + g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_TUNDEV, v); + } + + if (cfg->tunnel_address) { + GVariant *v = g_variant_new_uint32(cfg->tunnel_address); + g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, v); + } + + if (cfg->tunnel_prefix) { + GVariant *v = g_variant_new_uint32(cfg->tunnel_prefix); + g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, v); + } + + if (cfg->tunnel_mtu) { + GVariant *v = g_variant_new_uint32(cfg->tunnel_mtu); + g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_MTU, v); + } + + if (cfg->dns_address) { + GVariantBuilder dns_builder; + g_variant_builder_init(&dns_builder, G_VARIANT_TYPE("au")); + g_variant_builder_add(&dns_builder, "u", cfg->dns_address); + GVariant *dns_variant = g_variant_builder_end(&dns_builder); + g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, dns_variant); + } + + GVariant *dict = g_variant_builder_end(&b); + nm_vpn_service_plugin_set_ip4_config(plugin, dict); +} + +/* real_connect: invoked by NM when starting a VPN session */ +static gboolean +real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **error) +{ + NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); + NMSettingVpn *s_vpn = nm_connection_get_setting_vpn(connection); + + if (!s_vpn) { + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_INVALID_CONNECTION, + "No VPN setting present"); + return FALSE; + } + + const char *certificate = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); + const char *protocol = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); + + if (!certificate) { + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, + "Missing 'certificate' parameter"); + return FALSE; + } + if (!protocol) { + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, + "Missing 'protocol' parameter"); + return FALSE; + } + + if (!seaside_load_library(priv, error)) + return FALSE; + + VPNConfig cfg; + memset(&cfg, 0, sizeof(cfg)); + + void *viridian; + char *err_string; + + /* Synchronous initialization: library fills VPNConfig */ + if (!priv->vpn_init(certificate, protocol, &cfg, &viridian, &err_string)) { + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "libseaside: vpn_init() failed: %s", err_string); + free(err_string); + return FALSE; + } + + /* Tell NetworkManager about the IP config we want applied */ + seaside_set_ip4_from_vpnconfig(plugin, &cfg); + + /* Start engine in background; pass plugin pointer so callbacks are instance-specific */ + if (!priv->vpn_start(viridian, &priv->coordinator, &err_string)) { + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "libseaside: vpn_start() failed: %s", err_string); + free(err_string); + return FALSE; + } + + priv->running = TRUE; + return TRUE; +} + +/* real_disconnect: invoked by NM when stopping the VPN session */ +static gboolean +real_disconnect(NMVpnServicePlugin *plugin, GError **error) +{ + NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); + + if (priv->coordinator && priv->running && priv->vpn_stop) { + char *err_string; + + if (!priv->vpn_stop(priv->coordinator, &err_string)) { + g_warning("libseaside: vpn_stop() returned false or failed: %s", err_string); + free(err_string); + } + + priv->coordinator = NULL; + priv->running = FALSE; + } + + nm_vpn_service_plugin_disconnect(plugin, NULL); + return TRUE; +} + +/* GObject init/class functions */ +static void +nm_seaside_plugin_init(NMSeasidePlugin *plugin) +{ + NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(plugin); + priv->lib_handle = NULL; + priv->coordinator = NULL; + priv->vpn_init = NULL; + priv->vpn_start = NULL; + priv->vpn_stop = NULL; + priv->running = FALSE; +} + +static void +nm_seaside_plugin_class_init(NMSeasidePluginClass *klass) +{ + NMVpnServicePluginClass *parent = NM_VPN_SERVICE_PLUGIN_CLASS(klass); + parent->connect = real_connect; + parent->disconnect = real_disconnect; +} + +/* Factory to create a plugin instance and register D-Bus service name */ +NMSeasidePlugin * +nm_seaside_plugin_new(void) +{ + GError *error = NULL; + NMSeasidePlugin *plugin = g_initable_new(NM_TYPE_SEASIDE_PLUGIN, NULL, &error, + NM_VPN_SERVICE_PLUGIN_DBUS_SERVICE_NAME, + NM_DBUS_SERVICE_SEASIDE, + NULL); + if (!plugin) { + g_warning("Failed to initialize plugin instance: %s", error ? error->message : "unknown"); + g_clear_error(&error); + } + return plugin; +} + +/* Minimal main: instantiate plugin and run main loop */ +int main(int argc, char *argv[]) +{ + NMSeasidePlugin *plugin = nm_seaside_plugin_new(); + if (!plugin) return EXIT_FAILURE; + + GMainLoop *loop = g_main_loop_new(NULL, FALSE); + g_signal_connect(plugin, "quit", G_CALLBACK(g_main_loop_quit), loop); + g_main_loop_run(loop); + g_main_loop_unref(loop); + + g_object_unref(plugin); + return EXIT_SUCCESS; +} diff --git a/viridian/barnacles/network-manager/plugin/plugin.h b/viridian/barnacles/network-manager/plugin/plugin.h new file mode 100644 index 00000000..23e9252f --- /dev/null +++ b/viridian/barnacles/network-manager/plugin/plugin.h @@ -0,0 +1,34 @@ +#ifndef NM_SEASIDE_PLUGIN_H +#define NM_SEASIDE_PLUGIN_H + +#include +#include +#include + +#define NM_DBUS_SERVICE_SEASIDE "org.freedesktop.NetworkManager.seaside" +#define NM_DBUS_INTERFACE_SEASIDE "org.freedesktop.NetworkManager.seaside" +#define NM_DBUS_PATH_SEASIDE "/org/freedesktop/NetworkManager/seaside" + +#define NM_SEASIDE_KEY_CERTIFICATE "certificate" +#define NM_SEASIDE_KEY_PROTOCOL "protocol" + +/* Type macros */ +#define NM_TYPE_SEASIDE_PLUGIN (nm_seaside_plugin_get_type ()) +#define NM_SEASIDE_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePlugin)) +#define NM_SEASIDE_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePluginClass)) +#define NM_IS_SEASIDE_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NM_TYPE_SEASIDE_PLUGIN)) +#define NM_IS_SEASIDE_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NM_TYPE_SEASIDE_PLUGIN)) +#define NM_SEASIDE_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePluginClass)) + +typedef struct { + NMVpnServicePlugin parent; +} NMSeasidePlugin; + +typedef struct { + NMVpnServicePluginClass parent; +} NMSeasidePluginClass; + +GType nm_seaside_plugin_get_type (void); +NMSeasidePlugin *nm_seaside_plugin_new (void); + +#endif /* NM_SEASIDE_PLUGIN_H */ diff --git a/viridian/reef/Cargo.toml b/viridian/reef/Cargo.toml index f9a3db83..c4267cf4 100644 --- a/viridian/reef/Cargo.toml +++ b/viridian/reef/Cargo.toml @@ -1,70 +1,11 @@ -[package] -name = "SeasideVPN-Reef" -version = "0.0.4" -edition = "2021" -description = "A production-ready SeasideVPN client for Linux and Windows" -authors = [ - "Alexander Sergeev " +[workspace] +resolver = "2" +members = [ + "cli_executable", + "rust_library", + "shared_library", + "test_library" ] - - -[dependencies] -base64 = "^0.22.1" -bincode = "^2.0.1" -blake2 = "^0.10.6" -byte-pool = "^0.2.4" -bytes = "^1.10.1" -cached = "^0.56.0" -chacha20poly1305 = "^0.10.1" -env_logger = "^0.11.5" -futures = "^0.3.31" -ipnet = "^2.10.1" -lazy_static = "^1.5.0" -log = "^0.4.22" -num_enum = "^0.7.3" -prost = "^0.14.1" -rand = "^0.8.5" -regex = "^1.11.1" -simple-error = "^0.3.1" -socket2 = "^0.6.0" -structopt = { version = "^0.3.26", optional = true } -tokio = { version = "^1.47.1", features = ["full"] } -url = "^2.5.7" -x25519-dalek = { version = "^2.0.1", features = ["static_secrets"] } - -[target.'cfg(target_os = "linux")'.dependencies] -nftables = "^0.6.3" -rtnetlink = "^0.18.0" -tun = { version = "^0.8.3", features = ["async"] } - -[target.'cfg(target_os = "windows")'.dependencies] -etherparse = "^0.19.0" -serde = "^1.0.219" -windivert = "^0.6.0" -windows = { version = "^0.61.3", features = ["Win32_Foundation", "Win32_NetworkManagement_IpHelper", "Win32_Networking_WinSock", "Win32_NetworkManagement_Ndis"] } -wmi = "^0.17.2" - -[build-dependencies] -prost-build = "^0.14.1" -protoc-bin-vendored = "^3.2.0" - -[target.'cfg(target_os = "windows")'.build-dependencies] -reqwest = { version = "^0.12.23", features = ["blocking", "json"] } -zip = "^4.5.0" - - - -[features] -cli-exec = ["structopt"] - - - -[lib] -name = "reeflib" -path = "src/lib/mod.rs" - -[[bin]] -name = "cli" -path = "src/cli.rs" -required-features = ["cli-exec"] +[profile.release] +strip = true diff --git a/viridian/reef/Dockerfile b/viridian/reef/Dockerfile index 88690824..c246f37b 100644 --- a/viridian/reef/Dockerfile +++ b/viridian/reef/Dockerfile @@ -10,23 +10,29 @@ RUN wget -qO- https://sh.rustup.rs | sh -s -- --default-toolchain 1.86.0 -y ENV PATH="/root/.cargo/bin:${PATH}" COPY vessels vessels -COPY viridian/reef/Cargo.toml viridian/reef/Cargo.toml -RUN cargo build --manifest-path viridian/reef/Cargo.toml --all-features --bin cli || true +COPY viridian/reef/Cargo.toml viridian/reef/ +COPY viridian/reef/cli_executable/Cargo.toml viridian/reef/cli_executable/ +COPY viridian/reef/rust_library/Cargo.toml viridian/reef/rust_library/ +COPY viridian/reef/shared_library/Cargo.toml viridian/reef/shared_library/ +COPY viridian/reef/test_library/Cargo.toml viridian/reef/test_library/ +RUN cargo build --manifest-path viridian/reef/Cargo.toml --bin cli --lib || true -COPY viridian/reef/src viridian/reef/src +COPY viridian/reef/cli_executable/ viridian/reef/cli_executable/ +COPY viridian/reef/rust_library/ viridian/reef/rust_library/ +COPY viridian/reef/shared_library/ viridian/reef/shared_library/ +COPY viridian/reef/test_library/ viridian/reef/test_library/ FROM downloader AS builder -RUN cargo build --features cli-exec --bin cli --manifest-path viridian/reef/Cargo.toml +RUN cargo build --manifest-path viridian/reef/Cargo.toml --bin cli --lib FROM downloader AS tester -ENV RUST_BACKTRACE=1 +ENV RUST_BACKTRACE=full RUN apt-get update && apt-get install -y --no-install-recommends net-tools uml-utilities iptables iproute2 && rm -rf /var/lib/apt/lists/* -COPY viridian/reef/tests viridian/reef/tests WORKDIR /seaside/viridian/reef @@ -37,7 +43,7 @@ WORKDIR /seaside/viridian ARG NETWORK_GATEWAY ENV ARG_NETWORK_GATEWAY="$NETWORK_GATEWAY" -ENV RUST_BACKTRACE=1 +ENV RUST_BACKTRACE=full ENV PYTHONUNBUFFERED=1 ENV PYTHONDONTWRITEBYTECODE=1 ENV DEBIAN_FRONTEND=noninteractive diff --git a/viridian/reef/Makefile b/viridian/reef/Makefile index b3407d46..bceec035 100644 --- a/viridian/reef/Makefile +++ b/viridian/reef/Makefile @@ -2,55 +2,48 @@ .EXPORT_ALL_VARIABLES: .DEFAULT_GOAL := help -SHELL=/bin/bash -.SHELLFLAGS=-c -e +SHELL := /bin/bash +.SHELLFLAGS := -c -e -BOLD=\033[1m -BLUE=\033[34m -GREEN=\033[32m -YELLOW=\033[33m -RESET=\033[0m +BUILD_TYPE := debug +BINARY_PATH := target/$(BUILD_TYPE) -BUILD_TYPE=debug -WINDIVERT_VERSION=2.2.2 -WINDIVERT_PATH=windivert-bin -BINARY_PATH=target/$(BUILD_TYPE)/ -WINDIVERT_TEMP=windivert-source -WINDIVERT_SOURCE=WinDivert-$(WINDIVERT_VERSION)-A -WINDIVERT_URL=https://github.com/basil00/WinDivert/releases/download/v$(WINDIVERT_VERSION)/$(WINDIVERT_SOURCE).zip +help: + @ # Print available make target information + echo -e "help" +.PHONY: help + + + +# Building and dependency management: + +WINDIVERT_VERSION := 2.2.2 +WINDIVERT_PATH := windivert-bin + +WINDIVERT_TEMP := windivert-source +WINDIVERT_SOURCE := WinDivert-$(WINDIVERT_VERSION)-A +WINDIVERT_URL := https://github.com/basil00/WinDivert/releases/download/v$(WINDIVERT_VERSION)/$(WINDIVERT_SOURCE).zip UNAME_M := $(shell uname -m) ifeq ($(UNAME_M),x86_64) WINDIVERT_ARCH := x64 - WINTUN_ARCH := amd64 else ifeq ($(UNAME_M),i686) WINDIVERT_ARCH := x32 - WINTUN_ARCH := x86 else ifeq ($(UNAME_M),aarch64) WINDIVERT_ARCH := x64 - WINTUN_ARCH := arm64 else ifeq ($(UNAME_M),armv7l) WINDIVERT_ARCH := x32 - WINTUN_ARCH := arm else $(error Unsupported uname architecture: $(UNAME_M)) endif - -help: - @ # Print available make target information - echo -e "help" -.PHONY: help - - - dependencies: - @ # Download and unpack dependencies + @ # Download and unpack standalone dependencies ifeq ($(OS),Windows_NT) echo "Downloading WinDivert library version $(WINDIVERT_VERSION)..." curl -sSL -o $(WINDIVERT_SOURCE).zip $(WINDIVERT_URL) @@ -59,40 +52,53 @@ ifeq ($(OS),Windows_NT) mkdir -p $(WINDIVERT_PATH) mv $(WINDIVERT_TEMP)/$(WINDIVERT_SOURCE)/$(WINDIVERT_ARCH)/* $(WINDIVERT_PATH)/ rm -rf $(WINDIVERT_TEMP) - echo "All dependencies ready!" + echo "All standalone dependencies ready!" endif .PHONY: dependencies runtime: - @ # Move dependencies next to the executable + @ # Move standalone dependencies next to the executable ifeq ($(OS),Windows_NT) echo "Copying dependencies next to the executable..." mkdir -p $(BINARY_PATH) cp $(WINDIVERT_PATH)/*.dll $(WINDIVERT_PATH)/*.sys $(BINARY_PATH) - echo "All dependencies in place!" + echo "All standalone dependencies in place!" endif .PHONY: runtime build: dependencies - @ # Build reef locally TODO: add feature strict, checking warnings, docs, removing debug info + @ # Build standalone reef locally TODO: add feature strict, checking warnings, docs, removing debug info ifeq ($(BUILD_TYPE),release) - cargo build --all-features --release + cargo build --release --bin cli else - cargo build --all-features + cargo build --bin cli endif .PHONY: build run: build runtime - @ # Run reef locally - cargo run --features cli-exec --bin cli + @ # Run standalone reef locally + cargo run --bin cli .PHONY: run +build-lib: + @ # Build standalone reef locally TODO: add feature strict, checking warnings, docs, removing debug info +ifeq ($(BUILD_TYPE),release) + cargo build --release --lib +else + cargo build --lib +endif +.PHONY: build-lib + + + +# Testing and code quality: + test: @ # Run tests inside of the testing docker container docker build -f Dockerfile --target tester -t seaside-reef-test ../.. - docker run --privileged --rm --name seaside-reef-test --sysctl net.ipv6.conf.all.disable_ipv6=1 --entrypoint cargo seaside-reef-test test --package SeasideVPN-Reef --lib -- --nocapture --show-output + docker run --privileged --rm --name seaside-reef-test --sysctl net.ipv6.conf.all.disable_ipv6=1 --entrypoint cargo seaside-reef-test test --workspace -- --nocapture --show-output .PHONY: test lint: build @@ -102,9 +108,12 @@ lint: build +# Artifact cleaning: + clean: - @ # Clean all reef build artifacts - rm -rf target certificates + @ # Clean all the artifacts for any targets + cargo clean rm -f Cargo.lock + rm -rf shared_library/include docker rmi -f seaside-reef-test .PHONY: clean diff --git a/viridian/reef/cli_executable/Cargo.toml b/viridian/reef/cli_executable/Cargo.toml new file mode 100644 index 00000000..88639e73 --- /dev/null +++ b/viridian/reef/cli_executable/Cargo.toml @@ -0,0 +1,37 @@ +[package] +name = "cli" +version = "0.0.4" +edition = "2021" +description = "A production-ready SeasideVPN client for Linux and Windows" +authors = [ + "Alexander Sergeev " +] + + + +[dependencies] +reeflib = { path = "../rust_library" } +env_logger = "^0.11.5" +futures = "^0.3.31" +ipnet = "^2.10.1" +log = "^0.4.22" +prost = "^0.14.1" +regex = "^1.11.1" +simple-error = "^0.3.1" +structopt = "^0.3.26" +tokio = { version = "^1.47.1", features = ["full"] } + +[target.'cfg(target_os = "linux")'.dependencies] +nftables = "^0.6.3" +rtnetlink = "^0.18.0" +tun = { version = "^0.8.3", features = ["async"] } + +[dev-dependencies] +reeflib = { path = "../rust_library", features = ["test"] } +reeftest = { path = "../test_library" } + + + +[[bin]] +name = "cli" +path = "src/mod.rs" diff --git a/viridian/reef/src/cli.rs b/viridian/reef/cli_executable/src/mod.rs similarity index 86% rename from viridian/reef/src/cli.rs rename to viridian/reef/cli_executable/src/mod.rs index e781e46c..0ef95d75 100644 --- a/viridian/reef/src/cli.rs +++ b/viridian/reef/cli_executable/src/mod.rs @@ -1,21 +1,25 @@ -use std::env::{set_var, var}; use std::fs::read; use std::net::Ipv4Addr; use std::path::PathBuf; use std::str::FromStr; -use env_logger::init; +use env_logger::{Env, init_from_env}; +use structopt::StructOpt; + use log::{debug, info}; use prost::Message; -use reeflib::generated::SeasideWhirlpoolClientCertificate; -use reeflib::protocol::ProtocolType; use simple_error::bail; -use structopt::StructOpt; +use reeflib::generated::SeasideWhirlpoolClientCertificate; +use reeflib::protocol::ProtocolType; use reeflib::utils::parse_address; -use reeflib::viridian::Viridian; use reeflib::DynResult; +use crate::viridian::Viridian; + +mod tunnel; +mod viridian; + const DEFAULT_LOG_LEVEL: &str = "INFO"; fn parse_path(string: &str) -> DynResult { @@ -67,23 +71,9 @@ struct Opt { command: Option, } -fn init_logging() { - set_var( - "RUST_LOG", - match var("SEASIDE_LOG_LEVEL") { - Ok(level) => level, - _ => match var("RUST_LOG") { - Ok(level) => level, - _ => DEFAULT_LOG_LEVEL.to_string(), - }, - }, - ); - init(); -} - #[tokio::main] async fn main() -> DynResult<()> { - init_logging(); + init_from_env(Env::new().filter_or("SEASIDE_LOG_LEVEL", DEFAULT_LOG_LEVEL)); let opt = Opt::from_args(); let protocol = ProtocolType::from_str(&opt.protocol)?; diff --git a/viridian/reef/src/lib/tunnel/linux.rs b/viridian/reef/cli_executable/src/tunnel/linux.rs similarity index 73% rename from viridian/reef/src/lib/tunnel/linux.rs rename to viridian/reef/cli_executable/src/tunnel/linux.rs index 9f3529c6..24e4ee48 100644 --- a/viridian/reef/src/lib/tunnel/linux.rs +++ b/viridian/reef/cli_executable/src/tunnel/linux.rs @@ -1,17 +1,15 @@ #[cfg(test)] -#[path = "../../../tests/tunnel/linux.rs"] +#[path = "../../tests/tunnel/linux.rs"] mod linux_test; use std::borrow::Cow; use std::collections::HashSet; use std::error::Error; -use std::fs::{read_to_string, write, File}; -use std::io::Write; -use std::net::{IpAddr, Ipv4Addr}; +use std::fs::{read_to_string, write}; +use std::net::Ipv4Addr; use futures::TryStreamExt; use ipnet::Ipv4Net; -use lazy_static::lazy_static; use log::{debug, error, info}; use nftables::batch::Batch; use nftables::expr::{Expression, Meta, MetaKey, NamedExpression, Payload, PayloadField, Range}; @@ -19,18 +17,18 @@ use nftables::helper::apply_ruleset; use nftables::schema::{Chain, NfListObject, Rule, Table}; use nftables::stmt::{Mangle, Match, Operator, Statement}; use nftables::types::{NfChainType, NfFamily, NfHook}; -use rtnetlink::packet_route::address::AddressAttribute; -use rtnetlink::packet_route::link::LinkAttribute; -use rtnetlink::packet_route::route::{RouteAddress, RouteAttribute, RouteMessage}; +use reeflib::utils::parse_env; +use rtnetlink::packet_route::route::RouteMessage; use rtnetlink::packet_route::rule::{RuleAction, RuleMessage}; use rtnetlink::packet_route::AddressFamily; -use rtnetlink::{new_connection, Handle, RouteMessageBuilder}; -use simple_error::{bail, require_with}; -use tun::{create_as_async, AsyncDevice, Configuration}; +use rtnetlink::RouteMessageBuilder; +use simple_error::bail; +use tun::AsyncDevice; + +use reeflib::tunnel::{create_tunnel, get_address_device, get_default_interface_by_local_address, get_default_interface_by_remote_address, get_device_address_and_cidr, get_handle}; +use reeflib::{run_coroutine_sync, DynResult}; use crate::tunnel::Tunnelling; -use crate::utils::parse_env; -use crate::{run_coroutine_async, run_coroutine_sync, DynResult}; const NFTABLE_NAME: &str = "seaside"; const NFTABLES_OUTPUT_NAME: &str = "output"; @@ -47,142 +45,6 @@ const NFTABLES_PROTOCOL_UDP: &str = "udp"; const DEFAULT_RESOLV_CONF_PATH: &str = "/etc/resolv.conf"; -lazy_static! { - static ref NETLINK_HANDLE: Handle = { - let (connection, handle, _) = new_connection().expect("Failed to open RTNETLINK socket!"); - run_coroutine_async!(connection); - handle - }; -} - -#[inline] -#[cfg(not(test))] -fn get_handle() -> Handle { - NETLINK_HANDLE.clone() -} - -#[inline] -#[cfg(test)] -fn get_handle() -> Handle { - let (connection, handle, _) = new_connection().expect("Failed to open RTNETLINK socket!"); - run_coroutine_async!(connection); - handle -} - -async fn get_default_address_and_device(target: Ipv4Addr) -> DynResult<(Ipv4Addr, u32)> { - let handle = get_handle(); - let mut stream = handle.route().get(RouteMessageBuilder::::new().build()).execute(); - while let Some(res) = stream.try_next().await? { - let dest = res.attributes.iter().find_map(|a| match a { - RouteAttribute::Destination(RouteAddress::Inet(addr)) => Some(addr), - _ => None, - }); - let ip = res.attributes.iter().find_map(|a| match a { - RouteAttribute::PrefSource(RouteAddress::Inet(address)) => Some(address), - _ => None, - }); - if dest.is_some() && ip.is_some() { - let network = Ipv4Net::new(dest.unwrap().clone(), res.header.destination_prefix_length)?; - if network.contains(ip.unwrap()) { - let dev = res.attributes.iter().find_map(|a| match a { - RouteAttribute::Oif(iface) => Some(iface), - _ => None, - }); - return Ok((*require_with!(ip, "Default IP address was not found!"), *require_with!(dev, "Default network interface was not found!"))); - } - } - } - bail!("Couldn't find any route to {target}!") -} - -async fn get_device_by_local_address(target: Ipv4Addr) -> DynResult { - let handle = get_handle(); - let mut stream = handle.address().get().set_address_filter(IpAddr::V4(target)).execute(); - while let Some(res) = stream.try_next().await? { - return Ok(res.header.index); - } - bail!("Couldn't find any devices for address {target}!") -} - -async fn get_device_name_and_cidr(device: u32) -> DynResult<(String, u8)> { - let handle = get_handle(); - let mut stream = handle.address().get().set_link_index_filter(device).execute(); - while let Some(res) = stream.try_next().await? { - let label = res.attributes.iter().find_map(|a| match a { - AddressAttribute::Label(label) => Some(label), - _ => None, - }); - return Ok((require_with!(label, "Device name was not found!").clone(), res.header.prefix_len)); - } - bail!("Couldn't find any devices for index {device}!") -} - -async fn get_device_address_and_cidr(label: &str) -> DynResult<(Ipv4Addr, u8)> { - let handle = get_handle(); - let mut stream = handle.address().get().execute(); - while let Some(res) = stream.try_next().await? { - let name = res.attributes.iter().find_map(|a| match a { - AddressAttribute::Label(label) => Some(label), - _ => None, - }); - if name.is_some_and(|n| n == label) { - let addr = res.attributes.iter().find_map(|a| match a { - AddressAttribute::Address(IpAddr::V4(addr)) => Some(addr), - _ => None, - }); - return Ok((*require_with!(addr, "Network interface IP address was not resolved!"), res.header.prefix_len)); - } - } - bail!("Couldn't find any devices for name {label}!") -} - -async fn get_device_mtu(device: u32) -> DynResult { - let handle = get_handle(); - let mut stream = handle.link().get().match_index(device).execute(); - while let Some(res) = stream.try_next().await? { - let mtu = res.attributes.iter().find_map(|a| match a { - LinkAttribute::Mtu(mtu) => Some(mtu), - _ => None, - }); - return Ok(*require_with!(mtu, "Default network interface MTU was not resolved!")); - } - bail!("Couldn't find any links for device {device}!") -} - -async fn get_address_device(network: Ipv4Net) -> DynResult { - let handle = get_handle(); - let broadcast = network.broadcast(); - let mut stream = handle.route().get(RouteMessageBuilder::::new().build()).execute(); - while let Some(res) = stream.try_next().await? { - let dest = res.attributes.iter().find_map(|a| match a { - RouteAttribute::Destination(RouteAddress::Inet(addr)) => Some(addr), - _ => None, - }); - if dest.is_some_and(|n| n.clone() == broadcast) { - let dev = res.attributes.iter().find_map(|a| match a { - RouteAttribute::Oif(iface) => Some(iface), - _ => None, - }); - return Ok(*require_with!(dev, "Tunnel device number was not resolved!")); - } - } - bail!("Couldn't find any route to {network}!") -} - -async fn get_default_interface_by_local_address(local_address: Ipv4Addr) -> DynResult<(u8, String, u32)> { - let default_dev = get_device_by_local_address(local_address).await?; - let (default_name, default_cidr) = get_device_name_and_cidr(default_dev).await?; - let default_mtu = get_device_mtu(default_dev).await?; - Ok((default_cidr, default_name, default_mtu)) -} - -async fn get_default_interface_by_remote_address(seaside_address: Ipv4Addr) -> DynResult<(Ipv4Addr, u8, String, u32)> { - let (default_ip, default_dev) = get_default_address_and_device(seaside_address).await?; - let (default_name, default_cidr) = get_device_name_and_cidr(default_dev).await?; - let default_mtu = get_device_mtu(default_dev).await?; - Ok((default_ip, default_cidr, default_name, default_mtu)) -} - async fn save_svr_table(svr_idx: u8) -> DynResult> { let handle = get_handle(); let mut table_data = Vec::new(); @@ -228,20 +90,6 @@ async fn disable_routing(route_message: &RouteMessage, rule_message: &RuleMessag Ok(()) } -fn create_tunnel(name: &str, address: Ipv4Addr, netmask: Ipv4Addr, mtu: u16) -> DynResult { - let mut config = Configuration::default(); - config.address(address).netmask(netmask).tun_name(name).mtu(mtu).up(); - config.platform_config(|conf| { - conf.ensure_root_privileges(true); - }); - let tunnel = match create_as_async(&config) { - Ok(device) => Ok(device), - Err(err) => bail!("Error creating tunnel: {err}"), - }; - File::create(format!("/proc/sys/net/ipv6/conf/{name}/disable_ipv6"))?.write(&[0x31])?; - tunnel -} - fn set_dns_server(resolv_path: &str, dns_server: Option) -> DynResult<(String, Option)> { let resolv_conf_data = read_to_string(resolv_path)?; let resolv_conf_lines: Vec<&str> = resolv_conf_data.lines().collect(); diff --git a/viridian/reef/src/lib/tunnel/mod.rs b/viridian/reef/cli_executable/src/tunnel/mod.rs similarity index 95% rename from viridian/reef/src/lib/tunnel/mod.rs rename to viridian/reef/cli_executable/src/tunnel/mod.rs index e1cc60ab..55865dd7 100644 --- a/viridian/reef/src/lib/tunnel/mod.rs +++ b/viridian/reef/cli_executable/src/tunnel/mod.rs @@ -4,8 +4,8 @@ use std::{net::Ipv4Addr, sync::Arc}; use ipnet::Ipv4Net; use simple_error::bail; -use crate::bytes::{get_buffer, ByteBuffer}; -use crate::{DynResult, Reader, Writer}; +use reeflib::bytes::{get_buffer, ByteBuffer}; +use reeflib::{DynResult, Reader, Writer}; #[cfg(target_os = "linux")] mod linux; diff --git a/viridian/reef/src/lib/tunnel/windows.rs b/viridian/reef/cli_executable/src/tunnel/windows.rs similarity index 100% rename from viridian/reef/src/lib/tunnel/windows.rs rename to viridian/reef/cli_executable/src/tunnel/windows.rs diff --git a/viridian/reef/src/lib/viridian/mod.rs b/viridian/reef/cli_executable/src/viridian.rs similarity index 90% rename from viridian/reef/src/lib/viridian/mod.rs rename to viridian/reef/cli_executable/src/viridian.rs index 7db9c71e..20585041 100644 --- a/viridian/reef/src/lib/viridian/mod.rs +++ b/viridian/reef/cli_executable/src/viridian.rs @@ -3,36 +3,25 @@ use std::net::{AddrParseError, Ipv4Addr}; use std::process::ExitStatus; use futures::stream::{FuturesUnordered, StreamExt}; -use ipnet::{Ipv4Net, PrefixLenError}; +use ipnet::{self, Ipv4Net, PrefixLenError}; use log::{debug, info}; use regex::Regex; use simple_error::{bail, require_with, SimpleError}; use tokio::process::Command; use tokio::{select, try_join}; -use crate::bytes::ByteBuffer; -use crate::general::create_handle; -use crate::generated::SeasideWhirlpoolClientCertificate; -use crate::protocol::ProtocolType; -use crate::tunnel::Tunnel; -use crate::utils::{parse_address, parse_env, parse_str_env}; -use crate::DynResult; - -#[cfg(target_os = "linux")] -mod linux; -#[cfg(target_os = "linux")] -use linux::*; +use reeflib::bytes::ByteBuffer; +use reeflib::general::create_handle; +use reeflib::generated::SeasideWhirlpoolClientCertificate; +use reeflib::protocol::ProtocolType; +use reeflib::utils::{parse_address, parse_env, parse_str_env}; +use reeflib::viridian::{create_signal_handlers, DEFAULT_DNS_ADDRESS, DEFAULT_SVR_INDEX, DEFAULT_TUNNEL_ADDRESS, DEFAULT_TUNNEL_NAME, DEFAULT_TUNNEL_NETMASK}; +use reeflib::DynResult; -#[cfg(target_os = "windows")] -mod windows; -#[cfg(target_os = "windows")] -use windows::*; +use crate::tunnel::Tunnel; -const DEFAULT_TUNNEL_NAME: &str = "seatun"; -const DEFAULT_DNS_ADDRESS: Ipv4Addr = Ipv4Addr::new(0, 0, 0, 0); -const DEFAULT_TUNNEL_ADDRESS: Ipv4Addr = Ipv4Addr::new(192, 168, 0, 82); -const DEFAULT_TUNNEL_NETMASK: Ipv4Addr = Ipv4Addr::new(255, 255, 255, 0); -const DEFAULT_SVR_INDEX: u8 = 82; +pub const DEFAULT_SHELL: &str = "sh"; +pub const DEFAULT_ARG: &str = "-c"; pub struct Viridian<'a> { key: ByteBuffer<'a>, @@ -152,7 +141,7 @@ impl<'a> Viridian<'a> { println!("The command exited successfully!"); Ok(()) } else { - Err(SimpleError::new("The command exited with error code: {status}")) + Err(SimpleError::new(format!("The command exited with error code: {status}"))) } }, Err(err) => Err(SimpleError::new(format!("VPN command execution error: {err}"))) diff --git a/viridian/reef/tests/tunnel/linux.rs b/viridian/reef/cli_executable/tests/tunnel/linux.rs similarity index 66% rename from viridian/reef/tests/tunnel/linux.rs rename to viridian/reef/cli_executable/tests/tunnel/linux.rs index ba6a7e7e..3bb401f4 100644 --- a/viridian/reef/tests/tunnel/linux.rs +++ b/viridian/reef/cli_executable/tests/tunnel/linux.rs @@ -1,57 +1,15 @@ use core::str; -use std::ffi::OsStr; use std::net::Ipv4Addr; -use std::process::{Command, Stdio}; use std::str::FromStr; use ipnet::Ipv4Net; use regex::Regex; -use simple_error::bail; use tokio::test; -use crate::tunnel::linux::{create_tunnel, disable_routing, enable_routing, get_address_device, get_default_interface_by_remote_address, restore_svr_table, save_svr_table}; -use crate::DynResult; - -fn run_command, S: AsRef>(cmd: &str, args: I) -> DynResult<(String, String)> { - let cmd = match Command::new(cmd).args(args).stdout(Stdio::piped()).stderr(Stdio::piped()).spawn() { - Ok(res) => res, - Err(res) => bail!(res), - }; - let res = match cmd.wait_with_output() { - Ok(res) => res, - Err(res) => bail!(res), - }; - if res.status.success() { - Ok((String::from_utf8_lossy(&res.stdout).to_string(), String::from_utf8_lossy(&res.stderr).to_string())) - } else { - bail!(String::from_utf8_lossy(&res.stderr).to_string()) - } -} - -fn parse_route_info_from_output(route_output: &str) -> DynResult<(Option, Option, Option)> { - let destination_regex = Regex::new(r"^(?\S+)")?; - let destination_match = destination_regex.captures(route_output); - let destination_res = destination_match.and_then(|m| Some((&m["destination"]).to_string())); - - let device_regex = Regex::new(r"dev (?\S+)")?; - let device_match = device_regex.captures(route_output); - let device_res = device_match.and_then(|m| Some((&m["device"]).to_string())); - - let gateway_regex = Regex::new(r"via (?\d+\.\d+\.\d+\.\d+)")?; - let gateway_match = gateway_regex.captures(route_output); - let gateway_res = gateway_match.and_then(|m| Ipv4Addr::from_str(&m["gateway"]).ok()); +use reeftest::{parse_route_info_from_output, run_command}; - Ok((destination_res, device_res, gateway_res)) -} - -fn get_route_device_info(destination: Ipv4Addr) -> DynResult { - let command = vec!["route".to_string(), "get".to_string(), destination.to_string()]; - let (route_out, _) = run_command("ip", command)?; - match parse_route_info_from_output(&route_out) { - Ok((_, Some(dev), _)) => Ok(dev), - Ok((_, None, _)) | Err(_) => bail!("Error reading route device info!"), - } -} +use crate::tunnel::linux::{disable_routing, enable_routing, restore_svr_table, save_svr_table}; +use crate::DynResult; fn show_route_info(prefix: Option, table: Option) -> DynResult<(Option, Option, Option)> { let mut command = vec!["route".to_string(), "list".to_string()]; @@ -102,35 +60,6 @@ fn show_rule_info(table: u8) -> DynResult<(Option, Option)> { Ok((fwmark_res, lookup_res)) } -#[test] -async fn test_get_default_interface() { - let external_address = Ipv4Addr::new(8, 8, 8, 8); - let expected_device = get_route_device_info(external_address).expect("Error reading default interface device name!"); - let (_, expected_mtu, expected_address, expected_cidr) = show_address_info(&expected_device).expect("Error reading default route IP!"); - - let (default_address, default_cidr, default_name, default_mtu) = get_default_interface_by_remote_address(external_address).await.expect("Error getting default address!"); - - assert_eq!(default_name, expected_device, "Default device name doesn't match!"); - assert!(expected_mtu.is_some_and(|v| v == default_mtu), "Default MTU doesn't match!"); - assert!(expected_address.is_some_and(|v| v == default_address), "Default IP address doesn't match!"); - assert!(expected_cidr.is_some_and(|v| v == u32::from(default_cidr)), "Default CIDR doesn't match!"); -} - -#[test] -async fn test_create_tunnel() { - let tun_mtu = 1500; - let tun_name = "tun_tct"; - let tun_address = Ipv4Addr::new(192, 168, 2, 2); - let tun_netmask = Ipv4Addr::new(255, 255, 255, 0); - - let _device = create_tunnel(tun_name, tun_address, tun_netmask, tun_mtu).expect("Error creating tunnel!"); - - let (_, expected_mtu, expected_address, expected_cidr) = show_address_info(tun_name).expect("Error reading default route IP!"); - assert!(expected_mtu.is_some_and(|v| v == u32::from(tun_mtu)), "Default MTU doesn't match!"); - assert!(expected_address.is_some_and(|v| v == tun_address), "Default IP address doesn't match!"); - assert!(expected_cidr.is_some_and(|v| v == tun_netmask.to_bits().count_ones()), "Default CIDR doesn't match!"); -} - #[test] async fn test_save_restore_table() { let table_idx = 3; @@ -166,23 +95,6 @@ async fn test_save_restore_table() { } } -#[test] -async fn test_get_address_device() { - let tun_mtu = 4000; - let tun_name = "tun_tgad"; - let tun_network = Ipv4Net::from_str("192.168.4.4/24").expect("Error parsing tunnel network!"); - - run_command("ip", ["tuntap", "add", "dev", tun_name, "mode", "tun"]).expect("Error creating tunnel interface!"); - run_command("ip", ["addr", "replace", &tun_network.to_string(), "dev", tun_name]).expect("Error setting IP address for tunnel!"); - run_command("ip", ["link", "set", "dev", tun_name, "mtu", &tun_mtu.to_string()]).expect("Error setting MTU for tunnel"); - run_command("ip", ["link", "set", tun_name, "up"]).expect("Error enabling tunnel!"); - - let tunnel_device = get_address_device(tun_network).await.expect("Getting tunnel device failed!"); - - let (tunnel_index, _, _, _) = show_address_info(tun_name).expect("Reading tunnel address failed!"); - assert!(tunnel_index.is_some_and(|v| v == tunnel_device), "Tunnel index doesn't match!") -} - #[test] async fn test_enable_disable_routing() { let table_idx = 5; diff --git a/viridian/reef/example.conf.env b/viridian/reef/example.conf.env index f707d1a7..18ed395a 100644 --- a/viridian/reef/example.conf.env +++ b/viridian/reef/example.conf.env @@ -12,4 +12,4 @@ SEASIDE_SVR_INDEX=82 SEASIDE_RESOLV_CONF_PATH=/etc/resolv.conf # Client logging level -SEASIDE_LOG_LEVEL=INFO # Same effect as 'RUST_LOG' +SEASIDE_LOG_LEVEL=INFO diff --git a/viridian/reef/rust_library/Cargo.toml b/viridian/reef/rust_library/Cargo.toml new file mode 100644 index 00000000..aa355435 --- /dev/null +++ b/viridian/reef/rust_library/Cargo.toml @@ -0,0 +1,64 @@ +[package] +name = "reeflib" +version = "0.0.4" +edition = "2021" +description = "A production-ready SeasideVPN client for Linux and Windows" +authors = [ + "Alexander Sergeev " +] + + + +[dependencies] +bincode = "^2.0.1" +blake2 = "^0.10.6" +bytes = "^1.10.1" +cached = "^0.56.0" +chacha20poly1305 = "^0.10.1" +futures = "^0.3.31" +ipnet = "^2.10.1" +lazy_static = "^1.5.0" +log = "^0.4.22" +num_enum = "^0.7.3" +prost = "^0.14.1" +rand = "^0.8.5" +simple-error = "^0.3.1" +socket2 = "^0.6.0" +tokio = { version = "^1.47.1", features = ["full"] } +x25519-dalek = { version = "^2.0.1", features = ["static_secrets"] } + +[target.'cfg(target_os = "linux")'.dependencies] +nftables = "^0.6.3" +rtnetlink = "^0.18.0" +tun = { version = "^0.8.3", features = ["async"] } + +[target.'cfg(target_os = "windows")'.dependencies] +etherparse = "^0.19.0" +serde = "^1.0.219" +windivert = "^0.6.0" +windows = { version = "^0.61.3", features = ["Win32_Foundation", "Win32_NetworkManagement_IpHelper", "Win32_Networking_WinSock", "Win32_NetworkManagement_Ndis"] } +wmi = "^0.17.2" + +[build-dependencies] +prost-build = "^0.14.1" +protoc-bin-vendored = "^3.2.0" + +[target.'cfg(target_os = "windows")'.build-dependencies] +reqwest = { version = "^0.12.23", features = ["blocking", "json"] } +zip = "^4.5.0" + +[dev-dependencies] +reeftest = { path = "../test_library" } +regex = "^1.11.1" + + + +[features] +test = [] + + + +[lib] +name = "reeflib" +path = "lib/mod.rs" +crate-type = ["rlib"] diff --git a/viridian/reef/build.rs b/viridian/reef/rust_library/build.rs similarity index 89% rename from viridian/reef/build.rs rename to viridian/reef/rust_library/build.rs index 7be3d589..73a165b9 100644 --- a/viridian/reef/build.rs +++ b/viridian/reef/rust_library/build.rs @@ -7,7 +7,7 @@ use protoc_bin_vendored::{include_path, protoc_bin_path}; const CERTIFICATES_PROTO: &str = "certificates.proto"; fn main() { - let proto_dir = PathBuf::from(var("CARGO_MANIFEST_DIR").unwrap()).parent().unwrap().parent().unwrap().join("vessels"); + let proto_dir = PathBuf::from(var("CARGO_MANIFEST_DIR").unwrap()).parent().unwrap().parent().unwrap().parent().unwrap().join("vessels"); let proto_certificates_file = proto_dir.join(CERTIFICATES_PROTO); assert!(proto_certificates_file.exists(), "Certificates protobuf definition doesn't exist!"); diff --git a/viridian/reef/src/lib/bytes/buffer.rs b/viridian/reef/rust_library/lib/bytes/buffer.rs similarity index 100% rename from viridian/reef/src/lib/bytes/buffer.rs rename to viridian/reef/rust_library/lib/bytes/buffer.rs diff --git a/viridian/reef/src/lib/bytes/mod.rs b/viridian/reef/rust_library/lib/bytes/mod.rs similarity index 100% rename from viridian/reef/src/lib/bytes/mod.rs rename to viridian/reef/rust_library/lib/bytes/mod.rs diff --git a/viridian/reef/src/lib/bytes/pool.rs b/viridian/reef/rust_library/lib/bytes/pool.rs similarity index 100% rename from viridian/reef/src/lib/bytes/pool.rs rename to viridian/reef/rust_library/lib/bytes/pool.rs diff --git a/viridian/reef/src/lib/bytes/utils.rs b/viridian/reef/rust_library/lib/bytes/utils.rs similarity index 100% rename from viridian/reef/src/lib/bytes/utils.rs rename to viridian/reef/rust_library/lib/bytes/utils.rs diff --git a/viridian/reef/src/lib/crypto/asymmetric.rs b/viridian/reef/rust_library/lib/crypto/asymmetric.rs similarity index 100% rename from viridian/reef/src/lib/crypto/asymmetric.rs rename to viridian/reef/rust_library/lib/crypto/asymmetric.rs diff --git a/viridian/reef/src/lib/crypto/mod.rs b/viridian/reef/rust_library/lib/crypto/mod.rs similarity index 100% rename from viridian/reef/src/lib/crypto/mod.rs rename to viridian/reef/rust_library/lib/crypto/mod.rs diff --git a/viridian/reef/src/lib/crypto/symmetric.rs b/viridian/reef/rust_library/lib/crypto/symmetric.rs similarity index 97% rename from viridian/reef/src/lib/crypto/symmetric.rs rename to viridian/reef/rust_library/lib/crypto/symmetric.rs index 377e4810..b1d8f3d9 100644 --- a/viridian/reef/src/lib/crypto/symmetric.rs +++ b/viridian/reef/rust_library/lib/crypto/symmetric.rs @@ -1,5 +1,5 @@ #[cfg(test)] -#[path = "../../../tests/crypto/symmetric.rs"] +#[path = "../../tests/crypto/symmetric.rs"] mod test_symmetric; use chacha20poly1305::aead::AeadMutInPlace; diff --git a/viridian/reef/src/lib/general.rs b/viridian/reef/rust_library/lib/general.rs similarity index 100% rename from viridian/reef/src/lib/general.rs rename to viridian/reef/rust_library/lib/general.rs diff --git a/viridian/reef/src/lib/mod.rs b/viridian/reef/rust_library/lib/mod.rs similarity index 100% rename from viridian/reef/src/lib/mod.rs rename to viridian/reef/rust_library/lib/mod.rs diff --git a/viridian/reef/src/lib/protocol/common.rs b/viridian/reef/rust_library/lib/protocol/common.rs similarity index 100% rename from viridian/reef/src/lib/protocol/common.rs rename to viridian/reef/rust_library/lib/protocol/common.rs diff --git a/viridian/reef/src/lib/protocol/mod.rs b/viridian/reef/rust_library/lib/protocol/mod.rs similarity index 100% rename from viridian/reef/src/lib/protocol/mod.rs rename to viridian/reef/rust_library/lib/protocol/mod.rs diff --git a/viridian/reef/src/lib/protocol/port_client.rs b/viridian/reef/rust_library/lib/protocol/port_client.rs similarity index 100% rename from viridian/reef/src/lib/protocol/port_client.rs rename to viridian/reef/rust_library/lib/protocol/port_client.rs diff --git a/viridian/reef/src/lib/protocol/port_core.rs b/viridian/reef/rust_library/lib/protocol/port_core.rs similarity index 100% rename from viridian/reef/src/lib/protocol/port_core.rs rename to viridian/reef/rust_library/lib/protocol/port_core.rs diff --git a/viridian/reef/src/lib/protocol/typhoon_client.rs b/viridian/reef/rust_library/lib/protocol/typhoon_client.rs similarity index 100% rename from viridian/reef/src/lib/protocol/typhoon_client.rs rename to viridian/reef/rust_library/lib/protocol/typhoon_client.rs diff --git a/viridian/reef/src/lib/protocol/typhoon_core.rs b/viridian/reef/rust_library/lib/protocol/typhoon_core.rs similarity index 100% rename from viridian/reef/src/lib/protocol/typhoon_core.rs rename to viridian/reef/rust_library/lib/protocol/typhoon_core.rs diff --git a/viridian/reef/src/lib/protocol/utils.rs b/viridian/reef/rust_library/lib/protocol/utils.rs similarity index 100% rename from viridian/reef/src/lib/protocol/utils.rs rename to viridian/reef/rust_library/lib/protocol/utils.rs diff --git a/viridian/reef/src/lib/rng.rs b/viridian/reef/rust_library/lib/rng.rs similarity index 75% rename from viridian/reef/src/lib/rng.rs rename to viridian/reef/rust_library/lib/rng.rs index 602157b7..7eb590e0 100644 --- a/viridian/reef/src/lib/rng.rs +++ b/viridian/reef/rust_library/lib/rng.rs @@ -1,10 +1,10 @@ use rand::CryptoRng; use rand::Rng; -#[cfg(test)] +#[cfg(any(feature = "test", test))] struct MockRng; -#[cfg(test)] +#[cfg(any(feature = "test", test))] impl rand::RngCore for MockRng { fn next_u32(&mut self) -> u32 { 0u32 @@ -23,17 +23,17 @@ impl rand::RngCore for MockRng { } } -#[cfg(test)] +#[cfg(any(feature = "test", test))] impl CryptoRng for MockRng {} #[inline] -#[cfg(test)] +#[cfg(any(feature = "test", test))] pub(crate) fn get_rng() -> impl Rng + CryptoRng { MockRng } #[inline] -#[cfg(not(test))] +#[cfg(not(any(feature = "test", test)))] pub(crate) fn get_rng() -> impl Rng + CryptoRng { rand::rngs::OsRng } diff --git a/viridian/reef/src/lib/runtime.rs b/viridian/reef/rust_library/lib/runtime.rs similarity index 100% rename from viridian/reef/src/lib/runtime.rs rename to viridian/reef/rust_library/lib/runtime.rs diff --git a/viridian/reef/rust_library/lib/tunnel/linux.rs b/viridian/reef/rust_library/lib/tunnel/linux.rs new file mode 100644 index 00000000..26a0e0c9 --- /dev/null +++ b/viridian/reef/rust_library/lib/tunnel/linux.rs @@ -0,0 +1,169 @@ +#[cfg(test)] +#[path = "../../tests/tunnel/linux.rs"] +mod linux_test; + +use std::fs::File; +use std::io::Write; +use std::net::{IpAddr, Ipv4Addr}; + +use futures::TryStreamExt; +use ipnet::Ipv4Net; +use lazy_static::lazy_static; +use rtnetlink::packet_route::address::AddressAttribute; +use rtnetlink::packet_route::link::LinkAttribute; +use rtnetlink::packet_route::route::{RouteAddress, RouteAttribute}; +use rtnetlink::{new_connection, Handle, RouteMessageBuilder}; +use simple_error::{bail, require_with}; +use tun::{create_as_async, AsyncDevice, Configuration}; + +use crate::{run_coroutine_async, DynResult}; + +lazy_static! { + static ref NETLINK_HANDLE: Handle = { + let (connection, handle, _) = new_connection().expect("Failed to open RTNETLINK socket!"); + run_coroutine_async!(connection); + handle + }; +} + +#[inline] +#[cfg(not(any(feature = "test", test)))] +pub fn get_handle() -> Handle { + NETLINK_HANDLE.clone() +} + +#[inline] +#[cfg(any(feature = "test", test))] +pub fn get_handle() -> Handle { + let (connection, handle, _) = new_connection().expect("Failed to open RTNETLINK socket!"); + run_coroutine_async!(connection); + handle +} + +pub async fn get_default_address_and_device(target: Ipv4Addr) -> DynResult<(Ipv4Addr, u32)> { + let handle = get_handle(); + let mut stream = handle.route().get(RouteMessageBuilder::::new().build()).execute(); + while let Some(res) = stream.try_next().await? { + let dest = res.attributes.iter().find_map(|a| match a { + RouteAttribute::Destination(RouteAddress::Inet(addr)) => Some(addr), + _ => None, + }); + let ip = res.attributes.iter().find_map(|a| match a { + RouteAttribute::PrefSource(RouteAddress::Inet(address)) => Some(address), + _ => None, + }); + if dest.is_some() && ip.is_some() { + let network = Ipv4Net::new(dest.unwrap().clone(), res.header.destination_prefix_length)?; + if network.contains(ip.unwrap()) { + let dev = res.attributes.iter().find_map(|a| match a { + RouteAttribute::Oif(iface) => Some(iface), + _ => None, + }); + return Ok((*require_with!(ip, "Default IP address was not found!"), *require_with!(dev, "Default network interface was not found!"))); + } + } + } + bail!("Couldn't find any route to {target}!") +} + +pub async fn get_device_by_local_address(target: Ipv4Addr) -> DynResult { + let handle = get_handle(); + let mut stream = handle.address().get().set_address_filter(IpAddr::V4(target)).execute(); + while let Some(res) = stream.try_next().await? { + return Ok(res.header.index); + } + bail!("Couldn't find any devices for address {target}!") +} + +pub async fn get_device_name_and_cidr(device: u32) -> DynResult<(String, u8)> { + let handle = get_handle(); + let mut stream = handle.address().get().set_link_index_filter(device).execute(); + while let Some(res) = stream.try_next().await? { + let label = res.attributes.iter().find_map(|a| match a { + AddressAttribute::Label(label) => Some(label), + _ => None, + }); + return Ok((require_with!(label, "Device name was not found!").clone(), res.header.prefix_len)); + } + bail!("Couldn't find any devices for index {device}!") +} + +pub async fn get_device_address_and_cidr(label: &str) -> DynResult<(Ipv4Addr, u8)> { + let handle = get_handle(); + let mut stream = handle.address().get().execute(); + while let Some(res) = stream.try_next().await? { + let name = res.attributes.iter().find_map(|a| match a { + AddressAttribute::Label(label) => Some(label), + _ => None, + }); + if name.is_some_and(|n| n == label) { + let addr = res.attributes.iter().find_map(|a| match a { + AddressAttribute::Address(IpAddr::V4(addr)) => Some(addr), + _ => None, + }); + return Ok((*require_with!(addr, "Network interface IP address was not resolved!"), res.header.prefix_len)); + } + } + bail!("Couldn't find any devices for name {label}!") +} + +pub async fn get_device_mtu(device: u32) -> DynResult { + let handle = get_handle(); + let mut stream = handle.link().get().match_index(device).execute(); + while let Some(res) = stream.try_next().await? { + let mtu = res.attributes.iter().find_map(|a| match a { + LinkAttribute::Mtu(mtu) => Some(mtu), + _ => None, + }); + return Ok(*require_with!(mtu, "Default network interface MTU was not resolved!")); + } + bail!("Couldn't find any links for device {device}!") +} + +pub async fn get_address_device(network: Ipv4Net) -> DynResult { + let handle = get_handle(); + let broadcast = network.broadcast(); + let mut stream = handle.route().get(RouteMessageBuilder::::new().build()).execute(); + while let Some(res) = stream.try_next().await? { + let dest = res.attributes.iter().find_map(|a| match a { + RouteAttribute::Destination(RouteAddress::Inet(addr)) => Some(addr), + _ => None, + }); + if dest.is_some_and(|n| n.clone() == broadcast) { + let dev = res.attributes.iter().find_map(|a| match a { + RouteAttribute::Oif(iface) => Some(iface), + _ => None, + }); + return Ok(*require_with!(dev, "Tunnel device number was not resolved!")); + } + } + bail!("Couldn't find any route to {network}!") +} + +pub async fn get_default_interface_by_local_address(local_address: Ipv4Addr) -> DynResult<(u8, String, u32)> { + let default_dev = get_device_by_local_address(local_address).await?; + let (default_name, default_cidr) = get_device_name_and_cidr(default_dev).await?; + let default_mtu = get_device_mtu(default_dev).await?; + Ok((default_cidr, default_name, default_mtu)) +} + +pub async fn get_default_interface_by_remote_address(seaside_address: Ipv4Addr) -> DynResult<(Ipv4Addr, u8, String, u32)> { + let (default_ip, default_dev) = get_default_address_and_device(seaside_address).await?; + let (default_name, default_cidr) = get_device_name_and_cidr(default_dev).await?; + let default_mtu = get_device_mtu(default_dev).await?; + Ok((default_ip, default_cidr, default_name, default_mtu)) +} + +pub fn create_tunnel(name: &str, address: Ipv4Addr, netmask: Ipv4Addr, mtu: u16) -> DynResult { + let mut config = Configuration::default(); + config.address(address).netmask(netmask).tun_name(name).mtu(mtu).up(); + config.platform_config(|conf| { + conf.ensure_root_privileges(true); + }); + let tunnel = match create_as_async(&config) { + Ok(device) => Ok(device), + Err(err) => bail!("Error creating tunnel: {err}"), + }; + File::create(format!("/proc/sys/net/ipv6/conf/{name}/disable_ipv6"))?.write(&[0x31])?; + tunnel +} diff --git a/viridian/reef/rust_library/lib/tunnel/mod.rs b/viridian/reef/rust_library/lib/tunnel/mod.rs new file mode 100644 index 00000000..09cc5ce1 --- /dev/null +++ b/viridian/reef/rust_library/lib/tunnel/mod.rs @@ -0,0 +1,9 @@ +#[cfg(target_os = "linux")] +mod linux; +#[cfg(target_os = "linux")] +pub use linux::*; + +#[cfg(target_os = "windows")] +mod windows; +#[cfg(target_os = "windows")] +pub use windows::*; diff --git a/viridian/reef/rust_library/lib/tunnel/windows.rs b/viridian/reef/rust_library/lib/tunnel/windows.rs new file mode 100644 index 00000000..a33e15e5 --- /dev/null +++ b/viridian/reef/rust_library/lib/tunnel/windows.rs @@ -0,0 +1,503 @@ +use std::borrow::Cow; +use std::collections::{HashMap, HashSet}; +use std::marker::PhantomData; +use std::mem::{align_of, replace}; +use std::net::{AddrParseError, Ipv4Addr}; +use std::num::ParseIntError; +use std::slice::{from_raw_parts, from_raw_parts_mut}; +use std::sync::Arc; + +use cached::proc_macro::cached; +use etherparse::icmpv4::DestUnreachableHeader; +use etherparse::{Icmpv4Header, Icmpv4Type, IpNumber, Ipv4Header, Ipv4HeaderSlice}; +use ipnet::Ipv4Net; +use log::{debug, error, info}; +use serde::Deserialize; +use simple_error::{bail, SimpleError}; +use tokio::sync::watch::{channel, Receiver, Sender}; +use tokio::sync::RwLock; +use tokio::task::JoinHandle; +use windivert::address::WinDivertAddress; +use windivert::layer::NetworkLayer; +use windivert::packet::WinDivertPacket; +use windivert::prelude::{WinDivertFlags, WinDivertShutdownMode}; +use windivert::{CloseAction, WinDivert}; +use windows::Win32::Foundation::{ERROR_BUFFER_OVERFLOW, ERROR_SUCCESS, WIN32_ERROR}; +use windows::Win32::NetworkManagement::IpHelper::{GetAdaptersAddresses, GetBestRoute, GAA_FLAG_INCLUDE_PREFIX, IP_ADAPTER_ADDRESSES_LH, IP_ADAPTER_UNICAST_ADDRESS_LH, MIB_IPFORWARDROW}; +use windows::Win32::Networking::WinSock::{AF_INET, SOCKADDR_IN}; +use wmi::{COMLibrary, WMIConnection}; + +use crate::bytes::get_buffer; +use crate::tunnel::Tunnelling; +use crate::{run_coroutine_in_thread, run_coroutine_sync, DynResult}; + +const ZERO_IP_ADDRESS: Ipv4Addr = Ipv4Addr::new(0, 0, 0, 0); +const DEFAULT_SUBINTERFACE_INDEX: u32 = 0; +const FRAGMENT_BYTES: usize = 8; +const FRAGMENT_TTL: u8 = 64; + +#[cached(size = 1024, result = true)] +fn get_default_interface_by_remote_address(destination_ip: Ipv4Addr) -> DynResult { + let dest_ip = u32::from(destination_ip).to_be(); + let src_ip = u32::from(ZERO_IP_ADDRESS).to_be(); + + let mut route: MIB_IPFORWARDROW = MIB_IPFORWARDROW::default(); + let result = unsafe { GetBestRoute(dest_ip, Some(src_ip), &mut route) }; + + if WIN32_ERROR(result) == ERROR_SUCCESS { + Ok(route.dwForwardIfIndex) + } else { + bail!("Default route for ip {destination_ip} failed with error {}!", result) + } +} + +async unsafe fn get_default_interface DynResult>>(processor: P) -> DynResult> { + let mut buffer_size: u32 = 0; + + let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, None, &mut buffer_size); + if WIN32_ERROR(result) != ERROR_BUFFER_OVERFLOW { + bail!("Empty call to 'GetAdaptersAddresses' resulted with error {result}!"); + } + + let buffer = get_buffer(Some(buffer_size as usize + align_of::() - 1)).await; + let mut buffer_slice = buffer.slice_mut(); + let (_, buffer_aligned, _) = buffer_slice.align_to_mut::(); + let adapter_addresses = buffer_aligned.as_mut_ptr() as *mut IP_ADAPTER_ADDRESSES_LH; + + let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, Some(adapter_addresses), &mut buffer_size); + if WIN32_ERROR(result) != ERROR_SUCCESS { + bail!("Call to 'GetAdaptersAddresses' resulted with error {result}!"); + } + + let mut current_adapter = adapter_addresses; + while !current_adapter.is_null() { + let adapter = *current_adapter; + let mut unicast_ptr = adapter.FirstUnicastAddress; + + while !unicast_ptr.is_null() { + match processor(unicast_ptr, &adapter)? { + Some(res) => return Ok(Some(res)), + None => unicast_ptr = (*unicast_ptr).Next, + }; + } + + current_adapter = adapter.Next; + } + + Ok(None) +} + +async unsafe fn get_default_interface_by_local_address(local_ip: Ipv4Addr) -> DynResult { + unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, local_ip: Ipv4Addr) -> DynResult> { + let sockaddr = *(*unicast).Address.lpSockaddr; + if sockaddr.sa_family == AF_INET { + let sockaddr_in = *((*unicast).Address.lpSockaddr as *const SOCKADDR_IN); + let addr = Ipv4Addr::from(u32::from_be(sockaddr_in.sin_addr.S_un.S_addr)); + if addr == local_ip { + return Ok(Some(adapter.Anonymous1.Anonymous.IfIndex)); + } + } + Ok(None) + } + + match get_default_interface(|u, a| process_interface(u, a, local_ip)).await { + Ok(Some(res)) => Ok(res), + Ok(None) => bail!("No interfaces with IP address {local_ip}!"), + Err(err) => bail!("Error processing interface addresses: {err}!"), + } +} + +async unsafe fn get_interface_details(interface_index: u32) -> DynResult<(Ipv4Net, u32)> { + unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, interface_index: u32) -> DynResult> { + let sockaddr = *(*unicast).Address.lpSockaddr; + if sockaddr.sa_family == AF_INET && adapter.Anonymous1.Anonymous.IfIndex == interface_index { + let sockaddr_in = *((*unicast).Address.lpSockaddr as *const SOCKADDR_IN); + let ip_addr = Ipv4Addr::from(u32::from_be(sockaddr_in.sin_addr.S_un.S_addr)); + let prefix_len = (*unicast).OnLinkPrefixLength; + return Ok(Some((Ipv4Net::new(ip_addr, prefix_len)?, adapter.Mtu))); + } + Ok(None) + } + + match get_default_interface(|u, a| process_interface(u, a, interface_index)).await { + Ok(Some(res)) => Ok(res), + Ok(None) => bail!("No IP addresses found for interface with index {interface_index}!"), + Err(err) => bail!("Error processing interface addresses: {err}!"), + } +} + +#[derive(Deserialize, Debug, Clone)] +#[serde(rename_all = "PascalCase")] +struct AdapterConfig { + index: u32, + ip_enabled: bool, + dns_server_search_order: Vec, +} + +pub fn set_dns_addresses(interface_indexes: HashSet, dns_address: Option) -> DynResult<(Vec, HashMap>)> { + let com_con = COMLibrary::new()?; + let wmi_con = WMIConnection::new(com_con.into())?; + let adapters: Vec = wmi_con.raw_query("SELECT Index, IPEnabled, DNSServerSearchOrder FROM Win32_NetworkAdapterConfiguration")?; + let active_adapters: Vec = adapters.into_iter().filter(|a| a.ip_enabled && interface_indexes.contains(&a.index)).collect(); + + let mut dns_data = HashMap::new(); + let mut dns_servers = HashSet::new(); + + if let Some(address) = dns_address { + dns_servers.insert(address); + for adapter in active_adapters { + dns_data.insert(adapter.index, adapter.dns_server_search_order.clone()); + let in_params_getter = wmi_con.get_object("Win32_NetworkAdapterConfiguration")?.get_method("SetDNSServerSearchOrder")?; + let in_params = in_params_getter.ok_or_else(|| SimpleError::new("IWebMClassWrapper is None!"))?.spawn_instance()?; + in_params.put_property("Index", adapter.index)?; + in_params.put_property("DNSServerSearchOrder", vec![address.to_string()])?; + wmi_con.exec_method("Win32_NetworkAdapterConfiguration", "SetDNSServerSearchOrder", Some(&in_params))?; + } + } else { + for adapter in active_adapters { + dns_data.insert(adapter.index, adapter.dns_server_search_order.clone()); + let order_addr: Result, AddrParseError> = adapter.dns_server_search_order.iter().map(|a| a.parse()).collect(); + dns_servers.extend(order_addr?); + } + } + Ok((Vec::from_iter(dns_servers), dns_data)) +} + +fn reset_dns_addresses(dns_data: &HashMap>) -> DynResult<()> { + let com_con = COMLibrary::new()?; + let wmi_con = WMIConnection::new(com_con.into())?; + + for (iface, search_order) in dns_data { + let in_params_getter = wmi_con.get_object("Win32_NetworkAdapterConfiguration")?.get_method("SetDNSServerSearchOrder")?; + let in_params = in_params_getter.ok_or_else(|| SimpleError::new("IWebMClassWrapper is None!"))?.spawn_instance()?; + in_params.put_property("Index", iface.clone())?; + in_params.put_property("DNSServerSearchOrder", search_order.clone())?; + wmi_con.exec_method("Win32_NetworkAdapterConfiguration", "SetDNSServerSearchOrder", Some(&in_params))?; + } + Ok(()) +} + +#[derive(Clone, Copy)] +struct SendPtr { + ptr: T, + len: usize, + _marker: PhantomData, +} + +impl SendPtr { + fn len(&self) -> usize { + self.len + } +} + +unsafe impl Send for SendPtr {} +unsafe impl Sync for SendPtr {} + +type MutSendPtr = SendPtr<*mut u8>; +type ConstSendPtr = SendPtr<*const u8>; + +impl MutSendPtr { + fn new(buf: &mut [u8]) -> Self { + let ptr = buf.as_mut_ptr(); + Self { ptr, len: buf.len(), _marker: PhantomData } + } + + fn recreate(&self) -> &mut [u8] { + unsafe { from_raw_parts_mut(self.ptr, self.len) } + } +} + +impl ConstSendPtr { + fn new(buf: &[u8]) -> Self { + let ptr = buf.as_ptr(); + Self { ptr, len: buf.len(), _marker: PhantomData } + } + + fn recreate(&self) -> &[u8] { + unsafe { from_raw_parts(self.ptr, self.len) } + } +} + +struct TunnelTransport { + sender: Sender>, + receiver: Receiver>, +} + +type LocalTunnelTransport = TunnelTransport, usize>; +type RemoteTunnelTransport = TunnelTransport>; + +type LocalMutTunnelTransport = LocalTunnelTransport<*mut u8>; +type LocalConstTunnelTransport = LocalTunnelTransport<*const u8>; +type RemoteMutTunnelTransport = RemoteTunnelTransport<*mut u8>; +type RemoteConstTunnelTransport = RemoteTunnelTransport<*const u8>; + +impl TunnelTransport { + fn new(sender: Sender>, receiver: Receiver>) -> Self { + Self { sender, receiver } + } + + async fn send_internal(&mut self, data: Option) -> DynResult<()> { + if let Err(err) = self.sender.send(data) { + bail!("Error sending packet to queue: {err}"); + } + Ok(()) + } + + async fn send(&mut self, data: S) -> DynResult<()> { + self.send_internal(Some(data)).await + } + + async fn receive(&mut self) -> DynResult { + self.receiver.changed().await?; + let borrowed = self.receiver.borrow(); + match *borrowed { + Some(res) => Ok(res), + None => bail!("Tunnel queue was closed!"), + } + } + + async fn close(&mut self) -> DynResult<()> { + self.send_internal(None).await + } +} + +trait PacketExchangeProcess { + async fn build_icmp_frag_needed_packet<'a>(&self, original_ip_packet: &WinDivertPacket<'a, NetworkLayer>, mtu: u16) -> DynResult>; + async fn packet_receive_loop(&self, queue: RemoteConstTunnelTransport) -> DynResult<()>; + async fn packet_send_loop(&self, mtu: usize, queue: RemoteMutTunnelTransport) -> DynResult<()>; +} + +impl PacketExchangeProcess for Arc> { + async fn build_icmp_frag_needed_packet<'a>(&self, original_packet: &WinDivertPacket<'a, NetworkLayer>, mtu: u16) -> DynResult> { + let original_ip_header = Ipv4HeaderSlice::from_slice(&original_packet.data)?; + let payload_length = original_ip_header.payload_len()? as usize; + + if payload_length < FRAGMENT_BYTES { + bail!("Insufficient payload length: {payload_length} bytes!"); + } + + let mut icmp_header = Icmpv4Header::new(Icmpv4Type::DestinationUnreachable(DestUnreachableHeader::FragmentationNeeded { next_hop_mtu: mtu })); + let icmp_payload = &original_packet.data[..original_ip_header.slice().len() + FRAGMENT_BYTES]; + icmp_header.update_checksum(icmp_payload); + + let mut ip_header = Ipv4Header::new((icmp_header.header_len() + icmp_payload.len()) as u16, FRAGMENT_TTL, IpNumber::ICMP, original_ip_header.destination(), original_ip_header.source())?; + ip_header.header_checksum = ip_header.calc_header_checksum(); + + let buffer = get_buffer(None).await; + buffer.append(&ip_header.to_bytes()); + buffer.append(&icmp_header.to_bytes()); + buffer.append(icmp_payload); + + let mut address = unsafe { WinDivertAddress::::new() }; + address.set_interface_index(original_packet.address.interface_index()); + address.set_subinterface_index(original_packet.address.subinterface_index()); + address.set_outbound(true); + Ok(WinDivertPacket { address, data: Cow::Owned(buffer.into()) }) + } + + async fn packet_receive_loop(&self, mut queue: RemoteConstTunnelTransport) -> DynResult<()> { + loop { + let value = queue.receive().await?; + let raw_packet = value.recreate(); + debug!("Captured a remote packet, length: {}", value.len()); + let interface_index = match Ipv4HeaderSlice::from_slice(raw_packet) { + Ok(res) => match get_default_interface_by_remote_address(res.source_addr()) { + Ok(res) => res, + Err(err) => { + debug!("Error calculating interface index for packet: {err}"); + continue; + } + }, + Err(err) => { + debug!("Error parsing packet header: {err}"); + continue; + } + }; + let mut address = unsafe { WinDivertAddress::::new() }; + address.set_interface_index(interface_index); + address.set_subinterface_index(DEFAULT_SUBINTERFACE_INDEX); + address.set_outbound(false); + let packet = WinDivertPacket { address, data: Cow::Borrowed(raw_packet) }; + match self.send(&packet) { + Ok(res) => { + debug!("Inserting remote packet into a tunnel (interface {interface_index}), length: {res}"); + queue.send(res as usize).await?; + } + Err(err) => bail!("Closing receive loop: {err}!"), + }; + } + } + + async fn packet_send_loop(&self, mtu: usize, mut queue: RemoteMutTunnelTransport) -> DynResult<()> { + 'outer: loop { + let value = queue.receive().await?; + 'inner: loop { + let packet = match self.recv(Some(value.recreate())) { + Ok(res) => { + debug!("Captured a local packet, length: {}", res.data.len()); + res + } + Err(err) => bail!("Closing send loop: {err}!"), + }; + let packet_length = packet.data.len(); + if packet_length > mtu { + debug!("Packet too long: {packet_length} bytes!"); + match self.build_icmp_frag_needed_packet(&packet, mtu as u16).await { + Ok(res) => { + debug!("Sending fragmentation request, length: {}", res.data.len()); + self.send(&res)?; + } + Err(err) => debug!("Error constructing 'fragmentation needed' packet: {err}"), + }; + continue 'inner; + } else { + debug!("Inserting local packet into a tunnel, length: {packet_length}"); + queue.send(packet_length).await?; + continue 'outer; + } + } + } + } +} + +async fn enable_routing(seaside_address: Ipv4Addr, default_index: u32, default_network: Ipv4Net, divert_priority: i16, default_mtu: u32, receive_queue: RemoteConstTunnelTransport, send_queue: RemoteMutTunnelTransport, dns_addresses: Vec, capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>) -> DynResult<(Arc>, JoinHandle>, JoinHandle>)> { + let exempt_ports_filter = if let Some((lowest, highest)) = exempt_ports { format!("tcp? (tcp.SrcPort < {} or tcp.SrcPort > {}): (udp.SrcPort < {} or udp.SrcPort > {})", lowest, highest, lowest, highest) } else { String::from("true") }; + + let mut exempt_range_filter = exempt_ranges.iter().map(|i| format!("(ip.DstAddr < {} or ip.DstAddr > {})", i.network(), i.broadcast())).collect::>().join(" and "); + if exempt_range_filter.is_empty() { + exempt_range_filter = String::from("true"); + } + + let capture_ports_filter = if let Some((lowest, highest)) = capture_ports { format!("(tcp.SrcPort >= {} and tcp.SrcPort <= {}) or (udp.SrcPort >= {} and udp.SrcPort <= {})", lowest, highest, lowest, highest) } else { String::from("false") }; + + let mut capture_range_filter = capture_ranges.iter().map(|i| format!("(ip.DstAddr >= {} and ip.DstAddr <= {})", i.network(), i.broadcast())).collect::>().join(" or "); + if capture_range_filter.is_empty() { + capture_range_filter = String::from("false"); + } + + let mut capture_networks_result = Vec::new(); + for iface in capture_iface { + let net_idx = iface.parse().map_err(|e| Box::new(e))?; + let (network, _) = unsafe { get_interface_details(net_idx).await }?; + let filter = format!("((ifIdx == {iface}) and (ip.DstAddr < {} or ip.DstAddr > {}))", network.network(), network.broadcast()); + capture_networks_result.push(filter); + } + let mut capture_iface_filter = capture_networks_result.join(" or "); + if capture_iface_filter.is_empty() { + capture_iface_filter = String::from("false"); + } + + let dns_filter = dns_addresses.iter().map(|i| format!("ip.DstAddr != {i}")).collect::>().join(" and "); + let caerulean_filter = format!("(ifIdx != {default_index}) or (ip.SrcAddr != {}) or (ip.DstAddr != {})", default_network.addr(), seaside_address); + + let filter = format!("ip and outbound and (({exempt_ports_filter}) and ({exempt_range_filter})) and (({capture_ports_filter}) or {capture_range_filter} or {capture_iface_filter}) and ({dns_filter}) and ({caerulean_filter})"); + debug!("WinDivert filter will be used: '{filter}'"); + let divert = WinDivert::network(filter, divert_priority, WinDivertFlags::new())?; + + let divert_arc = Arc::new(divert); + let receive_divert_clone = divert_arc.clone(); + let send_divert_clone = divert_arc.clone(); + let receive_handle = run_coroutine_in_thread!(receive_divert_clone.packet_receive_loop(receive_queue)); + let send_handle = run_coroutine_in_thread!(send_divert_clone.packet_send_loop(default_mtu as usize, send_queue)); + Ok((divert_arc, receive_handle, send_handle)) +} + +pub struct TunnelInternal { + pub default_address: Ipv4Addr, + divert: Arc>, + send_queue: RwLock, + receive_queue: RwLock, + send_handle: Option>>, + receive_handle: Option>>, + dns_data: HashMap>, +} + +impl TunnelInternal { + pub async fn new(seaside_address: Ipv4Addr, _: &str, _: Ipv4Net, svr_index: u8, dns: Option, mut capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>, local_address: Option) -> DynResult { + debug!("Checking system default network properties..."); + let default_interface = if let Some(address) = local_address { unsafe { get_default_interface_by_local_address(address).await }? } else { get_default_interface_by_remote_address(seaside_address)? }; + let (default_network, default_mtu) = unsafe { get_interface_details(default_interface).await }?; + debug!("Default network properties received: network {default_network}, MTU {default_mtu}"); + let default_address = default_network.addr(); + + if capture_iface.is_empty() && capture_ranges.is_empty() && capture_ports.is_none() { + debug!("The default interface added to capture: {default_interface}"); + capture_iface.insert(default_interface.to_string()); + } + + debug!("Setting DNS address to {dns:?}..."); + let interfaces: Result, ParseIntError> = capture_iface.iter().map(|s| s.parse()).collect(); + let (dns_addresses, dns_data) = set_dns_addresses(HashSet::from_iter(interfaces?), dns)?; + debug!("The DNS server for interfaces were set to: {dns_addresses:?}"); + + debug!("Setting up routing..."); + let (remote_send_sender, local_send_receiver) = channel(None); + let (local_send_sender, remote_send_receiver) = channel(None); + let remote_send_queue = RemoteMutTunnelTransport::new(remote_send_sender, remote_send_receiver); + let local_send_queue = RwLock::new(LocalMutTunnelTransport::new(local_send_sender, local_send_receiver)); + let (remote_receive_sender, local_receive_receiver) = channel(None); + let (local_receive_sender, remote_receive_receiver) = channel(None); + let remote_receive_queue = RemoteConstTunnelTransport::new(remote_receive_sender, remote_receive_receiver); + let local_receive_queue = RwLock::new(LocalConstTunnelTransport::new(local_receive_sender, local_receive_receiver)); + let (divert, receive_handle, send_handle) = enable_routing(seaside_address, default_interface, default_network, svr_index as i16, default_mtu, remote_receive_queue, remote_send_queue, dns_addresses, capture_iface, capture_ranges, exempt_ranges, capture_ports, exempt_ports).await?; + + debug!("Creating tunnel object..."); + Ok(Self { default_address, divert, send_queue: local_send_queue, receive_queue: local_receive_queue, send_handle: Some(send_handle), receive_handle: Some(receive_handle), dns_data }) + } +} + +impl Tunnelling for TunnelInternal { + async fn recv(&self, buf: &mut [u8]) -> DynResult { + let pointer = MutSendPtr::new(buf); + let mut writer = self.send_queue.write().await; + writer.send(pointer).await?; + writer.receive().await + } + + async fn send(&self, buf: &[u8]) -> DynResult { + let pointer = ConstSendPtr::new(buf); + let mut writer = self.receive_queue.write().await; + writer.send(pointer).await?; + writer.receive().await + } +} + +impl Drop for TunnelInternal { + #[allow(unused_must_use)] + fn drop(&mut self) { + run_coroutine_sync!(async { + // TODO: change once https://github.com/Rubensei/windivert-rust/issues/14 is resolved. + debug!("Retrieving routing handle..."); + let divert = unsafe { &mut *(Arc::as_ptr(&self.divert) as *mut WinDivert) }; + + debug!("Resetting routing..."); + divert.shutdown(WinDivertShutdownMode::Both).inspect_err(|e| error!("Error shutting down WinDivert: {e}")); + divert.close(CloseAction::Nothing).inspect_err(|e| error!("Error closing WinDivert: {e}")); + + debug!("Closing routing queue (receive)..."); + let mut receive_queue_writer = self.receive_queue.write().await; + receive_queue_writer.close().await.inspect_err(|e| info!("Error closing receive tunnel queue: {e}")); + + debug!("Closing routing queue (send)..."); + let mut send_queue_writer = self.send_queue.write().await; + send_queue_writer.close().await.inspect_err(|e| info!("Error closing send tunnel queue: {e}")); + + debug!("Waiting for handle thread (receive)..."); + let receive_handle = replace(&mut self.receive_handle, None); + if let Some(thread) = receive_handle { + let result = thread.await.expect("WinDivert receive thread termination error!"); + result.inspect_err(|e| info!("WinDivert receive thread terminated with: {e}")); + } + + debug!("Waiting for handle thread (send)..."); + let send_handle = replace(&mut self.send_handle, None); + if let Some(thread) = send_handle { + let result = thread.await.expect("WinDivert send thread termination error!"); + result.inspect_err(|e| info!("WinDivert send thread terminated with: {e}")); + } + + debug!("Reverting DNS servers..."); + reset_dns_addresses(&self.dns_data).inspect_err(|e| error!("Error resetting DNS addresses: {e}")); + }); + } +} diff --git a/viridian/reef/src/lib/utils.rs b/viridian/reef/rust_library/lib/utils.rs similarity index 100% rename from viridian/reef/src/lib/utils.rs rename to viridian/reef/rust_library/lib/utils.rs diff --git a/viridian/reef/src/lib/viridian/linux.rs b/viridian/reef/rust_library/lib/viridian/linux.rs similarity index 85% rename from viridian/reef/src/lib/viridian/linux.rs rename to viridian/reef/rust_library/lib/viridian/linux.rs index aa01f18f..f02275f4 100644 --- a/viridian/reef/src/lib/viridian/linux.rs +++ b/viridian/reef/rust_library/lib/viridian/linux.rs @@ -2,9 +2,6 @@ use tokio::signal::unix::{signal, Signal, SignalKind}; use crate::DynResult; -pub const DEFAULT_SHELL: &str = "sh"; -pub const DEFAULT_ARG: &str = "-c"; - pub fn create_signal_handlers() -> DynResult> { let terminate_name = "SIGTERM".to_string(); let signal_terminate = signal(SignalKind::terminate())?; diff --git a/viridian/reef/rust_library/lib/viridian/mod.rs b/viridian/reef/rust_library/lib/viridian/mod.rs new file mode 100644 index 00000000..d4d42f8a --- /dev/null +++ b/viridian/reef/rust_library/lib/viridian/mod.rs @@ -0,0 +1,17 @@ +use std::net::Ipv4Addr; + +#[cfg(target_os = "linux")] +mod linux; +#[cfg(target_os = "linux")] +pub use linux::*; + +#[cfg(target_os = "windows")] +mod windows; +#[cfg(target_os = "windows")] +pub use windows::*; + +pub const DEFAULT_TUNNEL_NAME: &str = "seatun"; +pub const DEFAULT_DNS_ADDRESS: Ipv4Addr = Ipv4Addr::new(0, 0, 0, 0); +pub const DEFAULT_TUNNEL_ADDRESS: Ipv4Addr = Ipv4Addr::new(192, 168, 0, 82); +pub const DEFAULT_TUNNEL_NETMASK: Ipv4Addr = Ipv4Addr::new(255, 255, 255, 0); +pub const DEFAULT_SVR_INDEX: u8 = 82; diff --git a/viridian/reef/src/lib/viridian/windows.rs b/viridian/reef/rust_library/lib/viridian/windows.rs similarity index 100% rename from viridian/reef/src/lib/viridian/windows.rs rename to viridian/reef/rust_library/lib/viridian/windows.rs diff --git a/viridian/reef/tests/crypto/symmetric.rs b/viridian/reef/rust_library/tests/crypto/symmetric.rs similarity index 100% rename from viridian/reef/tests/crypto/symmetric.rs rename to viridian/reef/rust_library/tests/crypto/symmetric.rs diff --git a/viridian/reef/rust_library/tests/tunnel/linux.rs b/viridian/reef/rust_library/tests/tunnel/linux.rs new file mode 100644 index 00000000..e95b3494 --- /dev/null +++ b/viridian/reef/rust_library/tests/tunnel/linux.rs @@ -0,0 +1,90 @@ +use core::str; +use std::net::Ipv4Addr; +use std::str::FromStr; + +use ipnet::Ipv4Net; +use regex::Regex; +use simple_error::bail; +use tokio::test; + +use reeftest::{parse_route_info_from_output, run_command}; + +use crate::tunnel::linux::{create_tunnel, get_address_device, get_default_interface_by_remote_address}; +use crate::DynResult; + +fn get_route_device_info(destination: Ipv4Addr) -> DynResult { + let command = vec!["route".to_string(), "get".to_string(), destination.to_string()]; + let (route_out, _) = run_command("ip", command)?; + match parse_route_info_from_output(&route_out) { + Ok((_, Some(dev), _)) => Ok(dev), + Ok((_, None, _)) | Err(_) => bail!("Error reading route device info!"), + } +} + +fn show_address_info(device: &str) -> DynResult<(Option, Option, Option, Option)> { + let (addr_out, _) = run_command("ip", ["addr", "show", device])?; + + let index_regex = Regex::new(r"^(?\d+):")?; + let index_match = index_regex.captures(&addr_out); + let index_res = index_match.and_then(|m| u32::from_str(&m["index"]).ok()); + + let mtu_regex = Regex::new(r"mtu (?\d+)")?; + let mtu_match = mtu_regex.captures(&addr_out); + let mtu_res = mtu_match.and_then(|m| u32::from_str(&m["mtu"]).ok()); + + let network_regex = Regex::new(r"inet (?
\d+\.\d+\.\d+\.\d+)/(?\d+)")?; + let network_match = network_regex.captures(&addr_out); + let network_res = network_match.and_then(|m| Some((Ipv4Addr::from_str(&m["address"]).ok(), u32::from_str(&m["cidr"]).ok()))); + let (address_res, cidr_res) = match network_res { + Some((address, cidr)) => (address, cidr), + None => (None, None), + }; + + Ok((index_res, mtu_res, address_res, cidr_res)) +} + +#[test] +async fn test_get_default_interface() { + let external_address = Ipv4Addr::new(8, 8, 8, 8); + let expected_device = get_route_device_info(external_address).expect("Error reading default interface device name!"); + let (_, expected_mtu, expected_address, expected_cidr) = show_address_info(&expected_device).expect("Error reading default route IP!"); + + let (default_address, default_cidr, default_name, default_mtu) = get_default_interface_by_remote_address(external_address).await.expect("Error getting default address!"); + + assert_eq!(default_name, expected_device, "Default device name doesn't match!"); + assert!(expected_mtu.is_some_and(|v| v == default_mtu), "Default MTU doesn't match!"); + assert!(expected_address.is_some_and(|v| v == default_address), "Default IP address doesn't match!"); + assert!(expected_cidr.is_some_and(|v| v == u32::from(default_cidr)), "Default CIDR doesn't match!"); +} + +#[test] +async fn test_create_tunnel() { + let tun_mtu = 1500; + let tun_name = "tun_tct"; + let tun_address = Ipv4Addr::new(192, 168, 2, 2); + let tun_netmask = Ipv4Addr::new(255, 255, 255, 0); + + let _device = create_tunnel(tun_name, tun_address, tun_netmask, tun_mtu).expect("Error creating tunnel!"); + + let (_, expected_mtu, expected_address, expected_cidr) = show_address_info(tun_name).expect("Error reading default route IP!"); + assert!(expected_mtu.is_some_and(|v| v == u32::from(tun_mtu)), "Default MTU doesn't match!"); + assert!(expected_address.is_some_and(|v| v == tun_address), "Default IP address doesn't match!"); + assert!(expected_cidr.is_some_and(|v| v == tun_netmask.to_bits().count_ones()), "Default CIDR doesn't match!"); +} + +#[test] +async fn test_get_address_device() { + let tun_mtu = 4000; + let tun_name = "tun_tgad"; + let tun_network = Ipv4Net::from_str("192.168.4.4/24").expect("Error parsing tunnel network!"); + + run_command("ip", ["tuntap", "add", "dev", tun_name, "mode", "tun"]).expect("Error creating tunnel interface!"); + run_command("ip", ["addr", "replace", &tun_network.to_string(), "dev", tun_name]).expect("Error setting IP address for tunnel!"); + run_command("ip", ["link", "set", "dev", tun_name, "mtu", &tun_mtu.to_string()]).expect("Error setting MTU for tunnel"); + run_command("ip", ["link", "set", tun_name, "up"]).expect("Error enabling tunnel!"); + + let tunnel_device = get_address_device(tun_network).await.expect("Getting tunnel device failed!"); + + let (tunnel_index, _, _, _) = show_address_info(tun_name).expect("Reading tunnel address failed!"); + assert!(tunnel_index.is_some_and(|v| v == tunnel_device), "Tunnel index doesn't match!") +} diff --git a/viridian/reef/shared_library/Cargo.toml b/viridian/reef/shared_library/Cargo.toml new file mode 100644 index 00000000..258535ec --- /dev/null +++ b/viridian/reef/shared_library/Cargo.toml @@ -0,0 +1,34 @@ +[package] +name = "seaside" +version = "0.0.4" +edition = "2021" +description = "A production-ready SeasideVPN client for Linux and Windows" +authors = [ + "Alexander Sergeev " +] + + + +[dependencies] +reeflib = { path = "../rust_library" } +futures = "^0.3.31" +ipnet = "^2.10.1" +log = "^0.4.22" +prost = "^0.14.1" +regex = "^1.11.1" +simple-error = "^0.3.1" +tokio = { version = "^1.47.1", features = ["full"] } + +[target.'cfg(target_os = "linux")'.dependencies] +tun = { version = "^0.8.3", features = ["async"] } + +[build-dependencies] +reeflib = { path = "../rust_library", features = ["test"] } +cbindgen = "^0.29.2" + + + +[lib] +name = "seaside" +path = "lib/mod.rs" +crate-type = ["cdylib"] diff --git a/viridian/reef/shared_library/build.rs b/viridian/reef/shared_library/build.rs new file mode 100644 index 00000000..1bf1f73f --- /dev/null +++ b/viridian/reef/shared_library/build.rs @@ -0,0 +1,9 @@ +use std::env::var; +use std::path::PathBuf; + +use cbindgen::generate; + +fn main() { + let include = PathBuf::from(var("CARGO_MANIFEST_DIR").unwrap()).join("include").join(format!("{}.h", var("CARGO_PKG_NAME").unwrap())); + generate(".").expect("Unable to generate bindings!").write_to_file(include); +} diff --git a/viridian/reef/shared_library/cbindgen.toml b/viridian/reef/shared_library/cbindgen.toml new file mode 100644 index 00000000..1568e5b1 --- /dev/null +++ b/viridian/reef/shared_library/cbindgen.toml @@ -0,0 +1,6 @@ +language = "C" + +include_guard = "SEASIDE_H" +cpp_compat = true + +line_length = 256 diff --git a/viridian/reef/shared_library/lib/mod.rs b/viridian/reef/shared_library/lib/mod.rs new file mode 100644 index 00000000..2f247430 --- /dev/null +++ b/viridian/reef/shared_library/lib/mod.rs @@ -0,0 +1,143 @@ +use std::ffi::{c_char, c_void, CStr, CString}; +use std::fs::read; +use std::net::IpAddr; +use std::str::FromStr; + +use prost::Message; +use tokio::sync::oneshot::{channel, Sender}; +use tokio::task::JoinHandle; + +use reeflib::generated::SeasideWhirlpoolClientCertificate; +use reeflib::protocol::ProtocolType; +use reeflib::{run_coroutine_in_thread, run_coroutine_sync, DynResult}; +use tun::AbstractDevice; + +use crate::viridian::Viridian; + +mod tunnel; +mod viridian; + +/// cbindgen:ignore +struct RawPtr(*mut c_void); + +unsafe impl Send for RawPtr {} + +/// cbindgen:ignore +struct Coordinator { + handle: JoinHandle>, + terminator: Sender<()> +} + +#[repr(C)] +pub struct VPNConfig { + tunnel_name: *const c_char, + tunnel_address: u32, + tunnel_prefix: u32, + tunnel_mtu: u32, + dns_address: u32 +} + +macro_rules! return_error { + ($result:expr, $error:ident) => {{ + let sanitized = $result.chars().map(|c| if c == '\0' { '?' } else { c }).collect::(); + unsafe { *$error = CString::new(sanitized).unwrap().into_raw() }; + return false; + }}; +} + +#[no_mangle] +pub extern "C" fn vpn_init(certificate: *const c_char, protocol: *const c_char, config: *mut VPNConfig, viridian_ptr: *mut *mut c_void, error: *mut *mut c_char) -> bool { + let protocol = match unsafe { CStr::from_ptr(protocol) }.to_str() { + Ok(proto_str) => match ProtocolType::from_str(proto_str) { + Ok(res) => res, + Err(err) => return_error!(format!("Error resolving protocol: {err}"), error) + }, + Err(err) => return_error!(format!("Error resolving protocol string: {err}"), error) + }; + + let certificate = match unsafe { CStr::from_ptr(certificate) }.to_str() { + Ok(cert_str) => match read(cert_str) { + Ok(cert_bytes) => match SeasideWhirlpoolClientCertificate::decode(&*cert_bytes) { + Ok(res) => res, + Err(err) => return_error!(format!("Error decoding certificate: {err}"), error) + }, + Err(err) => return_error!(format!("Error reading certificate file: {err}"), error) + }, + Err(err) => return_error!(format!("Error resolving certificate string: {err}"), error) + }; + + let viridian = match run_coroutine_sync!(async { Viridian::new(certificate, protocol).await }) { + Ok(res) => res, + Err(err) => return_error!(format!("Error creating viridian: {err}"), error) + }; + + let vpn_config = VPNConfig { + tunnel_name: match viridian.tunnel.tunnel.tunnel_device.tun_name() { + Ok(tun_name) => match CString::new(tun_name) { + Ok(res) => res.into_raw(), + Err(err) => return_error!(format!("Error converting tunnel device name to string: {err}"), error) + }, + Err(err) => return_error!(format!("Error extracting tunnel device name: {err}"), error) + }, + tunnel_address: match viridian.tunnel.tunnel.tunnel_device.address() { + Ok(res) => match res { + IpAddr::V4(ipv4_addr) => ipv4_addr.to_bits(), + IpAddr::V6(ipv6_addr) => return_error!(format!("Error handling IPv6 tunnel device address: {ipv6_addr}"), error) + }, + Err(err) => return_error!(format!("Error extracting tunnel device address: {err}"), error) + }, + tunnel_prefix: match viridian.tunnel.tunnel.tunnel_device.netmask() { + Ok(res) => match res { + IpAddr::V4(ipv4_addr) => ipv4_addr.to_bits().count_ones(), + IpAddr::V6(ipv6_addr) => return_error!(format!("Error handling IPv6 tunnel device netmask: {ipv6_addr}"), error) + }, + Err(err) => return_error!(format!("Error extracting tunnel device address: {err}"), error) + }, + tunnel_mtu: match viridian.tunnel.tunnel.tunnel_device.mtu() { + Ok(res) => res.into(), + Err(err) => return_error!(format!("Error extracting tunnel device MTU: {err}"), error) + }, + dns_address: match viridian.dns { + Some(res) => res.to_bits(), + None => 0 + } + }; + + unsafe { *config = vpn_config } + unsafe { *viridian_ptr = Box::into_raw(Box::new(viridian)) as *mut c_void }; + true +} + +#[no_mangle] +pub extern "C" fn vpn_start(viridian_ptr: *mut c_void, coordinator_ptr: *mut *mut c_void, _: *mut *mut c_char) -> bool { + let viridian_raw = RawPtr(viridian_ptr); + let (sender, mut receiver) = channel(); + + let handle = run_coroutine_in_thread!(async { + let viridian_raw_copy = viridian_raw; + let mut viridian = unsafe { Box::from_raw(viridian_raw_copy.0 as *mut Viridian) }; + viridian.start(&mut receiver).await + }); + + let coordinator = Box::new(Coordinator { handle, terminator: sender }); + unsafe { *coordinator_ptr = Box::into_raw(coordinator) as *mut c_void }; + true +} + +#[no_mangle] +pub extern "C" fn vpn_stop(coordinator_ptr: *mut c_void, error: *mut *mut c_char) -> bool { + let coordinator = unsafe { Box::from_raw(coordinator_ptr as *mut Coordinator) }; + + let handle = coordinator.handle; + if let Err(_) = coordinator.terminator.send(()) { + return_error!("Error terminating VPN loop", error) + } + + match run_coroutine_sync!(async { handle.await }) { + Ok(join_res) => match join_res { + Ok(_) => true, + Err(err) => return_error!(format!("Error terminating VPN loop: {err}"), error) + }, + Err(err) => return_error!(format!("Error joining VPN loop termination: {err}"), error) + } +} diff --git a/viridian/reef/shared_library/lib/tunnel/linux.rs b/viridian/reef/shared_library/lib/tunnel/linux.rs new file mode 100644 index 00000000..e8df1f8d --- /dev/null +++ b/viridian/reef/shared_library/lib/tunnel/linux.rs @@ -0,0 +1,38 @@ +use std::net::Ipv4Addr; + +use ipnet::Ipv4Net; +use log::debug; +use reeflib::tunnel::{create_tunnel, get_default_interface_by_remote_address}; +use tun::AsyncDevice; + +use crate::tunnel::Tunnelling; +use crate::DynResult; + +pub struct TunnelInternal { + pub default_address: Ipv4Addr, + pub tunnel_device: AsyncDevice, +} + +impl TunnelInternal { + pub async fn new(seaside_address: Ipv4Addr, tunnel_name: &str, tunnel_network: Ipv4Net) -> DynResult { + debug!("Checking system default network properties..."); + let (default_address, default_cidr, default_name, default_mtu) = get_default_interface_by_remote_address(seaside_address).await?; + debug!("Default network properties received: address {default_address}, CIDR {default_cidr}, name {default_name}, MTU {default_mtu}"); + + debug!("Creating tunnel device: address {}, netmask {}...", tunnel_network.addr(), tunnel_network.netmask()); + let tunnel_device = create_tunnel(tunnel_name, tunnel_network.addr(), tunnel_network.netmask(), default_mtu as u16)?; + + debug!("Creating tunnel handle..."); + Ok(Self { default_address, tunnel_device }) + } +} + +impl Tunnelling for TunnelInternal { + async fn recv(&self, buf: &mut [u8]) -> DynResult { + Ok(self.tunnel_device.recv(buf).await?) + } + + async fn send(&self, buf: &[u8]) -> DynResult { + Ok(self.tunnel_device.send(buf).await?) + } +} diff --git a/viridian/reef/shared_library/lib/tunnel/mod.rs b/viridian/reef/shared_library/lib/tunnel/mod.rs new file mode 100644 index 00000000..e76b1ed9 --- /dev/null +++ b/viridian/reef/shared_library/lib/tunnel/mod.rs @@ -0,0 +1,60 @@ +use std::{net::Ipv4Addr, sync::Arc}; + +use ipnet::Ipv4Net; +use simple_error::bail; + +use reeflib::bytes::{get_buffer, ByteBuffer}; +use reeflib::{DynResult, Reader, Writer}; + +#[cfg(target_os = "linux")] +mod linux; +#[cfg(target_os = "linux")] +use linux::*; + +#[cfg(target_os = "windows")] +mod windows; +#[cfg(target_os = "windows")] +use windows::*; + +trait Tunnelling { + async fn recv(&self, buf: &mut [u8]) -> DynResult; + async fn send(&self, buf: &[u8]) -> DynResult; +} + +#[derive(Clone)] +pub struct Tunnel { + pub tunnel: Arc, +} + +impl Tunnel { + #[inline] + pub fn default_ip(&self) -> Ipv4Addr { + self.tunnel.default_address + } + + pub async fn new(seaside_address: Ipv4Addr, tunnel_name: &str, tunnel_network: Ipv4Net) -> DynResult { + Ok(Self { + tunnel: Arc::new(TunnelInternal::new(seaside_address, tunnel_name, tunnel_network).await?), + }) + } +} + +impl Reader for Tunnel { + async fn read_bytes(&mut self) -> DynResult> { + let buffer = get_buffer(None).await; + let read = match self.tunnel.recv(&mut buffer.slice_mut()).await { + Ok(res) => res, + Err(res) => bail!("Error reading bytes from tunnel: {}", res), + }; + Ok(buffer.rebuffer_end(read)) + } +} + +impl Writer for Tunnel { + async fn write_bytes(&mut self, bytes: ByteBuffer<'_>) -> DynResult { + match self.tunnel.send(&bytes.slice()).await { + Ok(res) => Ok(res), + Err(res) => bail!("Error writing bytes to tunnel: {}", res), + } + } +} diff --git a/viridian/reef/shared_library/lib/tunnel/windows.rs b/viridian/reef/shared_library/lib/tunnel/windows.rs new file mode 100644 index 00000000..a33e15e5 --- /dev/null +++ b/viridian/reef/shared_library/lib/tunnel/windows.rs @@ -0,0 +1,503 @@ +use std::borrow::Cow; +use std::collections::{HashMap, HashSet}; +use std::marker::PhantomData; +use std::mem::{align_of, replace}; +use std::net::{AddrParseError, Ipv4Addr}; +use std::num::ParseIntError; +use std::slice::{from_raw_parts, from_raw_parts_mut}; +use std::sync::Arc; + +use cached::proc_macro::cached; +use etherparse::icmpv4::DestUnreachableHeader; +use etherparse::{Icmpv4Header, Icmpv4Type, IpNumber, Ipv4Header, Ipv4HeaderSlice}; +use ipnet::Ipv4Net; +use log::{debug, error, info}; +use serde::Deserialize; +use simple_error::{bail, SimpleError}; +use tokio::sync::watch::{channel, Receiver, Sender}; +use tokio::sync::RwLock; +use tokio::task::JoinHandle; +use windivert::address::WinDivertAddress; +use windivert::layer::NetworkLayer; +use windivert::packet::WinDivertPacket; +use windivert::prelude::{WinDivertFlags, WinDivertShutdownMode}; +use windivert::{CloseAction, WinDivert}; +use windows::Win32::Foundation::{ERROR_BUFFER_OVERFLOW, ERROR_SUCCESS, WIN32_ERROR}; +use windows::Win32::NetworkManagement::IpHelper::{GetAdaptersAddresses, GetBestRoute, GAA_FLAG_INCLUDE_PREFIX, IP_ADAPTER_ADDRESSES_LH, IP_ADAPTER_UNICAST_ADDRESS_LH, MIB_IPFORWARDROW}; +use windows::Win32::Networking::WinSock::{AF_INET, SOCKADDR_IN}; +use wmi::{COMLibrary, WMIConnection}; + +use crate::bytes::get_buffer; +use crate::tunnel::Tunnelling; +use crate::{run_coroutine_in_thread, run_coroutine_sync, DynResult}; + +const ZERO_IP_ADDRESS: Ipv4Addr = Ipv4Addr::new(0, 0, 0, 0); +const DEFAULT_SUBINTERFACE_INDEX: u32 = 0; +const FRAGMENT_BYTES: usize = 8; +const FRAGMENT_TTL: u8 = 64; + +#[cached(size = 1024, result = true)] +fn get_default_interface_by_remote_address(destination_ip: Ipv4Addr) -> DynResult { + let dest_ip = u32::from(destination_ip).to_be(); + let src_ip = u32::from(ZERO_IP_ADDRESS).to_be(); + + let mut route: MIB_IPFORWARDROW = MIB_IPFORWARDROW::default(); + let result = unsafe { GetBestRoute(dest_ip, Some(src_ip), &mut route) }; + + if WIN32_ERROR(result) == ERROR_SUCCESS { + Ok(route.dwForwardIfIndex) + } else { + bail!("Default route for ip {destination_ip} failed with error {}!", result) + } +} + +async unsafe fn get_default_interface DynResult>>(processor: P) -> DynResult> { + let mut buffer_size: u32 = 0; + + let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, None, &mut buffer_size); + if WIN32_ERROR(result) != ERROR_BUFFER_OVERFLOW { + bail!("Empty call to 'GetAdaptersAddresses' resulted with error {result}!"); + } + + let buffer = get_buffer(Some(buffer_size as usize + align_of::() - 1)).await; + let mut buffer_slice = buffer.slice_mut(); + let (_, buffer_aligned, _) = buffer_slice.align_to_mut::(); + let adapter_addresses = buffer_aligned.as_mut_ptr() as *mut IP_ADAPTER_ADDRESSES_LH; + + let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, Some(adapter_addresses), &mut buffer_size); + if WIN32_ERROR(result) != ERROR_SUCCESS { + bail!("Call to 'GetAdaptersAddresses' resulted with error {result}!"); + } + + let mut current_adapter = adapter_addresses; + while !current_adapter.is_null() { + let adapter = *current_adapter; + let mut unicast_ptr = adapter.FirstUnicastAddress; + + while !unicast_ptr.is_null() { + match processor(unicast_ptr, &adapter)? { + Some(res) => return Ok(Some(res)), + None => unicast_ptr = (*unicast_ptr).Next, + }; + } + + current_adapter = adapter.Next; + } + + Ok(None) +} + +async unsafe fn get_default_interface_by_local_address(local_ip: Ipv4Addr) -> DynResult { + unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, local_ip: Ipv4Addr) -> DynResult> { + let sockaddr = *(*unicast).Address.lpSockaddr; + if sockaddr.sa_family == AF_INET { + let sockaddr_in = *((*unicast).Address.lpSockaddr as *const SOCKADDR_IN); + let addr = Ipv4Addr::from(u32::from_be(sockaddr_in.sin_addr.S_un.S_addr)); + if addr == local_ip { + return Ok(Some(adapter.Anonymous1.Anonymous.IfIndex)); + } + } + Ok(None) + } + + match get_default_interface(|u, a| process_interface(u, a, local_ip)).await { + Ok(Some(res)) => Ok(res), + Ok(None) => bail!("No interfaces with IP address {local_ip}!"), + Err(err) => bail!("Error processing interface addresses: {err}!"), + } +} + +async unsafe fn get_interface_details(interface_index: u32) -> DynResult<(Ipv4Net, u32)> { + unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, interface_index: u32) -> DynResult> { + let sockaddr = *(*unicast).Address.lpSockaddr; + if sockaddr.sa_family == AF_INET && adapter.Anonymous1.Anonymous.IfIndex == interface_index { + let sockaddr_in = *((*unicast).Address.lpSockaddr as *const SOCKADDR_IN); + let ip_addr = Ipv4Addr::from(u32::from_be(sockaddr_in.sin_addr.S_un.S_addr)); + let prefix_len = (*unicast).OnLinkPrefixLength; + return Ok(Some((Ipv4Net::new(ip_addr, prefix_len)?, adapter.Mtu))); + } + Ok(None) + } + + match get_default_interface(|u, a| process_interface(u, a, interface_index)).await { + Ok(Some(res)) => Ok(res), + Ok(None) => bail!("No IP addresses found for interface with index {interface_index}!"), + Err(err) => bail!("Error processing interface addresses: {err}!"), + } +} + +#[derive(Deserialize, Debug, Clone)] +#[serde(rename_all = "PascalCase")] +struct AdapterConfig { + index: u32, + ip_enabled: bool, + dns_server_search_order: Vec, +} + +pub fn set_dns_addresses(interface_indexes: HashSet, dns_address: Option) -> DynResult<(Vec, HashMap>)> { + let com_con = COMLibrary::new()?; + let wmi_con = WMIConnection::new(com_con.into())?; + let adapters: Vec = wmi_con.raw_query("SELECT Index, IPEnabled, DNSServerSearchOrder FROM Win32_NetworkAdapterConfiguration")?; + let active_adapters: Vec = adapters.into_iter().filter(|a| a.ip_enabled && interface_indexes.contains(&a.index)).collect(); + + let mut dns_data = HashMap::new(); + let mut dns_servers = HashSet::new(); + + if let Some(address) = dns_address { + dns_servers.insert(address); + for adapter in active_adapters { + dns_data.insert(adapter.index, adapter.dns_server_search_order.clone()); + let in_params_getter = wmi_con.get_object("Win32_NetworkAdapterConfiguration")?.get_method("SetDNSServerSearchOrder")?; + let in_params = in_params_getter.ok_or_else(|| SimpleError::new("IWebMClassWrapper is None!"))?.spawn_instance()?; + in_params.put_property("Index", adapter.index)?; + in_params.put_property("DNSServerSearchOrder", vec![address.to_string()])?; + wmi_con.exec_method("Win32_NetworkAdapterConfiguration", "SetDNSServerSearchOrder", Some(&in_params))?; + } + } else { + for adapter in active_adapters { + dns_data.insert(adapter.index, adapter.dns_server_search_order.clone()); + let order_addr: Result, AddrParseError> = adapter.dns_server_search_order.iter().map(|a| a.parse()).collect(); + dns_servers.extend(order_addr?); + } + } + Ok((Vec::from_iter(dns_servers), dns_data)) +} + +fn reset_dns_addresses(dns_data: &HashMap>) -> DynResult<()> { + let com_con = COMLibrary::new()?; + let wmi_con = WMIConnection::new(com_con.into())?; + + for (iface, search_order) in dns_data { + let in_params_getter = wmi_con.get_object("Win32_NetworkAdapterConfiguration")?.get_method("SetDNSServerSearchOrder")?; + let in_params = in_params_getter.ok_or_else(|| SimpleError::new("IWebMClassWrapper is None!"))?.spawn_instance()?; + in_params.put_property("Index", iface.clone())?; + in_params.put_property("DNSServerSearchOrder", search_order.clone())?; + wmi_con.exec_method("Win32_NetworkAdapterConfiguration", "SetDNSServerSearchOrder", Some(&in_params))?; + } + Ok(()) +} + +#[derive(Clone, Copy)] +struct SendPtr { + ptr: T, + len: usize, + _marker: PhantomData, +} + +impl SendPtr { + fn len(&self) -> usize { + self.len + } +} + +unsafe impl Send for SendPtr {} +unsafe impl Sync for SendPtr {} + +type MutSendPtr = SendPtr<*mut u8>; +type ConstSendPtr = SendPtr<*const u8>; + +impl MutSendPtr { + fn new(buf: &mut [u8]) -> Self { + let ptr = buf.as_mut_ptr(); + Self { ptr, len: buf.len(), _marker: PhantomData } + } + + fn recreate(&self) -> &mut [u8] { + unsafe { from_raw_parts_mut(self.ptr, self.len) } + } +} + +impl ConstSendPtr { + fn new(buf: &[u8]) -> Self { + let ptr = buf.as_ptr(); + Self { ptr, len: buf.len(), _marker: PhantomData } + } + + fn recreate(&self) -> &[u8] { + unsafe { from_raw_parts(self.ptr, self.len) } + } +} + +struct TunnelTransport { + sender: Sender>, + receiver: Receiver>, +} + +type LocalTunnelTransport = TunnelTransport, usize>; +type RemoteTunnelTransport = TunnelTransport>; + +type LocalMutTunnelTransport = LocalTunnelTransport<*mut u8>; +type LocalConstTunnelTransport = LocalTunnelTransport<*const u8>; +type RemoteMutTunnelTransport = RemoteTunnelTransport<*mut u8>; +type RemoteConstTunnelTransport = RemoteTunnelTransport<*const u8>; + +impl TunnelTransport { + fn new(sender: Sender>, receiver: Receiver>) -> Self { + Self { sender, receiver } + } + + async fn send_internal(&mut self, data: Option) -> DynResult<()> { + if let Err(err) = self.sender.send(data) { + bail!("Error sending packet to queue: {err}"); + } + Ok(()) + } + + async fn send(&mut self, data: S) -> DynResult<()> { + self.send_internal(Some(data)).await + } + + async fn receive(&mut self) -> DynResult { + self.receiver.changed().await?; + let borrowed = self.receiver.borrow(); + match *borrowed { + Some(res) => Ok(res), + None => bail!("Tunnel queue was closed!"), + } + } + + async fn close(&mut self) -> DynResult<()> { + self.send_internal(None).await + } +} + +trait PacketExchangeProcess { + async fn build_icmp_frag_needed_packet<'a>(&self, original_ip_packet: &WinDivertPacket<'a, NetworkLayer>, mtu: u16) -> DynResult>; + async fn packet_receive_loop(&self, queue: RemoteConstTunnelTransport) -> DynResult<()>; + async fn packet_send_loop(&self, mtu: usize, queue: RemoteMutTunnelTransport) -> DynResult<()>; +} + +impl PacketExchangeProcess for Arc> { + async fn build_icmp_frag_needed_packet<'a>(&self, original_packet: &WinDivertPacket<'a, NetworkLayer>, mtu: u16) -> DynResult> { + let original_ip_header = Ipv4HeaderSlice::from_slice(&original_packet.data)?; + let payload_length = original_ip_header.payload_len()? as usize; + + if payload_length < FRAGMENT_BYTES { + bail!("Insufficient payload length: {payload_length} bytes!"); + } + + let mut icmp_header = Icmpv4Header::new(Icmpv4Type::DestinationUnreachable(DestUnreachableHeader::FragmentationNeeded { next_hop_mtu: mtu })); + let icmp_payload = &original_packet.data[..original_ip_header.slice().len() + FRAGMENT_BYTES]; + icmp_header.update_checksum(icmp_payload); + + let mut ip_header = Ipv4Header::new((icmp_header.header_len() + icmp_payload.len()) as u16, FRAGMENT_TTL, IpNumber::ICMP, original_ip_header.destination(), original_ip_header.source())?; + ip_header.header_checksum = ip_header.calc_header_checksum(); + + let buffer = get_buffer(None).await; + buffer.append(&ip_header.to_bytes()); + buffer.append(&icmp_header.to_bytes()); + buffer.append(icmp_payload); + + let mut address = unsafe { WinDivertAddress::::new() }; + address.set_interface_index(original_packet.address.interface_index()); + address.set_subinterface_index(original_packet.address.subinterface_index()); + address.set_outbound(true); + Ok(WinDivertPacket { address, data: Cow::Owned(buffer.into()) }) + } + + async fn packet_receive_loop(&self, mut queue: RemoteConstTunnelTransport) -> DynResult<()> { + loop { + let value = queue.receive().await?; + let raw_packet = value.recreate(); + debug!("Captured a remote packet, length: {}", value.len()); + let interface_index = match Ipv4HeaderSlice::from_slice(raw_packet) { + Ok(res) => match get_default_interface_by_remote_address(res.source_addr()) { + Ok(res) => res, + Err(err) => { + debug!("Error calculating interface index for packet: {err}"); + continue; + } + }, + Err(err) => { + debug!("Error parsing packet header: {err}"); + continue; + } + }; + let mut address = unsafe { WinDivertAddress::::new() }; + address.set_interface_index(interface_index); + address.set_subinterface_index(DEFAULT_SUBINTERFACE_INDEX); + address.set_outbound(false); + let packet = WinDivertPacket { address, data: Cow::Borrowed(raw_packet) }; + match self.send(&packet) { + Ok(res) => { + debug!("Inserting remote packet into a tunnel (interface {interface_index}), length: {res}"); + queue.send(res as usize).await?; + } + Err(err) => bail!("Closing receive loop: {err}!"), + }; + } + } + + async fn packet_send_loop(&self, mtu: usize, mut queue: RemoteMutTunnelTransport) -> DynResult<()> { + 'outer: loop { + let value = queue.receive().await?; + 'inner: loop { + let packet = match self.recv(Some(value.recreate())) { + Ok(res) => { + debug!("Captured a local packet, length: {}", res.data.len()); + res + } + Err(err) => bail!("Closing send loop: {err}!"), + }; + let packet_length = packet.data.len(); + if packet_length > mtu { + debug!("Packet too long: {packet_length} bytes!"); + match self.build_icmp_frag_needed_packet(&packet, mtu as u16).await { + Ok(res) => { + debug!("Sending fragmentation request, length: {}", res.data.len()); + self.send(&res)?; + } + Err(err) => debug!("Error constructing 'fragmentation needed' packet: {err}"), + }; + continue 'inner; + } else { + debug!("Inserting local packet into a tunnel, length: {packet_length}"); + queue.send(packet_length).await?; + continue 'outer; + } + } + } + } +} + +async fn enable_routing(seaside_address: Ipv4Addr, default_index: u32, default_network: Ipv4Net, divert_priority: i16, default_mtu: u32, receive_queue: RemoteConstTunnelTransport, send_queue: RemoteMutTunnelTransport, dns_addresses: Vec, capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>) -> DynResult<(Arc>, JoinHandle>, JoinHandle>)> { + let exempt_ports_filter = if let Some((lowest, highest)) = exempt_ports { format!("tcp? (tcp.SrcPort < {} or tcp.SrcPort > {}): (udp.SrcPort < {} or udp.SrcPort > {})", lowest, highest, lowest, highest) } else { String::from("true") }; + + let mut exempt_range_filter = exempt_ranges.iter().map(|i| format!("(ip.DstAddr < {} or ip.DstAddr > {})", i.network(), i.broadcast())).collect::>().join(" and "); + if exempt_range_filter.is_empty() { + exempt_range_filter = String::from("true"); + } + + let capture_ports_filter = if let Some((lowest, highest)) = capture_ports { format!("(tcp.SrcPort >= {} and tcp.SrcPort <= {}) or (udp.SrcPort >= {} and udp.SrcPort <= {})", lowest, highest, lowest, highest) } else { String::from("false") }; + + let mut capture_range_filter = capture_ranges.iter().map(|i| format!("(ip.DstAddr >= {} and ip.DstAddr <= {})", i.network(), i.broadcast())).collect::>().join(" or "); + if capture_range_filter.is_empty() { + capture_range_filter = String::from("false"); + } + + let mut capture_networks_result = Vec::new(); + for iface in capture_iface { + let net_idx = iface.parse().map_err(|e| Box::new(e))?; + let (network, _) = unsafe { get_interface_details(net_idx).await }?; + let filter = format!("((ifIdx == {iface}) and (ip.DstAddr < {} or ip.DstAddr > {}))", network.network(), network.broadcast()); + capture_networks_result.push(filter); + } + let mut capture_iface_filter = capture_networks_result.join(" or "); + if capture_iface_filter.is_empty() { + capture_iface_filter = String::from("false"); + } + + let dns_filter = dns_addresses.iter().map(|i| format!("ip.DstAddr != {i}")).collect::>().join(" and "); + let caerulean_filter = format!("(ifIdx != {default_index}) or (ip.SrcAddr != {}) or (ip.DstAddr != {})", default_network.addr(), seaside_address); + + let filter = format!("ip and outbound and (({exempt_ports_filter}) and ({exempt_range_filter})) and (({capture_ports_filter}) or {capture_range_filter} or {capture_iface_filter}) and ({dns_filter}) and ({caerulean_filter})"); + debug!("WinDivert filter will be used: '{filter}'"); + let divert = WinDivert::network(filter, divert_priority, WinDivertFlags::new())?; + + let divert_arc = Arc::new(divert); + let receive_divert_clone = divert_arc.clone(); + let send_divert_clone = divert_arc.clone(); + let receive_handle = run_coroutine_in_thread!(receive_divert_clone.packet_receive_loop(receive_queue)); + let send_handle = run_coroutine_in_thread!(send_divert_clone.packet_send_loop(default_mtu as usize, send_queue)); + Ok((divert_arc, receive_handle, send_handle)) +} + +pub struct TunnelInternal { + pub default_address: Ipv4Addr, + divert: Arc>, + send_queue: RwLock, + receive_queue: RwLock, + send_handle: Option>>, + receive_handle: Option>>, + dns_data: HashMap>, +} + +impl TunnelInternal { + pub async fn new(seaside_address: Ipv4Addr, _: &str, _: Ipv4Net, svr_index: u8, dns: Option, mut capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>, local_address: Option) -> DynResult { + debug!("Checking system default network properties..."); + let default_interface = if let Some(address) = local_address { unsafe { get_default_interface_by_local_address(address).await }? } else { get_default_interface_by_remote_address(seaside_address)? }; + let (default_network, default_mtu) = unsafe { get_interface_details(default_interface).await }?; + debug!("Default network properties received: network {default_network}, MTU {default_mtu}"); + let default_address = default_network.addr(); + + if capture_iface.is_empty() && capture_ranges.is_empty() && capture_ports.is_none() { + debug!("The default interface added to capture: {default_interface}"); + capture_iface.insert(default_interface.to_string()); + } + + debug!("Setting DNS address to {dns:?}..."); + let interfaces: Result, ParseIntError> = capture_iface.iter().map(|s| s.parse()).collect(); + let (dns_addresses, dns_data) = set_dns_addresses(HashSet::from_iter(interfaces?), dns)?; + debug!("The DNS server for interfaces were set to: {dns_addresses:?}"); + + debug!("Setting up routing..."); + let (remote_send_sender, local_send_receiver) = channel(None); + let (local_send_sender, remote_send_receiver) = channel(None); + let remote_send_queue = RemoteMutTunnelTransport::new(remote_send_sender, remote_send_receiver); + let local_send_queue = RwLock::new(LocalMutTunnelTransport::new(local_send_sender, local_send_receiver)); + let (remote_receive_sender, local_receive_receiver) = channel(None); + let (local_receive_sender, remote_receive_receiver) = channel(None); + let remote_receive_queue = RemoteConstTunnelTransport::new(remote_receive_sender, remote_receive_receiver); + let local_receive_queue = RwLock::new(LocalConstTunnelTransport::new(local_receive_sender, local_receive_receiver)); + let (divert, receive_handle, send_handle) = enable_routing(seaside_address, default_interface, default_network, svr_index as i16, default_mtu, remote_receive_queue, remote_send_queue, dns_addresses, capture_iface, capture_ranges, exempt_ranges, capture_ports, exempt_ports).await?; + + debug!("Creating tunnel object..."); + Ok(Self { default_address, divert, send_queue: local_send_queue, receive_queue: local_receive_queue, send_handle: Some(send_handle), receive_handle: Some(receive_handle), dns_data }) + } +} + +impl Tunnelling for TunnelInternal { + async fn recv(&self, buf: &mut [u8]) -> DynResult { + let pointer = MutSendPtr::new(buf); + let mut writer = self.send_queue.write().await; + writer.send(pointer).await?; + writer.receive().await + } + + async fn send(&self, buf: &[u8]) -> DynResult { + let pointer = ConstSendPtr::new(buf); + let mut writer = self.receive_queue.write().await; + writer.send(pointer).await?; + writer.receive().await + } +} + +impl Drop for TunnelInternal { + #[allow(unused_must_use)] + fn drop(&mut self) { + run_coroutine_sync!(async { + // TODO: change once https://github.com/Rubensei/windivert-rust/issues/14 is resolved. + debug!("Retrieving routing handle..."); + let divert = unsafe { &mut *(Arc::as_ptr(&self.divert) as *mut WinDivert) }; + + debug!("Resetting routing..."); + divert.shutdown(WinDivertShutdownMode::Both).inspect_err(|e| error!("Error shutting down WinDivert: {e}")); + divert.close(CloseAction::Nothing).inspect_err(|e| error!("Error closing WinDivert: {e}")); + + debug!("Closing routing queue (receive)..."); + let mut receive_queue_writer = self.receive_queue.write().await; + receive_queue_writer.close().await.inspect_err(|e| info!("Error closing receive tunnel queue: {e}")); + + debug!("Closing routing queue (send)..."); + let mut send_queue_writer = self.send_queue.write().await; + send_queue_writer.close().await.inspect_err(|e| info!("Error closing send tunnel queue: {e}")); + + debug!("Waiting for handle thread (receive)..."); + let receive_handle = replace(&mut self.receive_handle, None); + if let Some(thread) = receive_handle { + let result = thread.await.expect("WinDivert receive thread termination error!"); + result.inspect_err(|e| info!("WinDivert receive thread terminated with: {e}")); + } + + debug!("Waiting for handle thread (send)..."); + let send_handle = replace(&mut self.send_handle, None); + if let Some(thread) = send_handle { + let result = thread.await.expect("WinDivert send thread termination error!"); + result.inspect_err(|e| info!("WinDivert send thread terminated with: {e}")); + } + + debug!("Reverting DNS servers..."); + reset_dns_addresses(&self.dns_data).inspect_err(|e| error!("Error resetting DNS addresses: {e}")); + }); + } +} diff --git a/viridian/reef/shared_library/lib/viridian.rs b/viridian/reef/shared_library/lib/viridian.rs new file mode 100644 index 00000000..b072738a --- /dev/null +++ b/viridian/reef/shared_library/lib/viridian.rs @@ -0,0 +1,97 @@ +use std::net::Ipv4Addr; + +use futures::stream::{FuturesUnordered, StreamExt}; +use ipnet::Ipv4Net; +use log::{debug, info}; +use simple_error::{bail, SimpleError}; +use tokio::sync::oneshot::Receiver; +use tokio::{select, try_join}; + +use reeflib::bytes::ByteBuffer; +use reeflib::general::create_handle; +use reeflib::generated::SeasideWhirlpoolClientCertificate; +use reeflib::protocol::ProtocolType; +use reeflib::utils::{parse_address, parse_env, parse_str_env}; +use reeflib::viridian::{create_signal_handlers, DEFAULT_DNS_ADDRESS, DEFAULT_TUNNEL_ADDRESS, DEFAULT_TUNNEL_NAME, DEFAULT_TUNNEL_NETMASK}; +use reeflib::DynResult; + +use crate::tunnel::Tunnel; + +pub struct Viridian<'a> { + key: ByteBuffer<'a>, + token: ByteBuffer<'a>, + address: Ipv4Addr, + port: u16, + pub tunnel: Tunnel, + client_type: ProtocolType, + local_address: Ipv4Addr, + pub dns: Option, +} + +impl<'a> Viridian<'a> { + pub async fn new(certificate: SeasideWhirlpoolClientCertificate, protocol: ProtocolType) -> DynResult> { + let tunnel_name = parse_str_env("SEASIDE_TUNNEL_NAME", Some(DEFAULT_TUNNEL_NAME)); + let tunnel_address = parse_env("SEASIDE_TUNNEL_ADDRESS", Some(DEFAULT_TUNNEL_ADDRESS)); + let tunnel_netmask = parse_env("SEASIDE_TUNNEL_NETMASK", Some(DEFAULT_TUNNEL_NETMASK)); + + let tunnel_network = Ipv4Net::with_netmask(tunnel_address, tunnel_netmask)?; + if tunnel_address == tunnel_network.network() || tunnel_address == tunnel_network.broadcast() { + bail!("Tunnel address {tunnel_address} is reserved in tunnel network {tunnel_network}!"); + } + + let mut dns = Some(parse_address(&certificate.dns)?); + if dns.is_some_and(|a| a == DEFAULT_DNS_ADDRESS) { + dns = None; + } + + let port = match protocol { + ProtocolType::PORT => certificate.port_port as u16, + ProtocolType::TYPHOON => certificate.typhoon_port as u16, + }; + + let address = parse_address(&certificate.address)?; + debug!("Creating tunnel with seaside address {address}, tunnel name {tunnel_name}, tunnel network {tunnel_address}/{tunnel_netmask}..."); + let tunnel = Tunnel::new(address, &tunnel_name, tunnel_network).await?; + + let default_ip = tunnel.default_ip(); + Ok(Viridian { key: ByteBuffer::from(certificate.typhoon_public), token: ByteBuffer::from(certificate.token), address, port, tunnel, client_type: protocol, local_address: default_ip, dns }) + } + + pub async fn start(&mut self, receiver: &mut Receiver<()>) -> DynResult<()> { + debug!("Creating signal handlers..."); + let signals = create_signal_handlers()?; + let mut handlers = FuturesUnordered::new(); + for (mut signal, name) in signals { + handlers.push(async move { + signal.recv().await; + info!("Received {name} signal!"); + }); + } + + debug!("Creating protocol client handle..."); + let (mut send_handle, mut receive_handle, termination) = create_handle(&self.client_type, self.tunnel.clone(), self.tunnel.clone(), self.key.clone(), self.token.clone(), self.address, self.port, self.local_address).await?; + + debug!("Running VPN processes asynchronously..."); + let result = select! { + serr = &mut send_handle => Err(SimpleError::new(format!("Error in sending coroutine: {:#?}", serr.expect("Join error").expect_err("Infinite loop success")))), + rerr = &mut receive_handle => Err(SimpleError::new(format!("Error in receiving coroutine: {:#?}", rerr.expect("Join error").expect_err("Infinite loop success")))), + res = receiver => match res { + Ok(_) => Ok(()), + Err(err) => Err(SimpleError::new(format!("The loop exited with error: {err}"))), + }, + _ = handlers.next() => { + info!("Terminating gracefully..."); + Ok(()) + } + }; + + debug!("Waiting for background task termination..."); + let _ = termination.send(()).inspect_err(|_| debug!("Apparently all the background tasks have already terminated!")); + match try_join!(send_handle, receive_handle) { + Ok(_) => debug!("All the background tasks terminated successfully!"), + Err(res) => debug!("A background task failed with an error: {res}"), + } + + Ok(result?) + } +} diff --git a/viridian/reef/test_library/Cargo.toml b/viridian/reef/test_library/Cargo.toml new file mode 100644 index 00000000..4e02b39a --- /dev/null +++ b/viridian/reef/test_library/Cargo.toml @@ -0,0 +1,21 @@ +[package] +name = "reeftest" +version = "0.0.4" +edition = "2021" +description = "A production-ready SeasideVPN client for Linux and Windows" +authors = [ + "Alexander Sergeev " +] + + + +[dependencies] +regex = "^1.11.1" +simple-error = "^0.3.1" + + + +[lib] +name = "reeftest" +path = "lib/mod.rs" +crate-type = ["rlib"] diff --git a/viridian/reef/test_library/lib/mod.rs b/viridian/reef/test_library/lib/mod.rs new file mode 100644 index 00000000..77062cf3 --- /dev/null +++ b/viridian/reef/test_library/lib/mod.rs @@ -0,0 +1,2 @@ +mod tunnel; +pub use tunnel::*; diff --git a/viridian/reef/test_library/lib/tunnel/linux.rs b/viridian/reef/test_library/lib/tunnel/linux.rs new file mode 100644 index 00000000..667e6f4f --- /dev/null +++ b/viridian/reef/test_library/lib/tunnel/linux.rs @@ -0,0 +1,41 @@ +use std::error::Error; +use std::ffi::OsStr; +use std::net::Ipv4Addr; +use std::process::{Command, Stdio}; +use std::str::FromStr; + +use regex::Regex; +use simple_error::bail; + + +pub fn run_command, S: AsRef>(cmd: &str, args: I) -> Result<(String, String), Box> { + let cmd = match Command::new(cmd).args(args).stdout(Stdio::piped()).stderr(Stdio::piped()).spawn() { + Ok(res) => res, + Err(res) => bail!(res), + }; + let res = match cmd.wait_with_output() { + Ok(res) => res, + Err(res) => bail!(res), + }; + if res.status.success() { + Ok((String::from_utf8_lossy(&res.stdout).to_string(), String::from_utf8_lossy(&res.stderr).to_string())) + } else { + bail!(String::from_utf8_lossy(&res.stderr).to_string()) + } +} + +pub fn parse_route_info_from_output(route_output: &str) -> Result<(Option, Option, Option), Box> { + let destination_regex = Regex::new(r"^(?\S+)")?; + let destination_match = destination_regex.captures(route_output); + let destination_res = destination_match.and_then(|m| Some((&m["destination"]).to_string())); + + let device_regex = Regex::new(r"dev (?\S+)")?; + let device_match = device_regex.captures(route_output); + let device_res = device_match.and_then(|m| Some((&m["device"]).to_string())); + + let gateway_regex = Regex::new(r"via (?\d+\.\d+\.\d+\.\d+)")?; + let gateway_match = gateway_regex.captures(route_output); + let gateway_res = gateway_match.and_then(|m| Ipv4Addr::from_str(&m["gateway"]).ok()); + + Ok((destination_res, device_res, gateway_res)) +} diff --git a/viridian/reef/test_library/lib/tunnel/mod.rs b/viridian/reef/test_library/lib/tunnel/mod.rs new file mode 100644 index 00000000..09cc5ce1 --- /dev/null +++ b/viridian/reef/test_library/lib/tunnel/mod.rs @@ -0,0 +1,9 @@ +#[cfg(target_os = "linux")] +mod linux; +#[cfg(target_os = "linux")] +pub use linux::*; + +#[cfg(target_os = "windows")] +mod windows; +#[cfg(target_os = "windows")] +pub use windows::*; diff --git a/viridian/reef/test_library/lib/tunnel/windows.rs b/viridian/reef/test_library/lib/tunnel/windows.rs new file mode 100644 index 00000000..e69de29b From 101129e5d5c7e910802ebd7acccd11151d40fe7f Mon Sep 17 00:00:00 2001 From: pseusys Date: Thu, 30 Oct 2025 22:12:34 +0100 Subject: [PATCH 04/67] logs and settings --- viridian/barnacles/network-manager/Makefile | 9 +++ .../configuration/service.conf | 6 +- .../barnacles/network-manager/plugin/plugin.c | 69 ++++++++++++++----- .../barnacles/network-manager/plugin/plugin.h | 6 +- 4 files changed, 66 insertions(+), 24 deletions(-) diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index ef4aaa48..229fcfd3 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -89,6 +89,15 @@ install: build sudo systemctl restart NetworkManager .PHONY: install +run: install + cd $(SERVICE_DIR) +ifeq ($(BUILD_TYPE),debug) + sudo -E G_MESSAGES_DEBUG=all nm-$(PLUGIN_NAME)-service +else + sudo nm-$(PLUGIN_NAME)-service +endif +.PHONY: install + # Artifact cleaning: diff --git a/viridian/barnacles/network-manager/configuration/service.conf b/viridian/barnacles/network-manager/configuration/service.conf index 26f48d1a..1cab3d3c 100644 --- a/viridian/barnacles/network-manager/configuration/service.conf +++ b/viridian/barnacles/network-manager/configuration/service.conf @@ -1,14 +1,12 @@ - - + - diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index 58baf038..7ef6e5a6 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -1,4 +1,5 @@ #define _GNU_SOURCE + #include #include #include @@ -9,6 +10,7 @@ #include #include +#include #include #include "plugin.h" @@ -46,7 +48,7 @@ seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) g_set_error (error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, - "Failed to load libseaside: %s", dlerror()); + "Error loading libseaside: %s", dlerror()); return FALSE; } @@ -59,7 +61,7 @@ seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) g_set_error (error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, - "libseaside missing required symbols"); + "Error reading libseaside symbols"); dlclose(priv->lib_handle); priv->lib_handle = NULL; return FALSE; @@ -111,31 +113,41 @@ seaside_set_ip4_from_vpnconfig(NMVpnServicePlugin *plugin, const VPNConfig *cfg) static gboolean real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **error) { + g_debug("DBUS connect: Starting..."); NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); NMSettingVpn *s_vpn = nm_connection_get_setting_vpn(connection); if (!s_vpn) { + g_warning("DBUS connect: Error extracting settings"); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_INVALID_CONNECTION, - "No VPN setting present"); + "Error extracting settings"); return FALSE; } + g_debug("DBUS connect: Reading configuration data..."); const char *certificate = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); const char *protocol = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); if (!certificate) { + g_warning("DBUS connect: Error extracting 'certificate' parameter"); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, - "Missing 'certificate' parameter"); + "Error extracting 'certificate' parameter"); return FALSE; - } + } else g_debug("DBUS connect: Certificate parameter read: %s", certificate); + if (!protocol) { + g_warning("DBUS connect: Error extracting 'protocol' parameter"); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, - "Missing 'protocol' parameter"); + "Error extracting 'protocol' parameter"); return FALSE; - } + } else g_debug("DBUS connect: Protocol parameter read: %s", protocol); - if (!seaside_load_library(priv, error)) + if (!seaside_load_library(priv, error)) { + g_warning("DBUS connect: Error loading Seaside Reef DLL"); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, + "Error loading Seaside Reef DLL"); return FALSE; + } else g_debug("DBUS connect: Seaside Reef DLL loaded!"); VPNConfig cfg; memset(&cfg, 0, sizeof(cfg)); @@ -144,23 +156,29 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro char *err_string; /* Synchronous initialization: library fills VPNConfig */ + g_debug("DBUS connect: Initializing viridian..."); if (!priv->vpn_init(certificate, protocol, &cfg, &viridian, &err_string)) { - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "libseaside: vpn_init() failed: %s", err_string); + g_warning("DBUS connect: Error initializing viridian: %s", err_string); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error initializing viridian: %s", err_string); free(err_string); return FALSE; - } + } else g_debug("DBUS connect: Viridian initialized!"); /* Tell NetworkManager about the IP config we want applied */ + g_debug("DBUS connect: Setting IPv4 parameters..."); seaside_set_ip4_from_vpnconfig(plugin, &cfg); /* Start engine in background; pass plugin pointer so callbacks are instance-specific */ + g_debug("DBUS connect: Starting viridian..."); if (!priv->vpn_start(viridian, &priv->coordinator, &err_string)) { - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "libseaside: vpn_start() failed: %s", err_string); + g_warning("DBUS connect: Error starting viridian: %s", err_string); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error starting viridian: %s", err_string); free(err_string); return FALSE; - } + } else g_debug("DBUS connect: Viridian started!"); priv->running = TRUE; + g_debug("DBUS connect: Success!"); return TRUE; } @@ -168,21 +186,25 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro static gboolean real_disconnect(NMVpnServicePlugin *plugin, GError **error) { + g_debug("DBUS disconnect: Starting..."); NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); if (priv->coordinator && priv->running && priv->vpn_stop) { char *err_string; + g_debug("DBUS disconnect: Stopping SeasideVPN interface..."); if (!priv->vpn_stop(priv->coordinator, &err_string)) { - g_warning("libseaside: vpn_stop() returned false or failed: %s", err_string); + g_warning("DBUS disconnect: Error stopping SeasideVPN interface: %s", err_string); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_FAILED, "Error stopping SeasideVPN interface: %s", err_string); free(err_string); - } + } else g_debug("DBUS disconnect: SeasideVPN interface stopped successfully!"); priv->coordinator = NULL; priv->running = FALSE; - } + } else g_debug("DBUS disconnect: SeasideVPN interface was never run!"); nm_vpn_service_plugin_disconnect(plugin, NULL); + g_debug("DBUS disconnect: Success!"); return TRUE; } @@ -217,23 +239,36 @@ nm_seaside_plugin_new(void) NM_DBUS_SERVICE_SEASIDE, NULL); if (!plugin) { - g_warning("Failed to initialize plugin instance: %s", error ? error->message : "unknown"); + g_warning("Error creating SeasideVPN NM plugin: %s", error ? error->message : "unknown"); g_clear_error(&error); } return plugin; } +static gboolean +signal_handler (gpointer user_data) +{ + g_main_loop_quit (user_data); + return G_SOURCE_REMOVE; +} + /* Minimal main: instantiate plugin and run main loop */ int main(int argc, char *argv[]) { + g_debug("Starting SeasideVPN NM plugin..."); NMSeasidePlugin *plugin = nm_seaside_plugin_new(); if (!plugin) return EXIT_FAILURE; + g_debug("Starting SeasideVPN NM plugin main loop..."); GMainLoop *loop = g_main_loop_new(NULL, FALSE); g_signal_connect(plugin, "quit", G_CALLBACK(g_main_loop_quit), loop); + + g_unix_signal_add (SIGTERM, signal_handler, loop); + g_unix_signal_add (SIGINT, signal_handler, loop); g_main_loop_run(loop); - g_main_loop_unref(loop); + g_debug("SeasideVPN NM plugin main loop stopped!"); + g_main_loop_unref(loop); g_object_unref(plugin); return EXIT_SUCCESS; } diff --git a/viridian/barnacles/network-manager/plugin/plugin.h b/viridian/barnacles/network-manager/plugin/plugin.h index 23e9252f..9c64e98a 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.h +++ b/viridian/barnacles/network-manager/plugin/plugin.h @@ -5,9 +5,9 @@ #include #include -#define NM_DBUS_SERVICE_SEASIDE "org.freedesktop.NetworkManager.seaside" -#define NM_DBUS_INTERFACE_SEASIDE "org.freedesktop.NetworkManager.seaside" -#define NM_DBUS_PATH_SEASIDE "/org/freedesktop/NetworkManager/seaside" +#define NM_DBUS_SERVICE_SEASIDE "org.freedesktop.NetworkManager.seasidevpn" +#define NM_DBUS_INTERFACE_SEASIDE "org.freedesktop.NetworkManager.seasidevpn" +#define NM_DBUS_PATH_SEASIDE "/org/freedesktop/NetworkManager/seasidevpn" #define NM_SEASIDE_KEY_CERTIFICATE "certificate" #define NM_SEASIDE_KEY_PROTOCOL "protocol" From 5edd07d50f710eaa22619621c307c348ddebbc8d Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 01:21:09 +0100 Subject: [PATCH 05/67] renamed --- .github/workflows/build.yml | 4 +- bump-version.sh | 4 +- target/rust-analyzer/flycheck0/stderr | 10459 ++++++++++++++++ target/rust-analyzer/flycheck0/stdout | 357 + viridian/reef/Cargo.toml | 4 +- viridian/reef/Dockerfile | 8 +- viridian/reef/Makefile | 6 +- .../Cargo.toml | 7 +- .../{rust_library => common_library}/build.rs | 0 .../lib/bytes/buffer.rs | 0 .../lib/bytes/mod.rs | 0 .../lib/bytes/pool.rs | 0 .../lib/bytes/utils.rs | 0 .../lib/crypto/asymmetric.rs | 0 .../lib/crypto/mod.rs | 0 .../lib/crypto/symmetric.rs | 0 .../lib/general.rs | 0 .../lib/mod.rs | 0 .../lib/protocol/common.rs | 0 .../lib/protocol/mod.rs | 0 .../lib/protocol/port_client.rs | 0 .../lib/protocol/port_core.rs | 0 .../lib/protocol/typhoon_client.rs | 0 .../lib/protocol/typhoon_core.rs | 0 .../lib/protocol/utils.rs | 0 .../lib/rng.rs | 0 .../lib/runtime.rs | 0 .../lib/tunnel/linux.rs | 0 .../lib/tunnel/mod.rs | 0 .../lib}/tunnel/windows.rs | 0 .../lib/utils.rs | 0 .../lib/viridian/linux.rs | 0 .../lib/viridian/mod.rs | 0 .../lib/viridian/windows.rs | 0 .../tests/crypto/symmetric.rs | 0 .../tests/tunnel/linux.rs | 0 viridian/reef/shared_library/Cargo.toml | 8 +- viridian/reef/shared_library/build.rs | 2 +- .../Cargo.toml | 10 +- .../src/mod.rs | 0 .../src/tunnel/linux.rs | 0 .../src/tunnel/mod.rs | 0 .../src}/tunnel/windows.rs | 0 .../src/viridian.rs | 0 .../tests/tunnel/linux.rs | 0 viridian/reef/test_library/Cargo.toml | 5 +- 46 files changed, 10844 insertions(+), 30 deletions(-) create mode 100644 target/rust-analyzer/flycheck0/stderr create mode 100644 target/rust-analyzer/flycheck0/stdout rename viridian/reef/{rust_library => common_library}/Cargo.toml (89%) rename viridian/reef/{rust_library => common_library}/build.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/bytes/buffer.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/bytes/mod.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/bytes/pool.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/bytes/utils.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/crypto/asymmetric.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/crypto/mod.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/crypto/symmetric.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/general.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/mod.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/protocol/common.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/protocol/mod.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/protocol/port_client.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/protocol/port_core.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/protocol/typhoon_client.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/protocol/typhoon_core.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/protocol/utils.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/rng.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/runtime.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/tunnel/linux.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/tunnel/mod.rs (100%) rename viridian/reef/{cli_executable/src => common_library/lib}/tunnel/windows.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/utils.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/viridian/linux.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/viridian/mod.rs (100%) rename viridian/reef/{rust_library => common_library}/lib/viridian/windows.rs (100%) rename viridian/reef/{rust_library => common_library}/tests/crypto/symmetric.rs (100%) rename viridian/reef/{rust_library => common_library}/tests/tunnel/linux.rs (100%) rename viridian/reef/{cli_executable => standalone_executable}/Cargo.toml (74%) rename viridian/reef/{cli_executable => standalone_executable}/src/mod.rs (100%) rename viridian/reef/{cli_executable => standalone_executable}/src/tunnel/linux.rs (100%) rename viridian/reef/{cli_executable => standalone_executable}/src/tunnel/mod.rs (100%) rename viridian/reef/{rust_library/lib => standalone_executable/src}/tunnel/windows.rs (100%) rename viridian/reef/{cli_executable => standalone_executable}/src/viridian.rs (100%) rename viridian/reef/{cli_executable => standalone_executable}/tests/tunnel/linux.rs (100%) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e5d472b1..e3372ff5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -148,12 +148,12 @@ jobs: with: command: build use-cross: true - args: --release --features cli-exec --bin cli --manifest-path viridian/reef/Cargo.toml --target ${{ env.TARGET }} + args: --release --bin seaside_standalone --manifest-path viridian/reef/Cargo.toml --target ${{ env.TARGET }} - name: Rename Executable ๐Ÿ“› working-directory: viridian/reef env: - EXEC_SRC: ${{ matrix.os == 'linux' && 'cli' || 'cli.exe' }} + EXEC_SRC: ${{ matrix.os == 'linux' && 'seaside_standalone' || 'seaside_standalone.exe' }} EXEC_STEM: ${{ format('viridian_reef_executable_{0}_{1}', matrix.os, matrix.arch) }} EXEC_EXT: ${{ matrix.os == 'linux' && 'run' || 'exe' }} run: mv target/${{ env.TARGET }}/release/${{ env.EXEC_SRC }} target/${{ env.EXEC_STEM }}.${{ env.EXEC_EXT }} diff --git a/bump-version.sh b/bump-version.sh index b4da8bfa..87d9c21a 100644 --- a/bump-version.sh +++ b/bump-version.sh @@ -31,9 +31,9 @@ VERSIONED_FILES=( "viridian/algae/README.md" \ "viridian/algae/sources/version.py" \ "viridian/algae/setup/whirlpool.py" \ - "viridian/reef/cli_executable/Cargo.toml" \ - "viridian/reef/rust_library/Cargo.toml" \ + "viridian/reef/common_library/Cargo.toml" \ "viridian/reef/shared_library/Cargo.toml" \ + "viridian/reef/standalone_executable/Cargo.toml" \ "viridian/reef/test_library/Cargo.toml" \ "viridian/reef/README.md" \ "caerulean/whirlpool/README.md" \ diff --git a/target/rust-analyzer/flycheck0/stderr b/target/rust-analyzer/flycheck0/stderr new file mode 100644 index 00000000..acf5bb2d --- /dev/null +++ b/target/rust-analyzer/flycheck0/stderr @@ -0,0 +1,10459 @@ + 0.309199368s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/Check { test: false }/TargetInner { ..: lib_target("reeflib", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs", Edition2021) } + 0.309258184s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-54a5191d4adfea8f/lib-reeflib` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 16: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 17: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + 0.409112877s INFO prepare_target{force=false package_id=bincode v2.0.1 target="bincode"}: cargo::core::compiler::fingerprint: fingerprint error for bincode v2.0.1/Check { test: false }/TargetInner { ..: lib_target("bincode", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/src/lib.rs", Edition2021) } + 0.409131743s INFO prepare_target{force=false package_id=bincode v2.0.1 target="bincode"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bincode-4fc25cbeb6814d13/lib-bincode` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.409419213s INFO prepare_target{force=false package_id=unty v0.0.4 target="unty"}: cargo::core::compiler::fingerprint: fingerprint error for unty v0.0.4/Check { test: false }/TargetInner { ..: lib_target("unty", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/src/lib.rs", Edition2021) } + 0.409427628s INFO prepare_target{force=false package_id=unty v0.0.4 target="unty"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/unty-b861bb6d60654d2f/lib-unty` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.409558845s INFO prepare_target{force=false package_id=blake2 v0.10.6 target="blake2"}: cargo::core::compiler::fingerprint: fingerprint error for blake2 v0.10.6/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("blake2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/src/lib.rs", Edition2018) } + 0.409565267s INFO prepare_target{force=false package_id=blake2 v0.10.6 target="blake2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/blake2-f320066c6811652a/lib-blake2` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.409713315s INFO prepare_target{force=false package_id=digest v0.10.7 target="digest"}: cargo::core::compiler::fingerprint: fingerprint error for digest v0.10.7/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("digest", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/src/lib.rs", Edition2018) } + 0.409718919s INFO prepare_target{force=false package_id=digest v0.10.7 target="digest"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/digest-6d69658abfb2c0a7/lib-digest` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.409887047s INFO prepare_target{force=false package_id=block-buffer v0.10.4 target="block_buffer"}: cargo::core::compiler::fingerprint: fingerprint error for block-buffer v0.10.4/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("block_buffer", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/src/lib.rs", Edition2018) } + 0.409893334s INFO prepare_target{force=false package_id=block-buffer v0.10.4 target="block_buffer"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/block-buffer-ad2318787366fd12/lib-block_buffer` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.410037877s INFO prepare_target{force=false package_id=generic-array v0.14.7 target="generic_array"}: cargo::core::compiler::fingerprint: fingerprint error for generic-array v0.14.7/Check { test: false }/TargetInner { ..: lib_target("generic_array", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/src/lib.rs", Edition2015) } + 0.410044976s INFO prepare_target{force=false package_id=generic-array v0.14.7 target="generic_array"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/generic-array-c6013b63fa532f39/lib-generic_array` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.410510349s INFO prepare_target{force=false package_id=crypto-common v0.1.6 target="crypto_common"}: cargo::core::compiler::fingerprint: fingerprint error for crypto-common v0.1.6/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("crypto_common", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/src/lib.rs", Edition2018) } + 0.410519499s INFO prepare_target{force=false package_id=crypto-common v0.1.6 target="crypto_common"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/crypto-common-c3de8cd3053d8b64/lib-crypto_common` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.410727247s INFO prepare_target{force=false package_id=rand_core v0.6.4 target="rand_core"}: cargo::core::compiler::fingerprint: fingerprint error for rand_core v0.6.4/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("rand_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs", Edition2018) } + 0.410734297s INFO prepare_target{force=false package_id=rand_core v0.6.4 target="rand_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand_core-8d89bdb5175672ac/lib-rand_core` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.410881668s INFO prepare_target{force=false package_id=getrandom v0.2.16 target="getrandom"}: cargo::core::compiler::fingerprint: fingerprint error for getrandom v0.2.16/Check { test: false }/TargetInner { ..: lib_target("getrandom", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/src/lib.rs", Edition2018) } + 0.410887542s INFO prepare_target{force=false package_id=getrandom v0.2.16 target="getrandom"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/getrandom-ec916316e169bc33/lib-getrandom` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.411082085s INFO prepare_target{force=false package_id=libc v0.2.174 target="libc"}: cargo::core::compiler::fingerprint: fingerprint error for libc v0.2.174/Check { test: false }/TargetInner { ..: lib_target("libc", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/src/lib.rs", Edition2021) } + 0.411089240s INFO prepare_target{force=false package_id=libc v0.2.174 target="libc"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/libc-c7810272c07fcfac/lib-libc` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.411360292s INFO prepare_target{force=false package_id=subtle v2.6.1 target="subtle"}: cargo::core::compiler::fingerprint: fingerprint error for subtle v2.6.1/Check { test: false }/TargetInner { ..: lib_target("subtle", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs", Edition2018) } + 0.411367849s INFO prepare_target{force=false package_id=subtle v2.6.1 target="subtle"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/subtle-8c24189f00ebf9a9/lib-subtle` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.411494050s INFO prepare_target{force=false package_id=bytes v1.10.1 target="bytes"}: cargo::core::compiler::fingerprint: fingerprint error for bytes v1.10.1/Check { test: false }/TargetInner { ..: lib_target("bytes", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs", Edition2018) } + 0.411499966s INFO prepare_target{force=false package_id=bytes v1.10.1 target="bytes"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bytes-b94b70994929e7fa/lib-bytes` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.411614996s INFO prepare_target{force=false package_id=cached v0.56.0 target="cached"}: cargo::core::compiler::fingerprint: fingerprint error for cached v0.56.0/Check { test: false }/TargetInner { ..: lib_target("cached", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/src/lib.rs", Edition2018) } + 0.411620339s INFO prepare_target{force=false package_id=cached v0.56.0 target="cached"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cached-ba2ece28dd432665/lib-cached` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.411881821s INFO prepare_target{force=false package_id=ahash v0.8.12 target="ahash"}: cargo::core::compiler::fingerprint: fingerprint error for ahash v0.8.12/Check { test: false }/TargetInner { ..: lib_target("ahash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/src/lib.rs", Edition2018) } + 0.411888175s INFO prepare_target{force=false package_id=ahash v0.8.12 target="ahash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ahash-19020da8681f2f43/lib-ahash` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.412188156s INFO prepare_target{force=false package_id=once_cell v1.21.3 target="once_cell"}: cargo::core::compiler::fingerprint: fingerprint error for once_cell v1.21.3/Check { test: false }/TargetInner { ..: lib_target("once_cell", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/src/lib.rs", Edition2021) } + 0.412196119s INFO prepare_target{force=false package_id=once_cell v1.21.3 target="once_cell"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/once_cell-0405b17b6fd897ff/lib-once_cell` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.412336177s INFO prepare_target{force=false package_id=zerocopy v0.8.26 target="zerocopy"}: cargo::core::compiler::fingerprint: fingerprint error for zerocopy v0.8.26/Check { test: false }/TargetInner { ..: lib_target("zerocopy", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/src/lib.rs", Edition2021) } + 0.412342008s INFO prepare_target{force=false package_id=zerocopy v0.8.26 target="zerocopy"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/zerocopy-cec54beb6f6b980a/lib-zerocopy` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.416792706s INFO prepare_target{force=false package_id=cached_proc_macro_types v0.1.1 target="cached_proc_macro_types"}: cargo::core::compiler::fingerprint: fingerprint error for cached_proc_macro_types v0.1.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("cached_proc_macro_types", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/src/lib.rs", Edition2018) } + 0.416817418s INFO prepare_target{force=false package_id=cached_proc_macro_types v0.1.1 target="cached_proc_macro_types"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cached_proc_macro_types-c3003365b7efe797/lib-cached_proc_macro_types` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.417101749s INFO prepare_target{force=false package_id=hashbrown v0.15.4 target="hashbrown"}: cargo::core::compiler::fingerprint: fingerprint error for hashbrown v0.15.4/Check { test: false }/TargetInner { ..: lib_target("hashbrown", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/src/lib.rs", Edition2021) } + 0.417114943s INFO prepare_target{force=false package_id=hashbrown v0.15.4 target="hashbrown"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/hashbrown-285765d29e339db4/lib-hashbrown` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.417381964s INFO prepare_target{force=false package_id=allocator-api2 v0.2.21 target="allocator_api2"}: cargo::core::compiler::fingerprint: fingerprint error for allocator-api2 v0.2.21/Check { test: false }/TargetInner { ..: lib_target("allocator_api2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/src/lib.rs", Edition2018) } + 0.417391807s INFO prepare_target{force=false package_id=allocator-api2 v0.2.21 target="allocator_api2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/allocator-api2-a3943f72dc59f3d7/lib-allocator_api2` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.417571044s INFO prepare_target{force=false package_id=equivalent v1.0.2 target="equivalent"}: cargo::core::compiler::fingerprint: fingerprint error for equivalent v1.0.2/Check { test: false }/TargetInner { ..: lib_target("equivalent", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/src/lib.rs", Edition2015) } + 0.417579414s INFO prepare_target{force=false package_id=equivalent v1.0.2 target="equivalent"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/equivalent-8b054abaa056da40/lib-equivalent` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.417738288s INFO prepare_target{force=false package_id=foldhash v0.1.5 target="foldhash"}: cargo::core::compiler::fingerprint: fingerprint error for foldhash v0.1.5/Check { test: false }/TargetInner { benched: false, ..: lib_target("foldhash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/src/lib.rs", Edition2021) } + 0.417746328s INFO prepare_target{force=false package_id=foldhash v0.1.5 target="foldhash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/foldhash-b8b2147ed938ea6b/lib-foldhash` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.417904168s INFO prepare_target{force=false package_id=thiserror v2.0.16 target="thiserror"}: cargo::core::compiler::fingerprint: fingerprint error for thiserror v2.0.16/Check { test: false }/TargetInner { ..: lib_target("thiserror", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/src/lib.rs", Edition2021) } + 0.417912552s INFO prepare_target{force=false package_id=thiserror v2.0.16 target="thiserror"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/thiserror-de5002768cda0ab4/lib-thiserror` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.418340837s INFO prepare_target{force=false package_id=web-time v1.1.0 target="web_time"}: cargo::core::compiler::fingerprint: fingerprint error for web-time v1.1.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("web_time", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/src/lib.rs", Edition2021) } + 0.418350984s INFO prepare_target{force=false package_id=web-time v1.1.0 target="web_time"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/web-time-24b1fb3bbf605364/lib-web_time` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.418529686s INFO prepare_target{force=false package_id=chacha20poly1305 v0.10.1 target="chacha20poly1305"}: cargo::core::compiler::fingerprint: fingerprint error for chacha20poly1305 v0.10.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("chacha20poly1305", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/src/lib.rs", Edition2021) } + 0.418538477s INFO prepare_target{force=false package_id=chacha20poly1305 v0.10.1 target="chacha20poly1305"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/chacha20poly1305-ac0432852e76f5b1/lib-chacha20poly1305` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.418841644s INFO prepare_target{force=false package_id=aead v0.5.2 target="aead"}: cargo::core::compiler::fingerprint: fingerprint error for aead v0.5.2/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("aead", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/src/lib.rs", Edition2021) } + 0.418855681s INFO prepare_target{force=false package_id=aead v0.5.2 target="aead"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/aead-3c5ca3fd7a515c7b/lib-aead` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.419110828s INFO prepare_target{force=false package_id=chacha20 v0.9.1 target="chacha20"}: cargo::core::compiler::fingerprint: fingerprint error for chacha20 v0.9.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("chacha20", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/src/lib.rs", Edition2021) } + 0.419120171s INFO prepare_target{force=false package_id=chacha20 v0.9.1 target="chacha20"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/chacha20-dec7dcb0dc846433/lib-chacha20` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.419358661s INFO prepare_target{force=false package_id=cipher v0.4.4 target="cipher"}: cargo::core::compiler::fingerprint: fingerprint error for cipher v0.4.4/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("cipher", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/src/lib.rs", Edition2021) } + 0.419366992s INFO prepare_target{force=false package_id=cipher v0.4.4 target="cipher"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cipher-fdf453fde210cb68/lib-cipher` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.419606538s INFO prepare_target{force=false package_id=inout v0.1.4 target="inout"}: cargo::core::compiler::fingerprint: fingerprint error for inout v0.1.4/Check { test: false }/TargetInner { ..: lib_target("inout", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/src/lib.rs", Edition2021) } + 0.419614445s INFO prepare_target{force=false package_id=inout v0.1.4 target="inout"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/inout-1acf64b9352ccb88/lib-inout` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.419781213s INFO prepare_target{force=false package_id=zeroize v1.8.1 target="zeroize"}: cargo::core::compiler::fingerprint: fingerprint error for zeroize v1.8.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("zeroize", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs", Edition2021) } + 0.419789043s INFO prepare_target{force=false package_id=zeroize v1.8.1 target="zeroize"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/zeroize-48d0b7b0df8599a0/lib-zeroize` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.420361501s INFO prepare_target{force=false package_id=cpufeatures v0.2.17 target="cpufeatures"}: cargo::core::compiler::fingerprint: fingerprint error for cpufeatures v0.2.17/Check { test: false }/TargetInner { ..: lib_target("cpufeatures", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/src/lib.rs", Edition2018) } + 0.420383134s INFO prepare_target{force=false package_id=cpufeatures v0.2.17 target="cpufeatures"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cpufeatures-45c28af12c96235b/lib-cpufeatures` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.420602972s INFO prepare_target{force=false package_id=poly1305 v0.8.0 target="poly1305"}: cargo::core::compiler::fingerprint: fingerprint error for poly1305 v0.8.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("poly1305", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/src/lib.rs", Edition2021) } + 0.420612123s INFO prepare_target{force=false package_id=poly1305 v0.8.0 target="poly1305"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/poly1305-8a727c378b5335d8/lib-poly1305` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.420858034s INFO prepare_target{force=false package_id=opaque-debug v0.3.1 target="opaque_debug"}: cargo::core::compiler::fingerprint: fingerprint error for opaque-debug v0.3.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("opaque_debug", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/src/lib.rs", Edition2018) } + 0.420868506s INFO prepare_target{force=false package_id=opaque-debug v0.3.1 target="opaque_debug"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/opaque-debug-1e3af4630ac62466/lib-opaque_debug` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.421007267s INFO prepare_target{force=false package_id=universal-hash v0.5.1 target="universal_hash"}: cargo::core::compiler::fingerprint: fingerprint error for universal-hash v0.5.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("universal_hash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/src/lib.rs", Edition2021) } + 0.421015017s INFO prepare_target{force=false package_id=universal-hash v0.5.1 target="universal_hash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/universal-hash-27be24bf1711139f/lib-universal_hash` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.421227799s INFO prepare_target{force=false package_id=futures v0.3.31 target="futures"}: cargo::core::compiler::fingerprint: fingerprint error for futures v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs", Edition2018) } + 0.421235845s INFO prepare_target{force=false package_id=futures v0.3.31 target="futures"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-f7ba99dab821e3ba/lib-futures` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.421537039s INFO prepare_target{force=false package_id=futures-channel v0.3.31 target="futures_channel"}: cargo::core::compiler::fingerprint: fingerprint error for futures-channel v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_channel", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs", Edition2018) } + 0.421545514s INFO prepare_target{force=false package_id=futures-channel v0.3.31 target="futures_channel"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-channel-96abd665e28a5745/lib-futures_channel` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.421785745s INFO prepare_target{force=false package_id=futures-executor v0.3.31 target="futures_executor"}: cargo::core::compiler::fingerprint: fingerprint error for futures-executor v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_executor", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs", Edition2018) } + 0.421794186s INFO prepare_target{force=false package_id=futures-executor v0.3.31 target="futures_executor"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-executor-c393b6eb19dc9217/lib-futures_executor` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.422057650s INFO prepare_target{force=false package_id=futures-task v0.3.31 target="futures_task"}: cargo::core::compiler::fingerprint: fingerprint error for futures-task v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_task", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs", Edition2018) } + 0.422067720s INFO prepare_target{force=false package_id=futures-task v0.3.31 target="futures_task"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-task-de234338db6d77e0/lib-futures_task` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.422211892s INFO prepare_target{force=false package_id=futures-util v0.3.31 target="futures_util"}: cargo::core::compiler::fingerprint: fingerprint error for futures-util v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_util", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs", Edition2018) } + 0.422219727s INFO prepare_target{force=false package_id=futures-util v0.3.31 target="futures_util"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-util-ffd04c7de8db851f/lib-futures_util` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.422559059s INFO prepare_target{force=false package_id=futures-io v0.3.31 target="futures_io"}: cargo::core::compiler::fingerprint: fingerprint error for futures-io v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_io", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs", Edition2018) } + 0.422566985s INFO prepare_target{force=false package_id=futures-io v0.3.31 target="futures_io"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-io-e3b15e990b506d86/lib-futures_io` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.423187855s INFO prepare_target{force=false package_id=pin-utils v0.1.0 target="pin_utils"}: cargo::core::compiler::fingerprint: fingerprint error for pin-utils v0.1.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("pin_utils", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs", Edition2018) } + 0.423209634s INFO prepare_target{force=false package_id=pin-utils v0.1.0 target="pin_utils"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/pin-utils-419b4dfb91fea471/lib-pin_utils` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.423441534s INFO prepare_target{force=false package_id=slab v0.4.10 target="slab"}: cargo::core::compiler::fingerprint: fingerprint error for slab v0.4.10/Check { test: false }/TargetInner { ..: lib_target("slab", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/src/lib.rs", Edition2018) } + 0.423450998s INFO prepare_target{force=false package_id=slab v0.4.10 target="slab"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/slab-06b21a35c2c242c5/lib-slab` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.423612657s INFO prepare_target{force=false package_id=ipnet v2.11.0 target="ipnet"}: cargo::core::compiler::fingerprint: fingerprint error for ipnet v2.11.0/Check { test: false }/TargetInner { ..: lib_target("ipnet", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs", Edition2018) } + 0.423620344s INFO prepare_target{force=false package_id=ipnet v2.11.0 target="ipnet"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ipnet-4fc83dc2fc2c3f86/lib-ipnet` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.423762237s INFO prepare_target{force=false package_id=lazy_static v1.5.0 target="lazy_static"}: cargo::core::compiler::fingerprint: fingerprint error for lazy_static v1.5.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("lazy_static", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/src/lib.rs", Edition2015) } + 0.423769241s INFO prepare_target{force=false package_id=lazy_static v1.5.0 target="lazy_static"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/lazy_static-5f1438d28b1de877/lib-lazy_static` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.423899350s INFO prepare_target{force=false package_id=log v0.4.28 target="log"}: cargo::core::compiler::fingerprint: fingerprint error for log v0.4.28/Check { test: false }/TargetInner { ..: lib_target("log", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/src/lib.rs", Edition2021) } + 0.423911730s INFO prepare_target{force=false package_id=log v0.4.28 target="log"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/log-b1b44ca0b8607405/lib-log` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.424047540s INFO prepare_target{force=false package_id=nftables v0.6.3 target="nftables"}: cargo::core::compiler::fingerprint: fingerprint error for nftables v0.6.3/Check { test: false }/TargetInner { ..: lib_target("nftables", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/src/lib.rs", Edition2021) } + 0.424054346s INFO prepare_target{force=false package_id=nftables v0.6.3 target="nftables"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nftables-a2c8ab2480f8c046/lib-nftables` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.424369241s INFO prepare_target{force=false package_id=schemars v1.0.4 target="schemars"}: cargo::core::compiler::fingerprint: fingerprint error for schemars v1.0.4/Check { test: false }/TargetInner { ..: lib_target("schemars", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/src/lib.rs", Edition2021) } + 0.424378263s INFO prepare_target{force=false package_id=schemars v1.0.4 target="schemars"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/schemars-28dd6ca661184b4f/lib-schemars` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.424635143s INFO prepare_target{force=false package_id=dyn-clone v1.0.20 target="dyn_clone"}: cargo::core::compiler::fingerprint: fingerprint error for dyn-clone v1.0.20/Check { test: false }/TargetInner { ..: lib_target("dyn_clone", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/src/lib.rs", Edition2018) } + 0.424642100s INFO prepare_target{force=false package_id=dyn-clone v1.0.20 target="dyn_clone"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/dyn-clone-73b7f0f7c963e684/lib-dyn_clone` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.424764649s INFO prepare_target{force=false package_id=ref-cast v1.0.24 target="ref_cast"}: cargo::core::compiler::fingerprint: fingerprint error for ref-cast v1.0.24/Check { test: false }/TargetInner { ..: lib_target("ref_cast", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/src/lib.rs", Edition2021) } + 0.424773050s INFO prepare_target{force=false package_id=ref-cast v1.0.24 target="ref_cast"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ref-cast-ab18a8289a63813f/lib-ref_cast` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.425804576s INFO prepare_target{force=false package_id=serde v1.0.228 target="serde"}: cargo::core::compiler::fingerprint: fingerprint error for serde v1.0.228/Check { test: false }/TargetInner { ..: lib_target("serde", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs", Edition2021) } + 0.425825947s INFO prepare_target{force=false package_id=serde v1.0.228 target="serde"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde-aeff35667dd51f7a/lib-serde` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.426315411s INFO prepare_target{force=false package_id=serde_core v1.0.228 target="serde_core"}: cargo::core::compiler::fingerprint: fingerprint error for serde_core v1.0.228/Check { test: false }/TargetInner { ..: lib_target("serde_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs", Edition2021) } + 0.426328466s INFO prepare_target{force=false package_id=serde_core v1.0.228 target="serde_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_core-433d322c7f81f4fc/lib-serde_core` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.426926891s INFO prepare_target{force=false package_id=serde_json v1.0.143 target="serde_json"}: cargo::core::compiler::fingerprint: fingerprint error for serde_json v1.0.143/Check { test: false }/TargetInner { ..: lib_target("serde_json", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/src/lib.rs", Edition2021) } + 0.426942115s INFO prepare_target{force=false package_id=serde_json v1.0.143 target="serde_json"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_json-4747f3729f44e87c/lib-serde_json` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.427244800s INFO prepare_target{force=false package_id=itoa v1.0.15 target="itoa"}: cargo::core::compiler::fingerprint: fingerprint error for itoa v1.0.15/Check { test: false }/TargetInner { ..: lib_target("itoa", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs", Edition2018) } + 0.427257290s INFO prepare_target{force=false package_id=itoa v1.0.15 target="itoa"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/itoa-7a0919d71cb7f92c/lib-itoa` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.427434281s INFO prepare_target{force=false package_id=ryu v1.0.20 target="ryu"}: cargo::core::compiler::fingerprint: fingerprint error for ryu v1.0.20/Check { test: false }/TargetInner { ..: lib_target("ryu", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs", Edition2018) } + 0.427443425s INFO prepare_target{force=false package_id=ryu v1.0.20 target="ryu"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ryu-9d8193471ee70b21/lib-ryu` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.427751060s INFO prepare_target{force=false package_id=serde_path_to_error v0.1.17 target="serde_path_to_error"}: cargo::core::compiler::fingerprint: fingerprint error for serde_path_to_error v0.1.17/Check { test: false }/TargetInner { ..: lib_target("serde_path_to_error", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/src/lib.rs", Edition2021) } + 0.427760861s INFO prepare_target{force=false package_id=serde_path_to_error v0.1.17 target="serde_path_to_error"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_path_to_error-d9a78dbb2f3fe050/lib-serde_path_to_error` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.427983436s INFO prepare_target{force=false package_id=strum v0.27.2 target="strum"}: cargo::core::compiler::fingerprint: fingerprint error for strum v0.27.2/Check { test: false }/TargetInner { ..: lib_target("strum", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/src/lib.rs", Edition2021) } + 0.427992685s INFO prepare_target{force=false package_id=strum v0.27.2 target="strum"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/strum-a83a57a24a7a9abf/lib-strum` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.428373051s INFO prepare_target{force=false package_id=num_enum v0.7.4 target="num_enum"}: cargo::core::compiler::fingerprint: fingerprint error for num_enum v0.7.4/Check { test: false }/TargetInner { ..: lib_target("num_enum", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/src/lib.rs", Edition2021) } + 0.428384208s INFO prepare_target{force=false package_id=num_enum v0.7.4 target="num_enum"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/num_enum-cc5661252c4b33d5/lib-num_enum` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.428629906s INFO prepare_target{force=false package_id=num_enum_derive v0.7.4 target="num_enum_derive"}: cargo::core::compiler::fingerprint: fingerprint error for num_enum_derive v0.7.4/Build/TargetInner { for_host: true, proc_macro: true, ..: lib_target("num_enum_derive", ["proc-macro"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum_derive-0.7.4/src/lib.rs", Edition2021) } + 0.428640347s INFO prepare_target{force=false package_id=num_enum_derive v0.7.4 target="num_enum_derive"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/num_enum_derive-ba58a006c80df9bc/lib-num_enum_derive` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.428911407s INFO prepare_target{force=false package_id=proc-macro-crate v3.3.0 target="proc_macro_crate"}: cargo::core::compiler::fingerprint: fingerprint error for proc-macro-crate v3.3.0/Build/TargetInner { ..: lib_target("proc_macro_crate", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-crate-3.3.0/src/lib.rs", Edition2021) } + 0.428920982s INFO prepare_target{force=false package_id=proc-macro-crate v3.3.0 target="proc_macro_crate"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/proc-macro-crate-dc5a4ab583a5c64e/lib-proc_macro_crate` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.429124820s INFO prepare_target{force=false package_id=toml_edit v0.22.27 target="toml_edit"}: cargo::core::compiler::fingerprint: fingerprint error for toml_edit v0.22.27/Build/TargetInner { ..: lib_target("toml_edit", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_edit-0.22.27/src/lib.rs", Edition2021) } + 0.429134984s INFO prepare_target{force=false package_id=toml_edit v0.22.27 target="toml_edit"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/toml_edit-723aaec0f43b5a6e/lib-toml_edit` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.429389404s INFO prepare_target{force=false package_id=indexmap v2.12.0 target="indexmap"}: cargo::core::compiler::fingerprint: fingerprint error for indexmap v2.12.0/Build/TargetInner { benched: false, ..: lib_target("indexmap", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.12.0/src/lib.rs", Edition2021) } + 0.429398841s INFO prepare_target{force=false package_id=indexmap v2.12.0 target="indexmap"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/indexmap-5b1fb49443fbeb16/lib-indexmap` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.430048181s INFO prepare_target{force=false package_id=prost v0.14.1 target="prost"}: cargo::core::compiler::fingerprint: fingerprint error for prost v0.14.1/Check { test: false }/TargetInner { benched: false, ..: lib_target("prost", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/src/lib.rs", Edition2021) } + 0.430071099s INFO prepare_target{force=false package_id=prost v0.14.1 target="prost"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/prost-335cbf92e8a4938b/lib-prost` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.430681572s INFO prepare_target{force=false package_id=rand v0.8.5 target="rand"}: cargo::core::compiler::fingerprint: fingerprint error for rand v0.8.5/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("rand", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/src/lib.rs", Edition2018) } + 0.430694056s INFO prepare_target{force=false package_id=rand v0.8.5 target="rand"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand-e6ec704b1c86552f/lib-rand` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.430962243s INFO prepare_target{force=false package_id=rand_chacha v0.3.1 target="rand_chacha"}: cargo::core::compiler::fingerprint: fingerprint error for rand_chacha v0.3.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("rand_chacha", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/src/lib.rs", Edition2018) } + 0.430972803s INFO prepare_target{force=false package_id=rand_chacha v0.3.1 target="rand_chacha"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand_chacha-194eb116b9ef7393/lib-rand_chacha` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.431198488s INFO prepare_target{force=false package_id=ppv-lite86 v0.2.21 target="ppv_lite86"}: cargo::core::compiler::fingerprint: fingerprint error for ppv-lite86 v0.2.21/Check { test: false }/TargetInner { ..: lib_target("ppv_lite86", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/src/lib.rs", Edition2021) } + 0.431207433s INFO prepare_target{force=false package_id=ppv-lite86 v0.2.21 target="ppv_lite86"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ppv-lite86-1e6368468c918bef/lib-ppv_lite86` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.431504888s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="build-script-build"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/RunCustomBuild/TargetInner { ..: custom_build_target("build-script-build", "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/build.rs", Edition2021) } + 0.431515935s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="build-script-build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-08b7a45284a9c032/run-build-script-build-script-build` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::custom_build::build_work + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.431689352s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="build-script-build"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/Build/TargetInner { ..: custom_build_target("build-script-build", "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/build.rs", Edition2021) } + 0.431698728s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="build-script-build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-1f0288bba220e2c3/build-script-build-script-build` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.432073986s INFO prepare_target{force=false package_id=prost-build v0.14.1 target="prost_build"}: cargo::core::compiler::fingerprint: fingerprint error for prost-build v0.14.1/Build/TargetInner { ..: lib_target("prost_build", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-build-0.14.1/src/lib.rs", Edition2021) } + 0.432084123s INFO prepare_target{force=false package_id=prost-build v0.14.1 target="prost_build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/prost-build-872abc6c82f22d56/lib-prost_build` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.432610983s INFO prepare_target{force=false package_id=petgraph v0.7.1 target="petgraph"}: cargo::core::compiler::fingerprint: fingerprint error for petgraph v0.7.1/Build/TargetInner { benched: false, ..: lib_target("petgraph", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/petgraph-0.7.1/src/lib.rs", Edition2018) } + 0.432621349s INFO prepare_target{force=false package_id=petgraph v0.7.1 target="petgraph"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/petgraph-6108b0ce5725b5ab/lib-petgraph` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.433006442s INFO prepare_target{force=false package_id=prost v0.14.1 target="prost"}: cargo::core::compiler::fingerprint: fingerprint error for prost v0.14.1/Build/TargetInner { benched: false, ..: lib_target("prost", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/src/lib.rs", Edition2021) } + 0.433014984s INFO prepare_target{force=false package_id=prost v0.14.1 target="prost"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/prost-063961c2f74ccd33/lib-prost` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.433252737s INFO prepare_target{force=false package_id=bytes v1.10.1 target="bytes"}: cargo::core::compiler::fingerprint: fingerprint error for bytes v1.10.1/Build/TargetInner { ..: lib_target("bytes", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs", Edition2018) } + 0.433260670s INFO prepare_target{force=false package_id=bytes v1.10.1 target="bytes"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bytes-e3cb6e9c42ffc25b/lib-bytes` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.433400027s INFO prepare_target{force=false package_id=prost-types v0.14.1 target="prost_types"}: cargo::core::compiler::fingerprint: fingerprint error for prost-types v0.14.1/Build/TargetInner { doctest: false, ..: lib_target("prost_types", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-types-0.14.1/src/lib.rs", Edition2021) } + 0.433407191s INFO prepare_target{force=false package_id=prost-types v0.14.1 target="prost_types"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/prost-types-3b731a45ba3a0f01/lib-prost_types` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.433566606s INFO prepare_target{force=false package_id=regex v1.11.3 target="regex"}: cargo::core::compiler::fingerprint: fingerprint error for regex v1.11.3/Build/TargetInner { ..: lib_target("regex", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs", Edition2021) } + 0.433573015s INFO prepare_target{force=false package_id=regex v1.11.3 target="regex"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-76bf2da928d04ed4/lib-regex` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.433786583s INFO prepare_target{force=false package_id=aho-corasick v1.1.3 target="aho_corasick"}: cargo::core::compiler::fingerprint: fingerprint error for aho-corasick v1.1.3/Build/TargetInner { ..: lib_target("aho_corasick", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs", Edition2021) } + 0.433794704s INFO prepare_target{force=false package_id=aho-corasick v1.1.3 target="aho_corasick"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/aho-corasick-fcf8b756b0993101/lib-aho_corasick` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.433952679s INFO prepare_target{force=false package_id=memchr v2.7.5 target="memchr"}: cargo::core::compiler::fingerprint: fingerprint error for memchr v2.7.5/Build/TargetInner { benched: false, ..: lib_target("memchr", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/src/lib.rs", Edition2021) } + 0.433959252s INFO prepare_target{force=false package_id=memchr v2.7.5 target="memchr"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/memchr-6709e545d5a75bbd/lib-memchr` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.434104475s INFO prepare_target{force=false package_id=regex-automata v0.4.11 target="regex_automata"}: cargo::core::compiler::fingerprint: fingerprint error for regex-automata v0.4.11/Build/TargetInner { benched: false, ..: lib_target("regex_automata", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs", Edition2021) } + 0.434112759s INFO prepare_target{force=false package_id=regex-automata v0.4.11 target="regex_automata"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-automata-613dd4fd964cf0b3/lib-regex_automata` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.434313522s INFO prepare_target{force=false package_id=regex-syntax v0.8.5 target="regex_syntax"}: cargo::core::compiler::fingerprint: fingerprint error for regex-syntax v0.8.5/Build/TargetInner { ..: lib_target("regex_syntax", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs", Edition2021) } + 0.434320302s INFO prepare_target{force=false package_id=regex-syntax v0.8.5 target="regex_syntax"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-syntax-5815ed1846ecdf1c/lib-regex_syntax` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.434454569s INFO prepare_target{force=false package_id=tempfile v3.20.0 target="tempfile"}: cargo::core::compiler::fingerprint: fingerprint error for tempfile v3.20.0/Build/TargetInner { ..: lib_target("tempfile", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tempfile-3.20.0/src/lib.rs", Edition2021) } + 0.434460835s INFO prepare_target{force=false package_id=tempfile v3.20.0 target="tempfile"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tempfile-e911e9968f615ae7/lib-tempfile` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.434719976s INFO prepare_target{force=false package_id=getrandom v0.3.3 target="getrandom"}: cargo::core::compiler::fingerprint: fingerprint error for getrandom v0.3.3/Build/TargetInner { ..: lib_target("getrandom", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/src/lib.rs", Edition2021) } + 0.434726519s INFO prepare_target{force=false package_id=getrandom v0.3.3 target="getrandom"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/getrandom-afffc94b15b4a1d6/lib-getrandom` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.435053337s INFO prepare_target{force=false package_id=libc v0.2.174 target="libc"}: cargo::core::compiler::fingerprint: fingerprint error for libc v0.2.174/Build/TargetInner { ..: lib_target("libc", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/src/lib.rs", Edition2021) } + 0.435063292s INFO prepare_target{force=false package_id=libc v0.2.174 target="libc"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/libc-12803c979228cc4e/lib-libc` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.435589495s INFO prepare_target{force=false package_id=rtnetlink v0.18.1 target="rtnetlink"}: cargo::core::compiler::fingerprint: fingerprint error for rtnetlink v0.18.1/Check { test: false }/TargetInner { ..: lib_target("rtnetlink", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/src/lib.rs", Edition2021) } + 0.435598610s INFO prepare_target{force=false package_id=rtnetlink v0.18.1 target="rtnetlink"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rtnetlink-85a0bb3c05160f5b/lib-rtnetlink` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.435966149s INFO prepare_target{force=false package_id=netlink-packet-core v0.8.0 target="netlink_packet_core"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-packet-core v0.8.0/Check { test: false }/TargetInner { ..: lib_target("netlink_packet_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/src/lib.rs", Edition2021) } + 0.435973767s INFO prepare_target{force=false package_id=netlink-packet-core v0.8.0 target="netlink_packet_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-packet-core-e33c550d39f7979a/lib-netlink_packet_core` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.436159303s INFO prepare_target{force=false package_id=netlink-packet-route v0.25.1 target="netlink_packet_route"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-packet-route v0.25.1/Check { test: false }/TargetInner { ..: lib_target("netlink_packet_route", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/src/lib.rs", Edition2021) } + 0.436166432s INFO prepare_target{force=false package_id=netlink-packet-route v0.25.1 target="netlink_packet_route"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-packet-route-b72ad08dac0c4fa1/lib-netlink_packet_route` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.436344146s INFO prepare_target{force=false package_id=bitflags v2.9.1 target="bitflags"}: cargo::core::compiler::fingerprint: fingerprint error for bitflags v2.9.1/Check { test: false }/TargetInner { ..: lib_target("bitflags", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/src/lib.rs", Edition2021) } + 0.436350408s INFO prepare_target{force=false package_id=bitflags v2.9.1 target="bitflags"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bitflags-3997a28a4245f30d/lib-bitflags` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.436467554s INFO prepare_target{force=false package_id=netlink-proto v0.12.0 target="netlink_proto"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-proto v0.12.0/Check { test: false }/TargetInner { ..: lib_target("netlink_proto", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/src/lib.rs", Edition2021) } + 0.436473884s INFO prepare_target{force=false package_id=netlink-proto v0.12.0 target="netlink_proto"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-proto-2a0dffee8abf8340/lib-netlink_proto` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.436741626s INFO prepare_target{force=false package_id=netlink-sys v0.8.7 target="netlink_sys"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-sys v0.8.7/Check { test: false }/TargetInner { ..: lib_target("netlink_sys", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/src/lib.rs", Edition2018) } + 0.436747655s INFO prepare_target{force=false package_id=netlink-sys v0.8.7 target="netlink_sys"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-sys-b6fe346fb26cf63b/lib-netlink_sys` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.436988604s INFO prepare_target{force=false package_id=tokio v1.47.1 target="tokio"}: cargo::core::compiler::fingerprint: fingerprint error for tokio v1.47.1/Check { test: false }/TargetInner { ..: lib_target("tokio", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs", Edition2021) } + 0.436994932s INFO prepare_target{force=false package_id=tokio v1.47.1 target="tokio"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tokio-92eac18d2a4c82b2/lib-tokio` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.437281048s INFO prepare_target{force=false package_id=mio v1.0.4 target="mio"}: cargo::core::compiler::fingerprint: fingerprint error for mio v1.0.4/Check { test: false }/TargetInner { ..: lib_target("mio", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs", Edition2021) } + 0.437287529s INFO prepare_target{force=false package_id=mio v1.0.4 target="mio"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/mio-2a0e0111e65cfbfc/lib-mio` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.437425335s INFO prepare_target{force=false package_id=parking_lot v0.12.4 target="parking_lot"}: cargo::core::compiler::fingerprint: fingerprint error for parking_lot v0.12.4/Check { test: false }/TargetInner { ..: lib_target("parking_lot", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/src/lib.rs", Edition2021) } + 0.437431307s INFO prepare_target{force=false package_id=parking_lot v0.12.4 target="parking_lot"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/parking_lot-3cfefb0391980ece/lib-parking_lot` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.437787230s INFO prepare_target{force=false package_id=parking_lot_core v0.9.11 target="parking_lot_core"}: cargo::core::compiler::fingerprint: fingerprint error for parking_lot_core v0.9.11/Check { test: false }/TargetInner { ..: lib_target("parking_lot_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/src/lib.rs", Edition2021) } + 0.437794557s INFO prepare_target{force=false package_id=parking_lot_core v0.9.11 target="parking_lot_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/parking_lot_core-985fa2653a7074e6/lib-parking_lot_core` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.438145836s INFO prepare_target{force=false package_id=signal-hook-registry v1.4.5 target="signal_hook_registry"}: cargo::core::compiler::fingerprint: fingerprint error for signal-hook-registry v1.4.5/Check { test: false }/TargetInner { ..: lib_target("signal_hook_registry", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/src/lib.rs", Edition2015) } + 0.438155820s INFO prepare_target{force=false package_id=signal-hook-registry v1.4.5 target="signal_hook_registry"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/signal-hook-registry-e60a7645222b7ea1/lib-signal_hook_registry` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.438306706s INFO prepare_target{force=false package_id=socket2 v0.6.0 target="socket2"}: cargo::core::compiler::fingerprint: fingerprint error for socket2 v0.6.0/Check { test: false }/TargetInner { ..: lib_target("socket2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/src/lib.rs", Edition2021) } + 0.438313886s INFO prepare_target{force=false package_id=socket2 v0.6.0 target="socket2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/socket2-b4977119b4c628e3/lib-socket2` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.438483973s INFO prepare_target{force=false package_id=nix v0.29.0 target="nix"}: cargo::core::compiler::fingerprint: fingerprint error for nix v0.29.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("nix", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/src/lib.rs", Edition2021) } + 0.438490527s INFO prepare_target{force=false package_id=nix v0.29.0 target="nix"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nix-72f3c6b2f9b26637/lib-nix` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.438821694s INFO prepare_target{force=false package_id=thiserror v1.0.69 target="thiserror"}: cargo::core::compiler::fingerprint: fingerprint error for thiserror v1.0.69/Check { test: false }/TargetInner { ..: lib_target("thiserror", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs", Edition2021) } + 0.438830368s INFO prepare_target{force=false package_id=thiserror v1.0.69 target="thiserror"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/thiserror-2462b4b57be7e6cd/lib-thiserror` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.439350822s INFO prepare_target{force=false package_id=simple-error v0.3.2 target="simple_error"}: cargo::core::compiler::fingerprint: fingerprint error for simple-error v0.3.2/Check { test: false }/TargetInner { ..: lib_target("simple_error", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/src/lib.rs", Edition2021) } + 0.439361942s INFO prepare_target{force=false package_id=simple-error v0.3.2 target="simple_error"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/simple-error-d2dfd4027151b5f2/lib-simple_error` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.439478453s INFO prepare_target{force=false package_id=tun v0.8.4 target="tun"}: cargo::core::compiler::fingerprint: fingerprint error for tun v0.8.4/Check { test: false }/TargetInner { ..: lib_target("tun", ["staticlib", "lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/src/lib.rs", Edition2024) } + 0.439491791s INFO prepare_target{force=false package_id=tun v0.8.4 target="tun"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tun-6449548ac7b38798/lib-tun` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.439793394s INFO prepare_target{force=false package_id=nix v0.30.1 target="nix"}: cargo::core::compiler::fingerprint: fingerprint error for nix v0.30.1/Check { test: false }/TargetInner { ..: lib_target("nix", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/src/lib.rs", Edition2021) } + 0.439799724s INFO prepare_target{force=false package_id=nix v0.30.1 target="nix"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nix-1bbe9177e166f95b/lib-nix` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.440102867s INFO prepare_target{force=false package_id=tokio-util v0.7.15 target="tokio_util"}: cargo::core::compiler::fingerprint: fingerprint error for tokio-util v0.7.15/Check { test: false }/TargetInner { ..: lib_target("tokio_util", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs", Edition2021) } + 0.440113032s INFO prepare_target{force=false package_id=tokio-util v0.7.15 target="tokio_util"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tokio-util-acdc6c6fac6ff510/lib-tokio_util` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.440354467s INFO prepare_target{force=false package_id=x25519-dalek v2.0.1 target="x25519_dalek"}: cargo::core::compiler::fingerprint: fingerprint error for x25519-dalek v2.0.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("x25519_dalek", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/src/lib.rs", Edition2021) } + 0.440362195s INFO prepare_target{force=false package_id=x25519-dalek v2.0.1 target="x25519_dalek"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/x25519-dalek-c72417e26ea43947/lib-x25519_dalek` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.440566583s INFO prepare_target{force=false package_id=curve25519-dalek v4.1.3 target="curve25519_dalek"}: cargo::core::compiler::fingerprint: fingerprint error for curve25519-dalek v4.1.3/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("curve25519_dalek", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/src/lib.rs", Edition2021) } + 0.440574342s INFO prepare_target{force=false package_id=curve25519-dalek v4.1.3 target="curve25519_dalek"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/curve25519-dalek-20e42520cc60654b/lib-curve25519_dalek` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.441420691s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/Check { test: true }/TargetInner { ..: lib_target("reeflib", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs", Edition2021) } + 0.441434398s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-e8d64a1ff804584d/test-lib-reeflib` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 16: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 17: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + 0.442422657s INFO prepare_target{force=false package_id=reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) target="reeftest"}: cargo::core::compiler::fingerprint: fingerprint error for reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library)/Check { test: false }/TargetInner { ..: lib_target("reeftest", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/lib/mod.rs", Edition2021) } + 0.442437265s INFO prepare_target{force=false package_id=reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) target="reeftest"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-test-7dd80b833bf035af/lib-reeftest` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.442644533s INFO prepare_target{force=false package_id=regex v1.11.3 target="regex"}: cargo::core::compiler::fingerprint: fingerprint error for regex v1.11.3/Check { test: false }/TargetInner { ..: lib_target("regex", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs", Edition2021) } + 0.442652354s INFO prepare_target{force=false package_id=regex v1.11.3 target="regex"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-ad6a595b74f9ca3e/lib-regex` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.442868734s INFO prepare_target{force=false package_id=aho-corasick v1.1.3 target="aho_corasick"}: cargo::core::compiler::fingerprint: fingerprint error for aho-corasick v1.1.3/Check { test: false }/TargetInner { ..: lib_target("aho_corasick", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs", Edition2021) } + 0.442876265s INFO prepare_target{force=false package_id=aho-corasick v1.1.3 target="aho_corasick"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/aho-corasick-0c64cc041cfd849f/lib-aho_corasick` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.443041372s INFO prepare_target{force=false package_id=regex-automata v0.4.11 target="regex_automata"}: cargo::core::compiler::fingerprint: fingerprint error for regex-automata v0.4.11/Check { test: false }/TargetInner { benched: false, ..: lib_target("regex_automata", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs", Edition2021) } + 0.443050805s INFO prepare_target{force=false package_id=regex-automata v0.4.11 target="regex_automata"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-automata-34eee35aa1d8fb6b/lib-regex_automata` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.443250019s INFO prepare_target{force=false package_id=regex-syntax v0.8.5 target="regex_syntax"}: cargo::core::compiler::fingerprint: fingerprint error for regex-syntax v0.8.5/Check { test: false }/TargetInner { ..: lib_target("regex_syntax", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs", Edition2021) } + 0.443257086s INFO prepare_target{force=false package_id=regex-syntax v0.8.5 target="regex_syntax"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-syntax-40e89b7ec18b063b/lib-regex_syntax` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.444545964s INFO prepare_target{force=false package_id=reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) target="seaside_standalone"}: cargo::core::compiler::fingerprint: fingerprint error for reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable)/Check { test: false }/TargetInner { name: "seaside_standalone", doc: true, ..: with_path("/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/src/mod.rs", Edition2021) } + 0.444560797s INFO prepare_target{force=false package_id=reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) target="seaside_standalone"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-standalone-b68f2985d3330c3a/bin-seaside_standalone` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 16: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 17: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + 0.445634029s INFO prepare_target{force=false package_id=env_logger v0.11.8 target="env_logger"}: cargo::core::compiler::fingerprint: fingerprint error for env_logger v0.11.8/Check { test: false }/TargetInner { ..: lib_target("env_logger", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_logger-0.11.8/src/lib.rs", Edition2021) } + 0.445649594s INFO prepare_target{force=false package_id=env_logger v0.11.8 target="env_logger"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/env_logger-2910e107e278689a/lib-env_logger` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.445964823s INFO prepare_target{force=false package_id=anstream v0.6.19 target="anstream"}: cargo::core::compiler::fingerprint: fingerprint error for anstream v0.6.19/Check { test: false }/TargetInner { ..: lib_target("anstream", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/src/lib.rs", Edition2021) } + 0.445974843s INFO prepare_target{force=false package_id=anstream v0.6.19 target="anstream"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/anstream-51183de30b3eae15/lib-anstream` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.446252309s INFO prepare_target{force=false package_id=anstyle v1.0.11 target="anstyle"}: cargo::core::compiler::fingerprint: fingerprint error for anstyle v1.0.11/Check { test: false }/TargetInner { ..: lib_target("anstyle", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/src/lib.rs", Edition2021) } + 0.446260816s INFO prepare_target{force=false package_id=anstyle v1.0.11 target="anstyle"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/anstyle-bb72f1018d9ca59f/lib-anstyle` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.446403938s INFO prepare_target{force=false package_id=anstyle-parse v0.2.7 target="anstyle_parse"}: cargo::core::compiler::fingerprint: fingerprint error for anstyle-parse v0.2.7/Check { test: false }/TargetInner { ..: lib_target("anstyle_parse", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/src/lib.rs", Edition2021) } + 0.446412031s INFO prepare_target{force=false package_id=anstyle-parse v0.2.7 target="anstyle_parse"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/anstyle-parse-b01e8e869194beb3/lib-anstyle_parse` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.446623849s INFO prepare_target{force=false package_id=utf8parse v0.2.2 target="utf8parse"}: cargo::core::compiler::fingerprint: fingerprint error for utf8parse v0.2.2/Check { test: false }/TargetInner { ..: lib_target("utf8parse", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/src/lib.rs", Edition2018) } + 0.446630775s INFO prepare_target{force=false package_id=utf8parse v0.2.2 target="utf8parse"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/utf8parse-fe743609d23c1f65/lib-utf8parse` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.446754621s INFO prepare_target{force=false package_id=anstyle-query v1.1.3 target="anstyle_query"}: cargo::core::compiler::fingerprint: fingerprint error for anstyle-query v1.1.3/Check { test: false }/TargetInner { ..: lib_target("anstyle_query", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/src/lib.rs", Edition2021) } + 0.446761722s INFO prepare_target{force=false package_id=anstyle-query v1.1.3 target="anstyle_query"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/anstyle-query-86569a613c3c9ba3/lib-anstyle_query` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.446886350s INFO prepare_target{force=false package_id=colorchoice v1.0.4 target="colorchoice"}: cargo::core::compiler::fingerprint: fingerprint error for colorchoice v1.0.4/Check { test: false }/TargetInner { ..: lib_target("colorchoice", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/src/lib.rs", Edition2021) } + 0.446892595s INFO prepare_target{force=false package_id=colorchoice v1.0.4 target="colorchoice"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/colorchoice-367a6f5a1e7ab532/lib-colorchoice` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.447013849s INFO prepare_target{force=false package_id=is_terminal_polyfill v1.70.1 target="is_terminal_polyfill"}: cargo::core::compiler::fingerprint: fingerprint error for is_terminal_polyfill v1.70.1/Check { test: false }/TargetInner { ..: lib_target("is_terminal_polyfill", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/src/lib.rs", Edition2021) } + 0.447026497s INFO prepare_target{force=false package_id=is_terminal_polyfill v1.70.1 target="is_terminal_polyfill"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/is_terminal_polyfill-9bf9dc9833a8f45a/lib-is_terminal_polyfill` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.447168789s INFO prepare_target{force=false package_id=env_filter v0.1.3 target="env_filter"}: cargo::core::compiler::fingerprint: fingerprint error for env_filter v0.1.3/Check { test: false }/TargetInner { ..: lib_target("env_filter", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_filter-0.1.3/src/lib.rs", Edition2021) } + 0.447174809s INFO prepare_target{force=false package_id=env_filter v0.1.3 target="env_filter"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/env_filter-8e23f91312ddcb1b/lib-env_filter` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.447349652s INFO prepare_target{force=false package_id=jiff v0.2.15 target="jiff"}: cargo::core::compiler::fingerprint: fingerprint error for jiff v0.2.15/Check { test: false }/TargetInner { ..: lib_target("jiff", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/jiff-0.2.15/src/lib.rs", Edition2021) } + 0.447355278s INFO prepare_target{force=false package_id=jiff v0.2.15 target="jiff"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/jiff-488ce4ceefc927bf/lib-jiff` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.447474863s INFO prepare_target{force=false package_id=structopt v0.3.26 target="structopt"}: cargo::core::compiler::fingerprint: fingerprint error for structopt v0.3.26/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("structopt", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-0.3.26/src/lib.rs", Edition2018) } + 0.447480941s INFO prepare_target{force=false package_id=structopt v0.3.26 target="structopt"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/structopt-93801b993d9fdd6c/lib-structopt` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: ::compile + 7: cargo::ops::cargo_compile::compile_ws + 8: cargo::ops::cargo_compile::compile_with_exec + 9: cargo::ops::cargo_compile::compile + 10: cargo::commands::check::exec + 11: ::exec + 12: cargo::main + 13: std::sys::backtrace::__rust_begin_short_backtrace:: + 14: std::rt::lang_start::<()>::{closure#0} + 15: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 16: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 17: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 18: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 19: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 24: main + 25: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 26: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 27: + 0.447690307s INFO prepare_target{force=false package_id=clap v2.34.0 target="clap"}: cargo::core::compiler::fingerprint: fingerprint error for clap v2.34.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("clap", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.34.0/src/lib.rs", Edition2018) } + 0.447696536s INFO prepare_target{force=false package_id=clap v2.34.0 target="clap"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/clap-3c7b143dedc82f2f/lib-clap` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.447919858s INFO prepare_target{force=false package_id=ansi_term v0.12.1 target="ansi_term"}: cargo::core::compiler::fingerprint: fingerprint error for ansi_term v0.12.1/Check { test: false }/TargetInner { ..: lib_target("ansi_term", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ansi_term-0.12.1/src/lib.rs", Edition2015) } + 0.447925630s INFO prepare_target{force=false package_id=ansi_term v0.12.1 target="ansi_term"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ansi_term-f00ff4043a9d5998/lib-ansi_term` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.448040653s INFO prepare_target{force=false package_id=atty v0.2.14 target="atty"}: cargo::core::compiler::fingerprint: fingerprint error for atty v0.2.14/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("atty", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atty-0.2.14/src/lib.rs", Edition2015) } + 0.448046760s INFO prepare_target{force=false package_id=atty v0.2.14 target="atty"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/atty-197e8dc1ab1e5b43/lib-atty` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.448174270s INFO prepare_target{force=false package_id=bitflags v1.3.2 target="bitflags"}: cargo::core::compiler::fingerprint: fingerprint error for bitflags v1.3.2/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("bitflags", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-1.3.2/src/lib.rs", Edition2018) } + 0.448180112s INFO prepare_target{force=false package_id=bitflags v1.3.2 target="bitflags"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bitflags-b551d3fe3a8a6729/lib-bitflags` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.448288041s INFO prepare_target{force=false package_id=strsim v0.8.0 target="strsim"}: cargo::core::compiler::fingerprint: fingerprint error for strsim v0.8.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("strsim", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.8.0/src/lib.rs", Edition2015) } + 0.448293510s INFO prepare_target{force=false package_id=strsim v0.8.0 target="strsim"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/strsim-20ede2c518793cf3/lib-strsim` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.448399341s INFO prepare_target{force=false package_id=textwrap v0.11.0 target="textwrap"}: cargo::core::compiler::fingerprint: fingerprint error for textwrap v0.11.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("textwrap", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/textwrap-0.11.0/src/lib.rs", Edition2015) } + 0.448404766s INFO prepare_target{force=false package_id=textwrap v0.11.0 target="textwrap"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/textwrap-bc320b19f5a40cda/lib-textwrap` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.448520376s INFO prepare_target{force=false package_id=unicode-width v0.1.14 target="unicode_width"}: cargo::core::compiler::fingerprint: fingerprint error for unicode-width v0.1.14/Check { test: false }/TargetInner { ..: lib_target("unicode_width", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-width-0.1.14/src/lib.rs", Edition2021) } + 0.448526004s INFO prepare_target{force=false package_id=unicode-width v0.1.14 target="unicode_width"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/unicode-width-4205c60c9ba625c6/lib-unicode_width` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.448633357s INFO prepare_target{force=false package_id=vec_map v0.8.2 target="vec_map"}: cargo::core::compiler::fingerprint: fingerprint error for vec_map v0.8.2/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("vec_map", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/vec_map-0.8.2/src/lib.rs", Edition2015) } + 0.448638658s INFO prepare_target{force=false package_id=vec_map v0.8.2 target="vec_map"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/vec_map-8d88471343b6ed4f/lib-vec_map` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.449605307s INFO prepare_target{force=false package_id=reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) target="seaside_standalone"}: cargo::core::compiler::fingerprint: fingerprint error for reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable)/Check { test: true }/TargetInner { name: "seaside_standalone", doc: true, ..: with_path("/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/src/mod.rs", Edition2021) } + 0.449618996s INFO prepare_target{force=false package_id=reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) target="seaside_standalone"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-standalone-8249b79ab5a20b1a/test-bin-seaside_standalone` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 16: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 17: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + 0.450717052s INFO prepare_target{force=false package_id=reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) target="reeftest"}: cargo::core::compiler::fingerprint: fingerprint error for reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library)/Check { test: true }/TargetInner { ..: lib_target("reeftest", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/lib/mod.rs", Edition2021) } + 0.450732723s INFO prepare_target{force=false package_id=reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) target="reeftest"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-test-6aa2e0b9a2bdad70/test-lib-reeftest` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 16: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 17: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + 0.455684142s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="seaside"}: cargo::core::compiler::fingerprint: fingerprint error for reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library)/Check { test: false }/TargetInner { ..: lib_target("seaside", ["cdylib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/lib/mod.rs", Edition2021) } + 0.455707134s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="seaside"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reefshared-0f0f3e1c248c0e71/lib-seaside` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 16: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 17: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + 0.456962656s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="build-script-build"}: cargo::core::compiler::fingerprint: fingerprint error for reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library)/RunCustomBuild/TargetInner { ..: custom_build_target("build-script-build", "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/build.rs", Edition2021) } + 0.456980827s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="build-script-build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reefshared-7c3d38765d5fd02b/run-build-script-build-script-build` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::custom_build::build_work + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.457254089s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="build-script-build"}: cargo::core::compiler::fingerprint: fingerprint error for reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library)/Build/TargetInner { ..: custom_build_target("build-script-build", "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/build.rs", Edition2021) } + 0.457263133s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="build-script-build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reefshared-c3aadb147183e507/build-script-build-script-build` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: ::compile + 8: cargo::ops::cargo_compile::compile_ws + 9: cargo::ops::cargo_compile::compile_with_exec + 10: cargo::ops::cargo_compile::compile + 11: cargo::commands::check::exec + 12: ::exec + 13: cargo::main + 14: std::sys::backtrace::__rust_begin_short_backtrace:: + 15: std::rt::lang_start::<()>::{closure#0} + 16: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 17: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 18: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 19: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 20: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 25: main + 26: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 27: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 28: + 0.457910805s INFO prepare_target{force=false package_id=cbindgen v0.29.2 target="cbindgen"}: cargo::core::compiler::fingerprint: fingerprint error for cbindgen v0.29.2/Build/TargetInner { ..: lib_target("cbindgen", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/src/lib.rs", Edition2021) } + 0.457921902s INFO prepare_target{force=false package_id=cbindgen v0.29.2 target="cbindgen"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cbindgen-bd6cbd9faa33b9f0/lib-cbindgen` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.458684694s INFO prepare_target{force=false package_id=serde v1.0.228 target="serde"}: cargo::core::compiler::fingerprint: fingerprint error for serde v1.0.228/Build/TargetInner { ..: lib_target("serde", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs", Edition2021) } + 0.458694377s INFO prepare_target{force=false package_id=serde v1.0.228 target="serde"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde-ef13ad9c0addc358/lib-serde` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.458910876s INFO prepare_target{force=false package_id=serde_core v1.0.228 target="serde_core"}: cargo::core::compiler::fingerprint: fingerprint error for serde_core v1.0.228/Build/TargetInner { ..: lib_target("serde_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs", Edition2021) } + 0.458917498s INFO prepare_target{force=false package_id=serde_core v1.0.228 target="serde_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_core-2cdbf80b25b87d16/lib-serde_core` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.459064744s INFO prepare_target{force=false package_id=serde_json v1.0.143 target="serde_json"}: cargo::core::compiler::fingerprint: fingerprint error for serde_json v1.0.143/Build/TargetInner { ..: lib_target("serde_json", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/src/lib.rs", Edition2021) } + 0.459070696s INFO prepare_target{force=false package_id=serde_json v1.0.143 target="serde_json"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_json-288a001dee904ca8/lib-serde_json` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.459289614s INFO prepare_target{force=false package_id=itoa v1.0.15 target="itoa"}: cargo::core::compiler::fingerprint: fingerprint error for itoa v1.0.15/Build/TargetInner { ..: lib_target("itoa", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs", Edition2018) } + 0.459295758s INFO prepare_target{force=false package_id=itoa v1.0.15 target="itoa"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/itoa-d5048592e7308c8e/lib-itoa` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.459425489s INFO prepare_target{force=false package_id=ryu v1.0.20 target="ryu"}: cargo::core::compiler::fingerprint: fingerprint error for ryu v1.0.20/Build/TargetInner { ..: lib_target("ryu", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs", Edition2018) } + 0.459431599s INFO prepare_target{force=false package_id=ryu v1.0.20 target="ryu"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ryu-857778c47b40d947/lib-ryu` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.459558075s INFO prepare_target{force=false package_id=toml v0.9.8 target="toml"}: cargo::core::compiler::fingerprint: fingerprint error for toml v0.9.8/Build/TargetInner { ..: lib_target("toml", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml-0.9.8/src/lib.rs", Edition2021) } + 0.459563753s INFO prepare_target{force=false package_id=toml v0.9.8 target="toml"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/toml-9fde908db9dc444d/lib-toml` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.459788729s INFO prepare_target{force=false package_id=serde_spanned v1.0.3 target="serde_spanned"}: cargo::core::compiler::fingerprint: fingerprint error for serde_spanned v1.0.3/Build/TargetInner { ..: lib_target("serde_spanned", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_spanned-1.0.3/src/lib.rs", Edition2021) } + 0.459795486s INFO prepare_target{force=false package_id=serde_spanned v1.0.3 target="serde_spanned"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_spanned-bf2af6db24245b37/lib-serde_spanned` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.459948427s INFO prepare_target{force=false package_id=toml_datetime v0.7.3 target="toml_datetime"}: cargo::core::compiler::fingerprint: fingerprint error for toml_datetime v0.7.3/Build/TargetInner { ..: lib_target("toml_datetime", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.7.3/src/lib.rs", Edition2021) } + 0.459955237s INFO prepare_target{force=false package_id=toml_datetime v0.7.3 target="toml_datetime"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/toml_datetime-a1813512cc125ab5/lib-toml_datetime` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.460160438s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/Build/TargetInner { ..: lib_target("reeflib", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs", Edition2021) } + 0.460169298s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-6b9400739fd6c26f/lib-reeflib` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: ::compile + 9: cargo::ops::cargo_compile::compile_ws + 10: cargo::ops::cargo_compile::compile_with_exec + 11: cargo::ops::cargo_compile::compile + 12: cargo::commands::check::exec + 13: ::exec + 14: cargo::main + 15: std::sys::backtrace::__rust_begin_short_backtrace:: + 16: std::rt::lang_start::<()>::{closure#0} + 17: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 18: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 19: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 20: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 21: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 26: main + 27: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 28: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 29: + 0.461055108s INFO prepare_target{force=false package_id=bincode v2.0.1 target="bincode"}: cargo::core::compiler::fingerprint: fingerprint error for bincode v2.0.1/Build/TargetInner { ..: lib_target("bincode", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/src/lib.rs", Edition2021) } + 0.461066072s INFO prepare_target{force=false package_id=bincode v2.0.1 target="bincode"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bincode-f185b9f4039d0ce4/lib-bincode` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.461249363s INFO prepare_target{force=false package_id=unty v0.0.4 target="unty"}: cargo::core::compiler::fingerprint: fingerprint error for unty v0.0.4/Build/TargetInner { ..: lib_target("unty", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/src/lib.rs", Edition2021) } + 0.461256098s INFO prepare_target{force=false package_id=unty v0.0.4 target="unty"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/unty-a54929119ec5a55c/lib-unty` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.461384038s INFO prepare_target{force=false package_id=blake2 v0.10.6 target="blake2"}: cargo::core::compiler::fingerprint: fingerprint error for blake2 v0.10.6/Build/TargetInner { name_inferred: true, ..: lib_target("blake2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/src/lib.rs", Edition2018) } + 0.461391724s INFO prepare_target{force=false package_id=blake2 v0.10.6 target="blake2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/blake2-a95e603b6f7a2a4f/lib-blake2` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.461572012s INFO prepare_target{force=false package_id=digest v0.10.7 target="digest"}: cargo::core::compiler::fingerprint: fingerprint error for digest v0.10.7/Build/TargetInner { name_inferred: true, ..: lib_target("digest", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/src/lib.rs", Edition2018) } + 0.461579192s INFO prepare_target{force=false package_id=digest v0.10.7 target="digest"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/digest-35bd109ed2d06f8a/lib-digest` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.461790463s INFO prepare_target{force=false package_id=block-buffer v0.10.4 target="block_buffer"}: cargo::core::compiler::fingerprint: fingerprint error for block-buffer v0.10.4/Build/TargetInner { name_inferred: true, ..: lib_target("block_buffer", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/src/lib.rs", Edition2018) } + 0.461797945s INFO prepare_target{force=false package_id=block-buffer v0.10.4 target="block_buffer"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/block-buffer-c7ffa532adaa845c/lib-block_buffer` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.461951585s INFO prepare_target{force=false package_id=generic-array v0.14.7 target="generic_array"}: cargo::core::compiler::fingerprint: fingerprint error for generic-array v0.14.7/Build/TargetInner { ..: lib_target("generic_array", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/src/lib.rs", Edition2015) } + 0.461959237s INFO prepare_target{force=false package_id=generic-array v0.14.7 target="generic_array"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/generic-array-c6bfe15667f162ad/lib-generic_array` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: ::compile + 13: cargo::ops::cargo_compile::compile_ws + 14: cargo::ops::cargo_compile::compile_with_exec + 15: cargo::ops::cargo_compile::compile + 16: cargo::commands::check::exec + 17: ::exec + 18: cargo::main + 19: std::sys::backtrace::__rust_begin_short_backtrace:: + 20: std::rt::lang_start::<()>::{closure#0} + 21: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 26: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 27: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 28: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 29: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 30: main + 31: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 32: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 33: + 0.462171981s INFO prepare_target{force=false package_id=crypto-common v0.1.6 target="crypto_common"}: cargo::core::compiler::fingerprint: fingerprint error for crypto-common v0.1.6/Build/TargetInner { name_inferred: true, ..: lib_target("crypto_common", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/src/lib.rs", Edition2018) } + 0.462179819s INFO prepare_target{force=false package_id=crypto-common v0.1.6 target="crypto_common"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/crypto-common-478bb928817992c3/lib-crypto_common` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.462379898s INFO prepare_target{force=false package_id=rand_core v0.6.4 target="rand_core"}: cargo::core::compiler::fingerprint: fingerprint error for rand_core v0.6.4/Build/TargetInner { name_inferred: true, ..: lib_target("rand_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs", Edition2018) } + 0.462386450s INFO prepare_target{force=false package_id=rand_core v0.6.4 target="rand_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand_core-c8915665fd1b5932/lib-rand_core` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: ::compile + 13: cargo::ops::cargo_compile::compile_ws + 14: cargo::ops::cargo_compile::compile_with_exec + 15: cargo::ops::cargo_compile::compile + 16: cargo::commands::check::exec + 17: ::exec + 18: cargo::main + 19: std::sys::backtrace::__rust_begin_short_backtrace:: + 20: std::rt::lang_start::<()>::{closure#0} + 21: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 26: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 27: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 28: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 29: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 30: main + 31: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 32: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 33: + 0.462536958s INFO prepare_target{force=false package_id=getrandom v0.2.16 target="getrandom"}: cargo::core::compiler::fingerprint: fingerprint error for getrandom v0.2.16/Build/TargetInner { ..: lib_target("getrandom", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/src/lib.rs", Edition2018) } + 0.462543272s INFO prepare_target{force=false package_id=getrandom v0.2.16 target="getrandom"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/getrandom-6a8e0db638d8ae7c/lib-getrandom` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: cargo::core::compiler::compile + 13: ::compile + 14: cargo::ops::cargo_compile::compile_ws + 15: cargo::ops::cargo_compile::compile_with_exec + 16: cargo::ops::cargo_compile::compile + 17: cargo::commands::check::exec + 18: ::exec + 19: cargo::main + 20: std::sys::backtrace::__rust_begin_short_backtrace:: + 21: std::rt::lang_start::<()>::{closure#0} + 22: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 27: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 28: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 29: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 30: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 31: main + 32: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 33: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 34: + 0.462714124s INFO prepare_target{force=false package_id=subtle v2.6.1 target="subtle"}: cargo::core::compiler::fingerprint: fingerprint error for subtle v2.6.1/Build/TargetInner { ..: lib_target("subtle", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs", Edition2018) } + 0.462720545s INFO prepare_target{force=false package_id=subtle v2.6.1 target="subtle"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/subtle-c2125d2c0ec00cea/lib-subtle` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.462842059s INFO prepare_target{force=false package_id=cached v0.56.0 target="cached"}: cargo::core::compiler::fingerprint: fingerprint error for cached v0.56.0/Build/TargetInner { ..: lib_target("cached", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/src/lib.rs", Edition2018) } + 0.462848953s INFO prepare_target{force=false package_id=cached v0.56.0 target="cached"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cached-fe925702b5cc28b6/lib-cached` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.463140006s INFO prepare_target{force=false package_id=ahash v0.8.12 target="ahash"}: cargo::core::compiler::fingerprint: fingerprint error for ahash v0.8.12/Build/TargetInner { ..: lib_target("ahash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/src/lib.rs", Edition2018) } + 0.463147435s INFO prepare_target{force=false package_id=ahash v0.8.12 target="ahash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ahash-e5108daa8d923391/lib-ahash` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.463329887s INFO prepare_target{force=false package_id=zerocopy v0.8.26 target="zerocopy"}: cargo::core::compiler::fingerprint: fingerprint error for zerocopy v0.8.26/Build/TargetInner { ..: lib_target("zerocopy", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/src/lib.rs", Edition2021) } + 0.463336528s INFO prepare_target{force=false package_id=zerocopy v0.8.26 target="zerocopy"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/zerocopy-f0998fbc238d2d44/lib-zerocopy` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.463465681s INFO prepare_target{force=false package_id=cached_proc_macro_types v0.1.1 target="cached_proc_macro_types"}: cargo::core::compiler::fingerprint: fingerprint error for cached_proc_macro_types v0.1.1/Build/TargetInner { name_inferred: true, ..: lib_target("cached_proc_macro_types", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/src/lib.rs", Edition2018) } + 0.463472618s INFO prepare_target{force=false package_id=cached_proc_macro_types v0.1.1 target="cached_proc_macro_types"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cached_proc_macro_types-d20a172dc34e2c05/lib-cached_proc_macro_types` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.463595636s INFO prepare_target{force=false package_id=hashbrown v0.15.4 target="hashbrown"}: cargo::core::compiler::fingerprint: fingerprint error for hashbrown v0.15.4/Build/TargetInner { ..: lib_target("hashbrown", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/src/lib.rs", Edition2021) } + 0.463601967s INFO prepare_target{force=false package_id=hashbrown v0.15.4 target="hashbrown"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/hashbrown-88387dceb37c09d5/lib-hashbrown` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.463773595s INFO prepare_target{force=false package_id=allocator-api2 v0.2.21 target="allocator_api2"}: cargo::core::compiler::fingerprint: fingerprint error for allocator-api2 v0.2.21/Build/TargetInner { ..: lib_target("allocator_api2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/src/lib.rs", Edition2018) } + 0.463780332s INFO prepare_target{force=false package_id=allocator-api2 v0.2.21 target="allocator_api2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/allocator-api2-f21c861a1094a182/lib-allocator_api2` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.463922869s INFO prepare_target{force=false package_id=foldhash v0.1.5 target="foldhash"}: cargo::core::compiler::fingerprint: fingerprint error for foldhash v0.1.5/Build/TargetInner { benched: false, ..: lib_target("foldhash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/src/lib.rs", Edition2021) } + 0.463929507s INFO prepare_target{force=false package_id=foldhash v0.1.5 target="foldhash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/foldhash-71b35bb279e9f7cc/lib-foldhash` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.464056007s INFO prepare_target{force=false package_id=thiserror v2.0.16 target="thiserror"}: cargo::core::compiler::fingerprint: fingerprint error for thiserror v2.0.16/Build/TargetInner { ..: lib_target("thiserror", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/src/lib.rs", Edition2021) } + 0.464062408s INFO prepare_target{force=false package_id=thiserror v2.0.16 target="thiserror"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/thiserror-b9dd68c67000877d/lib-thiserror` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.464222050s INFO prepare_target{force=false package_id=web-time v1.1.0 target="web_time"}: cargo::core::compiler::fingerprint: fingerprint error for web-time v1.1.0/Build/TargetInner { name_inferred: true, ..: lib_target("web_time", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/src/lib.rs", Edition2021) } + 0.464228709s INFO prepare_target{force=false package_id=web-time v1.1.0 target="web_time"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/web-time-742dc25325911c35/lib-web_time` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.464357502s INFO prepare_target{force=false package_id=chacha20poly1305 v0.10.1 target="chacha20poly1305"}: cargo::core::compiler::fingerprint: fingerprint error for chacha20poly1305 v0.10.1/Build/TargetInner { name_inferred: true, ..: lib_target("chacha20poly1305", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/src/lib.rs", Edition2021) } + 0.464364329s INFO prepare_target{force=false package_id=chacha20poly1305 v0.10.1 target="chacha20poly1305"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/chacha20poly1305-361d9323f392b418/lib-chacha20poly1305` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.464604107s INFO prepare_target{force=false package_id=aead v0.5.2 target="aead"}: cargo::core::compiler::fingerprint: fingerprint error for aead v0.5.2/Build/TargetInner { name_inferred: true, ..: lib_target("aead", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/src/lib.rs", Edition2021) } + 0.464610968s INFO prepare_target{force=false package_id=aead v0.5.2 target="aead"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/aead-941727e9b6f6f2d1/lib-aead` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.464780000s INFO prepare_target{force=false package_id=chacha20 v0.9.1 target="chacha20"}: cargo::core::compiler::fingerprint: fingerprint error for chacha20 v0.9.1/Build/TargetInner { name_inferred: true, ..: lib_target("chacha20", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/src/lib.rs", Edition2021) } + 0.464786022s INFO prepare_target{force=false package_id=chacha20 v0.9.1 target="chacha20"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/chacha20-7e57c7442be16b6a/lib-chacha20` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.464981308s INFO prepare_target{force=false package_id=cipher v0.4.4 target="cipher"}: cargo::core::compiler::fingerprint: fingerprint error for cipher v0.4.4/Build/TargetInner { name_inferred: true, ..: lib_target("cipher", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/src/lib.rs", Edition2021) } + 0.464987952s INFO prepare_target{force=false package_id=cipher v0.4.4 target="cipher"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cipher-66a7a66cdc67bacf/lib-cipher` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.465204528s INFO prepare_target{force=false package_id=inout v0.1.4 target="inout"}: cargo::core::compiler::fingerprint: fingerprint error for inout v0.1.4/Build/TargetInner { ..: lib_target("inout", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/src/lib.rs", Edition2021) } + 0.465211887s INFO prepare_target{force=false package_id=inout v0.1.4 target="inout"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/inout-6c673083b33cc137/lib-inout` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: ::compile + 13: cargo::ops::cargo_compile::compile_ws + 14: cargo::ops::cargo_compile::compile_with_exec + 15: cargo::ops::cargo_compile::compile + 16: cargo::commands::check::exec + 17: ::exec + 18: cargo::main + 19: std::sys::backtrace::__rust_begin_short_backtrace:: + 20: std::rt::lang_start::<()>::{closure#0} + 21: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 26: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 27: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 28: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 29: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 30: main + 31: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 32: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 33: + 0.465358039s INFO prepare_target{force=false package_id=zeroize v1.8.1 target="zeroize"}: cargo::core::compiler::fingerprint: fingerprint error for zeroize v1.8.1/Build/TargetInner { name_inferred: true, ..: lib_target("zeroize", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs", Edition2021) } + 0.465364068s INFO prepare_target{force=false package_id=zeroize v1.8.1 target="zeroize"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/zeroize-d9a47f3b81707dc8/lib-zeroize` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: ::compile + 13: cargo::ops::cargo_compile::compile_ws + 14: cargo::ops::cargo_compile::compile_with_exec + 15: cargo::ops::cargo_compile::compile + 16: cargo::commands::check::exec + 17: ::exec + 18: cargo::main + 19: std::sys::backtrace::__rust_begin_short_backtrace:: + 20: std::rt::lang_start::<()>::{closure#0} + 21: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 26: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 27: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 28: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 29: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 30: main + 31: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 32: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 33: + 0.465510052s INFO prepare_target{force=false package_id=cpufeatures v0.2.17 target="cpufeatures"}: cargo::core::compiler::fingerprint: fingerprint error for cpufeatures v0.2.17/Build/TargetInner { ..: lib_target("cpufeatures", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/src/lib.rs", Edition2018) } + 0.465516126s INFO prepare_target{force=false package_id=cpufeatures v0.2.17 target="cpufeatures"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cpufeatures-f5116670c7931c01/lib-cpufeatures` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.465632837s INFO prepare_target{force=false package_id=poly1305 v0.8.0 target="poly1305"}: cargo::core::compiler::fingerprint: fingerprint error for poly1305 v0.8.0/Build/TargetInner { name_inferred: true, ..: lib_target("poly1305", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/src/lib.rs", Edition2021) } + 0.465638888s INFO prepare_target{force=false package_id=poly1305 v0.8.0 target="poly1305"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/poly1305-59b4e153a282a0ac/lib-poly1305` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.465810823s INFO prepare_target{force=false package_id=opaque-debug v0.3.1 target="opaque_debug"}: cargo::core::compiler::fingerprint: fingerprint error for opaque-debug v0.3.1/Build/TargetInner { name_inferred: true, ..: lib_target("opaque_debug", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/src/lib.rs", Edition2018) } + 0.465816925s INFO prepare_target{force=false package_id=opaque-debug v0.3.1 target="opaque_debug"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/opaque-debug-f9656aea55626350/lib-opaque_debug` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.465926652s INFO prepare_target{force=false package_id=universal-hash v0.5.1 target="universal_hash"}: cargo::core::compiler::fingerprint: fingerprint error for universal-hash v0.5.1/Build/TargetInner { name_inferred: true, ..: lib_target("universal_hash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/src/lib.rs", Edition2021) } + 0.465932792s INFO prepare_target{force=false package_id=universal-hash v0.5.1 target="universal_hash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/universal-hash-d64358b1ff05fe22/lib-universal_hash` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.466104744s INFO prepare_target{force=false package_id=futures v0.3.31 target="futures"}: cargo::core::compiler::fingerprint: fingerprint error for futures v0.3.31/Build/TargetInner { ..: lib_target("futures", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs", Edition2018) } + 0.466110632s INFO prepare_target{force=false package_id=futures v0.3.31 target="futures"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-fae105f3ec3fc157/lib-futures` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.466363293s INFO prepare_target{force=false package_id=futures-channel v0.3.31 target="futures_channel"}: cargo::core::compiler::fingerprint: fingerprint error for futures-channel v0.3.31/Build/TargetInner { ..: lib_target("futures_channel", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs", Edition2018) } + 0.466370247s INFO prepare_target{force=false package_id=futures-channel v0.3.31 target="futures_channel"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-channel-eefa8b533f2b367f/lib-futures_channel` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.466568844s INFO prepare_target{force=false package_id=futures-executor v0.3.31 target="futures_executor"}: cargo::core::compiler::fingerprint: fingerprint error for futures-executor v0.3.31/Build/TargetInner { ..: lib_target("futures_executor", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs", Edition2018) } + 0.466577328s INFO prepare_target{force=false package_id=futures-executor v0.3.31 target="futures_executor"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-executor-09fa96bb5154e0c6/lib-futures_executor` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.466768615s INFO prepare_target{force=false package_id=futures-task v0.3.31 target="futures_task"}: cargo::core::compiler::fingerprint: fingerprint error for futures-task v0.3.31/Build/TargetInner { ..: lib_target("futures_task", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs", Edition2018) } + 0.466775020s INFO prepare_target{force=false package_id=futures-task v0.3.31 target="futures_task"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-task-5bed7a89f14e5718/lib-futures_task` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.466890090s INFO prepare_target{force=false package_id=futures-util v0.3.31 target="futures_util"}: cargo::core::compiler::fingerprint: fingerprint error for futures-util v0.3.31/Build/TargetInner { ..: lib_target("futures_util", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs", Edition2018) } + 0.466896400s INFO prepare_target{force=false package_id=futures-util v0.3.31 target="futures_util"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-util-34ee765464d9fa21/lib-futures_util` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.467205955s INFO prepare_target{force=false package_id=futures-io v0.3.31 target="futures_io"}: cargo::core::compiler::fingerprint: fingerprint error for futures-io v0.3.31/Build/TargetInner { ..: lib_target("futures_io", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs", Edition2018) } + 0.467213160s INFO prepare_target{force=false package_id=futures-io v0.3.31 target="futures_io"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-io-d4c3ffe564a5a929/lib-futures_io` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: ::compile + 13: cargo::ops::cargo_compile::compile_ws + 14: cargo::ops::cargo_compile::compile_with_exec + 15: cargo::ops::cargo_compile::compile + 16: cargo::commands::check::exec + 17: ::exec + 18: cargo::main + 19: std::sys::backtrace::__rust_begin_short_backtrace:: + 20: std::rt::lang_start::<()>::{closure#0} + 21: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 26: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 27: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 28: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 29: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 30: main + 31: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 32: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 33: + 0.467360756s INFO prepare_target{force=false package_id=pin-utils v0.1.0 target="pin_utils"}: cargo::core::compiler::fingerprint: fingerprint error for pin-utils v0.1.0/Build/TargetInner { name_inferred: true, ..: lib_target("pin_utils", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs", Edition2018) } + 0.467367205s INFO prepare_target{force=false package_id=pin-utils v0.1.0 target="pin_utils"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/pin-utils-9218feb6935d4415/lib-pin_utils` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: ::compile + 13: cargo::ops::cargo_compile::compile_ws + 14: cargo::ops::cargo_compile::compile_with_exec + 15: cargo::ops::cargo_compile::compile + 16: cargo::commands::check::exec + 17: ::exec + 18: cargo::main + 19: std::sys::backtrace::__rust_begin_short_backtrace:: + 20: std::rt::lang_start::<()>::{closure#0} + 21: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 26: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 27: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 28: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 29: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 30: main + 31: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 32: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 33: + 0.467483990s INFO prepare_target{force=false package_id=slab v0.4.10 target="slab"}: cargo::core::compiler::fingerprint: fingerprint error for slab v0.4.10/Build/TargetInner { ..: lib_target("slab", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/src/lib.rs", Edition2018) } + 0.467489296s INFO prepare_target{force=false package_id=slab v0.4.10 target="slab"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/slab-97f08ff868a393bc/lib-slab` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: ::compile + 13: cargo::ops::cargo_compile::compile_ws + 14: cargo::ops::cargo_compile::compile_with_exec + 15: cargo::ops::cargo_compile::compile + 16: cargo::commands::check::exec + 17: ::exec + 18: cargo::main + 19: std::sys::backtrace::__rust_begin_short_backtrace:: + 20: std::rt::lang_start::<()>::{closure#0} + 21: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 26: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 27: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 28: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 29: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 30: main + 31: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 32: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 33: + 0.467605851s INFO prepare_target{force=false package_id=ipnet v2.11.0 target="ipnet"}: cargo::core::compiler::fingerprint: fingerprint error for ipnet v2.11.0/Build/TargetInner { ..: lib_target("ipnet", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs", Edition2018) } + 0.467611149s INFO prepare_target{force=false package_id=ipnet v2.11.0 target="ipnet"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ipnet-9490e3a689f6bf20/lib-ipnet` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.467722289s INFO prepare_target{force=false package_id=lazy_static v1.5.0 target="lazy_static"}: cargo::core::compiler::fingerprint: fingerprint error for lazy_static v1.5.0/Build/TargetInner { name_inferred: true, ..: lib_target("lazy_static", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/src/lib.rs", Edition2015) } + 0.467727580s INFO prepare_target{force=false package_id=lazy_static v1.5.0 target="lazy_static"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/lazy_static-5615ca6d930c1db5/lib-lazy_static` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.467834831s INFO prepare_target{force=false package_id=nftables v0.6.3 target="nftables"}: cargo::core::compiler::fingerprint: fingerprint error for nftables v0.6.3/Build/TargetInner { ..: lib_target("nftables", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/src/lib.rs", Edition2021) } + 0.467839829s INFO prepare_target{force=false package_id=nftables v0.6.3 target="nftables"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nftables-b7ec44417831cc4b/lib-nftables` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.468132051s INFO prepare_target{force=false package_id=schemars v1.0.4 target="schemars"}: cargo::core::compiler::fingerprint: fingerprint error for schemars v1.0.4/Build/TargetInner { ..: lib_target("schemars", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/src/lib.rs", Edition2021) } + 0.468139596s INFO prepare_target{force=false package_id=schemars v1.0.4 target="schemars"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/schemars-13a7610553f4cbaa/lib-schemars` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.468371446s INFO prepare_target{force=false package_id=dyn-clone v1.0.20 target="dyn_clone"}: cargo::core::compiler::fingerprint: fingerprint error for dyn-clone v1.0.20/Build/TargetInner { ..: lib_target("dyn_clone", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/src/lib.rs", Edition2018) } + 0.468377721s INFO prepare_target{force=false package_id=dyn-clone v1.0.20 target="dyn_clone"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/dyn-clone-13e98e462e33ddda/lib-dyn_clone` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.468498015s INFO prepare_target{force=false package_id=ref-cast v1.0.24 target="ref_cast"}: cargo::core::compiler::fingerprint: fingerprint error for ref-cast v1.0.24/Build/TargetInner { ..: lib_target("ref_cast", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/src/lib.rs", Edition2021) } + 0.468503742s INFO prepare_target{force=false package_id=ref-cast v1.0.24 target="ref_cast"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ref-cast-9bba8528516e5be4/lib-ref_cast` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.468645661s INFO prepare_target{force=false package_id=serde_path_to_error v0.1.17 target="serde_path_to_error"}: cargo::core::compiler::fingerprint: fingerprint error for serde_path_to_error v0.1.17/Build/TargetInner { ..: lib_target("serde_path_to_error", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/src/lib.rs", Edition2021) } + 0.468651625s INFO prepare_target{force=false package_id=serde_path_to_error v0.1.17 target="serde_path_to_error"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_path_to_error-e4185477a20c1e94/lib-serde_path_to_error` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.468806743s INFO prepare_target{force=false package_id=strum v0.27.2 target="strum"}: cargo::core::compiler::fingerprint: fingerprint error for strum v0.27.2/Build/TargetInner { ..: lib_target("strum", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/src/lib.rs", Edition2021) } + 0.468812651s INFO prepare_target{force=false package_id=strum v0.27.2 target="strum"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/strum-e074aab78e64a0a0/lib-strum` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.468924355s INFO prepare_target{force=false package_id=num_enum v0.7.4 target="num_enum"}: cargo::core::compiler::fingerprint: fingerprint error for num_enum v0.7.4/Build/TargetInner { ..: lib_target("num_enum", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/src/lib.rs", Edition2021) } + 0.468930204s INFO prepare_target{force=false package_id=num_enum v0.7.4 target="num_enum"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/num_enum-e1f2a50baa4db450/lib-num_enum` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.469106958s INFO prepare_target{force=false package_id=rand v0.8.5 target="rand"}: cargo::core::compiler::fingerprint: fingerprint error for rand v0.8.5/Build/TargetInner { name_inferred: true, ..: lib_target("rand", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/src/lib.rs", Edition2018) } + 0.469113093s INFO prepare_target{force=false package_id=rand v0.8.5 target="rand"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand-834da8fad550d160/lib-rand` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.469324199s INFO prepare_target{force=false package_id=rand_chacha v0.3.1 target="rand_chacha"}: cargo::core::compiler::fingerprint: fingerprint error for rand_chacha v0.3.1/Build/TargetInner { name_inferred: true, ..: lib_target("rand_chacha", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/src/lib.rs", Edition2018) } + 0.469330121s INFO prepare_target{force=false package_id=rand_chacha v0.3.1 target="rand_chacha"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand_chacha-4505c38d2840d32d/lib-rand_chacha` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.469475348s INFO prepare_target{force=false package_id=ppv-lite86 v0.2.21 target="ppv_lite86"}: cargo::core::compiler::fingerprint: fingerprint error for ppv-lite86 v0.2.21/Build/TargetInner { ..: lib_target("ppv_lite86", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/src/lib.rs", Edition2021) } + 0.469481184s INFO prepare_target{force=false package_id=ppv-lite86 v0.2.21 target="ppv_lite86"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ppv-lite86-b4c3b043649351b9/lib-ppv_lite86` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.469612139s INFO prepare_target{force=false package_id=rtnetlink v0.18.1 target="rtnetlink"}: cargo::core::compiler::fingerprint: fingerprint error for rtnetlink v0.18.1/Build/TargetInner { ..: lib_target("rtnetlink", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/src/lib.rs", Edition2021) } + 0.469617989s INFO prepare_target{force=false package_id=rtnetlink v0.18.1 target="rtnetlink"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rtnetlink-5fc96fc4a306b94d/lib-rtnetlink` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.469949713s INFO prepare_target{force=false package_id=netlink-packet-core v0.8.0 target="netlink_packet_core"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-packet-core v0.8.0/Build/TargetInner { ..: lib_target("netlink_packet_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/src/lib.rs", Edition2021) } + 0.469957964s INFO prepare_target{force=false package_id=netlink-packet-core v0.8.0 target="netlink_packet_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-packet-core-8c6fec6d52665c88/lib-netlink_packet_core` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.470087329s INFO prepare_target{force=false package_id=netlink-packet-route v0.25.1 target="netlink_packet_route"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-packet-route v0.25.1/Build/TargetInner { ..: lib_target("netlink_packet_route", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/src/lib.rs", Edition2021) } + 0.470093221s INFO prepare_target{force=false package_id=netlink-packet-route v0.25.1 target="netlink_packet_route"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-packet-route-2cbe9d01617fe9b3/lib-netlink_packet_route` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.470270836s INFO prepare_target{force=false package_id=netlink-proto v0.12.0 target="netlink_proto"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-proto v0.12.0/Build/TargetInner { ..: lib_target("netlink_proto", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/src/lib.rs", Edition2021) } + 0.470277342s INFO prepare_target{force=false package_id=netlink-proto v0.12.0 target="netlink_proto"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-proto-2758f7b9417315a9/lib-netlink_proto` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.470561372s INFO prepare_target{force=false package_id=netlink-sys v0.8.7 target="netlink_sys"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-sys v0.8.7/Build/TargetInner { ..: lib_target("netlink_sys", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/src/lib.rs", Edition2018) } + 0.470567652s INFO prepare_target{force=false package_id=netlink-sys v0.8.7 target="netlink_sys"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-sys-42b3377fb7506a3d/lib-netlink_sys` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: ::compile + 12: cargo::ops::cargo_compile::compile_ws + 13: cargo::ops::cargo_compile::compile_with_exec + 14: cargo::ops::cargo_compile::compile + 15: cargo::commands::check::exec + 16: ::exec + 17: cargo::main + 18: std::sys::backtrace::__rust_begin_short_backtrace:: + 19: std::rt::lang_start::<()>::{closure#0} + 20: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 21: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 22: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 23: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 24: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 29: main + 30: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 31: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 32: + 0.470832956s INFO prepare_target{force=false package_id=tokio v1.47.1 target="tokio"}: cargo::core::compiler::fingerprint: fingerprint error for tokio v1.47.1/Build/TargetInner { ..: lib_target("tokio", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs", Edition2021) } + 0.470839395s INFO prepare_target{force=false package_id=tokio v1.47.1 target="tokio"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tokio-2f87de80df157adb/lib-tokio` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: ::compile + 13: cargo::ops::cargo_compile::compile_ws + 14: cargo::ops::cargo_compile::compile_with_exec + 15: cargo::ops::cargo_compile::compile + 16: cargo::commands::check::exec + 17: ::exec + 18: cargo::main + 19: std::sys::backtrace::__rust_begin_short_backtrace:: + 20: std::rt::lang_start::<()>::{closure#0} + 21: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 22: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 23: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 24: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 25: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 26: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 27: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 28: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 29: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 30: main + 31: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 32: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 33: + 0.471139196s INFO prepare_target{force=false package_id=mio v1.0.4 target="mio"}: cargo::core::compiler::fingerprint: fingerprint error for mio v1.0.4/Build/TargetInner { ..: lib_target("mio", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs", Edition2021) } + 0.471146552s INFO prepare_target{force=false package_id=mio v1.0.4 target="mio"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/mio-3e57c80ed8766fbc/lib-mio` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: cargo::core::compiler::compile + 13: ::compile + 14: cargo::ops::cargo_compile::compile_ws + 15: cargo::ops::cargo_compile::compile_with_exec + 16: cargo::ops::cargo_compile::compile + 17: cargo::commands::check::exec + 18: ::exec + 19: cargo::main + 20: std::sys::backtrace::__rust_begin_short_backtrace:: + 21: std::rt::lang_start::<()>::{closure#0} + 22: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 27: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 28: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 29: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 30: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 31: main + 32: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 33: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 34: + 0.471295654s INFO prepare_target{force=false package_id=parking_lot v0.12.4 target="parking_lot"}: cargo::core::compiler::fingerprint: fingerprint error for parking_lot v0.12.4/Build/TargetInner { ..: lib_target("parking_lot", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/src/lib.rs", Edition2021) } + 0.471302115s INFO prepare_target{force=false package_id=parking_lot v0.12.4 target="parking_lot"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/parking_lot-78b7ead8847a092a/lib-parking_lot` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: cargo::core::compiler::compile + 13: ::compile + 14: cargo::ops::cargo_compile::compile_ws + 15: cargo::ops::cargo_compile::compile_with_exec + 16: cargo::ops::cargo_compile::compile + 17: cargo::commands::check::exec + 18: ::exec + 19: cargo::main + 20: std::sys::backtrace::__rust_begin_short_backtrace:: + 21: std::rt::lang_start::<()>::{closure#0} + 22: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 27: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 28: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 29: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 30: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 31: main + 32: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 33: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 34: + 0.471470101s INFO prepare_target{force=false package_id=lock_api v0.4.13 target="lock_api"}: cargo::core::compiler::fingerprint: fingerprint error for lock_api v0.4.13/Build/TargetInner { ..: lib_target("lock_api", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/src/lib.rs", Edition2021) } + 0.471478512s INFO prepare_target{force=false package_id=lock_api v0.4.13 target="lock_api"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/lock_api-1c76dc73fcb6745a/lib-lock_api` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: cargo::core::compiler::compile + 13: cargo::core::compiler::compile + 14: ::compile + 15: cargo::ops::cargo_compile::compile_ws + 16: cargo::ops::cargo_compile::compile_with_exec + 17: cargo::ops::cargo_compile::compile + 18: cargo::commands::check::exec + 19: ::exec + 20: cargo::main + 21: std::sys::backtrace::__rust_begin_short_backtrace:: + 22: std::rt::lang_start::<()>::{closure#0} + 23: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 28: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 29: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 30: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 31: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 32: main + 33: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 34: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 35: + 0.471654914s INFO prepare_target{force=false package_id=parking_lot_core v0.9.11 target="parking_lot_core"}: cargo::core::compiler::fingerprint: fingerprint error for parking_lot_core v0.9.11/Build/TargetInner { ..: lib_target("parking_lot_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/src/lib.rs", Edition2021) } + 0.471661893s INFO prepare_target{force=false package_id=parking_lot_core v0.9.11 target="parking_lot_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/parking_lot_core-ad182590320345bf/lib-parking_lot_core` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: cargo::core::compiler::compile + 13: cargo::core::compiler::compile + 14: ::compile + 15: cargo::ops::cargo_compile::compile_ws + 16: cargo::ops::cargo_compile::compile_with_exec + 17: cargo::ops::cargo_compile::compile + 18: cargo::commands::check::exec + 19: ::exec + 20: cargo::main + 21: std::sys::backtrace::__rust_begin_short_backtrace:: + 22: std::rt::lang_start::<()>::{closure#0} + 23: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 28: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 29: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 30: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 31: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 32: main + 33: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 34: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 35: + 0.471841027s INFO prepare_target{force=false package_id=smallvec v1.15.1 target="smallvec"}: cargo::core::compiler::fingerprint: fingerprint error for smallvec v1.15.1/Build/TargetInner { ..: lib_target("smallvec", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs", Edition2018) } + 0.471847152s INFO prepare_target{force=false package_id=smallvec v1.15.1 target="smallvec"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/smallvec-7413d0362208641c/lib-smallvec` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: cargo::core::compiler::compile + 13: cargo::core::compiler::compile + 14: cargo::core::compiler::compile + 15: ::compile + 16: cargo::ops::cargo_compile::compile_ws + 17: cargo::ops::cargo_compile::compile_with_exec + 18: cargo::ops::cargo_compile::compile + 19: cargo::commands::check::exec + 20: ::exec + 21: cargo::main + 22: std::sys::backtrace::__rust_begin_short_backtrace:: + 23: std::rt::lang_start::<()>::{closure#0} + 24: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 25: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 26: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 27: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 28: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 29: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 30: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 31: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 32: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 33: main + 34: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 35: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 36: + 0.471973154s INFO prepare_target{force=false package_id=signal-hook-registry v1.4.5 target="signal_hook_registry"}: cargo::core::compiler::fingerprint: fingerprint error for signal-hook-registry v1.4.5/Build/TargetInner { ..: lib_target("signal_hook_registry", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/src/lib.rs", Edition2015) } + 0.471979697s INFO prepare_target{force=false package_id=signal-hook-registry v1.4.5 target="signal_hook_registry"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/signal-hook-registry-48e1e76cdab3c22a/lib-signal_hook_registry` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: cargo::core::compiler::compile + 13: ::compile + 14: cargo::ops::cargo_compile::compile_ws + 15: cargo::ops::cargo_compile::compile_with_exec + 16: cargo::ops::cargo_compile::compile + 17: cargo::commands::check::exec + 18: ::exec + 19: cargo::main + 20: std::sys::backtrace::__rust_begin_short_backtrace:: + 21: std::rt::lang_start::<()>::{closure#0} + 22: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 27: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 28: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 29: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 30: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 31: main + 32: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 33: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 34: + 0.472138511s INFO prepare_target{force=false package_id=socket2 v0.6.0 target="socket2"}: cargo::core::compiler::fingerprint: fingerprint error for socket2 v0.6.0/Build/TargetInner { ..: lib_target("socket2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/src/lib.rs", Edition2021) } + 0.472145010s INFO prepare_target{force=false package_id=socket2 v0.6.0 target="socket2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/socket2-ef278a5fbe4bc230/lib-socket2` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: cargo::core::compiler::compile + 11: cargo::core::compiler::compile + 12: cargo::core::compiler::compile + 13: ::compile + 14: cargo::ops::cargo_compile::compile_ws + 15: cargo::ops::cargo_compile::compile_with_exec + 16: cargo::ops::cargo_compile::compile + 17: cargo::commands::check::exec + 18: ::exec + 19: cargo::main + 20: std::sys::backtrace::__rust_begin_short_backtrace:: + 21: std::rt::lang_start::<()>::{closure#0} + 22: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 27: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 28: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 29: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 30: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 31: main + 32: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 33: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 34: + 0.472287534s INFO prepare_target{force=false package_id=nix v0.29.0 target="nix"}: cargo::core::compiler::fingerprint: fingerprint error for nix v0.29.0/Build/TargetInner { name_inferred: true, ..: lib_target("nix", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/src/lib.rs", Edition2021) } + 0.472293327s INFO prepare_target{force=false package_id=nix v0.29.0 target="nix"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nix-cdc5c81108a4ef9e/lib-nix` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.472451303s INFO prepare_target{force=false package_id=thiserror v1.0.69 target="thiserror"}: cargo::core::compiler::fingerprint: fingerprint error for thiserror v1.0.69/Build/TargetInner { ..: lib_target("thiserror", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs", Edition2021) } + 0.472456796s INFO prepare_target{force=false package_id=thiserror v1.0.69 target="thiserror"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/thiserror-a49511936eec8a80/lib-thiserror` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.472590793s INFO prepare_target{force=false package_id=simple-error v0.3.2 target="simple_error"}: cargo::core::compiler::fingerprint: fingerprint error for simple-error v0.3.2/Build/TargetInner { ..: lib_target("simple_error", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/src/lib.rs", Edition2021) } + 0.472598666s INFO prepare_target{force=false package_id=simple-error v0.3.2 target="simple_error"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/simple-error-2146489c68bf9c62/lib-simple_error` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.472702134s INFO prepare_target{force=false package_id=tun v0.8.4 target="tun"}: cargo::core::compiler::fingerprint: fingerprint error for tun v0.8.4/Build/TargetInner { ..: lib_target("tun", ["staticlib", "lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/src/lib.rs", Edition2024) } + 0.472708455s INFO prepare_target{force=false package_id=tun v0.8.4 target="tun"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tun-57e7b4f3f4423bb2/lib-tun` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.473034379s INFO prepare_target{force=false package_id=nix v0.30.1 target="nix"}: cargo::core::compiler::fingerprint: fingerprint error for nix v0.30.1/Build/TargetInner { ..: lib_target("nix", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/src/lib.rs", Edition2021) } + 0.473045587s INFO prepare_target{force=false package_id=nix v0.30.1 target="nix"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nix-91d3948c53e28b47/lib-nix` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.473240527s INFO prepare_target{force=false package_id=tokio-util v0.7.15 target="tokio_util"}: cargo::core::compiler::fingerprint: fingerprint error for tokio-util v0.7.15/Build/TargetInner { ..: lib_target("tokio_util", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs", Edition2021) } + 0.473246836s INFO prepare_target{force=false package_id=tokio-util v0.7.15 target="tokio_util"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tokio-util-5394599c2ee903bf/lib-tokio_util` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.473486218s INFO prepare_target{force=false package_id=x25519-dalek v2.0.1 target="x25519_dalek"}: cargo::core::compiler::fingerprint: fingerprint error for x25519-dalek v2.0.1/Build/TargetInner { name_inferred: true, ..: lib_target("x25519_dalek", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/src/lib.rs", Edition2021) } + 0.473492615s INFO prepare_target{force=false package_id=x25519-dalek v2.0.1 target="x25519_dalek"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/x25519-dalek-9fdecec6bad8ad1c/lib-x25519_dalek` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: ::compile + 10: cargo::ops::cargo_compile::compile_ws + 11: cargo::ops::cargo_compile::compile_with_exec + 12: cargo::ops::cargo_compile::compile + 13: cargo::commands::check::exec + 14: ::exec + 15: cargo::main + 16: std::sys::backtrace::__rust_begin_short_backtrace:: + 17: std::rt::lang_start::<()>::{closure#0} + 18: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 23: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 24: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 25: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 26: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 27: main + 28: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 29: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 30: + 0.473690238s INFO prepare_target{force=false package_id=curve25519-dalek v4.1.3 target="curve25519_dalek"}: cargo::core::compiler::fingerprint: fingerprint error for curve25519-dalek v4.1.3/Build/TargetInner { name_inferred: true, ..: lib_target("curve25519_dalek", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/src/lib.rs", Edition2021) } + 0.473699440s INFO prepare_target{force=false package_id=curve25519-dalek v4.1.3 target="curve25519_dalek"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/curve25519-dalek-9bab319156944633/lib-curve25519_dalek` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: cargo::core::compiler::compile + 6: cargo::core::compiler::compile + 7: cargo::core::compiler::compile + 8: cargo::core::compiler::compile + 9: cargo::core::compiler::compile + 10: ::compile + 11: cargo::ops::cargo_compile::compile_ws + 12: cargo::ops::cargo_compile::compile_with_exec + 13: cargo::ops::cargo_compile::compile + 14: cargo::commands::check::exec + 15: ::exec + 16: cargo::main + 17: std::sys::backtrace::__rust_begin_short_backtrace:: + 18: std::rt::lang_start::<()>::{closure#0} + 19: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 20: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 21: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 22: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 23: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 24: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 25: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 26: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 27: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 28: main + 29: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 30: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 31: + 0.473968654s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="seaside"}: cargo::core::compiler::fingerprint: fingerprint error for reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library)/Check { test: true }/TargetInner { ..: lib_target("seaside", ["cdylib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/lib/mod.rs", Edition2021) } + 0.473979001s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="seaside"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reefshared-70efaba1cf3c0a43/test-lib-seaside` + +Caused by: + No such file or directory (os error 2) + +Stack backtrace: + 0: cargo_util::paths::read_bytes + 1: cargo_util::paths::read + 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint + 3: cargo::core::compiler::fingerprint::prepare_target + 4: cargo::core::compiler::compile + 5: ::compile + 6: cargo::ops::cargo_compile::compile_ws + 7: cargo::ops::cargo_compile::compile_with_exec + 8: cargo::ops::cargo_compile::compile + 9: cargo::commands::check::exec + 10: ::exec + 11: cargo::main + 12: std::sys::backtrace::__rust_begin_short_backtrace:: + 13: std::rt::lang_start::<()>::{closure#0} + 14: core::ops::function::impls:: for &F>::call_once + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 + 15: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 16: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 17: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 18: std::rt::lang_start_internal::{{closure}} + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 + 19: std::panicking::catch_unwind::do_call + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 + 20: std::panicking::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 + 21: std::panic::catch_unwind + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 + 22: std::rt::lang_start_internal + at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 + 23: main + 24: __libc_start_call_main + at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 + 25: __libc_start_main_impl + at ./csu/../csu/libc-start.c:360:3 + 26: + Compiling memchr v2.7.5 + Compiling libc v0.2.174 + Compiling bytes v1.10.1 + Compiling indexmap v2.12.0 + Checking generic-array v0.14.7 + Compiling serde_core v1.0.228 + Compiling regex-syntax v0.8.5 + Compiling smallvec v1.15.1 + Checking subtle v2.6.1 + Checking log v0.4.28 + Compiling lock_api v0.4.13 + Checking futures-channel v0.3.31 + Checking pin-utils v0.1.0 + Checking slab v0.4.10 + Checking futures-task v0.3.31 + Compiling aho-corasick v1.1.3 + Compiling prost v0.14.1 + Checking futures-io v0.3.31 + Compiling toml_edit v0.22.27 + Compiling petgraph v0.7.1 + Checking futures-util v0.3.31 + Checking thiserror v2.0.16 + Checking zeroize v1.8.1 + Checking zerocopy v0.8.26 + Compiling prost-types v0.14.1 + Checking getrandom v0.2.16 + Compiling getrandom v0.3.3 + Checking rand_core v0.6.4 + Compiling tempfile v3.20.0 + Checking crypto-common v0.1.6 + Compiling regex-automata v0.4.11 + Checking parking_lot_core v0.9.11 + Checking parking_lot v0.12.4 + Checking socket2 v0.6.0 + Checking mio v1.0.4 + Checking signal-hook-registry v1.4.5 + Compiling proc-macro-crate v3.3.0 + Checking bitflags v2.9.1 + Checking tokio v1.47.1 + Checking cpufeatures v0.2.17 + Checking serde v1.0.228 + Checking itoa v1.0.15 + Checking inout v0.1.4 + Checking netlink-packet-core v0.8.0 + Checking ryu v1.0.20 + Checking futures-executor v0.3.31 + Checking serde_json v1.0.143 + Checking futures v0.3.31 + Checking cipher v0.4.4 + Checking ppv-lite86 v0.2.21 + Checking universal-hash v0.5.1 + Checking block-buffer v0.10.4 + Checking ref-cast v1.0.24 + Checking foldhash v0.1.5 + Compiling num_enum_derive v0.7.4 + Checking simple-error v0.3.2 + Checking equivalent v1.0.2 + Checking dyn-clone v1.0.20 + Checking once_cell v1.21.3 + Checking opaque-debug v0.3.1 + Checking allocator-api2 v0.2.21 + Checking poly1305 v0.8.0 + Checking schemars v1.0.4 + Checking ahash v0.8.12 + Checking rand_chacha v0.3.1 + Compiling regex v1.11.3 + Checking hashbrown v0.15.4 + Checking digest v0.10.7 + Compiling prost-build v0.14.1 + Checking chacha20 v0.9.1 + Checking netlink-packet-route v0.25.1 + Checking serde_path_to_error v0.1.17 + Checking curve25519-dalek v4.1.3 + Checking nix v0.29.0 + Checking nix v0.30.1 + Checking aead v0.5.2 + Checking thiserror v1.0.69 + Checking unty v0.0.4 + Checking cached_proc_macro_types v0.1.1 + Checking lazy_static v1.5.0 + Checking web-time v1.1.0 + Checking strum v0.27.2 + Checking nftables v0.6.3 + Checking cached v0.56.0 + Checking x25519-dalek v2.0.1 + Checking bincode v2.0.1 + Compiling reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) + Checking chacha20poly1305 v0.10.1 + Checking num_enum v0.7.4 + Checking blake2 v0.10.6 + Checking rand v0.8.5 + Compiling serde_spanned v1.0.3 + Checking netlink-sys v0.8.7 + Checking tokio-util v0.7.15 + Compiling toml_datetime v0.7.3 + Checking netlink-proto v0.12.0 + Checking tun v0.8.4 + Checking ipnet v2.11.0 + Compiling toml v0.9.8 + Checking utf8parse v0.2.2 + Checking unicode-width v0.1.14 + Checking textwrap v0.11.0 + Compiling cbindgen v0.29.2 + Checking anstyle-parse v0.2.7 + Checking rtnetlink v0.18.1 + Checking atty v0.2.14 + Checking ansi_term v0.12.1 + Checking anstyle v1.0.11 + Checking strsim v0.8.0 + Checking bitflags v1.3.2 + Checking colorchoice v1.0.4 + Checking is_terminal_polyfill v1.70.1 + Checking anstyle-query v1.1.3 + Checking vec_map v0.8.2 + Checking env_filter v0.1.3 + Checking anstream v0.6.19 + Checking jiff v0.2.15 + Checking clap v2.34.0 + Checking reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) + Checking structopt v0.3.26 + Checking env_logger v0.11.8 + Checking reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) + Compiling reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) + Finished `dev` profile [unoptimized + debuginfo] target(s) in 47.81s diff --git a/target/rust-analyzer/flycheck0/stdout b/target/rust-analyzer/flycheck0/stdout new file mode 100644 index 00000000..4c615bc1 --- /dev/null +++ b/target/rust-analyzer/flycheck0/stdout @@ -0,0 +1,357 @@ +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro2-d3153bc1f4d4d498/build-script-build"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","linked_libs":[],"linked_paths":[],"cfgs":["wrap_proc_macro"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro2-4fa9aa8144730a46/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.18","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-ident-1.0.18/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_ident","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-ident-1.0.18/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_ident-5762da66a5bfba8e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_ident-5762da66a5bfba8e.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.174","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","extra_traits","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/libc-e904436085fb928c/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#version_check@0.9.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/version_check-0.9.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"version_check","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/version_check-0.9.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libversion_check-0f6ab564ae9887d4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libversion_check-0f6ab564ae9887d4.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_if","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_if-c647463405038957.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_if-c647463405038957.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/typenum-b043d4d6ec89ac6f/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_if","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_if-38b89ea812352f6a.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#autocfg@1.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/autocfg-1.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"autocfg","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/autocfg-1.5.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libautocfg-8894a47441bd56dd.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libautocfg-8894a47441bd56dd.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/parking_lot_core-cca8ffbff3c1f487/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde_core-11ed6a2353202a69/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/zerocopy-7cfece5b3521d7e5/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro2-9cce46f007fbdf6a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro2-9cce46f007fbdf6a.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.174","linked_libs":[],"linked_paths":[],"cfgs":["freebsd11","libc_const_extern_fn"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/libc-fadbf4ebc1741eef/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/typenum-ecb45726e3f0c886/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#generic-array@0.14.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/build.rs","edition":"2015","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["more_lengths"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/generic-array-5f7839f96dc999ca/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.13","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["atomic_usize","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/lock_api-851e5d86f6a9fe54/build-script-build"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde_core-61e75211089263c9/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.11","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/parking_lot_core-87f3f40d22afe144/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/thiserror-79220b1d4eb007c7/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"equivalent","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libequivalent-f4aa64648d3a68e2.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libequivalent-f4aa64648d3a68e2.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memchr","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmemchr-fdf0e1a8ab86a2b8.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.26","linked_libs":[],"linked_paths":[],"cfgs":["zerocopy_aarch64_simd_1_59_0","zerocopy_core_error_1_81_0","zerocopy_diagnostic_on_unimplemented_1_78_0","zerocopy_generic_bounds_in_const_fn_1_61_0","zerocopy_panic_in_const_and_vec_try_reserve_1_57_0","zerocopy_target_has_atomics_1_60_0"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/zerocopy-18c1d2e3c72d615d/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.40","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.40/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"quote","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.40/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libquote-21b5ce19d67421fe.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libquote-21b5ce19d67421fe.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#generic-array@0.14.7","linked_libs":[],"linked_paths":[],"cfgs":["relaxed_coherence"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/generic-array-3b49cc4a9f0fe6fc/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.13","linked_libs":[],"linked_paths":[],"cfgs":["has_const_fn_trait_bound"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/lock_api-c5876e0216087c04/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.16","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/thiserror-f7982c296d010d3b/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","derive","serde_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde-dbfd827f955688ab/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg_aliases@0.2.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg_aliases-0.2.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_aliases","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg_aliases-0.2.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_aliases-88ae697f10203bf0.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_aliases-88ae697f10203bf0.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.16.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.16.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.16.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-062a84e9e6cf7c93.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-062a84e9e6cf7c93.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@2.9.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbitflags-8055cbab5695b447.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbitflags-8055cbab5695b447.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@2.0.104","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.104/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"syn","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.104/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","extra-traits","fold","full","parsing","printing","proc-macro","visit"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsyn-abf2eb810a7a9395.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsyn-abf2eb810a7a9395.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","linked_libs":[],"linked_paths":[],"cfgs":["if_docsrs_then_no_serde_core"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde-e76c9b73f1dfa5f3/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"typenum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtypenum-03aaf5802a1b068d.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#semver@1.0.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/semver-1.0.26/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/semver-1.0.26/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/semver-6f9c34e09d05f00b/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.100","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/anyhow-4f4c842113b6e891/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strsim@0.11.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.11.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strsim","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.11.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrsim-b5071d94becd24a2.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrsim-b5071d94becd24a2.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#log@0.4.28","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"log","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblog-8fab9b2d1bdd2b53.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblog-8fab9b2d1bdd2b53.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-macro@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-macro-0.3.31/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"futures_macro","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-macro-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_macro-9384b465fbc546eb.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeroize_derive@1.4.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize_derive-1.4.2/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"zeroize_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize_derive-1.4.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzeroize_derive-1975f543a43069f3.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-macros@2.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-macros-2.5.0/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"tokio_macros","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-macros-2.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio_macros-c7e3a877bb419273.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror-impl@2.0.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-2.0.16/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"thiserror_impl","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-2.0.16/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror_impl-f37f41b94f54c19b.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_derive@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive-1.0.228/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"serde_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_derive-bd05f7ec62fe2ff2.so"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#semver@1.0.26","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/semver-0a9f0e6c8c5c0e73/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.100","linked_libs":[],"linked_paths":[],"cfgs":["std_backtrace"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/anyhow-dac8568c78d8711c/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"typenum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtypenum-c824e30e66943775.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtypenum-c824e30e66943775.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#either@1.15.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/either-1.15.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"either","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/either-1.15.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std","use_std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libeither-c8d396d337920be5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libeither-c8d396d337920be5.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#winnow@0.7.13","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winnow-0.7.13/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"winnow","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winnow-0.7.13/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libwinnow-bb2220e9b878b549.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libwinnow-bb2220e9b878b549.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.143","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde_json-36f2efaf958d971c/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pastey@0.1.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pastey-0.1.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"pastey","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pastey-0.1.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpastey-6ca4cbef12e14d65.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.100","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anyhow","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanyhow-3f567128a552b244.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanyhow-3f567128a552b244.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itertools@0.14.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.14.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itertools","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.14.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","use_alloc","use_std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitertools-d5c4e00e146b744d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitertools-d5c4e00e146b744d.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.143","linked_libs":[],"linked_paths":[],"cfgs":["fast_arithmetic=\"64\""],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde_json-44515d519c78d038/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#semver@1.0.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/semver-1.0.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"semver","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/semver-1.0.26/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsemver-235460c8b86f2ea5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsemver-235460c8b86f2ea5.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","fs","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/rustix-0c84c037221e4a92/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast@1.0.24","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/ref-cast-3210cc5e2a6cc055/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/getrandom-9d78653e15ca8ed8/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#heck@0.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"heck","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libheck-368295e68f50b2c3.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libheck-368295e68f50b2c3.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"once_cell","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","race","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libonce_cell-88cad944dacc265a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libonce_cell-88cad944dacc265a.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost-derive@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-derive-0.14.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"prost_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-derive-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_derive-4c69ec72b01a7c79.so"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast@1.0.24","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/ref-cast-cb05b0c8109bc4cd/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/getrandom-5b7ab04e62df5a17/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustc_version@0.4.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc_version-0.4.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustc_version","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc_version-0.4.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustc_version-f75e1db321a7cdfd.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustc_version-f75e1db321a7cdfd.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","linked_libs":[],"linked_paths":[],"cfgs":["static_assertions","linux_raw","linux_like","linux_kernel"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/rustix-117e6b4a08a95b73/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast-impl@1.0.24","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-impl-1.0.24/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"ref_cast_impl","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-impl-1.0.24/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libref_cast_impl-79d9b774762715a1.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-sink@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_sink","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_sink-c8f89f3b67216fdc.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ident_case@1.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ident_case-1.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ident_case","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ident_case-1.0.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libident_case-2dc10d9b37d5f124.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libident_case-2dc10d9b37d5f124.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-core@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_core-de644a21dfcc1a5c.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project-lite@0.2.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_project_lite","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_project_lite-5d9e80b75b3eef3f.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#linux-raw-sys@0.9.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/linux-raw-sys-0.9.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"linux_raw_sys","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/linux-raw-sys-0.9.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["elf","errno","general","ioctl","no_std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblinux_raw_sys-10de75399a76519c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblinux_raw_sys-10de75399a76519c.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fnv@1.0.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fnv-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fnv","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fnv-1.0.7/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfnv-92dd6573194b1649.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfnv-92dd6573194b1649.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","fs","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustix-7b09ad42b3ff5eb4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustix-7b09ad42b3ff5eb4.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek@4.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","precomputed-tables","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/curve25519-dalek-37366f93a32ee789/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_derive_internals@0.29.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive_internals-0.29.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_derive_internals","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive_internals-0.29.1/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_derive_internals-419d0b0b74213ccc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_derive_internals-419d0b0b74213ccc.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.29.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["fs","mount","process","sched","signal","uio"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/nix-dc9c01744205b2dc/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#darling_core@0.20.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling_core-0.20.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"darling_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling_core-0.20.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["strsim","suggestions"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling_core-1a9605d0c43f64f7.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling_core-1a9605d0c43f64f7.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.30.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","ioctl"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/nix-ff737e4e0b83fa29/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ahash@0.8.12","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/ahash-492bfe065ce73a05/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_datetime@0.6.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.6.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_datetime","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.6.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_datetime-7b8b55ae2dd20e27.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_datetime-7b8b55ae2dd20e27.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fastrand@2.3.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fastrand-2.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fastrand","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fastrand-2.3.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfastrand-3ceb7b7fa26ada13.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfastrand-3ceb7b7fa26ada13.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/thiserror-6cadb049729033d9/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smallvec@1.15.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smallvec","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsmallvec-9f2d2606d976b516.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project-lite@0.2.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_project_lite","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_project_lite-e4c573189f4d52e5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_project_lite-e4c573189f4d52e5.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.36","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.36/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.36/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/prettyplease-caef323d3235f442/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#scopeguard@1.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scopeguard-1.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"scopeguard","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scopeguard-1.2.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libscopeguard-9248233da26925a3.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-sink@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_sink","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_sink-f85fd7a132d67190.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_sink-f85fd7a132d67190.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-core@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_core-3badc0fa3312283b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_core-3badc0fa3312283b.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.36","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/prettyplease-a39df894723b7cc5/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.13","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lock_api","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["atomic_usize","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblock_api-79a07689fae3c8c4.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/thiserror-b336d6e8da9bee76/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#darling_macro@0.20.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling_macro-0.20.11/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"darling_macro","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling_macro-0.20.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling_macro-08c9a72680004a53.so"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#ahash@0.8.12","linked_libs":[],"linked_paths":[],"cfgs":["folded_multiply"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/ahash-095506401e0ab86b/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.30.1","linked_libs":[],"linked_paths":[],"cfgs":["linux","linux_android"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/nix-3919aabc8693ff23/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#schemars_derive@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars_derive-1.0.4/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"schemars_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars_derive-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libschemars_derive-d7c09f0b2f30438e.so"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek@4.1.3","linked_libs":[],"linked_paths":[],"cfgs":["curve25519_dalek_bits=\"64\"","curve25519_dalek_backend=\"simd\""],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/curve25519-dalek-4d75d2d65e477228/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.29.0","linked_libs":[],"linked_paths":[],"cfgs":["linux","linux_android"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/nix-edd9dae4598396ce/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek-derive@0.1.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-derive-0.1.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"curve25519_dalek_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-derive-0.1.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcurve25519_dalek_derive-83218d7d0a260b05.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror-impl@1.0.69","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-1.0.69/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"thiserror_impl","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-1.0.69/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror_impl-569283bcd07e9987.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#subtle@2.6.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"subtle","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsubtle-8c24189f00ebf9a9.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#scopeguard@1.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scopeguard-1.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"scopeguard","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scopeguard-1.2.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libscopeguard-88630dd0b0352bf1.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libscopeguard-88630dd0b0352bf1.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#log@0.4.28","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"log","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblog-b1b44ca0b8607405.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustversion@1.0.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustversion-1.0.21/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustversion-1.0.21/build/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/rustversion-3126fceb71ff03b9/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fixedbitset@0.5.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fixedbitset-0.5.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fixedbitset","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fixedbitset-0.5.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfixedbitset-0458ac0019c5b591.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfixedbitset-0458ac0019c5b591.rmeta"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustversion@1.0.21","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/rustversion-30aa5947587f1a0a/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smallvec@1.15.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smallvec","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsmallvec-7413d0362208641c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsmallvec-7413d0362208641c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#darling@0.20.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling-0.20.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"darling","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling-0.20.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","suggestions"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling-19c90d835c8c4658.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling-19c90d835c8c4658.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.36","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.36/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prettyplease","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.36/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprettyplease-b2415031c6620a52.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprettyplease-b2415031c6620a52.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.13","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lock_api","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["atomic_usize","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblock_api-1c76dc73fcb6745a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblock_api-1c76dc73fcb6745a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#multimap@0.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/multimap-0.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"multimap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/multimap-0.10.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmultimap-6910a60d0d67170b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmultimap-6910a60d0d67170b.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-channel@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_channel","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","futures-sink","sink","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_channel-96abd665e28a5745.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-ppcle_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-ppcle_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_ppcle_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-ppcle_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_ppcle_64-e68f5868ded8c504.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_ppcle_64-e68f5868ded8c504.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-macos-aarch_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-macos-aarch_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_macos_aarch_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-macos-aarch_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_macos_aarch_64-8851f7b763053457.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_macos_aarch_64-8851f7b763053457.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-utils@0.1.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_utils","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_utils-419b4dfb91fea471.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-x86_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-x86_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_x86_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-x86_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_x86_64-5e92e64bafb9df52.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_x86_64-5e92e64bafb9df52.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-x86_32@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-x86_32-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_x86_32","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-x86_32-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_x86_32-a7c202d8ede2c7c4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_x86_32-a7c202d8ede2c7c4.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#generic-array@0.14.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"generic_array","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["more_lengths"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgeneric_array-c6013b63fa532f39.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-macos-x86_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-macos-x86_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_macos_x86_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-macos-x86_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_macos_x86_64-7801335f2e0f9d18.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_macos_x86_64-7801335f2e0f9d18.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-s390_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-s390_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_s390_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-s390_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_s390_64-1ae120818345306d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_s390_64-1ae120818345306d.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#virtue@0.0.18","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/virtue-0.0.18/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"virtue","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/virtue-0.0.18/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libvirtue-6578584bc6671872.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libvirtue-6578584bc6671872.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-win32@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-win32-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_win32","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-win32-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_win32-9c4c1fd791266bf7.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_win32-9c4c1fd791266bf7.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.10","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slab","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libslab-06b21a35c2c242c5.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-task@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_task","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_task-de234338db6d77e0.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#subtle@2.6.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"subtle","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsubtle-c2125d2c0ec00cea.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsubtle-c2125d2c0ec00cea.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-aarch_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-aarch_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_aarch_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-aarch_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_aarch_64-8a3a5926648e460d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_aarch_64-8a3a5926648e460d.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#generic-array@0.14.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"generic_array","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["more_lengths"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgeneric_array-c6bfe15667f162ad.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgeneric_array-c6bfe15667f162ad.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored-3e7529368a273e34.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored-3e7529368a273e34.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bincode_derive@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode_derive-2.0.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"bincode_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode_derive-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbincode_derive-387c0f5a3ab70b0f.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached_proc_macro@0.25.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro-0.25.0/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"cached_proc_macro","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro-0.25.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached_proc_macro-89703f301878f64f.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustversion@1.0.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustversion-1.0.21/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"rustversion","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustversion-1.0.21/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustversion-e3d2dd1048045247.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-io@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_io","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_io-e3b15e990b506d86.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#indexmap@2.12.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"indexmap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.12.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libindexmap-5b1fb49443fbeb16.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libindexmap-5b1fb49443fbeb16.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytes@1.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytes","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbytes-e3cb6e9c42ffc25b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbytes-e3cb6e9c42ffc25b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytes@1.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytes","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbytes-b94b70994929e7fa.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strum_macros@0.27.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum_macros-0.27.2/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"strum_macros","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum_macros-0.27.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrum_macros-04391b311aca06b7.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memchr","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmemchr-6709e545d5a75bbd.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmemchr-6709e545d5a75bbd.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-de5002768cda0ab4.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-channel@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_channel","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","futures-sink","sink","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_channel-eefa8b533f2b367f.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_channel-eefa8b533f2b367f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeroize@1.8.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zeroize","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","zeroize_derive"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzeroize-48d0b7b0df8599a0.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prost","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost-063961c2f74ccd33.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost-063961c2f74ccd33.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.174","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libc","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","extra_traits","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblibc-c7810272c07fcfac.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.174","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libc","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","extra_traits","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblibc-12803c979228cc4e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblibc-12803c979228cc4e.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aho_corasick","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["perf-literal","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaho_corasick-0c64cc041cfd849f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.2.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-ec916316e169bc33.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.2.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-6a8e0db638d8ae7c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-6a8e0db638d8ae7c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-afffc94b15b4a1d6.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-afffc94b15b4a1d6.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand_core@0.6.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","getrandom","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_core-8d89bdb5175672ac.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crypto-common@0.1.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"crypto_common","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["getrandom","rand_core","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcrypto_common-c3de8cd3053d8b64.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand_core@0.6.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","getrandom","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_core-c8915665fd1b5932.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_core-c8915665fd1b5932.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crypto-common@0.1.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"crypto_common","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["getrandom","rand_core","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcrypto_common-478bb928817992c3.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcrypto_common-478bb928817992c3.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot_core-985fa2653a7074e6.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tempfile@3.20.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tempfile-3.20.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tempfile","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tempfile-3.20.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","getrandom"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtempfile-e911e9968f615ae7.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtempfile-e911e9968f615ae7.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#petgraph@0.7.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/petgraph-0.7.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"petgraph","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/petgraph-0.7.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpetgraph-6108b0ce5725b5ab.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpetgraph-6108b0ce5725b5ab.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot@0.12.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot-3cfefb0391980ece.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost-types@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-types-0.14.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prost_types","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-types-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_types-3b731a45ba3a0f01.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_types-3b731a45ba3a0f01.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_core-2cdbf80b25b87d16.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_core-2cdbf80b25b87d16.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerocopy","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzerocopy-cec54beb6f6b980a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot_core-ad182590320345bf.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot_core-ad182590320345bf.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#signal-hook-registry@1.4.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"signal_hook_registry","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsignal_hook_registry-e60a7645222b7ea1.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#socket2@0.6.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"socket2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["all"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsocket2-b4977119b4c628e3.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#signal-hook-registry@1.4.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"signal_hook_registry","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsignal_hook_registry-48e1e76cdab3c22a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsignal_hook_registry-48e1e76cdab3c22a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aho_corasick","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["perf-literal","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaho_corasick-fcf8b756b0993101.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaho_corasick-fcf8b756b0993101.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#mio@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"mio","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["net","os-ext","os-poll"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmio-2a0e0111e65cfbfc.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_syntax","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_syntax-5815ed1846ecdf1c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_syntax-5815ed1846ecdf1c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_core-433d322c7f81f4fc.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-io@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_io","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_io-d4c3ffe564a5a929.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_io-d4c3ffe564a5a929.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@2.9.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbitflags-3997a28a4245f30d.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cpufeatures@0.2.17","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cpufeatures","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcpufeatures-45c28af12c96235b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-utils@0.1.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_utils","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_utils-9218feb6935d4415.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_utils-9218feb6935d4415.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#mio@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"mio","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["net","os-ext","os-poll"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmio-3e57c80ed8766fbc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmio-3e57c80ed8766fbc.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot@0.12.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot-78b7ead8847a092a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot-78b7ead8847a092a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-task@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_task","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_task-5bed7a89f14e5718.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_task-5bed7a89f14e5718.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-b9dd68c67000877d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-b9dd68c67000877d.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.10","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slab","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libslab-97f08ff868a393bc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libslab-97f08ff868a393bc.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-crate@3.3.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-crate-3.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro_crate","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-crate-3.3.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_crate-dc5a4ab583a5c64e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_crate-dc5a4ab583a5c64e.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeroize@1.8.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zeroize","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","zeroize_derive"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzeroize-d9a47f3b81707dc8.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzeroize-d9a47f3b81707dc8.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#socket2@0.6.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"socket2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["all"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsocket2-ef278a5fbe4bc230.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsocket2-ef278a5fbe4bc230.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cpufeatures@0.2.17","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cpufeatures","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcpufeatures-f5116670c7931c01.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcpufeatures-f5116670c7931c01.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itoa","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitoa-7a0919d71cb7f92c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itoa","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitoa-d5048592e7308c8e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitoa-d5048592e7308c8e.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#inout@0.1.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"inout","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libinout-1acf64b9352ccb88.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-util@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_util","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","async-await-macro","channel","futures-channel","futures-io","futures-macro","futures-sink","io","memchr","sink","slab","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_util-ffd04c7de8db851f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","derive","serde_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde-aeff35667dd51f7a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#utf8parse@0.2.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"utf8parse","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libutf8parse-cdcb8f2bf5c2ce23.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libutf8parse-cdcb8f2bf5c2ce23.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ryu@1.0.20","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ryu","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libryu-9d8193471ee70b21.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-executor@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_executor","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_executor-c393b6eb19dc9217.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ryu@1.0.20","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ryu","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libryu-857778c47b40d947.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libryu-857778c47b40d947.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-packet-core@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_packet_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_core-e33c550d39f7979a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-parse@0.2.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_parse","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","utf8"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_parse-f7d601d18b64d8bc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_parse-f7d601d18b64d8bc.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","default","executor","futures-executor","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures-f7ba99dab821e3ba.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","derive","serde_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde-ef13ad9c0addc358.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde-ef13ad9c0addc358.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#universal-hash@0.5.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"universal_hash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libuniversal_hash-27be24bf1711139f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cipher@0.4.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cipher","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcipher-fdf453fde210cb68.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#inout@0.1.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"inout","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libinout-6c673083b33cc137.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libinout-6c673083b33cc137.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#block-buffer@0.10.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"block_buffer","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblock_buffer-ad2318787366fd12.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast@1.0.24","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ref_cast","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libref_cast-ab18a8289a63813f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#is_terminal_polyfill@1.70.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"is_terminal_polyfill","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libis_terminal_polyfill-15aa42c576b0e781.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libis_terminal_polyfill-15aa42c576b0e781.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_edit@0.22.27","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_edit-0.22.27/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_edit","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_edit-0.22.27/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["parse"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_edit-723aaec0f43b5a6e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_edit-723aaec0f43b5a6e.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ppv-lite86@0.2.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ppv_lite86","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libppv_lite86-1e6368468c918bef.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#simple-error@0.3.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"simple_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsimple_error-d2dfd4027151b5f2.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foldhash@0.1.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"foldhash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfoldhash-b8b2147ed938ea6b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"equivalent","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libequivalent-8b054abaa056da40.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#dyn-clone@1.0.20","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"dyn_clone","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdyn_clone-73b7f0f7c963e684.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-query@1.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_query","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_query-c09ec51645899b1e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_query-c09ec51645899b1e.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-packet-core@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_packet_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_core-8c6fec6d52665c88.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_core-8c6fec6d52665c88.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#colorchoice@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"colorchoice","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcolorchoice-6db9a4c54df3070d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcolorchoice-6db9a4c54df3070d.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle@1.0.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle-98b62924bd74ad07.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle-98b62924bd74ad07.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#opaque-debug@0.3.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"opaque_debug","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libopaque_debug-1e3af4630ac62466.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.143","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_json","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_json-4747f3729f44e87c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"once_cell","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","race","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libonce_cell-0405b17b6fd897ff.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ahash@0.8.12","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ahash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libahash-19020da8681f2f43.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstream@0.6.19","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstream","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["auto","default","wincon"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstream-a8823dce180a0df4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstream-a8823dce180a0df4.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#poly1305@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"poly1305","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpoly1305-8a727c378b5335d8.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_syntax","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_syntax-40e89b7ec18b063b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#allocator-api2@0.2.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"allocator_api2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liballocator_api2-a3943f72dc59f3d7.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand_chacha@0.3.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand_chacha","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_chacha-194eb116b9ef7393.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#digest@0.10.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"digest","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","block-buffer","core-api","default","mac","std","subtle"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdigest-6d69658abfb2c0a7.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.143","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_json","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_json-288a001dee904ca8.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_json-288a001dee904ca8.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex@1.11.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","perf","perf-backtrack","perf-cache","perf-dfa","perf-inline","perf-literal","perf-onepass","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex-76bf2da928d04ed4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex-76bf2da928d04ed4.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#schemars@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"schemars","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","schemars_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libschemars-28dd6ca661184b4f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerocopy","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzerocopy-f0998fbc238d2d44.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzerocopy-f0998fbc238d2d44.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cipher@0.4.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cipher","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcipher-66a7a66cdc67bacf.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcipher-66a7a66cdc67bacf.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.15.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["allocator-api2","default","default-hasher","equivalent","inline-more","raw-entry"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-285765d29e339db4.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#chacha20@0.9.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"chacha20","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20-dec7dcb0dc846433.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num_enum_derive@0.7.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum_derive-0.7.4/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"num_enum_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum_derive-0.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["proc-macro-crate","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnum_enum_derive-ba58a006c80df9bc.so"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_path_to_error@0.1.17","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_path_to_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_path_to_error-d9a78dbb2f3fe050.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ppv-lite86@0.2.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ppv_lite86","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libppv_lite86-b4c3b043649351b9.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libppv_lite86-b4c3b043649351b9.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#universal-hash@0.5.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"universal_hash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libuniversal_hash-d64358b1ff05fe22.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libuniversal_hash-d64358b1ff05fe22.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aead@0.5.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aead","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","getrandom","rand_core"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaead-3c5ca3fd7a515c7b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#block-buffer@0.10.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"block_buffer","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblock_buffer-c7ffa532adaa845c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblock_buffer-c7ffa532adaa845c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-2462b4b57be7e6cd.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error-attr@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-attr-1.0.4/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-attr-1.0.4/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro-error-attr-92362dd8246541b6/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.30.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","ioctl"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-1bbe9177e166f95b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unty@0.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unty","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunty-b861bb6d60654d2f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast@1.0.24","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ref_cast","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libref_cast-9bba8528516e5be4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libref_cast-9bba8528516e5be4.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached_proc_macro_types@0.1.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cached_proc_macro_types","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached_proc_macro_types-c3003365b7efe797.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lazy_static@1.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lazy_static","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblazy_static-5f1438d28b1de877.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#opaque-debug@0.3.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"opaque_debug","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libopaque_debug-f9656aea55626350.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libopaque_debug-f9656aea55626350.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap_lex@0.7.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_lex-0.7.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap_lex","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_lex-0.7.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap_lex-f791c1dd40a8abdb.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap_lex-f791c1dd40a8abdb.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#web-time@1.1.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"web_time","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libweb_time-24b1fb3bbf605364.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strum@0.27.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrum-a83a57a24a7a9abf.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foldhash@0.1.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"foldhash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfoldhash-71b35bb279e9f7cc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfoldhash-71b35bb279e9f7cc.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@1.0.109","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-1.0.109/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-1.0.109/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","full","parsing","printing","proc-macro","quote"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/syn-0b39a66254fd25b2/build-script-build"],"executable":null,"fresh":true} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@1.0.109","linked_libs":[],"linked_paths":[],"cfgs":["syn_disable_nightly_tests"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/syn-cd5ac1276970794d/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_automata","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","dfa-onepass","hybrid","meta","nfa-backtrack","nfa-pikevm","nfa-thompson","perf-inline","perf-literal","perf-literal-multisubstring","perf-literal-substring","std","syntax","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment","unicode-word-boundary"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_automata-613dd4fd964cf0b3.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_automata-613dd4fd964cf0b3.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#dyn-clone@1.0.20","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"dyn_clone","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdyn_clone-13e98e462e33ddda.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdyn_clone-13e98e462e33ddda.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#allocator-api2@0.2.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"allocator_api2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liballocator_api2-f21c861a1094a182.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liballocator_api2-f21c861a1094a182.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek@4.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"curve25519_dalek","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","precomputed-tables","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcurve25519_dalek-20e42520cc60654b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached@0.56.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cached","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ahash","cached_proc_macro","cached_proc_macro_types","default","proc_macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached-ba2ece28dd432665.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap_builder@4.5.50","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_builder-4.5.50/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap_builder","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_builder-4.5.50/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["color","error-context","help","std","suggestions","usage"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap_builder-eb6e4add98c18395.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap_builder-eb6e4add98c18395.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#x25519-dalek@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"x25519_dalek","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","precomputed-tables","static_secrets","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libx25519_dalek-c72417e26ea43947.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_automata","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","dfa-onepass","hybrid","meta","nfa-backtrack","nfa-pikevm","nfa-thompson","perf-inline","perf-literal","perf-literal-multisubstring","perf-literal-substring","std","syntax","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment","unicode-word-boundary"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_automata-34eee35aa1d8fb6b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost-build@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-build-0.14.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prost_build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-build-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","format"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_build-872abc6c82f22d56.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_build-872abc6c82f22d56.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-util@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_util","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","async-await-macro","channel","futures-channel","futures-io","futures-macro","futures-sink","io","memchr","sink","slab","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_util-34ee765464d9fa21.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_util-34ee765464d9fa21.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.29.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["fs","mount","process","sched","signal","uio"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-72f3c6b2f9b26637.rmeta"],"executable":null,"fresh":false} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error-attr@1.0.4","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro-error-attr-8a534f9a16904ebf/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.15.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["allocator-api2","default","default-hasher","equivalent","inline-more","raw-entry"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-88387dceb37c09d5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-88387dceb37c09d5.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-executor@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_executor","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_executor-09fa96bb5154e0c6.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_executor-09fa96bb5154e0c6.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex@1.11.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","perf","perf-backtrack","perf-cache","perf-dfa","perf-inline","perf-literal","perf-onepass","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex-ad6a595b74f9ca3e.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","default","executor","futures-executor","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures-fae105f3ec3fc157.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures-fae105f3ec3fc157.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#poly1305@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"poly1305","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpoly1305-59b4e153a282a0ac.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpoly1305-59b4e153a282a0ac.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#chacha20poly1305@0.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"chacha20poly1305","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","getrandom","rand_core"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20poly1305-ac0432852e76f5b1.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num_enum@0.7.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"num_enum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnum_enum-cc5661252c4b33d5.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#digest@0.10.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"digest","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","block-buffer","core-api","default","mac","std","subtle"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdigest-35bd109ed2d06f8a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdigest-35bd109ed2d06f8a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ahash@0.8.12","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ahash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libahash-e5108daa8d923391.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libahash-e5108daa8d923391.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bincode@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bincode","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","bincode_derive","default","derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbincode-4fc25cbeb6814d13.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#chacha20@0.9.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"chacha20","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20-7e57c7442be16b6a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20-7e57c7442be16b6a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#blake2@0.10.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"blake2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblake2-f320066c6811652a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio@1.47.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytes","default","fs","full","io-std","io-util","libc","macros","mio","net","parking_lot","process","rt","rt-multi-thread","signal","signal-hook-registry","socket2","sync","time","tokio-macros"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio-92eac18d2a4c82b2.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_spanned@1.0.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_spanned-1.0.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_spanned","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_spanned-1.0.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","serde","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_spanned-bf2af6db24245b37.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_spanned-bf2af6db24245b37.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand_chacha@0.3.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand_chacha","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_chacha-4505c38d2840d32d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_chacha-4505c38d2840d32d.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-sys@0.8.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_sys","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","futures","tokio","tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_sys-b6fe346fb26cf63b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#schemars@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"schemars","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","schemars_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libschemars-13a7610553f4cbaa.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libschemars-13a7610553f4cbaa.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_path_to_error@0.1.17","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_path_to_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_path_to_error-e4185477a20c1e94.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_path_to_error-e4185477a20c1e94.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-proto@0.12.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_proto","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_proto-2a0dffee8abf8340.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aead@0.5.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aead","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","getrandom","rand_core"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaead-941727e9b6f6f2d1.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaead-941727e9b6f6f2d1.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_datetime@0.7.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.7.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_datetime","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.7.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","serde","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_datetime-a1813512cc125ab5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_datetime-a1813512cc125ab5.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-a49511936eec8a80.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-a49511936eec8a80.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_parser@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_parser-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_parser","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_parser-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_parser-e702e3868cf63027.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_parser-e702e3868cf63027.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-1.0.4/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-1.0.4/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","syn","syn-error"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro-error-21a3de49eedbbe31/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cbindgen@0.29.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clap","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/cbindgen-98145a2040a5f207/build-script-build"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-util@0.7.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_util","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["codec","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio_util-acdc6c6fac6ff510.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand@0.8.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","getrandom","libc","rand_chacha","std","std_rng"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand-e6ec704b1c86552f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unty@0.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unty","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunty-a54929119ec5a55c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunty-a54929119ec5a55c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strum@0.27.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrum-e074aab78e64a0a0.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrum-e074aab78e64a0a0.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached_proc_macro_types@0.1.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cached_proc_macro_types","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached_proc_macro_types-d20a172dc34e2c05.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached_proc_macro_types-d20a172dc34e2c05.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#web-time@1.1.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"web_time","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libweb_time-742dc25325911c35.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libweb_time-742dc25325911c35.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.30.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","ioctl"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-91d3948c53e28b47.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-91d3948c53e28b47.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["test"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/reef-common-1f0288bba220e2c3/build-script-build"],"executable":null,"fresh":false} +{"reason":"build-script-executed","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/reef-common-08b7a45284a9c032/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prost","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost-335cbf92e8a4938b.rmeta"],"executable":null,"fresh":false} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#cbindgen@0.29.2","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/cbindgen-a55c01575f30acb2/out"} +{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error@1.0.4","linked_libs":[],"linked_paths":[],"cfgs":["use_fallback"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro-error-fcfd8db63499a993/out"} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tun@0.8.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/Cargo.toml","target":{"kind":["staticlib","lib"],"crate_types":["staticlib","lib"],"name":"tun","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/src/lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["async","futures","futures-core","tokio","tokio-util"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtun-6449548ac7b38798.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ipnet@2.11.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ipnet","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libipnet-4fc83dc2fc2c3f86.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#chacha20poly1305@0.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"chacha20poly1305","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","getrandom","rand_core"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20poly1305-361d9323f392b418.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20poly1305-361d9323f392b418.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached@0.56.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cached","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ahash","cached_proc_macro","cached_proc_macro_types","default","proc_macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached-fe925702b5cc28b6.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached-fe925702b5cc28b6.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#x25519-dalek@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"x25519_dalek","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","precomputed-tables","static_secrets","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libx25519_dalek-9fdecec6bad8ad1c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libx25519_dalek-9fdecec6bad8ad1c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error-attr@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-attr-1.0.4/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"proc_macro_error_attr","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-attr-1.0.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_error_attr-06d79d525e67447b.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap@4.5.50","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-4.5.50/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-4.5.50/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["color","default","error-context","help","std","suggestions","usage"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap-1222d02732b046cc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap-1222d02732b046cc.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@1.0.109","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-1.0.109/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"syn","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-1.0.109/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","full","parsing","printing","proc-macro","quote"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsyn-5b63a72393b8084b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsyn-5b63a72393b8084b.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num_enum@0.7.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"num_enum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnum_enum-e1f2a50baa4db450.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnum_enum-e1f2a50baa4db450.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek@4.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"curve25519_dalek","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","precomputed-tables","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcurve25519_dalek-9bab319156944633.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcurve25519_dalek-9bab319156944633.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#blake2@0.10.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"blake2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblake2-a95e603b6f7a2a4f.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblake2-a95e603b6f7a2a4f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#utf8parse@0.2.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"utf8parse","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libutf8parse-fe743609d23c1f65.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-sys@0.8.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_sys","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","futures","tokio","tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_sys-42b3377fb7506a3d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_sys-42b3377fb7506a3d.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-segmentation@1.12.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-segmentation-1.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_segmentation","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-segmentation-1.12.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_segmentation-13a3a66686d68a3f.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_segmentation-13a3a66686d68a3f.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bincode@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bincode","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","bincode_derive","default","derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbincode-f185b9f4039d0ce4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbincode-f185b9f4039d0ce4.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-width@0.1.14","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-width-0.1.14/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_width","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-width-0.1.14/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["cjk","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_width-4205c60c9ba625c6.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#simple-error@0.3.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"simple_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsimple_error-2146489c68bf9c62.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsimple_error-2146489c68bf9c62.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-proto@0.12.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_proto","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_proto-2758f7b9417315a9.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_proto-2758f7b9417315a9.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lazy_static@1.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lazy_static","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblazy_static-5615ca6d930c1db5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblazy_static-5615ca6d930c1db5.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand@0.8.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","getrandom","libc","rand_chacha","std","std_rng"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand-834da8fad550d160.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand-834da8fad550d160.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#heck@0.3.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"heck","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.3.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libheck-6a0e2f53a5f37090.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libheck-6a0e2f53a5f37090.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-packet-route@0.25.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_packet_route","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_route-b72ad08dac0c4fa1.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#textwrap@0.11.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/textwrap-0.11.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"textwrap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/textwrap-0.11.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtextwrap-bc320b19f5a40cda.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-1.0.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","syn","syn-error"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_error-e390fbaa7029cec0.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_error-e390fbaa7029cec0.rmeta"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-util@0.7.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_util","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["codec","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio_util-5394599c2ee903bf.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio_util-5394599c2ee903bf.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-parse@0.2.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_parse","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","utf8"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_parse-b01e8e869194beb3.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#atty@0.2.14","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atty-0.2.14/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"atty","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atty-0.2.14/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libatty-197e8dc1ab1e5b43.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strsim@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strsim","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.8.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrsim-20ede2c518793cf3.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ansi_term@0.12.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ansi_term-0.12.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ansi_term","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ansi_term-0.12.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libansi_term-f00ff4043a9d5998.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#colorchoice@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"colorchoice","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcolorchoice-367a6f5a1e7ab532.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@1.3.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-1.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-1.3.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbitflags-b551d3fe3a8a6729.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle@1.0.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle-bb72f1018d9ca59f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-query@1.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_query","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_query-86569a613c3c9ba3.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#structopt-derive@0.4.18","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-derive-0.4.18/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"structopt_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-derive-0.4.18/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstructopt_derive-e43c3a67b119a9f9.so"],"executable":null,"fresh":true} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#is_terminal_polyfill@1.70.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"is_terminal_polyfill","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libis_terminal_polyfill-9bf9dc9833a8f45a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml@0.9.8","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml-0.9.8/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml-0.9.8/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["parse","serde","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml-9fde908db9dc444d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml-9fde908db9dc444d.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#vec_map@0.8.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/vec_map-0.8.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"vec_map","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/vec_map-0.8.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libvec_map-8d88471343b6ed4f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ipnet@2.11.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ipnet","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libipnet-9490e3a689f6bf20.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libipnet-9490e3a689f6bf20.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#env_filter@0.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_filter-0.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"env_filter","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_filter-0.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["regex"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libenv_filter-8e23f91312ddcb1b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.29.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["fs","mount","process","sched","signal","uio"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-cdc5c81108a4ef9e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-cdc5c81108a4ef9e.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library#reef-test@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeftest","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeftest-7dd80b833bf035af.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library#reef-test@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeftest","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeftest-6aa2e0b9a2bdad70.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstream@0.6.19","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstream","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["auto","wincon"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstream-51183de30b3eae15.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rtnetlink@0.18.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rtnetlink","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","tokio","tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librtnetlink-85a0bb3c05160f5b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio@1.47.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytes","default","fs","full","io-std","io-util","libc","macros","mio","net","parking_lot","process","rt","rt-multi-thread","signal","signal-hook-registry","socket2","sync","time","tokio-macros"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio-2f87de80df157adb.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio-2f87de80df157adb.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tun@0.8.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/Cargo.toml","target":{"kind":["staticlib","lib"],"crate_types":["staticlib","lib"],"name":"tun","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/src/lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["async","futures","futures-core","tokio","tokio-util"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtun-57e7b4f3f4423bb2.a","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtun-57e7b4f3f4423bb2.rlib"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nftables@0.6.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nftables","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnftables-a2c8ab2480f8c046.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap@2.34.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.34.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.34.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ansi_term","atty","color","default","strsim","suggestions","vec_map"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap-3c7b143dedc82f2f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#structopt@0.3.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-0.3.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"structopt","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-0.3.26/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstructopt-93801b993d9fdd6c.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeflib","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["test"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeflib-e8d64a1ff804584d.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeflib","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["test"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeflib-54a5191d4adfea8f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-packet-route@0.25.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_packet_route","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_route-2cbe9d01617fe9b3.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_route-2cbe9d01617fe9b3.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rtnetlink@0.18.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rtnetlink","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","tokio","tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librtnetlink-5fc96fc4a306b94d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librtnetlink-5fc96fc4a306b94d.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#jiff@0.2.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/jiff-0.2.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"jiff","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/jiff-0.2.15/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libjiff-488ce4ceefc927bf.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#env_logger@0.11.8","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_logger-0.11.8/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"env_logger","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_logger-0.11.8/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["auto-color","color","default","humantime","regex"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libenv_logger-2910e107e278689a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cbindgen@0.29.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cbindgen","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clap","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcbindgen-bd6cbd9faa33b9f0.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcbindgen-bd6cbd9faa33b9f0.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable#reef-standalone@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/Cargo.toml","target":{"kind":["bin"],"crate_types":["bin"],"name":"seaside_standalone","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/src/mod.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libseaside_standalone-b68f2985d3330c3a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable#reef-standalone@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/Cargo.toml","target":{"kind":["bin"],"crate_types":["bin"],"name":"seaside_standalone","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/src/mod.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libseaside_standalone-8249b79ab5a20b1a.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nftables@0.6.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nftables","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnftables-b7ec44417831cc4b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnftables-b7ec44417831cc4b.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeflib","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["test"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeflib-6b9400739fd6c26f.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeflib-6b9400739fd6c26f.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library#reefshared@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/reefshared-c3aadb147183e507/build-script-build"],"executable":null,"fresh":false} +{"reason":"build-script-executed","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library#reefshared@0.0.4","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/reefshared-7c3d38765d5fd02b/out"} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library#reefshared@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/Cargo.toml","target":{"kind":["cdylib"],"crate_types":["cdylib"],"name":"seaside","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/lib/mod.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libseaside-0f0f3e1c248c0e71.rmeta"],"executable":null,"fresh":false} +{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library#reefshared@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/Cargo.toml","target":{"kind":["cdylib"],"crate_types":["cdylib"],"name":"seaside","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/lib/mod.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libseaside-70efaba1cf3c0a43.rmeta"],"executable":null,"fresh":false} +{"reason":"build-finished","success":true} diff --git a/viridian/reef/Cargo.toml b/viridian/reef/Cargo.toml index c4267cf4..f2b6281c 100644 --- a/viridian/reef/Cargo.toml +++ b/viridian/reef/Cargo.toml @@ -1,9 +1,9 @@ [workspace] resolver = "2" members = [ - "cli_executable", - "rust_library", + "common_library", "shared_library", + "standalone_executable", "test_library" ] diff --git a/viridian/reef/Dockerfile b/viridian/reef/Dockerfile index c246f37b..8bd4c68a 100644 --- a/viridian/reef/Dockerfile +++ b/viridian/reef/Dockerfile @@ -11,15 +11,15 @@ ENV PATH="/root/.cargo/bin:${PATH}" COPY vessels vessels COPY viridian/reef/Cargo.toml viridian/reef/ -COPY viridian/reef/cli_executable/Cargo.toml viridian/reef/cli_executable/ -COPY viridian/reef/rust_library/Cargo.toml viridian/reef/rust_library/ +COPY viridian/reef/common_library/Cargo.toml viridian/reef/common_library/ COPY viridian/reef/shared_library/Cargo.toml viridian/reef/shared_library/ +COPY viridian/reef/standalone_executable/Cargo.toml viridian/reef/standalone_executable/ COPY viridian/reef/test_library/Cargo.toml viridian/reef/test_library/ RUN cargo build --manifest-path viridian/reef/Cargo.toml --bin cli --lib || true -COPY viridian/reef/cli_executable/ viridian/reef/cli_executable/ -COPY viridian/reef/rust_library/ viridian/reef/rust_library/ +COPY viridian/reef/common_library/ viridian/reef/common_library/ COPY viridian/reef/shared_library/ viridian/reef/shared_library/ +COPY viridian/reef/standalone_executable/ viridian/reef/standalone_executable/ COPY viridian/reef/test_library/ viridian/reef/test_library/ diff --git a/viridian/reef/Makefile b/viridian/reef/Makefile index bceec035..1d0d2d7c 100644 --- a/viridian/reef/Makefile +++ b/viridian/reef/Makefile @@ -69,15 +69,15 @@ endif build: dependencies @ # Build standalone reef locally TODO: add feature strict, checking warnings, docs, removing debug info ifeq ($(BUILD_TYPE),release) - cargo build --release --bin cli + cargo build --release --bin seaside_standalone else - cargo build --bin cli + cargo build --bin seaside_standalone endif .PHONY: build run: build runtime @ # Run standalone reef locally - cargo run --bin cli + cargo run --bin seaside_standalone .PHONY: run diff --git a/viridian/reef/rust_library/Cargo.toml b/viridian/reef/common_library/Cargo.toml similarity index 89% rename from viridian/reef/rust_library/Cargo.toml rename to viridian/reef/common_library/Cargo.toml index aa355435..240bc0e4 100644 --- a/viridian/reef/rust_library/Cargo.toml +++ b/viridian/reef/common_library/Cargo.toml @@ -1,8 +1,8 @@ [package] -name = "reeflib" +name = "reef-common" version = "0.0.4" edition = "2021" -description = "A production-ready SeasideVPN client for Linux and Windows" +description = "A library for constructing SeasideVPN clients" authors = [ "Alexander Sergeev " ] @@ -48,7 +48,7 @@ reqwest = { version = "^0.12.23", features = ["blocking", "json"] } zip = "^4.5.0" [dev-dependencies] -reeftest = { path = "../test_library" } +reef-test = { path = "../test_library" } regex = "^1.11.1" @@ -61,4 +61,3 @@ test = [] [lib] name = "reeflib" path = "lib/mod.rs" -crate-type = ["rlib"] diff --git a/viridian/reef/rust_library/build.rs b/viridian/reef/common_library/build.rs similarity index 100% rename from viridian/reef/rust_library/build.rs rename to viridian/reef/common_library/build.rs diff --git a/viridian/reef/rust_library/lib/bytes/buffer.rs b/viridian/reef/common_library/lib/bytes/buffer.rs similarity index 100% rename from viridian/reef/rust_library/lib/bytes/buffer.rs rename to viridian/reef/common_library/lib/bytes/buffer.rs diff --git a/viridian/reef/rust_library/lib/bytes/mod.rs b/viridian/reef/common_library/lib/bytes/mod.rs similarity index 100% rename from viridian/reef/rust_library/lib/bytes/mod.rs rename to viridian/reef/common_library/lib/bytes/mod.rs diff --git a/viridian/reef/rust_library/lib/bytes/pool.rs b/viridian/reef/common_library/lib/bytes/pool.rs similarity index 100% rename from viridian/reef/rust_library/lib/bytes/pool.rs rename to viridian/reef/common_library/lib/bytes/pool.rs diff --git a/viridian/reef/rust_library/lib/bytes/utils.rs b/viridian/reef/common_library/lib/bytes/utils.rs similarity index 100% rename from viridian/reef/rust_library/lib/bytes/utils.rs rename to viridian/reef/common_library/lib/bytes/utils.rs diff --git a/viridian/reef/rust_library/lib/crypto/asymmetric.rs b/viridian/reef/common_library/lib/crypto/asymmetric.rs similarity index 100% rename from viridian/reef/rust_library/lib/crypto/asymmetric.rs rename to viridian/reef/common_library/lib/crypto/asymmetric.rs diff --git a/viridian/reef/rust_library/lib/crypto/mod.rs b/viridian/reef/common_library/lib/crypto/mod.rs similarity index 100% rename from viridian/reef/rust_library/lib/crypto/mod.rs rename to viridian/reef/common_library/lib/crypto/mod.rs diff --git a/viridian/reef/rust_library/lib/crypto/symmetric.rs b/viridian/reef/common_library/lib/crypto/symmetric.rs similarity index 100% rename from viridian/reef/rust_library/lib/crypto/symmetric.rs rename to viridian/reef/common_library/lib/crypto/symmetric.rs diff --git a/viridian/reef/rust_library/lib/general.rs b/viridian/reef/common_library/lib/general.rs similarity index 100% rename from viridian/reef/rust_library/lib/general.rs rename to viridian/reef/common_library/lib/general.rs diff --git a/viridian/reef/rust_library/lib/mod.rs b/viridian/reef/common_library/lib/mod.rs similarity index 100% rename from viridian/reef/rust_library/lib/mod.rs rename to viridian/reef/common_library/lib/mod.rs diff --git a/viridian/reef/rust_library/lib/protocol/common.rs b/viridian/reef/common_library/lib/protocol/common.rs similarity index 100% rename from viridian/reef/rust_library/lib/protocol/common.rs rename to viridian/reef/common_library/lib/protocol/common.rs diff --git a/viridian/reef/rust_library/lib/protocol/mod.rs b/viridian/reef/common_library/lib/protocol/mod.rs similarity index 100% rename from viridian/reef/rust_library/lib/protocol/mod.rs rename to viridian/reef/common_library/lib/protocol/mod.rs diff --git a/viridian/reef/rust_library/lib/protocol/port_client.rs b/viridian/reef/common_library/lib/protocol/port_client.rs similarity index 100% rename from viridian/reef/rust_library/lib/protocol/port_client.rs rename to viridian/reef/common_library/lib/protocol/port_client.rs diff --git a/viridian/reef/rust_library/lib/protocol/port_core.rs b/viridian/reef/common_library/lib/protocol/port_core.rs similarity index 100% rename from viridian/reef/rust_library/lib/protocol/port_core.rs rename to viridian/reef/common_library/lib/protocol/port_core.rs diff --git a/viridian/reef/rust_library/lib/protocol/typhoon_client.rs b/viridian/reef/common_library/lib/protocol/typhoon_client.rs similarity index 100% rename from viridian/reef/rust_library/lib/protocol/typhoon_client.rs rename to viridian/reef/common_library/lib/protocol/typhoon_client.rs diff --git a/viridian/reef/rust_library/lib/protocol/typhoon_core.rs b/viridian/reef/common_library/lib/protocol/typhoon_core.rs similarity index 100% rename from viridian/reef/rust_library/lib/protocol/typhoon_core.rs rename to viridian/reef/common_library/lib/protocol/typhoon_core.rs diff --git a/viridian/reef/rust_library/lib/protocol/utils.rs b/viridian/reef/common_library/lib/protocol/utils.rs similarity index 100% rename from viridian/reef/rust_library/lib/protocol/utils.rs rename to viridian/reef/common_library/lib/protocol/utils.rs diff --git a/viridian/reef/rust_library/lib/rng.rs b/viridian/reef/common_library/lib/rng.rs similarity index 100% rename from viridian/reef/rust_library/lib/rng.rs rename to viridian/reef/common_library/lib/rng.rs diff --git a/viridian/reef/rust_library/lib/runtime.rs b/viridian/reef/common_library/lib/runtime.rs similarity index 100% rename from viridian/reef/rust_library/lib/runtime.rs rename to viridian/reef/common_library/lib/runtime.rs diff --git a/viridian/reef/rust_library/lib/tunnel/linux.rs b/viridian/reef/common_library/lib/tunnel/linux.rs similarity index 100% rename from viridian/reef/rust_library/lib/tunnel/linux.rs rename to viridian/reef/common_library/lib/tunnel/linux.rs diff --git a/viridian/reef/rust_library/lib/tunnel/mod.rs b/viridian/reef/common_library/lib/tunnel/mod.rs similarity index 100% rename from viridian/reef/rust_library/lib/tunnel/mod.rs rename to viridian/reef/common_library/lib/tunnel/mod.rs diff --git a/viridian/reef/cli_executable/src/tunnel/windows.rs b/viridian/reef/common_library/lib/tunnel/windows.rs similarity index 100% rename from viridian/reef/cli_executable/src/tunnel/windows.rs rename to viridian/reef/common_library/lib/tunnel/windows.rs diff --git a/viridian/reef/rust_library/lib/utils.rs b/viridian/reef/common_library/lib/utils.rs similarity index 100% rename from viridian/reef/rust_library/lib/utils.rs rename to viridian/reef/common_library/lib/utils.rs diff --git a/viridian/reef/rust_library/lib/viridian/linux.rs b/viridian/reef/common_library/lib/viridian/linux.rs similarity index 100% rename from viridian/reef/rust_library/lib/viridian/linux.rs rename to viridian/reef/common_library/lib/viridian/linux.rs diff --git a/viridian/reef/rust_library/lib/viridian/mod.rs b/viridian/reef/common_library/lib/viridian/mod.rs similarity index 100% rename from viridian/reef/rust_library/lib/viridian/mod.rs rename to viridian/reef/common_library/lib/viridian/mod.rs diff --git a/viridian/reef/rust_library/lib/viridian/windows.rs b/viridian/reef/common_library/lib/viridian/windows.rs similarity index 100% rename from viridian/reef/rust_library/lib/viridian/windows.rs rename to viridian/reef/common_library/lib/viridian/windows.rs diff --git a/viridian/reef/rust_library/tests/crypto/symmetric.rs b/viridian/reef/common_library/tests/crypto/symmetric.rs similarity index 100% rename from viridian/reef/rust_library/tests/crypto/symmetric.rs rename to viridian/reef/common_library/tests/crypto/symmetric.rs diff --git a/viridian/reef/rust_library/tests/tunnel/linux.rs b/viridian/reef/common_library/tests/tunnel/linux.rs similarity index 100% rename from viridian/reef/rust_library/tests/tunnel/linux.rs rename to viridian/reef/common_library/tests/tunnel/linux.rs diff --git a/viridian/reef/shared_library/Cargo.toml b/viridian/reef/shared_library/Cargo.toml index 258535ec..0617c4f4 100644 --- a/viridian/reef/shared_library/Cargo.toml +++ b/viridian/reef/shared_library/Cargo.toml @@ -1,8 +1,8 @@ [package] -name = "seaside" +name = "reefshared" version = "0.0.4" edition = "2021" -description = "A production-ready SeasideVPN client for Linux and Windows" +description = "A shared library for integration of Linux network-manager SeasideVPN plugin" authors = [ "Alexander Sergeev " ] @@ -10,7 +10,7 @@ authors = [ [dependencies] -reeflib = { path = "../rust_library" } +reef-common = { path = "../common_library" } futures = "^0.3.31" ipnet = "^2.10.1" log = "^0.4.22" @@ -23,7 +23,7 @@ tokio = { version = "^1.47.1", features = ["full"] } tun = { version = "^0.8.3", features = ["async"] } [build-dependencies] -reeflib = { path = "../rust_library", features = ["test"] } +reef-common = { path = "../common_library", features = ["test"] } cbindgen = "^0.29.2" diff --git a/viridian/reef/shared_library/build.rs b/viridian/reef/shared_library/build.rs index 1bf1f73f..507d9301 100644 --- a/viridian/reef/shared_library/build.rs +++ b/viridian/reef/shared_library/build.rs @@ -4,6 +4,6 @@ use std::path::PathBuf; use cbindgen::generate; fn main() { - let include = PathBuf::from(var("CARGO_MANIFEST_DIR").unwrap()).join("include").join(format!("{}.h", var("CARGO_PKG_NAME").unwrap())); + let include = PathBuf::from(var("CARGO_MANIFEST_DIR").unwrap()).join("include").join("seaside.h"); generate(".").expect("Unable to generate bindings!").write_to_file(include); } diff --git a/viridian/reef/cli_executable/Cargo.toml b/viridian/reef/standalone_executable/Cargo.toml similarity index 74% rename from viridian/reef/cli_executable/Cargo.toml rename to viridian/reef/standalone_executable/Cargo.toml index 88639e73..4ae83209 100644 --- a/viridian/reef/cli_executable/Cargo.toml +++ b/viridian/reef/standalone_executable/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "cli" +name = "reef-standalone" version = "0.0.4" edition = "2021" description = "A production-ready SeasideVPN client for Linux and Windows" @@ -10,7 +10,7 @@ authors = [ [dependencies] -reeflib = { path = "../rust_library" } +reef-common = { path = "../common_library" } env_logger = "^0.11.5" futures = "^0.3.31" ipnet = "^2.10.1" @@ -27,11 +27,11 @@ rtnetlink = "^0.18.0" tun = { version = "^0.8.3", features = ["async"] } [dev-dependencies] -reeflib = { path = "../rust_library", features = ["test"] } -reeftest = { path = "../test_library" } +reef-common = { path = "../common_library", features = ["test"] } +reef-test = { path = "../test_library" } [[bin]] -name = "cli" +name = "seaside_standalone" path = "src/mod.rs" diff --git a/viridian/reef/cli_executable/src/mod.rs b/viridian/reef/standalone_executable/src/mod.rs similarity index 100% rename from viridian/reef/cli_executable/src/mod.rs rename to viridian/reef/standalone_executable/src/mod.rs diff --git a/viridian/reef/cli_executable/src/tunnel/linux.rs b/viridian/reef/standalone_executable/src/tunnel/linux.rs similarity index 100% rename from viridian/reef/cli_executable/src/tunnel/linux.rs rename to viridian/reef/standalone_executable/src/tunnel/linux.rs diff --git a/viridian/reef/cli_executable/src/tunnel/mod.rs b/viridian/reef/standalone_executable/src/tunnel/mod.rs similarity index 100% rename from viridian/reef/cli_executable/src/tunnel/mod.rs rename to viridian/reef/standalone_executable/src/tunnel/mod.rs diff --git a/viridian/reef/rust_library/lib/tunnel/windows.rs b/viridian/reef/standalone_executable/src/tunnel/windows.rs similarity index 100% rename from viridian/reef/rust_library/lib/tunnel/windows.rs rename to viridian/reef/standalone_executable/src/tunnel/windows.rs diff --git a/viridian/reef/cli_executable/src/viridian.rs b/viridian/reef/standalone_executable/src/viridian.rs similarity index 100% rename from viridian/reef/cli_executable/src/viridian.rs rename to viridian/reef/standalone_executable/src/viridian.rs diff --git a/viridian/reef/cli_executable/tests/tunnel/linux.rs b/viridian/reef/standalone_executable/tests/tunnel/linux.rs similarity index 100% rename from viridian/reef/cli_executable/tests/tunnel/linux.rs rename to viridian/reef/standalone_executable/tests/tunnel/linux.rs diff --git a/viridian/reef/test_library/Cargo.toml b/viridian/reef/test_library/Cargo.toml index 4e02b39a..1634dea1 100644 --- a/viridian/reef/test_library/Cargo.toml +++ b/viridian/reef/test_library/Cargo.toml @@ -1,8 +1,8 @@ [package] -name = "reeftest" +name = "reef-test" version = "0.0.4" edition = "2021" -description = "A production-ready SeasideVPN client for Linux and Windows" +description = "A test set for SeasideVPN reef library" authors = [ "Alexander Sergeev " ] @@ -18,4 +18,3 @@ simple-error = "^0.3.1" [lib] name = "reeftest" path = "lib/mod.rs" -crate-type = ["rlib"] From e8ed25c9e7512163d5163b59adeefcaf4139605c Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 01:26:30 +0100 Subject: [PATCH 06/67] executable name fixed --- .github/workflows/test.yml | 4 +- target/rust-analyzer/flycheck0/stderr | 10459 ------------------------ target/rust-analyzer/flycheck0/stdout | 357 - viridian/reef/Dockerfile | 8 +- 4 files changed, 6 insertions(+), 10822 deletions(-) delete mode 100644 target/rust-analyzer/flycheck0/stderr delete mode 100644 target/rust-analyzer/flycheck0/stdout diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 8edb2dbc..d709409e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -125,12 +125,12 @@ jobs: - name: Test Viridian Reef PORT (integration) ๐Ÿงช id: test-viridian-reef-port working-directory: viridian/reef - run: ${{ env.SUDO }} cargo run --features cli-exec --bin cli -- -m port -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44444" + run: ${{ env.SUDO }} cargo run --bin seaside_standalone -- -m port -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44444" - name: Test Viridian Reef TYPHOON (integration) ๐Ÿงช id: test-viridian-reef-typhoon working-directory: viridian/reef - run: ${{ env.SUDO }} cargo run --features cli-exec --bin cli -- -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44445" + run: ${{ env.SUDO }} cargo run --bin seaside_standalone -- -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44445" caerulean-whirlpool-test: name: Test Caerulean Whirlpool diff --git a/target/rust-analyzer/flycheck0/stderr b/target/rust-analyzer/flycheck0/stderr deleted file mode 100644 index acf5bb2d..00000000 --- a/target/rust-analyzer/flycheck0/stderr +++ /dev/null @@ -1,10459 +0,0 @@ - 0.309199368s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/Check { test: false }/TargetInner { ..: lib_target("reeflib", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs", Edition2021) } - 0.309258184s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-54a5191d4adfea8f/lib-reeflib` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: ::compile - 6: cargo::ops::cargo_compile::compile_ws - 7: cargo::ops::cargo_compile::compile_with_exec - 8: cargo::ops::cargo_compile::compile - 9: cargo::commands::check::exec - 10: ::exec - 11: cargo::main - 12: std::sys::backtrace::__rust_begin_short_backtrace:: - 13: std::rt::lang_start::<()>::{closure#0} - 14: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 15: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 16: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 17: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 18: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 23: main - 24: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 25: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 26: - 0.409112877s INFO prepare_target{force=false package_id=bincode v2.0.1 target="bincode"}: cargo::core::compiler::fingerprint: fingerprint error for bincode v2.0.1/Check { test: false }/TargetInner { ..: lib_target("bincode", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/src/lib.rs", Edition2021) } - 0.409131743s INFO prepare_target{force=false package_id=bincode v2.0.1 target="bincode"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bincode-4fc25cbeb6814d13/lib-bincode` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.409419213s INFO prepare_target{force=false package_id=unty v0.0.4 target="unty"}: cargo::core::compiler::fingerprint: fingerprint error for unty v0.0.4/Check { test: false }/TargetInner { ..: lib_target("unty", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/src/lib.rs", Edition2021) } - 0.409427628s INFO prepare_target{force=false package_id=unty v0.0.4 target="unty"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/unty-b861bb6d60654d2f/lib-unty` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.409558845s INFO prepare_target{force=false package_id=blake2 v0.10.6 target="blake2"}: cargo::core::compiler::fingerprint: fingerprint error for blake2 v0.10.6/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("blake2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/src/lib.rs", Edition2018) } - 0.409565267s INFO prepare_target{force=false package_id=blake2 v0.10.6 target="blake2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/blake2-f320066c6811652a/lib-blake2` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.409713315s INFO prepare_target{force=false package_id=digest v0.10.7 target="digest"}: cargo::core::compiler::fingerprint: fingerprint error for digest v0.10.7/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("digest", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/src/lib.rs", Edition2018) } - 0.409718919s INFO prepare_target{force=false package_id=digest v0.10.7 target="digest"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/digest-6d69658abfb2c0a7/lib-digest` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.409887047s INFO prepare_target{force=false package_id=block-buffer v0.10.4 target="block_buffer"}: cargo::core::compiler::fingerprint: fingerprint error for block-buffer v0.10.4/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("block_buffer", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/src/lib.rs", Edition2018) } - 0.409893334s INFO prepare_target{force=false package_id=block-buffer v0.10.4 target="block_buffer"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/block-buffer-ad2318787366fd12/lib-block_buffer` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.410037877s INFO prepare_target{force=false package_id=generic-array v0.14.7 target="generic_array"}: cargo::core::compiler::fingerprint: fingerprint error for generic-array v0.14.7/Check { test: false }/TargetInner { ..: lib_target("generic_array", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/src/lib.rs", Edition2015) } - 0.410044976s INFO prepare_target{force=false package_id=generic-array v0.14.7 target="generic_array"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/generic-array-c6013b63fa532f39/lib-generic_array` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.410510349s INFO prepare_target{force=false package_id=crypto-common v0.1.6 target="crypto_common"}: cargo::core::compiler::fingerprint: fingerprint error for crypto-common v0.1.6/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("crypto_common", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/src/lib.rs", Edition2018) } - 0.410519499s INFO prepare_target{force=false package_id=crypto-common v0.1.6 target="crypto_common"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/crypto-common-c3de8cd3053d8b64/lib-crypto_common` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.410727247s INFO prepare_target{force=false package_id=rand_core v0.6.4 target="rand_core"}: cargo::core::compiler::fingerprint: fingerprint error for rand_core v0.6.4/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("rand_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs", Edition2018) } - 0.410734297s INFO prepare_target{force=false package_id=rand_core v0.6.4 target="rand_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand_core-8d89bdb5175672ac/lib-rand_core` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.410881668s INFO prepare_target{force=false package_id=getrandom v0.2.16 target="getrandom"}: cargo::core::compiler::fingerprint: fingerprint error for getrandom v0.2.16/Check { test: false }/TargetInner { ..: lib_target("getrandom", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/src/lib.rs", Edition2018) } - 0.410887542s INFO prepare_target{force=false package_id=getrandom v0.2.16 target="getrandom"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/getrandom-ec916316e169bc33/lib-getrandom` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.411082085s INFO prepare_target{force=false package_id=libc v0.2.174 target="libc"}: cargo::core::compiler::fingerprint: fingerprint error for libc v0.2.174/Check { test: false }/TargetInner { ..: lib_target("libc", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/src/lib.rs", Edition2021) } - 0.411089240s INFO prepare_target{force=false package_id=libc v0.2.174 target="libc"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/libc-c7810272c07fcfac/lib-libc` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.411360292s INFO prepare_target{force=false package_id=subtle v2.6.1 target="subtle"}: cargo::core::compiler::fingerprint: fingerprint error for subtle v2.6.1/Check { test: false }/TargetInner { ..: lib_target("subtle", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs", Edition2018) } - 0.411367849s INFO prepare_target{force=false package_id=subtle v2.6.1 target="subtle"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/subtle-8c24189f00ebf9a9/lib-subtle` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.411494050s INFO prepare_target{force=false package_id=bytes v1.10.1 target="bytes"}: cargo::core::compiler::fingerprint: fingerprint error for bytes v1.10.1/Check { test: false }/TargetInner { ..: lib_target("bytes", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs", Edition2018) } - 0.411499966s INFO prepare_target{force=false package_id=bytes v1.10.1 target="bytes"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bytes-b94b70994929e7fa/lib-bytes` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.411614996s INFO prepare_target{force=false package_id=cached v0.56.0 target="cached"}: cargo::core::compiler::fingerprint: fingerprint error for cached v0.56.0/Check { test: false }/TargetInner { ..: lib_target("cached", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/src/lib.rs", Edition2018) } - 0.411620339s INFO prepare_target{force=false package_id=cached v0.56.0 target="cached"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cached-ba2ece28dd432665/lib-cached` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.411881821s INFO prepare_target{force=false package_id=ahash v0.8.12 target="ahash"}: cargo::core::compiler::fingerprint: fingerprint error for ahash v0.8.12/Check { test: false }/TargetInner { ..: lib_target("ahash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/src/lib.rs", Edition2018) } - 0.411888175s INFO prepare_target{force=false package_id=ahash v0.8.12 target="ahash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ahash-19020da8681f2f43/lib-ahash` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.412188156s INFO prepare_target{force=false package_id=once_cell v1.21.3 target="once_cell"}: cargo::core::compiler::fingerprint: fingerprint error for once_cell v1.21.3/Check { test: false }/TargetInner { ..: lib_target("once_cell", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/src/lib.rs", Edition2021) } - 0.412196119s INFO prepare_target{force=false package_id=once_cell v1.21.3 target="once_cell"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/once_cell-0405b17b6fd897ff/lib-once_cell` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.412336177s INFO prepare_target{force=false package_id=zerocopy v0.8.26 target="zerocopy"}: cargo::core::compiler::fingerprint: fingerprint error for zerocopy v0.8.26/Check { test: false }/TargetInner { ..: lib_target("zerocopy", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/src/lib.rs", Edition2021) } - 0.412342008s INFO prepare_target{force=false package_id=zerocopy v0.8.26 target="zerocopy"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/zerocopy-cec54beb6f6b980a/lib-zerocopy` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.416792706s INFO prepare_target{force=false package_id=cached_proc_macro_types v0.1.1 target="cached_proc_macro_types"}: cargo::core::compiler::fingerprint: fingerprint error for cached_proc_macro_types v0.1.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("cached_proc_macro_types", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/src/lib.rs", Edition2018) } - 0.416817418s INFO prepare_target{force=false package_id=cached_proc_macro_types v0.1.1 target="cached_proc_macro_types"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cached_proc_macro_types-c3003365b7efe797/lib-cached_proc_macro_types` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.417101749s INFO prepare_target{force=false package_id=hashbrown v0.15.4 target="hashbrown"}: cargo::core::compiler::fingerprint: fingerprint error for hashbrown v0.15.4/Check { test: false }/TargetInner { ..: lib_target("hashbrown", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/src/lib.rs", Edition2021) } - 0.417114943s INFO prepare_target{force=false package_id=hashbrown v0.15.4 target="hashbrown"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/hashbrown-285765d29e339db4/lib-hashbrown` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.417381964s INFO prepare_target{force=false package_id=allocator-api2 v0.2.21 target="allocator_api2"}: cargo::core::compiler::fingerprint: fingerprint error for allocator-api2 v0.2.21/Check { test: false }/TargetInner { ..: lib_target("allocator_api2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/src/lib.rs", Edition2018) } - 0.417391807s INFO prepare_target{force=false package_id=allocator-api2 v0.2.21 target="allocator_api2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/allocator-api2-a3943f72dc59f3d7/lib-allocator_api2` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.417571044s INFO prepare_target{force=false package_id=equivalent v1.0.2 target="equivalent"}: cargo::core::compiler::fingerprint: fingerprint error for equivalent v1.0.2/Check { test: false }/TargetInner { ..: lib_target("equivalent", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/src/lib.rs", Edition2015) } - 0.417579414s INFO prepare_target{force=false package_id=equivalent v1.0.2 target="equivalent"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/equivalent-8b054abaa056da40/lib-equivalent` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.417738288s INFO prepare_target{force=false package_id=foldhash v0.1.5 target="foldhash"}: cargo::core::compiler::fingerprint: fingerprint error for foldhash v0.1.5/Check { test: false }/TargetInner { benched: false, ..: lib_target("foldhash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/src/lib.rs", Edition2021) } - 0.417746328s INFO prepare_target{force=false package_id=foldhash v0.1.5 target="foldhash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/foldhash-b8b2147ed938ea6b/lib-foldhash` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.417904168s INFO prepare_target{force=false package_id=thiserror v2.0.16 target="thiserror"}: cargo::core::compiler::fingerprint: fingerprint error for thiserror v2.0.16/Check { test: false }/TargetInner { ..: lib_target("thiserror", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/src/lib.rs", Edition2021) } - 0.417912552s INFO prepare_target{force=false package_id=thiserror v2.0.16 target="thiserror"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/thiserror-de5002768cda0ab4/lib-thiserror` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.418340837s INFO prepare_target{force=false package_id=web-time v1.1.0 target="web_time"}: cargo::core::compiler::fingerprint: fingerprint error for web-time v1.1.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("web_time", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/src/lib.rs", Edition2021) } - 0.418350984s INFO prepare_target{force=false package_id=web-time v1.1.0 target="web_time"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/web-time-24b1fb3bbf605364/lib-web_time` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.418529686s INFO prepare_target{force=false package_id=chacha20poly1305 v0.10.1 target="chacha20poly1305"}: cargo::core::compiler::fingerprint: fingerprint error for chacha20poly1305 v0.10.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("chacha20poly1305", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/src/lib.rs", Edition2021) } - 0.418538477s INFO prepare_target{force=false package_id=chacha20poly1305 v0.10.1 target="chacha20poly1305"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/chacha20poly1305-ac0432852e76f5b1/lib-chacha20poly1305` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.418841644s INFO prepare_target{force=false package_id=aead v0.5.2 target="aead"}: cargo::core::compiler::fingerprint: fingerprint error for aead v0.5.2/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("aead", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/src/lib.rs", Edition2021) } - 0.418855681s INFO prepare_target{force=false package_id=aead v0.5.2 target="aead"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/aead-3c5ca3fd7a515c7b/lib-aead` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.419110828s INFO prepare_target{force=false package_id=chacha20 v0.9.1 target="chacha20"}: cargo::core::compiler::fingerprint: fingerprint error for chacha20 v0.9.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("chacha20", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/src/lib.rs", Edition2021) } - 0.419120171s INFO prepare_target{force=false package_id=chacha20 v0.9.1 target="chacha20"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/chacha20-dec7dcb0dc846433/lib-chacha20` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.419358661s INFO prepare_target{force=false package_id=cipher v0.4.4 target="cipher"}: cargo::core::compiler::fingerprint: fingerprint error for cipher v0.4.4/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("cipher", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/src/lib.rs", Edition2021) } - 0.419366992s INFO prepare_target{force=false package_id=cipher v0.4.4 target="cipher"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cipher-fdf453fde210cb68/lib-cipher` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.419606538s INFO prepare_target{force=false package_id=inout v0.1.4 target="inout"}: cargo::core::compiler::fingerprint: fingerprint error for inout v0.1.4/Check { test: false }/TargetInner { ..: lib_target("inout", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/src/lib.rs", Edition2021) } - 0.419614445s INFO prepare_target{force=false package_id=inout v0.1.4 target="inout"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/inout-1acf64b9352ccb88/lib-inout` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.419781213s INFO prepare_target{force=false package_id=zeroize v1.8.1 target="zeroize"}: cargo::core::compiler::fingerprint: fingerprint error for zeroize v1.8.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("zeroize", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs", Edition2021) } - 0.419789043s INFO prepare_target{force=false package_id=zeroize v1.8.1 target="zeroize"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/zeroize-48d0b7b0df8599a0/lib-zeroize` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.420361501s INFO prepare_target{force=false package_id=cpufeatures v0.2.17 target="cpufeatures"}: cargo::core::compiler::fingerprint: fingerprint error for cpufeatures v0.2.17/Check { test: false }/TargetInner { ..: lib_target("cpufeatures", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/src/lib.rs", Edition2018) } - 0.420383134s INFO prepare_target{force=false package_id=cpufeatures v0.2.17 target="cpufeatures"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cpufeatures-45c28af12c96235b/lib-cpufeatures` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.420602972s INFO prepare_target{force=false package_id=poly1305 v0.8.0 target="poly1305"}: cargo::core::compiler::fingerprint: fingerprint error for poly1305 v0.8.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("poly1305", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/src/lib.rs", Edition2021) } - 0.420612123s INFO prepare_target{force=false package_id=poly1305 v0.8.0 target="poly1305"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/poly1305-8a727c378b5335d8/lib-poly1305` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.420858034s INFO prepare_target{force=false package_id=opaque-debug v0.3.1 target="opaque_debug"}: cargo::core::compiler::fingerprint: fingerprint error for opaque-debug v0.3.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("opaque_debug", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/src/lib.rs", Edition2018) } - 0.420868506s INFO prepare_target{force=false package_id=opaque-debug v0.3.1 target="opaque_debug"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/opaque-debug-1e3af4630ac62466/lib-opaque_debug` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.421007267s INFO prepare_target{force=false package_id=universal-hash v0.5.1 target="universal_hash"}: cargo::core::compiler::fingerprint: fingerprint error for universal-hash v0.5.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("universal_hash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/src/lib.rs", Edition2021) } - 0.421015017s INFO prepare_target{force=false package_id=universal-hash v0.5.1 target="universal_hash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/universal-hash-27be24bf1711139f/lib-universal_hash` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.421227799s INFO prepare_target{force=false package_id=futures v0.3.31 target="futures"}: cargo::core::compiler::fingerprint: fingerprint error for futures v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs", Edition2018) } - 0.421235845s INFO prepare_target{force=false package_id=futures v0.3.31 target="futures"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-f7ba99dab821e3ba/lib-futures` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.421537039s INFO prepare_target{force=false package_id=futures-channel v0.3.31 target="futures_channel"}: cargo::core::compiler::fingerprint: fingerprint error for futures-channel v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_channel", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs", Edition2018) } - 0.421545514s INFO prepare_target{force=false package_id=futures-channel v0.3.31 target="futures_channel"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-channel-96abd665e28a5745/lib-futures_channel` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.421785745s INFO prepare_target{force=false package_id=futures-executor v0.3.31 target="futures_executor"}: cargo::core::compiler::fingerprint: fingerprint error for futures-executor v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_executor", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs", Edition2018) } - 0.421794186s INFO prepare_target{force=false package_id=futures-executor v0.3.31 target="futures_executor"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-executor-c393b6eb19dc9217/lib-futures_executor` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.422057650s INFO prepare_target{force=false package_id=futures-task v0.3.31 target="futures_task"}: cargo::core::compiler::fingerprint: fingerprint error for futures-task v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_task", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs", Edition2018) } - 0.422067720s INFO prepare_target{force=false package_id=futures-task v0.3.31 target="futures_task"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-task-de234338db6d77e0/lib-futures_task` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.422211892s INFO prepare_target{force=false package_id=futures-util v0.3.31 target="futures_util"}: cargo::core::compiler::fingerprint: fingerprint error for futures-util v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_util", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs", Edition2018) } - 0.422219727s INFO prepare_target{force=false package_id=futures-util v0.3.31 target="futures_util"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-util-ffd04c7de8db851f/lib-futures_util` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.422559059s INFO prepare_target{force=false package_id=futures-io v0.3.31 target="futures_io"}: cargo::core::compiler::fingerprint: fingerprint error for futures-io v0.3.31/Check { test: false }/TargetInner { ..: lib_target("futures_io", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs", Edition2018) } - 0.422566985s INFO prepare_target{force=false package_id=futures-io v0.3.31 target="futures_io"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-io-e3b15e990b506d86/lib-futures_io` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.423187855s INFO prepare_target{force=false package_id=pin-utils v0.1.0 target="pin_utils"}: cargo::core::compiler::fingerprint: fingerprint error for pin-utils v0.1.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("pin_utils", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs", Edition2018) } - 0.423209634s INFO prepare_target{force=false package_id=pin-utils v0.1.0 target="pin_utils"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/pin-utils-419b4dfb91fea471/lib-pin_utils` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.423441534s INFO prepare_target{force=false package_id=slab v0.4.10 target="slab"}: cargo::core::compiler::fingerprint: fingerprint error for slab v0.4.10/Check { test: false }/TargetInner { ..: lib_target("slab", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/src/lib.rs", Edition2018) } - 0.423450998s INFO prepare_target{force=false package_id=slab v0.4.10 target="slab"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/slab-06b21a35c2c242c5/lib-slab` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.423612657s INFO prepare_target{force=false package_id=ipnet v2.11.0 target="ipnet"}: cargo::core::compiler::fingerprint: fingerprint error for ipnet v2.11.0/Check { test: false }/TargetInner { ..: lib_target("ipnet", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs", Edition2018) } - 0.423620344s INFO prepare_target{force=false package_id=ipnet v2.11.0 target="ipnet"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ipnet-4fc83dc2fc2c3f86/lib-ipnet` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.423762237s INFO prepare_target{force=false package_id=lazy_static v1.5.0 target="lazy_static"}: cargo::core::compiler::fingerprint: fingerprint error for lazy_static v1.5.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("lazy_static", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/src/lib.rs", Edition2015) } - 0.423769241s INFO prepare_target{force=false package_id=lazy_static v1.5.0 target="lazy_static"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/lazy_static-5f1438d28b1de877/lib-lazy_static` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.423899350s INFO prepare_target{force=false package_id=log v0.4.28 target="log"}: cargo::core::compiler::fingerprint: fingerprint error for log v0.4.28/Check { test: false }/TargetInner { ..: lib_target("log", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/src/lib.rs", Edition2021) } - 0.423911730s INFO prepare_target{force=false package_id=log v0.4.28 target="log"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/log-b1b44ca0b8607405/lib-log` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.424047540s INFO prepare_target{force=false package_id=nftables v0.6.3 target="nftables"}: cargo::core::compiler::fingerprint: fingerprint error for nftables v0.6.3/Check { test: false }/TargetInner { ..: lib_target("nftables", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/src/lib.rs", Edition2021) } - 0.424054346s INFO prepare_target{force=false package_id=nftables v0.6.3 target="nftables"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nftables-a2c8ab2480f8c046/lib-nftables` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.424369241s INFO prepare_target{force=false package_id=schemars v1.0.4 target="schemars"}: cargo::core::compiler::fingerprint: fingerprint error for schemars v1.0.4/Check { test: false }/TargetInner { ..: lib_target("schemars", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/src/lib.rs", Edition2021) } - 0.424378263s INFO prepare_target{force=false package_id=schemars v1.0.4 target="schemars"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/schemars-28dd6ca661184b4f/lib-schemars` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.424635143s INFO prepare_target{force=false package_id=dyn-clone v1.0.20 target="dyn_clone"}: cargo::core::compiler::fingerprint: fingerprint error for dyn-clone v1.0.20/Check { test: false }/TargetInner { ..: lib_target("dyn_clone", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/src/lib.rs", Edition2018) } - 0.424642100s INFO prepare_target{force=false package_id=dyn-clone v1.0.20 target="dyn_clone"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/dyn-clone-73b7f0f7c963e684/lib-dyn_clone` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.424764649s INFO prepare_target{force=false package_id=ref-cast v1.0.24 target="ref_cast"}: cargo::core::compiler::fingerprint: fingerprint error for ref-cast v1.0.24/Check { test: false }/TargetInner { ..: lib_target("ref_cast", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/src/lib.rs", Edition2021) } - 0.424773050s INFO prepare_target{force=false package_id=ref-cast v1.0.24 target="ref_cast"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ref-cast-ab18a8289a63813f/lib-ref_cast` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.425804576s INFO prepare_target{force=false package_id=serde v1.0.228 target="serde"}: cargo::core::compiler::fingerprint: fingerprint error for serde v1.0.228/Check { test: false }/TargetInner { ..: lib_target("serde", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs", Edition2021) } - 0.425825947s INFO prepare_target{force=false package_id=serde v1.0.228 target="serde"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde-aeff35667dd51f7a/lib-serde` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.426315411s INFO prepare_target{force=false package_id=serde_core v1.0.228 target="serde_core"}: cargo::core::compiler::fingerprint: fingerprint error for serde_core v1.0.228/Check { test: false }/TargetInner { ..: lib_target("serde_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs", Edition2021) } - 0.426328466s INFO prepare_target{force=false package_id=serde_core v1.0.228 target="serde_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_core-433d322c7f81f4fc/lib-serde_core` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.426926891s INFO prepare_target{force=false package_id=serde_json v1.0.143 target="serde_json"}: cargo::core::compiler::fingerprint: fingerprint error for serde_json v1.0.143/Check { test: false }/TargetInner { ..: lib_target("serde_json", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/src/lib.rs", Edition2021) } - 0.426942115s INFO prepare_target{force=false package_id=serde_json v1.0.143 target="serde_json"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_json-4747f3729f44e87c/lib-serde_json` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.427244800s INFO prepare_target{force=false package_id=itoa v1.0.15 target="itoa"}: cargo::core::compiler::fingerprint: fingerprint error for itoa v1.0.15/Check { test: false }/TargetInner { ..: lib_target("itoa", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs", Edition2018) } - 0.427257290s INFO prepare_target{force=false package_id=itoa v1.0.15 target="itoa"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/itoa-7a0919d71cb7f92c/lib-itoa` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.427434281s INFO prepare_target{force=false package_id=ryu v1.0.20 target="ryu"}: cargo::core::compiler::fingerprint: fingerprint error for ryu v1.0.20/Check { test: false }/TargetInner { ..: lib_target("ryu", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs", Edition2018) } - 0.427443425s INFO prepare_target{force=false package_id=ryu v1.0.20 target="ryu"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ryu-9d8193471ee70b21/lib-ryu` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.427751060s INFO prepare_target{force=false package_id=serde_path_to_error v0.1.17 target="serde_path_to_error"}: cargo::core::compiler::fingerprint: fingerprint error for serde_path_to_error v0.1.17/Check { test: false }/TargetInner { ..: lib_target("serde_path_to_error", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/src/lib.rs", Edition2021) } - 0.427760861s INFO prepare_target{force=false package_id=serde_path_to_error v0.1.17 target="serde_path_to_error"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_path_to_error-d9a78dbb2f3fe050/lib-serde_path_to_error` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.427983436s INFO prepare_target{force=false package_id=strum v0.27.2 target="strum"}: cargo::core::compiler::fingerprint: fingerprint error for strum v0.27.2/Check { test: false }/TargetInner { ..: lib_target("strum", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/src/lib.rs", Edition2021) } - 0.427992685s INFO prepare_target{force=false package_id=strum v0.27.2 target="strum"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/strum-a83a57a24a7a9abf/lib-strum` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.428373051s INFO prepare_target{force=false package_id=num_enum v0.7.4 target="num_enum"}: cargo::core::compiler::fingerprint: fingerprint error for num_enum v0.7.4/Check { test: false }/TargetInner { ..: lib_target("num_enum", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/src/lib.rs", Edition2021) } - 0.428384208s INFO prepare_target{force=false package_id=num_enum v0.7.4 target="num_enum"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/num_enum-cc5661252c4b33d5/lib-num_enum` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.428629906s INFO prepare_target{force=false package_id=num_enum_derive v0.7.4 target="num_enum_derive"}: cargo::core::compiler::fingerprint: fingerprint error for num_enum_derive v0.7.4/Build/TargetInner { for_host: true, proc_macro: true, ..: lib_target("num_enum_derive", ["proc-macro"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum_derive-0.7.4/src/lib.rs", Edition2021) } - 0.428640347s INFO prepare_target{force=false package_id=num_enum_derive v0.7.4 target="num_enum_derive"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/num_enum_derive-ba58a006c80df9bc/lib-num_enum_derive` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.428911407s INFO prepare_target{force=false package_id=proc-macro-crate v3.3.0 target="proc_macro_crate"}: cargo::core::compiler::fingerprint: fingerprint error for proc-macro-crate v3.3.0/Build/TargetInner { ..: lib_target("proc_macro_crate", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-crate-3.3.0/src/lib.rs", Edition2021) } - 0.428920982s INFO prepare_target{force=false package_id=proc-macro-crate v3.3.0 target="proc_macro_crate"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/proc-macro-crate-dc5a4ab583a5c64e/lib-proc_macro_crate` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.429124820s INFO prepare_target{force=false package_id=toml_edit v0.22.27 target="toml_edit"}: cargo::core::compiler::fingerprint: fingerprint error for toml_edit v0.22.27/Build/TargetInner { ..: lib_target("toml_edit", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_edit-0.22.27/src/lib.rs", Edition2021) } - 0.429134984s INFO prepare_target{force=false package_id=toml_edit v0.22.27 target="toml_edit"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/toml_edit-723aaec0f43b5a6e/lib-toml_edit` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.429389404s INFO prepare_target{force=false package_id=indexmap v2.12.0 target="indexmap"}: cargo::core::compiler::fingerprint: fingerprint error for indexmap v2.12.0/Build/TargetInner { benched: false, ..: lib_target("indexmap", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.12.0/src/lib.rs", Edition2021) } - 0.429398841s INFO prepare_target{force=false package_id=indexmap v2.12.0 target="indexmap"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/indexmap-5b1fb49443fbeb16/lib-indexmap` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.430048181s INFO prepare_target{force=false package_id=prost v0.14.1 target="prost"}: cargo::core::compiler::fingerprint: fingerprint error for prost v0.14.1/Check { test: false }/TargetInner { benched: false, ..: lib_target("prost", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/src/lib.rs", Edition2021) } - 0.430071099s INFO prepare_target{force=false package_id=prost v0.14.1 target="prost"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/prost-335cbf92e8a4938b/lib-prost` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.430681572s INFO prepare_target{force=false package_id=rand v0.8.5 target="rand"}: cargo::core::compiler::fingerprint: fingerprint error for rand v0.8.5/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("rand", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/src/lib.rs", Edition2018) } - 0.430694056s INFO prepare_target{force=false package_id=rand v0.8.5 target="rand"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand-e6ec704b1c86552f/lib-rand` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.430962243s INFO prepare_target{force=false package_id=rand_chacha v0.3.1 target="rand_chacha"}: cargo::core::compiler::fingerprint: fingerprint error for rand_chacha v0.3.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("rand_chacha", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/src/lib.rs", Edition2018) } - 0.430972803s INFO prepare_target{force=false package_id=rand_chacha v0.3.1 target="rand_chacha"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand_chacha-194eb116b9ef7393/lib-rand_chacha` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.431198488s INFO prepare_target{force=false package_id=ppv-lite86 v0.2.21 target="ppv_lite86"}: cargo::core::compiler::fingerprint: fingerprint error for ppv-lite86 v0.2.21/Check { test: false }/TargetInner { ..: lib_target("ppv_lite86", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/src/lib.rs", Edition2021) } - 0.431207433s INFO prepare_target{force=false package_id=ppv-lite86 v0.2.21 target="ppv_lite86"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ppv-lite86-1e6368468c918bef/lib-ppv_lite86` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.431504888s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="build-script-build"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/RunCustomBuild/TargetInner { ..: custom_build_target("build-script-build", "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/build.rs", Edition2021) } - 0.431515935s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="build-script-build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-08b7a45284a9c032/run-build-script-build-script-build` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::custom_build::build_work - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.431689352s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="build-script-build"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/Build/TargetInner { ..: custom_build_target("build-script-build", "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/build.rs", Edition2021) } - 0.431698728s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="build-script-build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-1f0288bba220e2c3/build-script-build-script-build` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.432073986s INFO prepare_target{force=false package_id=prost-build v0.14.1 target="prost_build"}: cargo::core::compiler::fingerprint: fingerprint error for prost-build v0.14.1/Build/TargetInner { ..: lib_target("prost_build", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-build-0.14.1/src/lib.rs", Edition2021) } - 0.432084123s INFO prepare_target{force=false package_id=prost-build v0.14.1 target="prost_build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/prost-build-872abc6c82f22d56/lib-prost_build` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.432610983s INFO prepare_target{force=false package_id=petgraph v0.7.1 target="petgraph"}: cargo::core::compiler::fingerprint: fingerprint error for petgraph v0.7.1/Build/TargetInner { benched: false, ..: lib_target("petgraph", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/petgraph-0.7.1/src/lib.rs", Edition2018) } - 0.432621349s INFO prepare_target{force=false package_id=petgraph v0.7.1 target="petgraph"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/petgraph-6108b0ce5725b5ab/lib-petgraph` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.433006442s INFO prepare_target{force=false package_id=prost v0.14.1 target="prost"}: cargo::core::compiler::fingerprint: fingerprint error for prost v0.14.1/Build/TargetInner { benched: false, ..: lib_target("prost", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/src/lib.rs", Edition2021) } - 0.433014984s INFO prepare_target{force=false package_id=prost v0.14.1 target="prost"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/prost-063961c2f74ccd33/lib-prost` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.433252737s INFO prepare_target{force=false package_id=bytes v1.10.1 target="bytes"}: cargo::core::compiler::fingerprint: fingerprint error for bytes v1.10.1/Build/TargetInner { ..: lib_target("bytes", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs", Edition2018) } - 0.433260670s INFO prepare_target{force=false package_id=bytes v1.10.1 target="bytes"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bytes-e3cb6e9c42ffc25b/lib-bytes` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.433400027s INFO prepare_target{force=false package_id=prost-types v0.14.1 target="prost_types"}: cargo::core::compiler::fingerprint: fingerprint error for prost-types v0.14.1/Build/TargetInner { doctest: false, ..: lib_target("prost_types", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-types-0.14.1/src/lib.rs", Edition2021) } - 0.433407191s INFO prepare_target{force=false package_id=prost-types v0.14.1 target="prost_types"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/prost-types-3b731a45ba3a0f01/lib-prost_types` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.433566606s INFO prepare_target{force=false package_id=regex v1.11.3 target="regex"}: cargo::core::compiler::fingerprint: fingerprint error for regex v1.11.3/Build/TargetInner { ..: lib_target("regex", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs", Edition2021) } - 0.433573015s INFO prepare_target{force=false package_id=regex v1.11.3 target="regex"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-76bf2da928d04ed4/lib-regex` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.433786583s INFO prepare_target{force=false package_id=aho-corasick v1.1.3 target="aho_corasick"}: cargo::core::compiler::fingerprint: fingerprint error for aho-corasick v1.1.3/Build/TargetInner { ..: lib_target("aho_corasick", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs", Edition2021) } - 0.433794704s INFO prepare_target{force=false package_id=aho-corasick v1.1.3 target="aho_corasick"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/aho-corasick-fcf8b756b0993101/lib-aho_corasick` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.433952679s INFO prepare_target{force=false package_id=memchr v2.7.5 target="memchr"}: cargo::core::compiler::fingerprint: fingerprint error for memchr v2.7.5/Build/TargetInner { benched: false, ..: lib_target("memchr", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/src/lib.rs", Edition2021) } - 0.433959252s INFO prepare_target{force=false package_id=memchr v2.7.5 target="memchr"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/memchr-6709e545d5a75bbd/lib-memchr` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.434104475s INFO prepare_target{force=false package_id=regex-automata v0.4.11 target="regex_automata"}: cargo::core::compiler::fingerprint: fingerprint error for regex-automata v0.4.11/Build/TargetInner { benched: false, ..: lib_target("regex_automata", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs", Edition2021) } - 0.434112759s INFO prepare_target{force=false package_id=regex-automata v0.4.11 target="regex_automata"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-automata-613dd4fd964cf0b3/lib-regex_automata` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.434313522s INFO prepare_target{force=false package_id=regex-syntax v0.8.5 target="regex_syntax"}: cargo::core::compiler::fingerprint: fingerprint error for regex-syntax v0.8.5/Build/TargetInner { ..: lib_target("regex_syntax", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs", Edition2021) } - 0.434320302s INFO prepare_target{force=false package_id=regex-syntax v0.8.5 target="regex_syntax"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-syntax-5815ed1846ecdf1c/lib-regex_syntax` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.434454569s INFO prepare_target{force=false package_id=tempfile v3.20.0 target="tempfile"}: cargo::core::compiler::fingerprint: fingerprint error for tempfile v3.20.0/Build/TargetInner { ..: lib_target("tempfile", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tempfile-3.20.0/src/lib.rs", Edition2021) } - 0.434460835s INFO prepare_target{force=false package_id=tempfile v3.20.0 target="tempfile"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tempfile-e911e9968f615ae7/lib-tempfile` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.434719976s INFO prepare_target{force=false package_id=getrandom v0.3.3 target="getrandom"}: cargo::core::compiler::fingerprint: fingerprint error for getrandom v0.3.3/Build/TargetInner { ..: lib_target("getrandom", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/src/lib.rs", Edition2021) } - 0.434726519s INFO prepare_target{force=false package_id=getrandom v0.3.3 target="getrandom"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/getrandom-afffc94b15b4a1d6/lib-getrandom` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.435053337s INFO prepare_target{force=false package_id=libc v0.2.174 target="libc"}: cargo::core::compiler::fingerprint: fingerprint error for libc v0.2.174/Build/TargetInner { ..: lib_target("libc", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/src/lib.rs", Edition2021) } - 0.435063292s INFO prepare_target{force=false package_id=libc v0.2.174 target="libc"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/libc-12803c979228cc4e/lib-libc` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.435589495s INFO prepare_target{force=false package_id=rtnetlink v0.18.1 target="rtnetlink"}: cargo::core::compiler::fingerprint: fingerprint error for rtnetlink v0.18.1/Check { test: false }/TargetInner { ..: lib_target("rtnetlink", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/src/lib.rs", Edition2021) } - 0.435598610s INFO prepare_target{force=false package_id=rtnetlink v0.18.1 target="rtnetlink"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rtnetlink-85a0bb3c05160f5b/lib-rtnetlink` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.435966149s INFO prepare_target{force=false package_id=netlink-packet-core v0.8.0 target="netlink_packet_core"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-packet-core v0.8.0/Check { test: false }/TargetInner { ..: lib_target("netlink_packet_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/src/lib.rs", Edition2021) } - 0.435973767s INFO prepare_target{force=false package_id=netlink-packet-core v0.8.0 target="netlink_packet_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-packet-core-e33c550d39f7979a/lib-netlink_packet_core` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.436159303s INFO prepare_target{force=false package_id=netlink-packet-route v0.25.1 target="netlink_packet_route"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-packet-route v0.25.1/Check { test: false }/TargetInner { ..: lib_target("netlink_packet_route", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/src/lib.rs", Edition2021) } - 0.436166432s INFO prepare_target{force=false package_id=netlink-packet-route v0.25.1 target="netlink_packet_route"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-packet-route-b72ad08dac0c4fa1/lib-netlink_packet_route` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.436344146s INFO prepare_target{force=false package_id=bitflags v2.9.1 target="bitflags"}: cargo::core::compiler::fingerprint: fingerprint error for bitflags v2.9.1/Check { test: false }/TargetInner { ..: lib_target("bitflags", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/src/lib.rs", Edition2021) } - 0.436350408s INFO prepare_target{force=false package_id=bitflags v2.9.1 target="bitflags"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bitflags-3997a28a4245f30d/lib-bitflags` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.436467554s INFO prepare_target{force=false package_id=netlink-proto v0.12.0 target="netlink_proto"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-proto v0.12.0/Check { test: false }/TargetInner { ..: lib_target("netlink_proto", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/src/lib.rs", Edition2021) } - 0.436473884s INFO prepare_target{force=false package_id=netlink-proto v0.12.0 target="netlink_proto"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-proto-2a0dffee8abf8340/lib-netlink_proto` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.436741626s INFO prepare_target{force=false package_id=netlink-sys v0.8.7 target="netlink_sys"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-sys v0.8.7/Check { test: false }/TargetInner { ..: lib_target("netlink_sys", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/src/lib.rs", Edition2018) } - 0.436747655s INFO prepare_target{force=false package_id=netlink-sys v0.8.7 target="netlink_sys"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-sys-b6fe346fb26cf63b/lib-netlink_sys` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.436988604s INFO prepare_target{force=false package_id=tokio v1.47.1 target="tokio"}: cargo::core::compiler::fingerprint: fingerprint error for tokio v1.47.1/Check { test: false }/TargetInner { ..: lib_target("tokio", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs", Edition2021) } - 0.436994932s INFO prepare_target{force=false package_id=tokio v1.47.1 target="tokio"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tokio-92eac18d2a4c82b2/lib-tokio` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.437281048s INFO prepare_target{force=false package_id=mio v1.0.4 target="mio"}: cargo::core::compiler::fingerprint: fingerprint error for mio v1.0.4/Check { test: false }/TargetInner { ..: lib_target("mio", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs", Edition2021) } - 0.437287529s INFO prepare_target{force=false package_id=mio v1.0.4 target="mio"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/mio-2a0e0111e65cfbfc/lib-mio` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.437425335s INFO prepare_target{force=false package_id=parking_lot v0.12.4 target="parking_lot"}: cargo::core::compiler::fingerprint: fingerprint error for parking_lot v0.12.4/Check { test: false }/TargetInner { ..: lib_target("parking_lot", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/src/lib.rs", Edition2021) } - 0.437431307s INFO prepare_target{force=false package_id=parking_lot v0.12.4 target="parking_lot"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/parking_lot-3cfefb0391980ece/lib-parking_lot` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.437787230s INFO prepare_target{force=false package_id=parking_lot_core v0.9.11 target="parking_lot_core"}: cargo::core::compiler::fingerprint: fingerprint error for parking_lot_core v0.9.11/Check { test: false }/TargetInner { ..: lib_target("parking_lot_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/src/lib.rs", Edition2021) } - 0.437794557s INFO prepare_target{force=false package_id=parking_lot_core v0.9.11 target="parking_lot_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/parking_lot_core-985fa2653a7074e6/lib-parking_lot_core` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.438145836s INFO prepare_target{force=false package_id=signal-hook-registry v1.4.5 target="signal_hook_registry"}: cargo::core::compiler::fingerprint: fingerprint error for signal-hook-registry v1.4.5/Check { test: false }/TargetInner { ..: lib_target("signal_hook_registry", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/src/lib.rs", Edition2015) } - 0.438155820s INFO prepare_target{force=false package_id=signal-hook-registry v1.4.5 target="signal_hook_registry"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/signal-hook-registry-e60a7645222b7ea1/lib-signal_hook_registry` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.438306706s INFO prepare_target{force=false package_id=socket2 v0.6.0 target="socket2"}: cargo::core::compiler::fingerprint: fingerprint error for socket2 v0.6.0/Check { test: false }/TargetInner { ..: lib_target("socket2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/src/lib.rs", Edition2021) } - 0.438313886s INFO prepare_target{force=false package_id=socket2 v0.6.0 target="socket2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/socket2-b4977119b4c628e3/lib-socket2` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.438483973s INFO prepare_target{force=false package_id=nix v0.29.0 target="nix"}: cargo::core::compiler::fingerprint: fingerprint error for nix v0.29.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("nix", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/src/lib.rs", Edition2021) } - 0.438490527s INFO prepare_target{force=false package_id=nix v0.29.0 target="nix"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nix-72f3c6b2f9b26637/lib-nix` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.438821694s INFO prepare_target{force=false package_id=thiserror v1.0.69 target="thiserror"}: cargo::core::compiler::fingerprint: fingerprint error for thiserror v1.0.69/Check { test: false }/TargetInner { ..: lib_target("thiserror", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs", Edition2021) } - 0.438830368s INFO prepare_target{force=false package_id=thiserror v1.0.69 target="thiserror"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/thiserror-2462b4b57be7e6cd/lib-thiserror` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.439350822s INFO prepare_target{force=false package_id=simple-error v0.3.2 target="simple_error"}: cargo::core::compiler::fingerprint: fingerprint error for simple-error v0.3.2/Check { test: false }/TargetInner { ..: lib_target("simple_error", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/src/lib.rs", Edition2021) } - 0.439361942s INFO prepare_target{force=false package_id=simple-error v0.3.2 target="simple_error"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/simple-error-d2dfd4027151b5f2/lib-simple_error` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.439478453s INFO prepare_target{force=false package_id=tun v0.8.4 target="tun"}: cargo::core::compiler::fingerprint: fingerprint error for tun v0.8.4/Check { test: false }/TargetInner { ..: lib_target("tun", ["staticlib", "lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/src/lib.rs", Edition2024) } - 0.439491791s INFO prepare_target{force=false package_id=tun v0.8.4 target="tun"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tun-6449548ac7b38798/lib-tun` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.439793394s INFO prepare_target{force=false package_id=nix v0.30.1 target="nix"}: cargo::core::compiler::fingerprint: fingerprint error for nix v0.30.1/Check { test: false }/TargetInner { ..: lib_target("nix", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/src/lib.rs", Edition2021) } - 0.439799724s INFO prepare_target{force=false package_id=nix v0.30.1 target="nix"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nix-1bbe9177e166f95b/lib-nix` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.440102867s INFO prepare_target{force=false package_id=tokio-util v0.7.15 target="tokio_util"}: cargo::core::compiler::fingerprint: fingerprint error for tokio-util v0.7.15/Check { test: false }/TargetInner { ..: lib_target("tokio_util", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs", Edition2021) } - 0.440113032s INFO prepare_target{force=false package_id=tokio-util v0.7.15 target="tokio_util"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tokio-util-acdc6c6fac6ff510/lib-tokio_util` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.440354467s INFO prepare_target{force=false package_id=x25519-dalek v2.0.1 target="x25519_dalek"}: cargo::core::compiler::fingerprint: fingerprint error for x25519-dalek v2.0.1/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("x25519_dalek", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/src/lib.rs", Edition2021) } - 0.440362195s INFO prepare_target{force=false package_id=x25519-dalek v2.0.1 target="x25519_dalek"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/x25519-dalek-c72417e26ea43947/lib-x25519_dalek` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.440566583s INFO prepare_target{force=false package_id=curve25519-dalek v4.1.3 target="curve25519_dalek"}: cargo::core::compiler::fingerprint: fingerprint error for curve25519-dalek v4.1.3/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("curve25519_dalek", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/src/lib.rs", Edition2021) } - 0.440574342s INFO prepare_target{force=false package_id=curve25519-dalek v4.1.3 target="curve25519_dalek"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/curve25519-dalek-20e42520cc60654b/lib-curve25519_dalek` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.441420691s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/Check { test: true }/TargetInner { ..: lib_target("reeflib", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs", Edition2021) } - 0.441434398s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-e8d64a1ff804584d/test-lib-reeflib` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: ::compile - 6: cargo::ops::cargo_compile::compile_ws - 7: cargo::ops::cargo_compile::compile_with_exec - 8: cargo::ops::cargo_compile::compile - 9: cargo::commands::check::exec - 10: ::exec - 11: cargo::main - 12: std::sys::backtrace::__rust_begin_short_backtrace:: - 13: std::rt::lang_start::<()>::{closure#0} - 14: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 15: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 16: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 17: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 18: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 23: main - 24: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 25: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 26: - 0.442422657s INFO prepare_target{force=false package_id=reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) target="reeftest"}: cargo::core::compiler::fingerprint: fingerprint error for reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library)/Check { test: false }/TargetInner { ..: lib_target("reeftest", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/lib/mod.rs", Edition2021) } - 0.442437265s INFO prepare_target{force=false package_id=reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) target="reeftest"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-test-7dd80b833bf035af/lib-reeftest` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.442644533s INFO prepare_target{force=false package_id=regex v1.11.3 target="regex"}: cargo::core::compiler::fingerprint: fingerprint error for regex v1.11.3/Check { test: false }/TargetInner { ..: lib_target("regex", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs", Edition2021) } - 0.442652354s INFO prepare_target{force=false package_id=regex v1.11.3 target="regex"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-ad6a595b74f9ca3e/lib-regex` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.442868734s INFO prepare_target{force=false package_id=aho-corasick v1.1.3 target="aho_corasick"}: cargo::core::compiler::fingerprint: fingerprint error for aho-corasick v1.1.3/Check { test: false }/TargetInner { ..: lib_target("aho_corasick", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs", Edition2021) } - 0.442876265s INFO prepare_target{force=false package_id=aho-corasick v1.1.3 target="aho_corasick"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/aho-corasick-0c64cc041cfd849f/lib-aho_corasick` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.443041372s INFO prepare_target{force=false package_id=regex-automata v0.4.11 target="regex_automata"}: cargo::core::compiler::fingerprint: fingerprint error for regex-automata v0.4.11/Check { test: false }/TargetInner { benched: false, ..: lib_target("regex_automata", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs", Edition2021) } - 0.443050805s INFO prepare_target{force=false package_id=regex-automata v0.4.11 target="regex_automata"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-automata-34eee35aa1d8fb6b/lib-regex_automata` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.443250019s INFO prepare_target{force=false package_id=regex-syntax v0.8.5 target="regex_syntax"}: cargo::core::compiler::fingerprint: fingerprint error for regex-syntax v0.8.5/Check { test: false }/TargetInner { ..: lib_target("regex_syntax", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs", Edition2021) } - 0.443257086s INFO prepare_target{force=false package_id=regex-syntax v0.8.5 target="regex_syntax"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/regex-syntax-40e89b7ec18b063b/lib-regex_syntax` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.444545964s INFO prepare_target{force=false package_id=reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) target="seaside_standalone"}: cargo::core::compiler::fingerprint: fingerprint error for reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable)/Check { test: false }/TargetInner { name: "seaside_standalone", doc: true, ..: with_path("/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/src/mod.rs", Edition2021) } - 0.444560797s INFO prepare_target{force=false package_id=reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) target="seaside_standalone"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-standalone-b68f2985d3330c3a/bin-seaside_standalone` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: ::compile - 6: cargo::ops::cargo_compile::compile_ws - 7: cargo::ops::cargo_compile::compile_with_exec - 8: cargo::ops::cargo_compile::compile - 9: cargo::commands::check::exec - 10: ::exec - 11: cargo::main - 12: std::sys::backtrace::__rust_begin_short_backtrace:: - 13: std::rt::lang_start::<()>::{closure#0} - 14: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 15: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 16: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 17: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 18: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 23: main - 24: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 25: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 26: - 0.445634029s INFO prepare_target{force=false package_id=env_logger v0.11.8 target="env_logger"}: cargo::core::compiler::fingerprint: fingerprint error for env_logger v0.11.8/Check { test: false }/TargetInner { ..: lib_target("env_logger", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_logger-0.11.8/src/lib.rs", Edition2021) } - 0.445649594s INFO prepare_target{force=false package_id=env_logger v0.11.8 target="env_logger"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/env_logger-2910e107e278689a/lib-env_logger` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.445964823s INFO prepare_target{force=false package_id=anstream v0.6.19 target="anstream"}: cargo::core::compiler::fingerprint: fingerprint error for anstream v0.6.19/Check { test: false }/TargetInner { ..: lib_target("anstream", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/src/lib.rs", Edition2021) } - 0.445974843s INFO prepare_target{force=false package_id=anstream v0.6.19 target="anstream"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/anstream-51183de30b3eae15/lib-anstream` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.446252309s INFO prepare_target{force=false package_id=anstyle v1.0.11 target="anstyle"}: cargo::core::compiler::fingerprint: fingerprint error for anstyle v1.0.11/Check { test: false }/TargetInner { ..: lib_target("anstyle", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/src/lib.rs", Edition2021) } - 0.446260816s INFO prepare_target{force=false package_id=anstyle v1.0.11 target="anstyle"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/anstyle-bb72f1018d9ca59f/lib-anstyle` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.446403938s INFO prepare_target{force=false package_id=anstyle-parse v0.2.7 target="anstyle_parse"}: cargo::core::compiler::fingerprint: fingerprint error for anstyle-parse v0.2.7/Check { test: false }/TargetInner { ..: lib_target("anstyle_parse", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/src/lib.rs", Edition2021) } - 0.446412031s INFO prepare_target{force=false package_id=anstyle-parse v0.2.7 target="anstyle_parse"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/anstyle-parse-b01e8e869194beb3/lib-anstyle_parse` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.446623849s INFO prepare_target{force=false package_id=utf8parse v0.2.2 target="utf8parse"}: cargo::core::compiler::fingerprint: fingerprint error for utf8parse v0.2.2/Check { test: false }/TargetInner { ..: lib_target("utf8parse", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/src/lib.rs", Edition2018) } - 0.446630775s INFO prepare_target{force=false package_id=utf8parse v0.2.2 target="utf8parse"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/utf8parse-fe743609d23c1f65/lib-utf8parse` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.446754621s INFO prepare_target{force=false package_id=anstyle-query v1.1.3 target="anstyle_query"}: cargo::core::compiler::fingerprint: fingerprint error for anstyle-query v1.1.3/Check { test: false }/TargetInner { ..: lib_target("anstyle_query", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/src/lib.rs", Edition2021) } - 0.446761722s INFO prepare_target{force=false package_id=anstyle-query v1.1.3 target="anstyle_query"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/anstyle-query-86569a613c3c9ba3/lib-anstyle_query` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.446886350s INFO prepare_target{force=false package_id=colorchoice v1.0.4 target="colorchoice"}: cargo::core::compiler::fingerprint: fingerprint error for colorchoice v1.0.4/Check { test: false }/TargetInner { ..: lib_target("colorchoice", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/src/lib.rs", Edition2021) } - 0.446892595s INFO prepare_target{force=false package_id=colorchoice v1.0.4 target="colorchoice"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/colorchoice-367a6f5a1e7ab532/lib-colorchoice` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.447013849s INFO prepare_target{force=false package_id=is_terminal_polyfill v1.70.1 target="is_terminal_polyfill"}: cargo::core::compiler::fingerprint: fingerprint error for is_terminal_polyfill v1.70.1/Check { test: false }/TargetInner { ..: lib_target("is_terminal_polyfill", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/src/lib.rs", Edition2021) } - 0.447026497s INFO prepare_target{force=false package_id=is_terminal_polyfill v1.70.1 target="is_terminal_polyfill"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/is_terminal_polyfill-9bf9dc9833a8f45a/lib-is_terminal_polyfill` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.447168789s INFO prepare_target{force=false package_id=env_filter v0.1.3 target="env_filter"}: cargo::core::compiler::fingerprint: fingerprint error for env_filter v0.1.3/Check { test: false }/TargetInner { ..: lib_target("env_filter", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_filter-0.1.3/src/lib.rs", Edition2021) } - 0.447174809s INFO prepare_target{force=false package_id=env_filter v0.1.3 target="env_filter"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/env_filter-8e23f91312ddcb1b/lib-env_filter` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.447349652s INFO prepare_target{force=false package_id=jiff v0.2.15 target="jiff"}: cargo::core::compiler::fingerprint: fingerprint error for jiff v0.2.15/Check { test: false }/TargetInner { ..: lib_target("jiff", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/jiff-0.2.15/src/lib.rs", Edition2021) } - 0.447355278s INFO prepare_target{force=false package_id=jiff v0.2.15 target="jiff"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/jiff-488ce4ceefc927bf/lib-jiff` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.447474863s INFO prepare_target{force=false package_id=structopt v0.3.26 target="structopt"}: cargo::core::compiler::fingerprint: fingerprint error for structopt v0.3.26/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("structopt", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-0.3.26/src/lib.rs", Edition2018) } - 0.447480941s INFO prepare_target{force=false package_id=structopt v0.3.26 target="structopt"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/structopt-93801b993d9fdd6c/lib-structopt` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: ::compile - 7: cargo::ops::cargo_compile::compile_ws - 8: cargo::ops::cargo_compile::compile_with_exec - 9: cargo::ops::cargo_compile::compile - 10: cargo::commands::check::exec - 11: ::exec - 12: cargo::main - 13: std::sys::backtrace::__rust_begin_short_backtrace:: - 14: std::rt::lang_start::<()>::{closure#0} - 15: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 16: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 17: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 18: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 19: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 24: main - 25: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 26: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 27: - 0.447690307s INFO prepare_target{force=false package_id=clap v2.34.0 target="clap"}: cargo::core::compiler::fingerprint: fingerprint error for clap v2.34.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("clap", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.34.0/src/lib.rs", Edition2018) } - 0.447696536s INFO prepare_target{force=false package_id=clap v2.34.0 target="clap"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/clap-3c7b143dedc82f2f/lib-clap` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.447919858s INFO prepare_target{force=false package_id=ansi_term v0.12.1 target="ansi_term"}: cargo::core::compiler::fingerprint: fingerprint error for ansi_term v0.12.1/Check { test: false }/TargetInner { ..: lib_target("ansi_term", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ansi_term-0.12.1/src/lib.rs", Edition2015) } - 0.447925630s INFO prepare_target{force=false package_id=ansi_term v0.12.1 target="ansi_term"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ansi_term-f00ff4043a9d5998/lib-ansi_term` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.448040653s INFO prepare_target{force=false package_id=atty v0.2.14 target="atty"}: cargo::core::compiler::fingerprint: fingerprint error for atty v0.2.14/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("atty", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atty-0.2.14/src/lib.rs", Edition2015) } - 0.448046760s INFO prepare_target{force=false package_id=atty v0.2.14 target="atty"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/atty-197e8dc1ab1e5b43/lib-atty` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.448174270s INFO prepare_target{force=false package_id=bitflags v1.3.2 target="bitflags"}: cargo::core::compiler::fingerprint: fingerprint error for bitflags v1.3.2/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("bitflags", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-1.3.2/src/lib.rs", Edition2018) } - 0.448180112s INFO prepare_target{force=false package_id=bitflags v1.3.2 target="bitflags"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bitflags-b551d3fe3a8a6729/lib-bitflags` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.448288041s INFO prepare_target{force=false package_id=strsim v0.8.0 target="strsim"}: cargo::core::compiler::fingerprint: fingerprint error for strsim v0.8.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("strsim", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.8.0/src/lib.rs", Edition2015) } - 0.448293510s INFO prepare_target{force=false package_id=strsim v0.8.0 target="strsim"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/strsim-20ede2c518793cf3/lib-strsim` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.448399341s INFO prepare_target{force=false package_id=textwrap v0.11.0 target="textwrap"}: cargo::core::compiler::fingerprint: fingerprint error for textwrap v0.11.0/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("textwrap", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/textwrap-0.11.0/src/lib.rs", Edition2015) } - 0.448404766s INFO prepare_target{force=false package_id=textwrap v0.11.0 target="textwrap"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/textwrap-bc320b19f5a40cda/lib-textwrap` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.448520376s INFO prepare_target{force=false package_id=unicode-width v0.1.14 target="unicode_width"}: cargo::core::compiler::fingerprint: fingerprint error for unicode-width v0.1.14/Check { test: false }/TargetInner { ..: lib_target("unicode_width", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-width-0.1.14/src/lib.rs", Edition2021) } - 0.448526004s INFO prepare_target{force=false package_id=unicode-width v0.1.14 target="unicode_width"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/unicode-width-4205c60c9ba625c6/lib-unicode_width` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.448633357s INFO prepare_target{force=false package_id=vec_map v0.8.2 target="vec_map"}: cargo::core::compiler::fingerprint: fingerprint error for vec_map v0.8.2/Check { test: false }/TargetInner { name_inferred: true, ..: lib_target("vec_map", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/vec_map-0.8.2/src/lib.rs", Edition2015) } - 0.448638658s INFO prepare_target{force=false package_id=vec_map v0.8.2 target="vec_map"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/vec_map-8d88471343b6ed4f/lib-vec_map` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.449605307s INFO prepare_target{force=false package_id=reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) target="seaside_standalone"}: cargo::core::compiler::fingerprint: fingerprint error for reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable)/Check { test: true }/TargetInner { name: "seaside_standalone", doc: true, ..: with_path("/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/src/mod.rs", Edition2021) } - 0.449618996s INFO prepare_target{force=false package_id=reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) target="seaside_standalone"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-standalone-8249b79ab5a20b1a/test-bin-seaside_standalone` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: ::compile - 6: cargo::ops::cargo_compile::compile_ws - 7: cargo::ops::cargo_compile::compile_with_exec - 8: cargo::ops::cargo_compile::compile - 9: cargo::commands::check::exec - 10: ::exec - 11: cargo::main - 12: std::sys::backtrace::__rust_begin_short_backtrace:: - 13: std::rt::lang_start::<()>::{closure#0} - 14: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 15: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 16: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 17: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 18: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 23: main - 24: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 25: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 26: - 0.450717052s INFO prepare_target{force=false package_id=reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) target="reeftest"}: cargo::core::compiler::fingerprint: fingerprint error for reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library)/Check { test: true }/TargetInner { ..: lib_target("reeftest", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/lib/mod.rs", Edition2021) } - 0.450732723s INFO prepare_target{force=false package_id=reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) target="reeftest"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-test-6aa2e0b9a2bdad70/test-lib-reeftest` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: ::compile - 6: cargo::ops::cargo_compile::compile_ws - 7: cargo::ops::cargo_compile::compile_with_exec - 8: cargo::ops::cargo_compile::compile - 9: cargo::commands::check::exec - 10: ::exec - 11: cargo::main - 12: std::sys::backtrace::__rust_begin_short_backtrace:: - 13: std::rt::lang_start::<()>::{closure#0} - 14: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 15: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 16: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 17: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 18: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 23: main - 24: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 25: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 26: - 0.455684142s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="seaside"}: cargo::core::compiler::fingerprint: fingerprint error for reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library)/Check { test: false }/TargetInner { ..: lib_target("seaside", ["cdylib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/lib/mod.rs", Edition2021) } - 0.455707134s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="seaside"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reefshared-0f0f3e1c248c0e71/lib-seaside` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: ::compile - 6: cargo::ops::cargo_compile::compile_ws - 7: cargo::ops::cargo_compile::compile_with_exec - 8: cargo::ops::cargo_compile::compile - 9: cargo::commands::check::exec - 10: ::exec - 11: cargo::main - 12: std::sys::backtrace::__rust_begin_short_backtrace:: - 13: std::rt::lang_start::<()>::{closure#0} - 14: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 15: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 16: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 17: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 18: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 23: main - 24: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 25: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 26: - 0.456962656s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="build-script-build"}: cargo::core::compiler::fingerprint: fingerprint error for reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library)/RunCustomBuild/TargetInner { ..: custom_build_target("build-script-build", "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/build.rs", Edition2021) } - 0.456980827s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="build-script-build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reefshared-7c3d38765d5fd02b/run-build-script-build-script-build` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::custom_build::build_work - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.457254089s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="build-script-build"}: cargo::core::compiler::fingerprint: fingerprint error for reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library)/Build/TargetInner { ..: custom_build_target("build-script-build", "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/build.rs", Edition2021) } - 0.457263133s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="build-script-build"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reefshared-c3aadb147183e507/build-script-build-script-build` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: ::compile - 8: cargo::ops::cargo_compile::compile_ws - 9: cargo::ops::cargo_compile::compile_with_exec - 10: cargo::ops::cargo_compile::compile - 11: cargo::commands::check::exec - 12: ::exec - 13: cargo::main - 14: std::sys::backtrace::__rust_begin_short_backtrace:: - 15: std::rt::lang_start::<()>::{closure#0} - 16: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 17: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 18: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 19: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 20: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 25: main - 26: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 27: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 28: - 0.457910805s INFO prepare_target{force=false package_id=cbindgen v0.29.2 target="cbindgen"}: cargo::core::compiler::fingerprint: fingerprint error for cbindgen v0.29.2/Build/TargetInner { ..: lib_target("cbindgen", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/src/lib.rs", Edition2021) } - 0.457921902s INFO prepare_target{force=false package_id=cbindgen v0.29.2 target="cbindgen"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cbindgen-bd6cbd9faa33b9f0/lib-cbindgen` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.458684694s INFO prepare_target{force=false package_id=serde v1.0.228 target="serde"}: cargo::core::compiler::fingerprint: fingerprint error for serde v1.0.228/Build/TargetInner { ..: lib_target("serde", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs", Edition2021) } - 0.458694377s INFO prepare_target{force=false package_id=serde v1.0.228 target="serde"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde-ef13ad9c0addc358/lib-serde` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.458910876s INFO prepare_target{force=false package_id=serde_core v1.0.228 target="serde_core"}: cargo::core::compiler::fingerprint: fingerprint error for serde_core v1.0.228/Build/TargetInner { ..: lib_target("serde_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs", Edition2021) } - 0.458917498s INFO prepare_target{force=false package_id=serde_core v1.0.228 target="serde_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_core-2cdbf80b25b87d16/lib-serde_core` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.459064744s INFO prepare_target{force=false package_id=serde_json v1.0.143 target="serde_json"}: cargo::core::compiler::fingerprint: fingerprint error for serde_json v1.0.143/Build/TargetInner { ..: lib_target("serde_json", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/src/lib.rs", Edition2021) } - 0.459070696s INFO prepare_target{force=false package_id=serde_json v1.0.143 target="serde_json"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_json-288a001dee904ca8/lib-serde_json` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.459289614s INFO prepare_target{force=false package_id=itoa v1.0.15 target="itoa"}: cargo::core::compiler::fingerprint: fingerprint error for itoa v1.0.15/Build/TargetInner { ..: lib_target("itoa", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs", Edition2018) } - 0.459295758s INFO prepare_target{force=false package_id=itoa v1.0.15 target="itoa"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/itoa-d5048592e7308c8e/lib-itoa` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.459425489s INFO prepare_target{force=false package_id=ryu v1.0.20 target="ryu"}: cargo::core::compiler::fingerprint: fingerprint error for ryu v1.0.20/Build/TargetInner { ..: lib_target("ryu", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs", Edition2018) } - 0.459431599s INFO prepare_target{force=false package_id=ryu v1.0.20 target="ryu"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ryu-857778c47b40d947/lib-ryu` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.459558075s INFO prepare_target{force=false package_id=toml v0.9.8 target="toml"}: cargo::core::compiler::fingerprint: fingerprint error for toml v0.9.8/Build/TargetInner { ..: lib_target("toml", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml-0.9.8/src/lib.rs", Edition2021) } - 0.459563753s INFO prepare_target{force=false package_id=toml v0.9.8 target="toml"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/toml-9fde908db9dc444d/lib-toml` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.459788729s INFO prepare_target{force=false package_id=serde_spanned v1.0.3 target="serde_spanned"}: cargo::core::compiler::fingerprint: fingerprint error for serde_spanned v1.0.3/Build/TargetInner { ..: lib_target("serde_spanned", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_spanned-1.0.3/src/lib.rs", Edition2021) } - 0.459795486s INFO prepare_target{force=false package_id=serde_spanned v1.0.3 target="serde_spanned"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_spanned-bf2af6db24245b37/lib-serde_spanned` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.459948427s INFO prepare_target{force=false package_id=toml_datetime v0.7.3 target="toml_datetime"}: cargo::core::compiler::fingerprint: fingerprint error for toml_datetime v0.7.3/Build/TargetInner { ..: lib_target("toml_datetime", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.7.3/src/lib.rs", Edition2021) } - 0.459955237s INFO prepare_target{force=false package_id=toml_datetime v0.7.3 target="toml_datetime"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/toml_datetime-a1813512cc125ab5/lib-toml_datetime` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.460160438s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: fingerprint error for reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library)/Build/TargetInner { ..: lib_target("reeflib", ["lib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs", Edition2021) } - 0.460169298s INFO prepare_target{force=false package_id=reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) target="reeflib"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reef-common-6b9400739fd6c26f/lib-reeflib` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: ::compile - 9: cargo::ops::cargo_compile::compile_ws - 10: cargo::ops::cargo_compile::compile_with_exec - 11: cargo::ops::cargo_compile::compile - 12: cargo::commands::check::exec - 13: ::exec - 14: cargo::main - 15: std::sys::backtrace::__rust_begin_short_backtrace:: - 16: std::rt::lang_start::<()>::{closure#0} - 17: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 18: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 19: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 20: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 21: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 26: main - 27: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 28: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 29: - 0.461055108s INFO prepare_target{force=false package_id=bincode v2.0.1 target="bincode"}: cargo::core::compiler::fingerprint: fingerprint error for bincode v2.0.1/Build/TargetInner { ..: lib_target("bincode", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/src/lib.rs", Edition2021) } - 0.461066072s INFO prepare_target{force=false package_id=bincode v2.0.1 target="bincode"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/bincode-f185b9f4039d0ce4/lib-bincode` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.461249363s INFO prepare_target{force=false package_id=unty v0.0.4 target="unty"}: cargo::core::compiler::fingerprint: fingerprint error for unty v0.0.4/Build/TargetInner { ..: lib_target("unty", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/src/lib.rs", Edition2021) } - 0.461256098s INFO prepare_target{force=false package_id=unty v0.0.4 target="unty"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/unty-a54929119ec5a55c/lib-unty` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.461384038s INFO prepare_target{force=false package_id=blake2 v0.10.6 target="blake2"}: cargo::core::compiler::fingerprint: fingerprint error for blake2 v0.10.6/Build/TargetInner { name_inferred: true, ..: lib_target("blake2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/src/lib.rs", Edition2018) } - 0.461391724s INFO prepare_target{force=false package_id=blake2 v0.10.6 target="blake2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/blake2-a95e603b6f7a2a4f/lib-blake2` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.461572012s INFO prepare_target{force=false package_id=digest v0.10.7 target="digest"}: cargo::core::compiler::fingerprint: fingerprint error for digest v0.10.7/Build/TargetInner { name_inferred: true, ..: lib_target("digest", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/src/lib.rs", Edition2018) } - 0.461579192s INFO prepare_target{force=false package_id=digest v0.10.7 target="digest"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/digest-35bd109ed2d06f8a/lib-digest` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.461790463s INFO prepare_target{force=false package_id=block-buffer v0.10.4 target="block_buffer"}: cargo::core::compiler::fingerprint: fingerprint error for block-buffer v0.10.4/Build/TargetInner { name_inferred: true, ..: lib_target("block_buffer", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/src/lib.rs", Edition2018) } - 0.461797945s INFO prepare_target{force=false package_id=block-buffer v0.10.4 target="block_buffer"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/block-buffer-c7ffa532adaa845c/lib-block_buffer` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.461951585s INFO prepare_target{force=false package_id=generic-array v0.14.7 target="generic_array"}: cargo::core::compiler::fingerprint: fingerprint error for generic-array v0.14.7/Build/TargetInner { ..: lib_target("generic_array", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/src/lib.rs", Edition2015) } - 0.461959237s INFO prepare_target{force=false package_id=generic-array v0.14.7 target="generic_array"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/generic-array-c6bfe15667f162ad/lib-generic_array` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: ::compile - 13: cargo::ops::cargo_compile::compile_ws - 14: cargo::ops::cargo_compile::compile_with_exec - 15: cargo::ops::cargo_compile::compile - 16: cargo::commands::check::exec - 17: ::exec - 18: cargo::main - 19: std::sys::backtrace::__rust_begin_short_backtrace:: - 20: std::rt::lang_start::<()>::{closure#0} - 21: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 26: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 27: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 28: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 29: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 30: main - 31: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 32: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 33: - 0.462171981s INFO prepare_target{force=false package_id=crypto-common v0.1.6 target="crypto_common"}: cargo::core::compiler::fingerprint: fingerprint error for crypto-common v0.1.6/Build/TargetInner { name_inferred: true, ..: lib_target("crypto_common", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/src/lib.rs", Edition2018) } - 0.462179819s INFO prepare_target{force=false package_id=crypto-common v0.1.6 target="crypto_common"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/crypto-common-478bb928817992c3/lib-crypto_common` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.462379898s INFO prepare_target{force=false package_id=rand_core v0.6.4 target="rand_core"}: cargo::core::compiler::fingerprint: fingerprint error for rand_core v0.6.4/Build/TargetInner { name_inferred: true, ..: lib_target("rand_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs", Edition2018) } - 0.462386450s INFO prepare_target{force=false package_id=rand_core v0.6.4 target="rand_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand_core-c8915665fd1b5932/lib-rand_core` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: ::compile - 13: cargo::ops::cargo_compile::compile_ws - 14: cargo::ops::cargo_compile::compile_with_exec - 15: cargo::ops::cargo_compile::compile - 16: cargo::commands::check::exec - 17: ::exec - 18: cargo::main - 19: std::sys::backtrace::__rust_begin_short_backtrace:: - 20: std::rt::lang_start::<()>::{closure#0} - 21: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 26: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 27: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 28: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 29: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 30: main - 31: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 32: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 33: - 0.462536958s INFO prepare_target{force=false package_id=getrandom v0.2.16 target="getrandom"}: cargo::core::compiler::fingerprint: fingerprint error for getrandom v0.2.16/Build/TargetInner { ..: lib_target("getrandom", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/src/lib.rs", Edition2018) } - 0.462543272s INFO prepare_target{force=false package_id=getrandom v0.2.16 target="getrandom"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/getrandom-6a8e0db638d8ae7c/lib-getrandom` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: cargo::core::compiler::compile - 13: ::compile - 14: cargo::ops::cargo_compile::compile_ws - 15: cargo::ops::cargo_compile::compile_with_exec - 16: cargo::ops::cargo_compile::compile - 17: cargo::commands::check::exec - 18: ::exec - 19: cargo::main - 20: std::sys::backtrace::__rust_begin_short_backtrace:: - 21: std::rt::lang_start::<()>::{closure#0} - 22: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 27: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 28: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 29: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 30: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 31: main - 32: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 33: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 34: - 0.462714124s INFO prepare_target{force=false package_id=subtle v2.6.1 target="subtle"}: cargo::core::compiler::fingerprint: fingerprint error for subtle v2.6.1/Build/TargetInner { ..: lib_target("subtle", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs", Edition2018) } - 0.462720545s INFO prepare_target{force=false package_id=subtle v2.6.1 target="subtle"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/subtle-c2125d2c0ec00cea/lib-subtle` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.462842059s INFO prepare_target{force=false package_id=cached v0.56.0 target="cached"}: cargo::core::compiler::fingerprint: fingerprint error for cached v0.56.0/Build/TargetInner { ..: lib_target("cached", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/src/lib.rs", Edition2018) } - 0.462848953s INFO prepare_target{force=false package_id=cached v0.56.0 target="cached"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cached-fe925702b5cc28b6/lib-cached` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.463140006s INFO prepare_target{force=false package_id=ahash v0.8.12 target="ahash"}: cargo::core::compiler::fingerprint: fingerprint error for ahash v0.8.12/Build/TargetInner { ..: lib_target("ahash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/src/lib.rs", Edition2018) } - 0.463147435s INFO prepare_target{force=false package_id=ahash v0.8.12 target="ahash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ahash-e5108daa8d923391/lib-ahash` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.463329887s INFO prepare_target{force=false package_id=zerocopy v0.8.26 target="zerocopy"}: cargo::core::compiler::fingerprint: fingerprint error for zerocopy v0.8.26/Build/TargetInner { ..: lib_target("zerocopy", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/src/lib.rs", Edition2021) } - 0.463336528s INFO prepare_target{force=false package_id=zerocopy v0.8.26 target="zerocopy"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/zerocopy-f0998fbc238d2d44/lib-zerocopy` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.463465681s INFO prepare_target{force=false package_id=cached_proc_macro_types v0.1.1 target="cached_proc_macro_types"}: cargo::core::compiler::fingerprint: fingerprint error for cached_proc_macro_types v0.1.1/Build/TargetInner { name_inferred: true, ..: lib_target("cached_proc_macro_types", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/src/lib.rs", Edition2018) } - 0.463472618s INFO prepare_target{force=false package_id=cached_proc_macro_types v0.1.1 target="cached_proc_macro_types"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cached_proc_macro_types-d20a172dc34e2c05/lib-cached_proc_macro_types` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.463595636s INFO prepare_target{force=false package_id=hashbrown v0.15.4 target="hashbrown"}: cargo::core::compiler::fingerprint: fingerprint error for hashbrown v0.15.4/Build/TargetInner { ..: lib_target("hashbrown", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/src/lib.rs", Edition2021) } - 0.463601967s INFO prepare_target{force=false package_id=hashbrown v0.15.4 target="hashbrown"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/hashbrown-88387dceb37c09d5/lib-hashbrown` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.463773595s INFO prepare_target{force=false package_id=allocator-api2 v0.2.21 target="allocator_api2"}: cargo::core::compiler::fingerprint: fingerprint error for allocator-api2 v0.2.21/Build/TargetInner { ..: lib_target("allocator_api2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/src/lib.rs", Edition2018) } - 0.463780332s INFO prepare_target{force=false package_id=allocator-api2 v0.2.21 target="allocator_api2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/allocator-api2-f21c861a1094a182/lib-allocator_api2` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.463922869s INFO prepare_target{force=false package_id=foldhash v0.1.5 target="foldhash"}: cargo::core::compiler::fingerprint: fingerprint error for foldhash v0.1.5/Build/TargetInner { benched: false, ..: lib_target("foldhash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/src/lib.rs", Edition2021) } - 0.463929507s INFO prepare_target{force=false package_id=foldhash v0.1.5 target="foldhash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/foldhash-71b35bb279e9f7cc/lib-foldhash` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.464056007s INFO prepare_target{force=false package_id=thiserror v2.0.16 target="thiserror"}: cargo::core::compiler::fingerprint: fingerprint error for thiserror v2.0.16/Build/TargetInner { ..: lib_target("thiserror", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/src/lib.rs", Edition2021) } - 0.464062408s INFO prepare_target{force=false package_id=thiserror v2.0.16 target="thiserror"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/thiserror-b9dd68c67000877d/lib-thiserror` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.464222050s INFO prepare_target{force=false package_id=web-time v1.1.0 target="web_time"}: cargo::core::compiler::fingerprint: fingerprint error for web-time v1.1.0/Build/TargetInner { name_inferred: true, ..: lib_target("web_time", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/src/lib.rs", Edition2021) } - 0.464228709s INFO prepare_target{force=false package_id=web-time v1.1.0 target="web_time"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/web-time-742dc25325911c35/lib-web_time` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.464357502s INFO prepare_target{force=false package_id=chacha20poly1305 v0.10.1 target="chacha20poly1305"}: cargo::core::compiler::fingerprint: fingerprint error for chacha20poly1305 v0.10.1/Build/TargetInner { name_inferred: true, ..: lib_target("chacha20poly1305", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/src/lib.rs", Edition2021) } - 0.464364329s INFO prepare_target{force=false package_id=chacha20poly1305 v0.10.1 target="chacha20poly1305"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/chacha20poly1305-361d9323f392b418/lib-chacha20poly1305` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.464604107s INFO prepare_target{force=false package_id=aead v0.5.2 target="aead"}: cargo::core::compiler::fingerprint: fingerprint error for aead v0.5.2/Build/TargetInner { name_inferred: true, ..: lib_target("aead", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/src/lib.rs", Edition2021) } - 0.464610968s INFO prepare_target{force=false package_id=aead v0.5.2 target="aead"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/aead-941727e9b6f6f2d1/lib-aead` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.464780000s INFO prepare_target{force=false package_id=chacha20 v0.9.1 target="chacha20"}: cargo::core::compiler::fingerprint: fingerprint error for chacha20 v0.9.1/Build/TargetInner { name_inferred: true, ..: lib_target("chacha20", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/src/lib.rs", Edition2021) } - 0.464786022s INFO prepare_target{force=false package_id=chacha20 v0.9.1 target="chacha20"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/chacha20-7e57c7442be16b6a/lib-chacha20` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.464981308s INFO prepare_target{force=false package_id=cipher v0.4.4 target="cipher"}: cargo::core::compiler::fingerprint: fingerprint error for cipher v0.4.4/Build/TargetInner { name_inferred: true, ..: lib_target("cipher", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/src/lib.rs", Edition2021) } - 0.464987952s INFO prepare_target{force=false package_id=cipher v0.4.4 target="cipher"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cipher-66a7a66cdc67bacf/lib-cipher` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.465204528s INFO prepare_target{force=false package_id=inout v0.1.4 target="inout"}: cargo::core::compiler::fingerprint: fingerprint error for inout v0.1.4/Build/TargetInner { ..: lib_target("inout", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/src/lib.rs", Edition2021) } - 0.465211887s INFO prepare_target{force=false package_id=inout v0.1.4 target="inout"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/inout-6c673083b33cc137/lib-inout` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: ::compile - 13: cargo::ops::cargo_compile::compile_ws - 14: cargo::ops::cargo_compile::compile_with_exec - 15: cargo::ops::cargo_compile::compile - 16: cargo::commands::check::exec - 17: ::exec - 18: cargo::main - 19: std::sys::backtrace::__rust_begin_short_backtrace:: - 20: std::rt::lang_start::<()>::{closure#0} - 21: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 26: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 27: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 28: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 29: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 30: main - 31: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 32: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 33: - 0.465358039s INFO prepare_target{force=false package_id=zeroize v1.8.1 target="zeroize"}: cargo::core::compiler::fingerprint: fingerprint error for zeroize v1.8.1/Build/TargetInner { name_inferred: true, ..: lib_target("zeroize", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs", Edition2021) } - 0.465364068s INFO prepare_target{force=false package_id=zeroize v1.8.1 target="zeroize"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/zeroize-d9a47f3b81707dc8/lib-zeroize` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: ::compile - 13: cargo::ops::cargo_compile::compile_ws - 14: cargo::ops::cargo_compile::compile_with_exec - 15: cargo::ops::cargo_compile::compile - 16: cargo::commands::check::exec - 17: ::exec - 18: cargo::main - 19: std::sys::backtrace::__rust_begin_short_backtrace:: - 20: std::rt::lang_start::<()>::{closure#0} - 21: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 26: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 27: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 28: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 29: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 30: main - 31: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 32: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 33: - 0.465510052s INFO prepare_target{force=false package_id=cpufeatures v0.2.17 target="cpufeatures"}: cargo::core::compiler::fingerprint: fingerprint error for cpufeatures v0.2.17/Build/TargetInner { ..: lib_target("cpufeatures", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/src/lib.rs", Edition2018) } - 0.465516126s INFO prepare_target{force=false package_id=cpufeatures v0.2.17 target="cpufeatures"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/cpufeatures-f5116670c7931c01/lib-cpufeatures` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.465632837s INFO prepare_target{force=false package_id=poly1305 v0.8.0 target="poly1305"}: cargo::core::compiler::fingerprint: fingerprint error for poly1305 v0.8.0/Build/TargetInner { name_inferred: true, ..: lib_target("poly1305", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/src/lib.rs", Edition2021) } - 0.465638888s INFO prepare_target{force=false package_id=poly1305 v0.8.0 target="poly1305"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/poly1305-59b4e153a282a0ac/lib-poly1305` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.465810823s INFO prepare_target{force=false package_id=opaque-debug v0.3.1 target="opaque_debug"}: cargo::core::compiler::fingerprint: fingerprint error for opaque-debug v0.3.1/Build/TargetInner { name_inferred: true, ..: lib_target("opaque_debug", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/src/lib.rs", Edition2018) } - 0.465816925s INFO prepare_target{force=false package_id=opaque-debug v0.3.1 target="opaque_debug"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/opaque-debug-f9656aea55626350/lib-opaque_debug` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.465926652s INFO prepare_target{force=false package_id=universal-hash v0.5.1 target="universal_hash"}: cargo::core::compiler::fingerprint: fingerprint error for universal-hash v0.5.1/Build/TargetInner { name_inferred: true, ..: lib_target("universal_hash", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/src/lib.rs", Edition2021) } - 0.465932792s INFO prepare_target{force=false package_id=universal-hash v0.5.1 target="universal_hash"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/universal-hash-d64358b1ff05fe22/lib-universal_hash` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.466104744s INFO prepare_target{force=false package_id=futures v0.3.31 target="futures"}: cargo::core::compiler::fingerprint: fingerprint error for futures v0.3.31/Build/TargetInner { ..: lib_target("futures", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs", Edition2018) } - 0.466110632s INFO prepare_target{force=false package_id=futures v0.3.31 target="futures"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-fae105f3ec3fc157/lib-futures` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.466363293s INFO prepare_target{force=false package_id=futures-channel v0.3.31 target="futures_channel"}: cargo::core::compiler::fingerprint: fingerprint error for futures-channel v0.3.31/Build/TargetInner { ..: lib_target("futures_channel", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs", Edition2018) } - 0.466370247s INFO prepare_target{force=false package_id=futures-channel v0.3.31 target="futures_channel"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-channel-eefa8b533f2b367f/lib-futures_channel` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.466568844s INFO prepare_target{force=false package_id=futures-executor v0.3.31 target="futures_executor"}: cargo::core::compiler::fingerprint: fingerprint error for futures-executor v0.3.31/Build/TargetInner { ..: lib_target("futures_executor", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs", Edition2018) } - 0.466577328s INFO prepare_target{force=false package_id=futures-executor v0.3.31 target="futures_executor"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-executor-09fa96bb5154e0c6/lib-futures_executor` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.466768615s INFO prepare_target{force=false package_id=futures-task v0.3.31 target="futures_task"}: cargo::core::compiler::fingerprint: fingerprint error for futures-task v0.3.31/Build/TargetInner { ..: lib_target("futures_task", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs", Edition2018) } - 0.466775020s INFO prepare_target{force=false package_id=futures-task v0.3.31 target="futures_task"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-task-5bed7a89f14e5718/lib-futures_task` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.466890090s INFO prepare_target{force=false package_id=futures-util v0.3.31 target="futures_util"}: cargo::core::compiler::fingerprint: fingerprint error for futures-util v0.3.31/Build/TargetInner { ..: lib_target("futures_util", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs", Edition2018) } - 0.466896400s INFO prepare_target{force=false package_id=futures-util v0.3.31 target="futures_util"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-util-34ee765464d9fa21/lib-futures_util` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.467205955s INFO prepare_target{force=false package_id=futures-io v0.3.31 target="futures_io"}: cargo::core::compiler::fingerprint: fingerprint error for futures-io v0.3.31/Build/TargetInner { ..: lib_target("futures_io", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs", Edition2018) } - 0.467213160s INFO prepare_target{force=false package_id=futures-io v0.3.31 target="futures_io"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/futures-io-d4c3ffe564a5a929/lib-futures_io` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: ::compile - 13: cargo::ops::cargo_compile::compile_ws - 14: cargo::ops::cargo_compile::compile_with_exec - 15: cargo::ops::cargo_compile::compile - 16: cargo::commands::check::exec - 17: ::exec - 18: cargo::main - 19: std::sys::backtrace::__rust_begin_short_backtrace:: - 20: std::rt::lang_start::<()>::{closure#0} - 21: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 26: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 27: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 28: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 29: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 30: main - 31: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 32: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 33: - 0.467360756s INFO prepare_target{force=false package_id=pin-utils v0.1.0 target="pin_utils"}: cargo::core::compiler::fingerprint: fingerprint error for pin-utils v0.1.0/Build/TargetInner { name_inferred: true, ..: lib_target("pin_utils", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs", Edition2018) } - 0.467367205s INFO prepare_target{force=false package_id=pin-utils v0.1.0 target="pin_utils"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/pin-utils-9218feb6935d4415/lib-pin_utils` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: ::compile - 13: cargo::ops::cargo_compile::compile_ws - 14: cargo::ops::cargo_compile::compile_with_exec - 15: cargo::ops::cargo_compile::compile - 16: cargo::commands::check::exec - 17: ::exec - 18: cargo::main - 19: std::sys::backtrace::__rust_begin_short_backtrace:: - 20: std::rt::lang_start::<()>::{closure#0} - 21: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 26: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 27: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 28: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 29: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 30: main - 31: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 32: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 33: - 0.467483990s INFO prepare_target{force=false package_id=slab v0.4.10 target="slab"}: cargo::core::compiler::fingerprint: fingerprint error for slab v0.4.10/Build/TargetInner { ..: lib_target("slab", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/src/lib.rs", Edition2018) } - 0.467489296s INFO prepare_target{force=false package_id=slab v0.4.10 target="slab"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/slab-97f08ff868a393bc/lib-slab` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: ::compile - 13: cargo::ops::cargo_compile::compile_ws - 14: cargo::ops::cargo_compile::compile_with_exec - 15: cargo::ops::cargo_compile::compile - 16: cargo::commands::check::exec - 17: ::exec - 18: cargo::main - 19: std::sys::backtrace::__rust_begin_short_backtrace:: - 20: std::rt::lang_start::<()>::{closure#0} - 21: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 26: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 27: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 28: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 29: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 30: main - 31: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 32: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 33: - 0.467605851s INFO prepare_target{force=false package_id=ipnet v2.11.0 target="ipnet"}: cargo::core::compiler::fingerprint: fingerprint error for ipnet v2.11.0/Build/TargetInner { ..: lib_target("ipnet", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs", Edition2018) } - 0.467611149s INFO prepare_target{force=false package_id=ipnet v2.11.0 target="ipnet"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ipnet-9490e3a689f6bf20/lib-ipnet` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.467722289s INFO prepare_target{force=false package_id=lazy_static v1.5.0 target="lazy_static"}: cargo::core::compiler::fingerprint: fingerprint error for lazy_static v1.5.0/Build/TargetInner { name_inferred: true, ..: lib_target("lazy_static", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/src/lib.rs", Edition2015) } - 0.467727580s INFO prepare_target{force=false package_id=lazy_static v1.5.0 target="lazy_static"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/lazy_static-5615ca6d930c1db5/lib-lazy_static` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.467834831s INFO prepare_target{force=false package_id=nftables v0.6.3 target="nftables"}: cargo::core::compiler::fingerprint: fingerprint error for nftables v0.6.3/Build/TargetInner { ..: lib_target("nftables", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/src/lib.rs", Edition2021) } - 0.467839829s INFO prepare_target{force=false package_id=nftables v0.6.3 target="nftables"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nftables-b7ec44417831cc4b/lib-nftables` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.468132051s INFO prepare_target{force=false package_id=schemars v1.0.4 target="schemars"}: cargo::core::compiler::fingerprint: fingerprint error for schemars v1.0.4/Build/TargetInner { ..: lib_target("schemars", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/src/lib.rs", Edition2021) } - 0.468139596s INFO prepare_target{force=false package_id=schemars v1.0.4 target="schemars"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/schemars-13a7610553f4cbaa/lib-schemars` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.468371446s INFO prepare_target{force=false package_id=dyn-clone v1.0.20 target="dyn_clone"}: cargo::core::compiler::fingerprint: fingerprint error for dyn-clone v1.0.20/Build/TargetInner { ..: lib_target("dyn_clone", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/src/lib.rs", Edition2018) } - 0.468377721s INFO prepare_target{force=false package_id=dyn-clone v1.0.20 target="dyn_clone"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/dyn-clone-13e98e462e33ddda/lib-dyn_clone` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.468498015s INFO prepare_target{force=false package_id=ref-cast v1.0.24 target="ref_cast"}: cargo::core::compiler::fingerprint: fingerprint error for ref-cast v1.0.24/Build/TargetInner { ..: lib_target("ref_cast", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/src/lib.rs", Edition2021) } - 0.468503742s INFO prepare_target{force=false package_id=ref-cast v1.0.24 target="ref_cast"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ref-cast-9bba8528516e5be4/lib-ref_cast` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.468645661s INFO prepare_target{force=false package_id=serde_path_to_error v0.1.17 target="serde_path_to_error"}: cargo::core::compiler::fingerprint: fingerprint error for serde_path_to_error v0.1.17/Build/TargetInner { ..: lib_target("serde_path_to_error", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/src/lib.rs", Edition2021) } - 0.468651625s INFO prepare_target{force=false package_id=serde_path_to_error v0.1.17 target="serde_path_to_error"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/serde_path_to_error-e4185477a20c1e94/lib-serde_path_to_error` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.468806743s INFO prepare_target{force=false package_id=strum v0.27.2 target="strum"}: cargo::core::compiler::fingerprint: fingerprint error for strum v0.27.2/Build/TargetInner { ..: lib_target("strum", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/src/lib.rs", Edition2021) } - 0.468812651s INFO prepare_target{force=false package_id=strum v0.27.2 target="strum"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/strum-e074aab78e64a0a0/lib-strum` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.468924355s INFO prepare_target{force=false package_id=num_enum v0.7.4 target="num_enum"}: cargo::core::compiler::fingerprint: fingerprint error for num_enum v0.7.4/Build/TargetInner { ..: lib_target("num_enum", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/src/lib.rs", Edition2021) } - 0.468930204s INFO prepare_target{force=false package_id=num_enum v0.7.4 target="num_enum"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/num_enum-e1f2a50baa4db450/lib-num_enum` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.469106958s INFO prepare_target{force=false package_id=rand v0.8.5 target="rand"}: cargo::core::compiler::fingerprint: fingerprint error for rand v0.8.5/Build/TargetInner { name_inferred: true, ..: lib_target("rand", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/src/lib.rs", Edition2018) } - 0.469113093s INFO prepare_target{force=false package_id=rand v0.8.5 target="rand"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand-834da8fad550d160/lib-rand` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.469324199s INFO prepare_target{force=false package_id=rand_chacha v0.3.1 target="rand_chacha"}: cargo::core::compiler::fingerprint: fingerprint error for rand_chacha v0.3.1/Build/TargetInner { name_inferred: true, ..: lib_target("rand_chacha", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/src/lib.rs", Edition2018) } - 0.469330121s INFO prepare_target{force=false package_id=rand_chacha v0.3.1 target="rand_chacha"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rand_chacha-4505c38d2840d32d/lib-rand_chacha` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.469475348s INFO prepare_target{force=false package_id=ppv-lite86 v0.2.21 target="ppv_lite86"}: cargo::core::compiler::fingerprint: fingerprint error for ppv-lite86 v0.2.21/Build/TargetInner { ..: lib_target("ppv_lite86", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/src/lib.rs", Edition2021) } - 0.469481184s INFO prepare_target{force=false package_id=ppv-lite86 v0.2.21 target="ppv_lite86"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/ppv-lite86-b4c3b043649351b9/lib-ppv_lite86` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.469612139s INFO prepare_target{force=false package_id=rtnetlink v0.18.1 target="rtnetlink"}: cargo::core::compiler::fingerprint: fingerprint error for rtnetlink v0.18.1/Build/TargetInner { ..: lib_target("rtnetlink", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/src/lib.rs", Edition2021) } - 0.469617989s INFO prepare_target{force=false package_id=rtnetlink v0.18.1 target="rtnetlink"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/rtnetlink-5fc96fc4a306b94d/lib-rtnetlink` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.469949713s INFO prepare_target{force=false package_id=netlink-packet-core v0.8.0 target="netlink_packet_core"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-packet-core v0.8.0/Build/TargetInner { ..: lib_target("netlink_packet_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/src/lib.rs", Edition2021) } - 0.469957964s INFO prepare_target{force=false package_id=netlink-packet-core v0.8.0 target="netlink_packet_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-packet-core-8c6fec6d52665c88/lib-netlink_packet_core` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.470087329s INFO prepare_target{force=false package_id=netlink-packet-route v0.25.1 target="netlink_packet_route"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-packet-route v0.25.1/Build/TargetInner { ..: lib_target("netlink_packet_route", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/src/lib.rs", Edition2021) } - 0.470093221s INFO prepare_target{force=false package_id=netlink-packet-route v0.25.1 target="netlink_packet_route"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-packet-route-2cbe9d01617fe9b3/lib-netlink_packet_route` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.470270836s INFO prepare_target{force=false package_id=netlink-proto v0.12.0 target="netlink_proto"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-proto v0.12.0/Build/TargetInner { ..: lib_target("netlink_proto", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/src/lib.rs", Edition2021) } - 0.470277342s INFO prepare_target{force=false package_id=netlink-proto v0.12.0 target="netlink_proto"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-proto-2758f7b9417315a9/lib-netlink_proto` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.470561372s INFO prepare_target{force=false package_id=netlink-sys v0.8.7 target="netlink_sys"}: cargo::core::compiler::fingerprint: fingerprint error for netlink-sys v0.8.7/Build/TargetInner { ..: lib_target("netlink_sys", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/src/lib.rs", Edition2018) } - 0.470567652s INFO prepare_target{force=false package_id=netlink-sys v0.8.7 target="netlink_sys"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/netlink-sys-42b3377fb7506a3d/lib-netlink_sys` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: ::compile - 12: cargo::ops::cargo_compile::compile_ws - 13: cargo::ops::cargo_compile::compile_with_exec - 14: cargo::ops::cargo_compile::compile - 15: cargo::commands::check::exec - 16: ::exec - 17: cargo::main - 18: std::sys::backtrace::__rust_begin_short_backtrace:: - 19: std::rt::lang_start::<()>::{closure#0} - 20: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 21: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 22: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 23: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 24: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 29: main - 30: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 31: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 32: - 0.470832956s INFO prepare_target{force=false package_id=tokio v1.47.1 target="tokio"}: cargo::core::compiler::fingerprint: fingerprint error for tokio v1.47.1/Build/TargetInner { ..: lib_target("tokio", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs", Edition2021) } - 0.470839395s INFO prepare_target{force=false package_id=tokio v1.47.1 target="tokio"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tokio-2f87de80df157adb/lib-tokio` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: ::compile - 13: cargo::ops::cargo_compile::compile_ws - 14: cargo::ops::cargo_compile::compile_with_exec - 15: cargo::ops::cargo_compile::compile - 16: cargo::commands::check::exec - 17: ::exec - 18: cargo::main - 19: std::sys::backtrace::__rust_begin_short_backtrace:: - 20: std::rt::lang_start::<()>::{closure#0} - 21: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 22: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 23: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 24: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 25: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 26: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 27: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 28: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 29: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 30: main - 31: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 32: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 33: - 0.471139196s INFO prepare_target{force=false package_id=mio v1.0.4 target="mio"}: cargo::core::compiler::fingerprint: fingerprint error for mio v1.0.4/Build/TargetInner { ..: lib_target("mio", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs", Edition2021) } - 0.471146552s INFO prepare_target{force=false package_id=mio v1.0.4 target="mio"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/mio-3e57c80ed8766fbc/lib-mio` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: cargo::core::compiler::compile - 13: ::compile - 14: cargo::ops::cargo_compile::compile_ws - 15: cargo::ops::cargo_compile::compile_with_exec - 16: cargo::ops::cargo_compile::compile - 17: cargo::commands::check::exec - 18: ::exec - 19: cargo::main - 20: std::sys::backtrace::__rust_begin_short_backtrace:: - 21: std::rt::lang_start::<()>::{closure#0} - 22: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 27: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 28: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 29: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 30: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 31: main - 32: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 33: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 34: - 0.471295654s INFO prepare_target{force=false package_id=parking_lot v0.12.4 target="parking_lot"}: cargo::core::compiler::fingerprint: fingerprint error for parking_lot v0.12.4/Build/TargetInner { ..: lib_target("parking_lot", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/src/lib.rs", Edition2021) } - 0.471302115s INFO prepare_target{force=false package_id=parking_lot v0.12.4 target="parking_lot"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/parking_lot-78b7ead8847a092a/lib-parking_lot` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: cargo::core::compiler::compile - 13: ::compile - 14: cargo::ops::cargo_compile::compile_ws - 15: cargo::ops::cargo_compile::compile_with_exec - 16: cargo::ops::cargo_compile::compile - 17: cargo::commands::check::exec - 18: ::exec - 19: cargo::main - 20: std::sys::backtrace::__rust_begin_short_backtrace:: - 21: std::rt::lang_start::<()>::{closure#0} - 22: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 27: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 28: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 29: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 30: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 31: main - 32: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 33: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 34: - 0.471470101s INFO prepare_target{force=false package_id=lock_api v0.4.13 target="lock_api"}: cargo::core::compiler::fingerprint: fingerprint error for lock_api v0.4.13/Build/TargetInner { ..: lib_target("lock_api", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/src/lib.rs", Edition2021) } - 0.471478512s INFO prepare_target{force=false package_id=lock_api v0.4.13 target="lock_api"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/lock_api-1c76dc73fcb6745a/lib-lock_api` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: cargo::core::compiler::compile - 13: cargo::core::compiler::compile - 14: ::compile - 15: cargo::ops::cargo_compile::compile_ws - 16: cargo::ops::cargo_compile::compile_with_exec - 17: cargo::ops::cargo_compile::compile - 18: cargo::commands::check::exec - 19: ::exec - 20: cargo::main - 21: std::sys::backtrace::__rust_begin_short_backtrace:: - 22: std::rt::lang_start::<()>::{closure#0} - 23: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 28: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 29: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 30: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 31: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 32: main - 33: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 34: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 35: - 0.471654914s INFO prepare_target{force=false package_id=parking_lot_core v0.9.11 target="parking_lot_core"}: cargo::core::compiler::fingerprint: fingerprint error for parking_lot_core v0.9.11/Build/TargetInner { ..: lib_target("parking_lot_core", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/src/lib.rs", Edition2021) } - 0.471661893s INFO prepare_target{force=false package_id=parking_lot_core v0.9.11 target="parking_lot_core"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/parking_lot_core-ad182590320345bf/lib-parking_lot_core` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: cargo::core::compiler::compile - 13: cargo::core::compiler::compile - 14: ::compile - 15: cargo::ops::cargo_compile::compile_ws - 16: cargo::ops::cargo_compile::compile_with_exec - 17: cargo::ops::cargo_compile::compile - 18: cargo::commands::check::exec - 19: ::exec - 20: cargo::main - 21: std::sys::backtrace::__rust_begin_short_backtrace:: - 22: std::rt::lang_start::<()>::{closure#0} - 23: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 28: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 29: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 30: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 31: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 32: main - 33: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 34: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 35: - 0.471841027s INFO prepare_target{force=false package_id=smallvec v1.15.1 target="smallvec"}: cargo::core::compiler::fingerprint: fingerprint error for smallvec v1.15.1/Build/TargetInner { ..: lib_target("smallvec", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs", Edition2018) } - 0.471847152s INFO prepare_target{force=false package_id=smallvec v1.15.1 target="smallvec"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/smallvec-7413d0362208641c/lib-smallvec` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: cargo::core::compiler::compile - 13: cargo::core::compiler::compile - 14: cargo::core::compiler::compile - 15: ::compile - 16: cargo::ops::cargo_compile::compile_ws - 17: cargo::ops::cargo_compile::compile_with_exec - 18: cargo::ops::cargo_compile::compile - 19: cargo::commands::check::exec - 20: ::exec - 21: cargo::main - 22: std::sys::backtrace::__rust_begin_short_backtrace:: - 23: std::rt::lang_start::<()>::{closure#0} - 24: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 25: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 26: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 27: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 28: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 29: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 30: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 31: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 32: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 33: main - 34: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 35: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 36: - 0.471973154s INFO prepare_target{force=false package_id=signal-hook-registry v1.4.5 target="signal_hook_registry"}: cargo::core::compiler::fingerprint: fingerprint error for signal-hook-registry v1.4.5/Build/TargetInner { ..: lib_target("signal_hook_registry", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/src/lib.rs", Edition2015) } - 0.471979697s INFO prepare_target{force=false package_id=signal-hook-registry v1.4.5 target="signal_hook_registry"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/signal-hook-registry-48e1e76cdab3c22a/lib-signal_hook_registry` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: cargo::core::compiler::compile - 13: ::compile - 14: cargo::ops::cargo_compile::compile_ws - 15: cargo::ops::cargo_compile::compile_with_exec - 16: cargo::ops::cargo_compile::compile - 17: cargo::commands::check::exec - 18: ::exec - 19: cargo::main - 20: std::sys::backtrace::__rust_begin_short_backtrace:: - 21: std::rt::lang_start::<()>::{closure#0} - 22: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 27: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 28: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 29: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 30: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 31: main - 32: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 33: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 34: - 0.472138511s INFO prepare_target{force=false package_id=socket2 v0.6.0 target="socket2"}: cargo::core::compiler::fingerprint: fingerprint error for socket2 v0.6.0/Build/TargetInner { ..: lib_target("socket2", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/src/lib.rs", Edition2021) } - 0.472145010s INFO prepare_target{force=false package_id=socket2 v0.6.0 target="socket2"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/socket2-ef278a5fbe4bc230/lib-socket2` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: cargo::core::compiler::compile - 11: cargo::core::compiler::compile - 12: cargo::core::compiler::compile - 13: ::compile - 14: cargo::ops::cargo_compile::compile_ws - 15: cargo::ops::cargo_compile::compile_with_exec - 16: cargo::ops::cargo_compile::compile - 17: cargo::commands::check::exec - 18: ::exec - 19: cargo::main - 20: std::sys::backtrace::__rust_begin_short_backtrace:: - 21: std::rt::lang_start::<()>::{closure#0} - 22: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 27: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 28: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 29: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 30: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 31: main - 32: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 33: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 34: - 0.472287534s INFO prepare_target{force=false package_id=nix v0.29.0 target="nix"}: cargo::core::compiler::fingerprint: fingerprint error for nix v0.29.0/Build/TargetInner { name_inferred: true, ..: lib_target("nix", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/src/lib.rs", Edition2021) } - 0.472293327s INFO prepare_target{force=false package_id=nix v0.29.0 target="nix"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nix-cdc5c81108a4ef9e/lib-nix` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.472451303s INFO prepare_target{force=false package_id=thiserror v1.0.69 target="thiserror"}: cargo::core::compiler::fingerprint: fingerprint error for thiserror v1.0.69/Build/TargetInner { ..: lib_target("thiserror", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs", Edition2021) } - 0.472456796s INFO prepare_target{force=false package_id=thiserror v1.0.69 target="thiserror"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/thiserror-a49511936eec8a80/lib-thiserror` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.472590793s INFO prepare_target{force=false package_id=simple-error v0.3.2 target="simple_error"}: cargo::core::compiler::fingerprint: fingerprint error for simple-error v0.3.2/Build/TargetInner { ..: lib_target("simple_error", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/src/lib.rs", Edition2021) } - 0.472598666s INFO prepare_target{force=false package_id=simple-error v0.3.2 target="simple_error"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/simple-error-2146489c68bf9c62/lib-simple_error` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.472702134s INFO prepare_target{force=false package_id=tun v0.8.4 target="tun"}: cargo::core::compiler::fingerprint: fingerprint error for tun v0.8.4/Build/TargetInner { ..: lib_target("tun", ["staticlib", "lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/src/lib.rs", Edition2024) } - 0.472708455s INFO prepare_target{force=false package_id=tun v0.8.4 target="tun"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tun-57e7b4f3f4423bb2/lib-tun` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.473034379s INFO prepare_target{force=false package_id=nix v0.30.1 target="nix"}: cargo::core::compiler::fingerprint: fingerprint error for nix v0.30.1/Build/TargetInner { ..: lib_target("nix", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/src/lib.rs", Edition2021) } - 0.473045587s INFO prepare_target{force=false package_id=nix v0.30.1 target="nix"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/nix-91d3948c53e28b47/lib-nix` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.473240527s INFO prepare_target{force=false package_id=tokio-util v0.7.15 target="tokio_util"}: cargo::core::compiler::fingerprint: fingerprint error for tokio-util v0.7.15/Build/TargetInner { ..: lib_target("tokio_util", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs", Edition2021) } - 0.473246836s INFO prepare_target{force=false package_id=tokio-util v0.7.15 target="tokio_util"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/tokio-util-5394599c2ee903bf/lib-tokio_util` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.473486218s INFO prepare_target{force=false package_id=x25519-dalek v2.0.1 target="x25519_dalek"}: cargo::core::compiler::fingerprint: fingerprint error for x25519-dalek v2.0.1/Build/TargetInner { name_inferred: true, ..: lib_target("x25519_dalek", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/src/lib.rs", Edition2021) } - 0.473492615s INFO prepare_target{force=false package_id=x25519-dalek v2.0.1 target="x25519_dalek"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/x25519-dalek-9fdecec6bad8ad1c/lib-x25519_dalek` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: ::compile - 10: cargo::ops::cargo_compile::compile_ws - 11: cargo::ops::cargo_compile::compile_with_exec - 12: cargo::ops::cargo_compile::compile - 13: cargo::commands::check::exec - 14: ::exec - 15: cargo::main - 16: std::sys::backtrace::__rust_begin_short_backtrace:: - 17: std::rt::lang_start::<()>::{closure#0} - 18: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 23: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 24: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 25: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 26: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 27: main - 28: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 29: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 30: - 0.473690238s INFO prepare_target{force=false package_id=curve25519-dalek v4.1.3 target="curve25519_dalek"}: cargo::core::compiler::fingerprint: fingerprint error for curve25519-dalek v4.1.3/Build/TargetInner { name_inferred: true, ..: lib_target("curve25519_dalek", ["lib"], "/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/src/lib.rs", Edition2021) } - 0.473699440s INFO prepare_target{force=false package_id=curve25519-dalek v4.1.3 target="curve25519_dalek"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/curve25519-dalek-9bab319156944633/lib-curve25519_dalek` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: cargo::core::compiler::compile - 6: cargo::core::compiler::compile - 7: cargo::core::compiler::compile - 8: cargo::core::compiler::compile - 9: cargo::core::compiler::compile - 10: ::compile - 11: cargo::ops::cargo_compile::compile_ws - 12: cargo::ops::cargo_compile::compile_with_exec - 13: cargo::ops::cargo_compile::compile - 14: cargo::commands::check::exec - 15: ::exec - 16: cargo::main - 17: std::sys::backtrace::__rust_begin_short_backtrace:: - 18: std::rt::lang_start::<()>::{closure#0} - 19: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 20: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 21: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 22: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 23: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 24: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 25: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 26: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 27: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 28: main - 29: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 30: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 31: - 0.473968654s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="seaside"}: cargo::core::compiler::fingerprint: fingerprint error for reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library)/Check { test: true }/TargetInner { ..: lib_target("seaside", ["cdylib"], "/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/lib/mod.rs", Edition2021) } - 0.473979001s INFO prepare_target{force=false package_id=reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) target="seaside"}: cargo::core::compiler::fingerprint: err: failed to read `/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/.fingerprint/reefshared-70efaba1cf3c0a43/test-lib-seaside` - -Caused by: - No such file or directory (os error 2) - -Stack backtrace: - 0: cargo_util::paths::read_bytes - 1: cargo_util::paths::read - 2: cargo::core::compiler::fingerprint::_compare_old_fingerprint - 3: cargo::core::compiler::fingerprint::prepare_target - 4: cargo::core::compiler::compile - 5: ::compile - 6: cargo::ops::cargo_compile::compile_ws - 7: cargo::ops::cargo_compile::compile_with_exec - 8: cargo::ops::cargo_compile::compile - 9: cargo::commands::check::exec - 10: ::exec - 11: cargo::main - 12: std::sys::backtrace::__rust_begin_short_backtrace:: - 13: std::rt::lang_start::<()>::{closure#0} - 14: core::ops::function::impls:: for &F>::call_once - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/core/src/ops/function.rs:284:21 - 15: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 16: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 17: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 18: std::rt::lang_start_internal::{{closure}} - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:175:24 - 19: std::panicking::catch_unwind::do_call - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:589:40 - 20: std::panicking::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panicking.rs:552:19 - 21: std::panic::catch_unwind - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/panic.rs:359:14 - 22: std::rt::lang_start_internal - at /rustc/29483883eed69d5fb4db01964cdf2af4d86e9cb2/library/std/src/rt.rs:171:5 - 23: main - 24: __libc_start_call_main - at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 - 25: __libc_start_main_impl - at ./csu/../csu/libc-start.c:360:3 - 26: - Compiling memchr v2.7.5 - Compiling libc v0.2.174 - Compiling bytes v1.10.1 - Compiling indexmap v2.12.0 - Checking generic-array v0.14.7 - Compiling serde_core v1.0.228 - Compiling regex-syntax v0.8.5 - Compiling smallvec v1.15.1 - Checking subtle v2.6.1 - Checking log v0.4.28 - Compiling lock_api v0.4.13 - Checking futures-channel v0.3.31 - Checking pin-utils v0.1.0 - Checking slab v0.4.10 - Checking futures-task v0.3.31 - Compiling aho-corasick v1.1.3 - Compiling prost v0.14.1 - Checking futures-io v0.3.31 - Compiling toml_edit v0.22.27 - Compiling petgraph v0.7.1 - Checking futures-util v0.3.31 - Checking thiserror v2.0.16 - Checking zeroize v1.8.1 - Checking zerocopy v0.8.26 - Compiling prost-types v0.14.1 - Checking getrandom v0.2.16 - Compiling getrandom v0.3.3 - Checking rand_core v0.6.4 - Compiling tempfile v3.20.0 - Checking crypto-common v0.1.6 - Compiling regex-automata v0.4.11 - Checking parking_lot_core v0.9.11 - Checking parking_lot v0.12.4 - Checking socket2 v0.6.0 - Checking mio v1.0.4 - Checking signal-hook-registry v1.4.5 - Compiling proc-macro-crate v3.3.0 - Checking bitflags v2.9.1 - Checking tokio v1.47.1 - Checking cpufeatures v0.2.17 - Checking serde v1.0.228 - Checking itoa v1.0.15 - Checking inout v0.1.4 - Checking netlink-packet-core v0.8.0 - Checking ryu v1.0.20 - Checking futures-executor v0.3.31 - Checking serde_json v1.0.143 - Checking futures v0.3.31 - Checking cipher v0.4.4 - Checking ppv-lite86 v0.2.21 - Checking universal-hash v0.5.1 - Checking block-buffer v0.10.4 - Checking ref-cast v1.0.24 - Checking foldhash v0.1.5 - Compiling num_enum_derive v0.7.4 - Checking simple-error v0.3.2 - Checking equivalent v1.0.2 - Checking dyn-clone v1.0.20 - Checking once_cell v1.21.3 - Checking opaque-debug v0.3.1 - Checking allocator-api2 v0.2.21 - Checking poly1305 v0.8.0 - Checking schemars v1.0.4 - Checking ahash v0.8.12 - Checking rand_chacha v0.3.1 - Compiling regex v1.11.3 - Checking hashbrown v0.15.4 - Checking digest v0.10.7 - Compiling prost-build v0.14.1 - Checking chacha20 v0.9.1 - Checking netlink-packet-route v0.25.1 - Checking serde_path_to_error v0.1.17 - Checking curve25519-dalek v4.1.3 - Checking nix v0.29.0 - Checking nix v0.30.1 - Checking aead v0.5.2 - Checking thiserror v1.0.69 - Checking unty v0.0.4 - Checking cached_proc_macro_types v0.1.1 - Checking lazy_static v1.5.0 - Checking web-time v1.1.0 - Checking strum v0.27.2 - Checking nftables v0.6.3 - Checking cached v0.56.0 - Checking x25519-dalek v2.0.1 - Checking bincode v2.0.1 - Compiling reef-common v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library) - Checking chacha20poly1305 v0.10.1 - Checking num_enum v0.7.4 - Checking blake2 v0.10.6 - Checking rand v0.8.5 - Compiling serde_spanned v1.0.3 - Checking netlink-sys v0.8.7 - Checking tokio-util v0.7.15 - Compiling toml_datetime v0.7.3 - Checking netlink-proto v0.12.0 - Checking tun v0.8.4 - Checking ipnet v2.11.0 - Compiling toml v0.9.8 - Checking utf8parse v0.2.2 - Checking unicode-width v0.1.14 - Checking textwrap v0.11.0 - Compiling cbindgen v0.29.2 - Checking anstyle-parse v0.2.7 - Checking rtnetlink v0.18.1 - Checking atty v0.2.14 - Checking ansi_term v0.12.1 - Checking anstyle v1.0.11 - Checking strsim v0.8.0 - Checking bitflags v1.3.2 - Checking colorchoice v1.0.4 - Checking is_terminal_polyfill v1.70.1 - Checking anstyle-query v1.1.3 - Checking vec_map v0.8.2 - Checking env_filter v0.1.3 - Checking anstream v0.6.19 - Checking jiff v0.2.15 - Checking clap v2.34.0 - Checking reef-test v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library) - Checking structopt v0.3.26 - Checking env_logger v0.11.8 - Checking reef-standalone v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable) - Compiling reefshared v0.0.4 (/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library) - Finished `dev` profile [unoptimized + debuginfo] target(s) in 47.81s diff --git a/target/rust-analyzer/flycheck0/stdout b/target/rust-analyzer/flycheck0/stdout deleted file mode 100644 index 4c615bc1..00000000 --- a/target/rust-analyzer/flycheck0/stdout +++ /dev/null @@ -1,357 +0,0 @@ -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro2-d3153bc1f4d4d498/build-script-build"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","linked_libs":[],"linked_paths":[],"cfgs":["wrap_proc_macro"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro2-4fa9aa8144730a46/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.18","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-ident-1.0.18/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_ident","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-ident-1.0.18/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_ident-5762da66a5bfba8e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_ident-5762da66a5bfba8e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.174","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","extra_traits","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/libc-e904436085fb928c/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#version_check@0.9.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/version_check-0.9.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"version_check","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/version_check-0.9.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libversion_check-0f6ab564ae9887d4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libversion_check-0f6ab564ae9887d4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_if","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_if-c647463405038957.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_if-c647463405038957.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/typenum-b043d4d6ec89ac6f/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_if","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_if-38b89ea812352f6a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#autocfg@1.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/autocfg-1.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"autocfg","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/autocfg-1.5.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libautocfg-8894a47441bd56dd.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libautocfg-8894a47441bd56dd.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/parking_lot_core-cca8ffbff3c1f487/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde_core-11ed6a2353202a69/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/zerocopy-7cfece5b3521d7e5/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro2-9cce46f007fbdf6a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro2-9cce46f007fbdf6a.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.174","linked_libs":[],"linked_paths":[],"cfgs":["freebsd11","libc_const_extern_fn"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/libc-fadbf4ebc1741eef/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/typenum-ecb45726e3f0c886/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#generic-array@0.14.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/build.rs","edition":"2015","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["more_lengths"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/generic-array-5f7839f96dc999ca/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.13","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["atomic_usize","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/lock_api-851e5d86f6a9fe54/build-script-build"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde_core-61e75211089263c9/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.11","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/parking_lot_core-87f3f40d22afe144/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/thiserror-79220b1d4eb007c7/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"equivalent","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libequivalent-f4aa64648d3a68e2.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libequivalent-f4aa64648d3a68e2.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memchr","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmemchr-fdf0e1a8ab86a2b8.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.26","linked_libs":[],"linked_paths":[],"cfgs":["zerocopy_aarch64_simd_1_59_0","zerocopy_core_error_1_81_0","zerocopy_diagnostic_on_unimplemented_1_78_0","zerocopy_generic_bounds_in_const_fn_1_61_0","zerocopy_panic_in_const_and_vec_try_reserve_1_57_0","zerocopy_target_has_atomics_1_60_0"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/zerocopy-18c1d2e3c72d615d/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.40","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.40/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"quote","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.40/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libquote-21b5ce19d67421fe.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libquote-21b5ce19d67421fe.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#generic-array@0.14.7","linked_libs":[],"linked_paths":[],"cfgs":["relaxed_coherence"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/generic-array-3b49cc4a9f0fe6fc/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.13","linked_libs":[],"linked_paths":[],"cfgs":["has_const_fn_trait_bound"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/lock_api-c5876e0216087c04/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.16","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/thiserror-f7982c296d010d3b/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","derive","serde_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde-dbfd827f955688ab/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg_aliases@0.2.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg_aliases-0.2.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_aliases","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg_aliases-0.2.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_aliases-88ae697f10203bf0.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcfg_aliases-88ae697f10203bf0.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.16.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.16.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.16.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-062a84e9e6cf7c93.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-062a84e9e6cf7c93.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@2.9.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbitflags-8055cbab5695b447.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbitflags-8055cbab5695b447.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@2.0.104","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.104/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"syn","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.104/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","extra-traits","fold","full","parsing","printing","proc-macro","visit"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsyn-abf2eb810a7a9395.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsyn-abf2eb810a7a9395.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","linked_libs":[],"linked_paths":[],"cfgs":["if_docsrs_then_no_serde_core"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde-e76c9b73f1dfa5f3/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"typenum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtypenum-03aaf5802a1b068d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#semver@1.0.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/semver-1.0.26/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/semver-1.0.26/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/semver-6f9c34e09d05f00b/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.100","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/anyhow-4f4c842113b6e891/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strsim@0.11.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.11.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strsim","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.11.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrsim-b5071d94becd24a2.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrsim-b5071d94becd24a2.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#log@0.4.28","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"log","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblog-8fab9b2d1bdd2b53.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblog-8fab9b2d1bdd2b53.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-macro@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-macro-0.3.31/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"futures_macro","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-macro-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_macro-9384b465fbc546eb.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeroize_derive@1.4.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize_derive-1.4.2/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"zeroize_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize_derive-1.4.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzeroize_derive-1975f543a43069f3.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-macros@2.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-macros-2.5.0/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"tokio_macros","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-macros-2.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio_macros-c7e3a877bb419273.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror-impl@2.0.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-2.0.16/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"thiserror_impl","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-2.0.16/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror_impl-f37f41b94f54c19b.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_derive@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive-1.0.228/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"serde_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_derive-bd05f7ec62fe2ff2.so"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#semver@1.0.26","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/semver-0a9f0e6c8c5c0e73/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.100","linked_libs":[],"linked_paths":[],"cfgs":["std_backtrace"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/anyhow-dac8568c78d8711c/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"typenum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtypenum-c824e30e66943775.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtypenum-c824e30e66943775.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#either@1.15.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/either-1.15.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"either","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/either-1.15.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std","use_std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libeither-c8d396d337920be5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libeither-c8d396d337920be5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#winnow@0.7.13","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winnow-0.7.13/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"winnow","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winnow-0.7.13/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libwinnow-bb2220e9b878b549.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libwinnow-bb2220e9b878b549.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.143","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde_json-36f2efaf958d971c/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pastey@0.1.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pastey-0.1.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"pastey","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pastey-0.1.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpastey-6ca4cbef12e14d65.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.100","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anyhow","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.100/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanyhow-3f567128a552b244.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanyhow-3f567128a552b244.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itertools@0.14.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.14.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itertools","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.14.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","use_alloc","use_std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitertools-d5c4e00e146b744d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitertools-d5c4e00e146b744d.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.143","linked_libs":[],"linked_paths":[],"cfgs":["fast_arithmetic=\"64\""],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/serde_json-44515d519c78d038/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#semver@1.0.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/semver-1.0.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"semver","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/semver-1.0.26/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsemver-235460c8b86f2ea5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsemver-235460c8b86f2ea5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","fs","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/rustix-0c84c037221e4a92/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast@1.0.24","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/ref-cast-3210cc5e2a6cc055/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/getrandom-9d78653e15ca8ed8/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#heck@0.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"heck","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libheck-368295e68f50b2c3.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libheck-368295e68f50b2c3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"once_cell","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","race","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libonce_cell-88cad944dacc265a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libonce_cell-88cad944dacc265a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost-derive@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-derive-0.14.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"prost_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-derive-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_derive-4c69ec72b01a7c79.so"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast@1.0.24","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/ref-cast-cb05b0c8109bc4cd/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/getrandom-5b7ab04e62df5a17/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustc_version@0.4.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc_version-0.4.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustc_version","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc_version-0.4.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustc_version-f75e1db321a7cdfd.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustc_version-f75e1db321a7cdfd.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","linked_libs":[],"linked_paths":[],"cfgs":["static_assertions","linux_raw","linux_like","linux_kernel"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/rustix-117e6b4a08a95b73/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast-impl@1.0.24","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-impl-1.0.24/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"ref_cast_impl","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-impl-1.0.24/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libref_cast_impl-79d9b774762715a1.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-sink@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_sink","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_sink-c8f89f3b67216fdc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ident_case@1.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ident_case-1.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ident_case","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ident_case-1.0.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libident_case-2dc10d9b37d5f124.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libident_case-2dc10d9b37d5f124.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-core@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_core-de644a21dfcc1a5c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project-lite@0.2.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_project_lite","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_project_lite-5d9e80b75b3eef3f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#linux-raw-sys@0.9.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/linux-raw-sys-0.9.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"linux_raw_sys","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/linux-raw-sys-0.9.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["elf","errno","general","ioctl","no_std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblinux_raw_sys-10de75399a76519c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblinux_raw_sys-10de75399a76519c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fnv@1.0.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fnv-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fnv","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fnv-1.0.7/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfnv-92dd6573194b1649.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfnv-92dd6573194b1649.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","fs","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustix-7b09ad42b3ff5eb4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustix-7b09ad42b3ff5eb4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek@4.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","precomputed-tables","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/curve25519-dalek-37366f93a32ee789/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_derive_internals@0.29.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive_internals-0.29.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_derive_internals","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive_internals-0.29.1/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_derive_internals-419d0b0b74213ccc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_derive_internals-419d0b0b74213ccc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.29.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["fs","mount","process","sched","signal","uio"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/nix-dc9c01744205b2dc/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#darling_core@0.20.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling_core-0.20.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"darling_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling_core-0.20.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["strsim","suggestions"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling_core-1a9605d0c43f64f7.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling_core-1a9605d0c43f64f7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.30.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","ioctl"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/nix-ff737e4e0b83fa29/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ahash@0.8.12","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/ahash-492bfe065ce73a05/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_datetime@0.6.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.6.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_datetime","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.6.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_datetime-7b8b55ae2dd20e27.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_datetime-7b8b55ae2dd20e27.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fastrand@2.3.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fastrand-2.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fastrand","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fastrand-2.3.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfastrand-3ceb7b7fa26ada13.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfastrand-3ceb7b7fa26ada13.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/thiserror-6cadb049729033d9/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smallvec@1.15.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smallvec","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsmallvec-9f2d2606d976b516.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project-lite@0.2.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_project_lite","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_project_lite-e4c573189f4d52e5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_project_lite-e4c573189f4d52e5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.36","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.36/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.36/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/prettyplease-caef323d3235f442/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#scopeguard@1.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scopeguard-1.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"scopeguard","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scopeguard-1.2.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libscopeguard-9248233da26925a3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-sink@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_sink","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_sink-f85fd7a132d67190.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_sink-f85fd7a132d67190.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-core@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_core-3badc0fa3312283b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_core-3badc0fa3312283b.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.36","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/prettyplease-a39df894723b7cc5/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.13","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lock_api","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["atomic_usize","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblock_api-79a07689fae3c8c4.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/thiserror-b336d6e8da9bee76/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#darling_macro@0.20.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling_macro-0.20.11/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"darling_macro","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling_macro-0.20.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling_macro-08c9a72680004a53.so"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#ahash@0.8.12","linked_libs":[],"linked_paths":[],"cfgs":["folded_multiply"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/ahash-095506401e0ab86b/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.30.1","linked_libs":[],"linked_paths":[],"cfgs":["linux","linux_android"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/nix-3919aabc8693ff23/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#schemars_derive@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars_derive-1.0.4/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"schemars_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars_derive-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libschemars_derive-d7c09f0b2f30438e.so"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek@4.1.3","linked_libs":[],"linked_paths":[],"cfgs":["curve25519_dalek_bits=\"64\"","curve25519_dalek_backend=\"simd\""],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/curve25519-dalek-4d75d2d65e477228/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.29.0","linked_libs":[],"linked_paths":[],"cfgs":["linux","linux_android"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/nix-edd9dae4598396ce/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek-derive@0.1.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-derive-0.1.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"curve25519_dalek_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-derive-0.1.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcurve25519_dalek_derive-83218d7d0a260b05.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror-impl@1.0.69","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-1.0.69/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"thiserror_impl","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-1.0.69/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror_impl-569283bcd07e9987.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#subtle@2.6.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"subtle","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsubtle-8c24189f00ebf9a9.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#scopeguard@1.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scopeguard-1.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"scopeguard","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/scopeguard-1.2.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libscopeguard-88630dd0b0352bf1.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libscopeguard-88630dd0b0352bf1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#log@0.4.28","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"log","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.28/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblog-b1b44ca0b8607405.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustversion@1.0.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustversion-1.0.21/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustversion-1.0.21/build/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/rustversion-3126fceb71ff03b9/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fixedbitset@0.5.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fixedbitset-0.5.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fixedbitset","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fixedbitset-0.5.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfixedbitset-0458ac0019c5b591.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfixedbitset-0458ac0019c5b591.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustversion@1.0.21","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/rustversion-30aa5947587f1a0a/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smallvec@1.15.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smallvec","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsmallvec-7413d0362208641c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsmallvec-7413d0362208641c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#darling@0.20.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling-0.20.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"darling","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/darling-0.20.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","suggestions"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling-19c90d835c8c4658.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdarling-19c90d835c8c4658.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.36","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.36/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prettyplease","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.36/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprettyplease-b2415031c6620a52.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprettyplease-b2415031c6620a52.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lock_api@0.4.13","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lock_api","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lock_api-0.4.13/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["atomic_usize","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblock_api-1c76dc73fcb6745a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblock_api-1c76dc73fcb6745a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#multimap@0.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/multimap-0.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"multimap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/multimap-0.10.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmultimap-6910a60d0d67170b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmultimap-6910a60d0d67170b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-channel@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_channel","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","futures-sink","sink","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_channel-96abd665e28a5745.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-ppcle_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-ppcle_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_ppcle_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-ppcle_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_ppcle_64-e68f5868ded8c504.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_ppcle_64-e68f5868ded8c504.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-macos-aarch_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-macos-aarch_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_macos_aarch_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-macos-aarch_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_macos_aarch_64-8851f7b763053457.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_macos_aarch_64-8851f7b763053457.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-utils@0.1.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_utils","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_utils-419b4dfb91fea471.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-x86_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-x86_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_x86_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-x86_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_x86_64-5e92e64bafb9df52.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_x86_64-5e92e64bafb9df52.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-x86_32@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-x86_32-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_x86_32","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-x86_32-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_x86_32-a7c202d8ede2c7c4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_x86_32-a7c202d8ede2c7c4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#generic-array@0.14.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"generic_array","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["more_lengths"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgeneric_array-c6013b63fa532f39.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-macos-x86_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-macos-x86_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_macos_x86_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-macos-x86_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_macos_x86_64-7801335f2e0f9d18.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_macos_x86_64-7801335f2e0f9d18.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-s390_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-s390_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_s390_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-s390_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_s390_64-1ae120818345306d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_s390_64-1ae120818345306d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#virtue@0.0.18","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/virtue-0.0.18/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"virtue","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/virtue-0.0.18/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libvirtue-6578584bc6671872.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libvirtue-6578584bc6671872.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-win32@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-win32-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_win32","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-win32-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_win32-9c4c1fd791266bf7.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_win32-9c4c1fd791266bf7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.10","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slab","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libslab-06b21a35c2c242c5.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-task@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_task","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_task-de234338db6d77e0.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#subtle@2.6.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"subtle","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsubtle-c2125d2c0ec00cea.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsubtle-c2125d2c0ec00cea.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored-linux-aarch_64@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-aarch_64-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored_linux_aarch_64","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-linux-aarch_64-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_aarch_64-8a3a5926648e460d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored_linux_aarch_64-8a3a5926648e460d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#generic-array@0.14.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"generic_array","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/generic-array-0.14.7/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["more_lengths"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgeneric_array-c6bfe15667f162ad.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgeneric_array-c6bfe15667f162ad.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#protoc-bin-vendored@3.2.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-3.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"protoc_bin_vendored","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/protoc-bin-vendored-3.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored-3e7529368a273e34.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprotoc_bin_vendored-3e7529368a273e34.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bincode_derive@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode_derive-2.0.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"bincode_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode_derive-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbincode_derive-387c0f5a3ab70b0f.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached_proc_macro@0.25.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro-0.25.0/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"cached_proc_macro","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro-0.25.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached_proc_macro-89703f301878f64f.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustversion@1.0.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustversion-1.0.21/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"rustversion","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustversion-1.0.21/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librustversion-e3d2dd1048045247.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-io@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_io","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_io-e3b15e990b506d86.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#indexmap@2.12.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"indexmap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.12.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libindexmap-5b1fb49443fbeb16.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libindexmap-5b1fb49443fbeb16.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytes@1.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytes","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbytes-e3cb6e9c42ffc25b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbytes-e3cb6e9c42ffc25b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytes@1.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytes","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbytes-b94b70994929e7fa.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strum_macros@0.27.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum_macros-0.27.2/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"strum_macros","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum_macros-0.27.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrum_macros-04391b311aca06b7.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memchr","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmemchr-6709e545d5a75bbd.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmemchr-6709e545d5a75bbd.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-de5002768cda0ab4.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-channel@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_channel","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","futures-sink","sink","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_channel-eefa8b533f2b367f.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_channel-eefa8b533f2b367f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeroize@1.8.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zeroize","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","zeroize_derive"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzeroize-48d0b7b0df8599a0.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prost","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost-063961c2f74ccd33.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost-063961c2f74ccd33.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.174","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libc","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","extra_traits","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblibc-c7810272c07fcfac.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.174","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libc","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.174/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","extra_traits","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblibc-12803c979228cc4e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblibc-12803c979228cc4e.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aho_corasick","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["perf-literal","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaho_corasick-0c64cc041cfd849f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.2.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-ec916316e169bc33.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.2.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-6a8e0db638d8ae7c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-6a8e0db638d8ae7c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-afffc94b15b4a1d6.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libgetrandom-afffc94b15b4a1d6.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand_core@0.6.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","getrandom","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_core-8d89bdb5175672ac.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crypto-common@0.1.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"crypto_common","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["getrandom","rand_core","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcrypto_common-c3de8cd3053d8b64.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand_core@0.6.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_core-0.6.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","getrandom","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_core-c8915665fd1b5932.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_core-c8915665fd1b5932.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crypto-common@0.1.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"crypto_common","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crypto-common-0.1.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["getrandom","rand_core","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcrypto_common-478bb928817992c3.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcrypto_common-478bb928817992c3.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot_core-985fa2653a7074e6.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tempfile@3.20.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tempfile-3.20.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tempfile","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tempfile-3.20.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","getrandom"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtempfile-e911e9968f615ae7.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtempfile-e911e9968f615ae7.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#petgraph@0.7.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/petgraph-0.7.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"petgraph","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/petgraph-0.7.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpetgraph-6108b0ce5725b5ab.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpetgraph-6108b0ce5725b5ab.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot@0.12.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot-3cfefb0391980ece.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost-types@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-types-0.14.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prost_types","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-types-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_types-3b731a45ba3a0f01.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_types-3b731a45ba3a0f01.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_core-2cdbf80b25b87d16.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_core-2cdbf80b25b87d16.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerocopy","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzerocopy-cec54beb6f6b980a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot_core@0.9.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot_core-0.9.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot_core-ad182590320345bf.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot_core-ad182590320345bf.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#signal-hook-registry@1.4.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"signal_hook_registry","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsignal_hook_registry-e60a7645222b7ea1.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#socket2@0.6.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"socket2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["all"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsocket2-b4977119b4c628e3.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#signal-hook-registry@1.4.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"signal_hook_registry","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/signal-hook-registry-1.4.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsignal_hook_registry-48e1e76cdab3c22a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsignal_hook_registry-48e1e76cdab3c22a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aho_corasick","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["perf-literal","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaho_corasick-fcf8b756b0993101.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaho_corasick-fcf8b756b0993101.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#mio@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"mio","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["net","os-ext","os-poll"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmio-2a0e0111e65cfbfc.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_syntax","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_syntax-5815ed1846ecdf1c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_syntax-5815ed1846ecdf1c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_core-433d322c7f81f4fc.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-io@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_io","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_io-d4c3ffe564a5a929.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_io-d4c3ffe564a5a929.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@2.9.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbitflags-3997a28a4245f30d.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cpufeatures@0.2.17","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cpufeatures","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcpufeatures-45c28af12c96235b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-utils@0.1.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_utils","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_utils-9218feb6935d4415.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpin_utils-9218feb6935d4415.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#mio@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"mio","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["net","os-ext","os-poll"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmio-3e57c80ed8766fbc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libmio-3e57c80ed8766fbc.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#parking_lot@0.12.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"parking_lot","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/parking_lot-0.12.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot-78b7ead8847a092a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libparking_lot-78b7ead8847a092a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-task@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_task","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_task-5bed7a89f14e5718.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_task-5bed7a89f14e5718.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@2.0.16","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-2.0.16/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-b9dd68c67000877d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-b9dd68c67000877d.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.10","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slab","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.10/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libslab-97f08ff868a393bc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libslab-97f08ff868a393bc.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-crate@3.3.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-crate-3.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro_crate","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-crate-3.3.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_crate-dc5a4ab583a5c64e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_crate-dc5a4ab583a5c64e.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeroize@1.8.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zeroize","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","zeroize_derive"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzeroize-d9a47f3b81707dc8.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzeroize-d9a47f3b81707dc8.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#socket2@0.6.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"socket2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.6.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["all"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsocket2-ef278a5fbe4bc230.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsocket2-ef278a5fbe4bc230.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cpufeatures@0.2.17","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cpufeatures","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cpufeatures-0.2.17/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcpufeatures-f5116670c7931c01.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcpufeatures-f5116670c7931c01.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itoa","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitoa-7a0919d71cb7f92c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itoa","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitoa-d5048592e7308c8e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libitoa-d5048592e7308c8e.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#inout@0.1.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"inout","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libinout-1acf64b9352ccb88.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-util@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_util","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","async-await-macro","channel","futures-channel","futures-io","futures-macro","futures-sink","io","memchr","sink","slab","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_util-ffd04c7de8db851f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","derive","serde_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde-aeff35667dd51f7a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#utf8parse@0.2.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"utf8parse","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libutf8parse-cdcb8f2bf5c2ce23.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libutf8parse-cdcb8f2bf5c2ce23.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ryu@1.0.20","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ryu","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libryu-9d8193471ee70b21.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-executor@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_executor","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_executor-c393b6eb19dc9217.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ryu@1.0.20","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ryu","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libryu-857778c47b40d947.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libryu-857778c47b40d947.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-packet-core@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_packet_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_core-e33c550d39f7979a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-parse@0.2.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_parse","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","utf8"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_parse-f7d601d18b64d8bc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_parse-f7d601d18b64d8bc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","default","executor","futures-executor","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures-f7ba99dab821e3ba.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.228","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.228/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","derive","serde_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde-ef13ad9c0addc358.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde-ef13ad9c0addc358.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#universal-hash@0.5.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"universal_hash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libuniversal_hash-27be24bf1711139f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cipher@0.4.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cipher","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcipher-fdf453fde210cb68.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#inout@0.1.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"inout","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/inout-0.1.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libinout-6c673083b33cc137.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libinout-6c673083b33cc137.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#block-buffer@0.10.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"block_buffer","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblock_buffer-ad2318787366fd12.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast@1.0.24","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ref_cast","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libref_cast-ab18a8289a63813f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#is_terminal_polyfill@1.70.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"is_terminal_polyfill","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libis_terminal_polyfill-15aa42c576b0e781.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libis_terminal_polyfill-15aa42c576b0e781.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_edit@0.22.27","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_edit-0.22.27/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_edit","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_edit-0.22.27/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["parse"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_edit-723aaec0f43b5a6e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_edit-723aaec0f43b5a6e.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ppv-lite86@0.2.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ppv_lite86","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libppv_lite86-1e6368468c918bef.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#simple-error@0.3.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"simple_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsimple_error-d2dfd4027151b5f2.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foldhash@0.1.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"foldhash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfoldhash-b8b2147ed938ea6b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"equivalent","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libequivalent-8b054abaa056da40.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#dyn-clone@1.0.20","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"dyn_clone","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdyn_clone-73b7f0f7c963e684.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-query@1.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_query","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_query-c09ec51645899b1e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_query-c09ec51645899b1e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-packet-core@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_packet_core","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-core-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_core-8c6fec6d52665c88.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_core-8c6fec6d52665c88.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#colorchoice@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"colorchoice","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcolorchoice-6db9a4c54df3070d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcolorchoice-6db9a4c54df3070d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle@1.0.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle-98b62924bd74ad07.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle-98b62924bd74ad07.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#opaque-debug@0.3.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"opaque_debug","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libopaque_debug-1e3af4630ac62466.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.143","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_json","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_json-4747f3729f44e87c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"once_cell","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","race","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libonce_cell-0405b17b6fd897ff.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ahash@0.8.12","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ahash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libahash-19020da8681f2f43.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstream@0.6.19","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstream","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["auto","default","wincon"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstream-a8823dce180a0df4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstream-a8823dce180a0df4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#poly1305@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"poly1305","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpoly1305-8a727c378b5335d8.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_syntax","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_syntax-40e89b7ec18b063b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#allocator-api2@0.2.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"allocator_api2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liballocator_api2-a3943f72dc59f3d7.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand_chacha@0.3.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand_chacha","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_chacha-194eb116b9ef7393.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#digest@0.10.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"digest","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","block-buffer","core-api","default","mac","std","subtle"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdigest-6d69658abfb2c0a7.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.143","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_json","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.143/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_json-288a001dee904ca8.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_json-288a001dee904ca8.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex@1.11.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","perf","perf-backtrack","perf-cache","perf-dfa","perf-inline","perf-literal","perf-onepass","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex-76bf2da928d04ed4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex-76bf2da928d04ed4.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#schemars@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"schemars","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","schemars_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libschemars-28dd6ca661184b4f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerocopy@0.8.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerocopy","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerocopy-0.8.26/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzerocopy-f0998fbc238d2d44.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libzerocopy-f0998fbc238d2d44.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cipher@0.4.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cipher","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cipher-0.4.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcipher-66a7a66cdc67bacf.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcipher-66a7a66cdc67bacf.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.15.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["allocator-api2","default","default-hasher","equivalent","inline-more","raw-entry"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-285765d29e339db4.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#chacha20@0.9.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"chacha20","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20-dec7dcb0dc846433.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num_enum_derive@0.7.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum_derive-0.7.4/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"num_enum_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum_derive-0.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["proc-macro-crate","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnum_enum_derive-ba58a006c80df9bc.so"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_path_to_error@0.1.17","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_path_to_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_path_to_error-d9a78dbb2f3fe050.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ppv-lite86@0.2.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ppv_lite86","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ppv-lite86-0.2.21/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["simd","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libppv_lite86-b4c3b043649351b9.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libppv_lite86-b4c3b043649351b9.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#universal-hash@0.5.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"universal_hash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/universal-hash-0.5.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libuniversal_hash-d64358b1ff05fe22.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libuniversal_hash-d64358b1ff05fe22.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aead@0.5.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aead","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","getrandom","rand_core"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaead-3c5ca3fd7a515c7b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#block-buffer@0.10.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"block_buffer","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block-buffer-0.10.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblock_buffer-c7ffa532adaa845c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblock_buffer-c7ffa532adaa845c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-2462b4b57be7e6cd.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error-attr@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-attr-1.0.4/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-attr-1.0.4/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro-error-attr-92362dd8246541b6/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.30.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","ioctl"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-1bbe9177e166f95b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unty@0.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unty","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunty-b861bb6d60654d2f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ref-cast@1.0.24","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ref_cast","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ref-cast-1.0.24/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libref_cast-9bba8528516e5be4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libref_cast-9bba8528516e5be4.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached_proc_macro_types@0.1.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cached_proc_macro_types","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached_proc_macro_types-c3003365b7efe797.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lazy_static@1.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lazy_static","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblazy_static-5f1438d28b1de877.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#opaque-debug@0.3.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"opaque_debug","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/opaque-debug-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libopaque_debug-f9656aea55626350.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libopaque_debug-f9656aea55626350.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap_lex@0.7.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_lex-0.7.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap_lex","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_lex-0.7.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap_lex-f791c1dd40a8abdb.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap_lex-f791c1dd40a8abdb.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#web-time@1.1.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"web_time","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libweb_time-24b1fb3bbf605364.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strum@0.27.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrum-a83a57a24a7a9abf.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foldhash@0.1.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"foldhash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foldhash-0.1.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfoldhash-71b35bb279e9f7cc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfoldhash-71b35bb279e9f7cc.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@1.0.109","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-1.0.109/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-1.0.109/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","full","parsing","printing","proc-macro","quote"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/syn-0b39a66254fd25b2/build-script-build"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@1.0.109","linked_libs":[],"linked_paths":[],"cfgs":["syn_disable_nightly_tests"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/syn-cd5ac1276970794d/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_automata","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","dfa-onepass","hybrid","meta","nfa-backtrack","nfa-pikevm","nfa-thompson","perf-inline","perf-literal","perf-literal-multisubstring","perf-literal-substring","std","syntax","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment","unicode-word-boundary"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_automata-613dd4fd964cf0b3.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_automata-613dd4fd964cf0b3.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#dyn-clone@1.0.20","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"dyn_clone","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dyn-clone-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdyn_clone-13e98e462e33ddda.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdyn_clone-13e98e462e33ddda.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#allocator-api2@0.2.21","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"allocator_api2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/allocator-api2-0.2.21/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liballocator_api2-f21c861a1094a182.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liballocator_api2-f21c861a1094a182.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek@4.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"curve25519_dalek","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","precomputed-tables","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcurve25519_dalek-20e42520cc60654b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached@0.56.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cached","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ahash","cached_proc_macro","cached_proc_macro_types","default","proc_macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached-ba2ece28dd432665.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap_builder@4.5.50","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_builder-4.5.50/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap_builder","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_builder-4.5.50/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["color","error-context","help","std","suggestions","usage"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap_builder-eb6e4add98c18395.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap_builder-eb6e4add98c18395.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#x25519-dalek@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"x25519_dalek","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","precomputed-tables","static_secrets","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libx25519_dalek-c72417e26ea43947.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_automata","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","dfa-onepass","hybrid","meta","nfa-backtrack","nfa-pikevm","nfa-thompson","perf-inline","perf-literal","perf-literal-multisubstring","perf-literal-substring","std","syntax","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment","unicode-word-boundary"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex_automata-34eee35aa1d8fb6b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost-build@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-build-0.14.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prost_build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-build-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","format"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_build-872abc6c82f22d56.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost_build-872abc6c82f22d56.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-util@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_util","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","async-await-macro","channel","futures-channel","futures-io","futures-macro","futures-sink","io","memchr","sink","slab","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_util-34ee765464d9fa21.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_util-34ee765464d9fa21.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.29.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["fs","mount","process","sched","signal","uio"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-72f3c6b2f9b26637.rmeta"],"executable":null,"fresh":false} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error-attr@1.0.4","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro-error-attr-8a534f9a16904ebf/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.15.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["allocator-api2","default","default-hasher","equivalent","inline-more","raw-entry"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-88387dceb37c09d5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libhashbrown-88387dceb37c09d5.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-executor@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_executor","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_executor-09fa96bb5154e0c6.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures_executor-09fa96bb5154e0c6.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex@1.11.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","perf","perf-backtrack","perf-cache","perf-dfa","perf-inline","perf-literal","perf-onepass","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libregex-ad6a595b74f9ca3e.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures@0.3.31","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","default","executor","futures-executor","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures-fae105f3ec3fc157.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libfutures-fae105f3ec3fc157.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#poly1305@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"poly1305","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/poly1305-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpoly1305-59b4e153a282a0ac.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libpoly1305-59b4e153a282a0ac.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#chacha20poly1305@0.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"chacha20poly1305","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","getrandom","rand_core"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20poly1305-ac0432852e76f5b1.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num_enum@0.7.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"num_enum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnum_enum-cc5661252c4b33d5.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#digest@0.10.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"digest","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/digest-0.10.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","block-buffer","core-api","default","mac","std","subtle"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdigest-35bd109ed2d06f8a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libdigest-35bd109ed2d06f8a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ahash@0.8.12","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ahash","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ahash-0.8.12/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libahash-e5108daa8d923391.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libahash-e5108daa8d923391.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bincode@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bincode","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","bincode_derive","default","derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbincode-4fc25cbeb6814d13.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#chacha20@0.9.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"chacha20","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20-0.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20-7e57c7442be16b6a.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20-7e57c7442be16b6a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#blake2@0.10.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"blake2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblake2-f320066c6811652a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio@1.47.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytes","default","fs","full","io-std","io-util","libc","macros","mio","net","parking_lot","process","rt","rt-multi-thread","signal","signal-hook-registry","socket2","sync","time","tokio-macros"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio-92eac18d2a4c82b2.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_spanned@1.0.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_spanned-1.0.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_spanned","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_spanned-1.0.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","serde","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_spanned-bf2af6db24245b37.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_spanned-bf2af6db24245b37.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand_chacha@0.3.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand_chacha","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand_chacha-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_chacha-4505c38d2840d32d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand_chacha-4505c38d2840d32d.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-sys@0.8.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_sys","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","futures","tokio","tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_sys-b6fe346fb26cf63b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#schemars@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"schemars","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/schemars-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","schemars_derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libschemars-13a7610553f4cbaa.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libschemars-13a7610553f4cbaa.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_path_to_error@0.1.17","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_path_to_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_path_to_error-0.1.17/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_path_to_error-e4185477a20c1e94.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libserde_path_to_error-e4185477a20c1e94.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-proto@0.12.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_proto","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_proto-2a0dffee8abf8340.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aead@0.5.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aead","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aead-0.5.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","getrandom","rand_core"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaead-941727e9b6f6f2d1.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libaead-941727e9b6f6f2d1.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_datetime@0.7.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.7.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_datetime","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.7.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","serde","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_datetime-a1813512cc125ab5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_datetime-a1813512cc125ab5.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-a49511936eec8a80.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libthiserror-a49511936eec8a80.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_parser@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_parser-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_parser","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_parser-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_parser-e702e3868cf63027.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml_parser-e702e3868cf63027.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-1.0.4/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-1.0.4/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","syn","syn-error"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro-error-21a3de49eedbbe31/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cbindgen@0.29.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clap","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/cbindgen-98145a2040a5f207/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-util@0.7.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_util","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["codec","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio_util-acdc6c6fac6ff510.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand@0.8.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","getrandom","libc","rand_chacha","std","std_rng"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand-e6ec704b1c86552f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unty@0.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unty","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unty-0.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunty-a54929119ec5a55c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunty-a54929119ec5a55c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strum@0.27.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strum-0.27.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrum-e074aab78e64a0a0.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrum-e074aab78e64a0a0.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached_proc_macro_types@0.1.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cached_proc_macro_types","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached_proc_macro_types-0.1.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached_proc_macro_types-d20a172dc34e2c05.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached_proc_macro_types-d20a172dc34e2c05.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#web-time@1.1.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"web_time","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/web-time-1.1.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libweb_time-742dc25325911c35.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libweb_time-742dc25325911c35.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.30.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.30.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","ioctl"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-91d3948c53e28b47.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-91d3948c53e28b47.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["test"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/reef-common-1f0288bba220e2c3/build-script-build"],"executable":null,"fresh":false} -{"reason":"build-script-executed","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/reef-common-08b7a45284a9c032/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prost@0.14.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prost","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prost-0.14.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libprost-335cbf92e8a4938b.rmeta"],"executable":null,"fresh":false} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#cbindgen@0.29.2","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/cbindgen-a55c01575f30acb2/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error@1.0.4","linked_libs":[],"linked_paths":[],"cfgs":["use_fallback"],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/proc-macro-error-fcfd8db63499a993/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tun@0.8.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/Cargo.toml","target":{"kind":["staticlib","lib"],"crate_types":["staticlib","lib"],"name":"tun","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/src/lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["async","futures","futures-core","tokio","tokio-util"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtun-6449548ac7b38798.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ipnet@2.11.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ipnet","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libipnet-4fc83dc2fc2c3f86.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#chacha20poly1305@0.10.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"chacha20poly1305","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/chacha20poly1305-0.10.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","getrandom","rand_core"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20poly1305-361d9323f392b418.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libchacha20poly1305-361d9323f392b418.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cached@0.56.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cached","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cached-0.56.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ahash","cached_proc_macro","cached_proc_macro_types","default","proc_macro"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached-fe925702b5cc28b6.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcached-fe925702b5cc28b6.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#x25519-dalek@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"x25519_dalek","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/x25519-dalek-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","precomputed-tables","static_secrets","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libx25519_dalek-9fdecec6bad8ad1c.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libx25519_dalek-9fdecec6bad8ad1c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error-attr@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-attr-1.0.4/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"proc_macro_error_attr","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-attr-1.0.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_error_attr-06d79d525e67447b.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap@4.5.50","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-4.5.50/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-4.5.50/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["color","default","error-context","help","std","suggestions","usage"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap-1222d02732b046cc.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap-1222d02732b046cc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@1.0.109","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-1.0.109/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"syn","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-1.0.109/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","full","parsing","printing","proc-macro","quote"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsyn-5b63a72393b8084b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsyn-5b63a72393b8084b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num_enum@0.7.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"num_enum","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num_enum-0.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnum_enum-e1f2a50baa4db450.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnum_enum-e1f2a50baa4db450.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#curve25519-dalek@4.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"curve25519_dalek","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/curve25519-dalek-4.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","precomputed-tables","zeroize"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcurve25519_dalek-9bab319156944633.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcurve25519_dalek-9bab319156944633.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#blake2@0.10.6","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"blake2","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/blake2-0.10.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblake2-a95e603b6f7a2a4f.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libblake2-a95e603b6f7a2a4f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#utf8parse@0.2.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"utf8parse","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libutf8parse-fe743609d23c1f65.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-sys@0.8.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_sys","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-sys-0.8.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","futures","tokio","tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_sys-42b3377fb7506a3d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_sys-42b3377fb7506a3d.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-segmentation@1.12.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-segmentation-1.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_segmentation","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-segmentation-1.12.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_segmentation-13a3a66686d68a3f.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_segmentation-13a3a66686d68a3f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bincode@2.0.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bincode","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bincode-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","bincode_derive","default","derive","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbincode-f185b9f4039d0ce4.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbincode-f185b9f4039d0ce4.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-width@0.1.14","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-width-0.1.14/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_width","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-width-0.1.14/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["cjk","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libunicode_width-4205c60c9ba625c6.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#simple-error@0.3.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"simple_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/simple-error-0.3.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsimple_error-2146489c68bf9c62.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libsimple_error-2146489c68bf9c62.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-proto@0.12.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_proto","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-proto-0.12.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_proto-2758f7b9417315a9.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_proto-2758f7b9417315a9.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#lazy_static@1.5.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"lazy_static","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/lazy_static-1.5.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblazy_static-5615ca6d930c1db5.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/liblazy_static-5615ca6d930c1db5.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rand@0.8.5","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rand","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rand-0.8.5/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","getrandom","libc","rand_chacha","std","std_rng"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand-834da8fad550d160.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librand-834da8fad550d160.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#heck@0.3.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"heck","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.3.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libheck-6a0e2f53a5f37090.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libheck-6a0e2f53a5f37090.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-packet-route@0.25.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_packet_route","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_route-b72ad08dac0c4fa1.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#textwrap@0.11.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/textwrap-0.11.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"textwrap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/textwrap-0.11.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtextwrap-bc320b19f5a40cda.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro-error@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro_error","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro-error-1.0.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","syn","syn-error"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_error-e390fbaa7029cec0.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libproc_macro_error-e390fbaa7029cec0.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-util@0.7.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_util","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["codec","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio_util-5394599c2ee903bf.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio_util-5394599c2ee903bf.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-parse@0.2.7","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_parse","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","utf8"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_parse-b01e8e869194beb3.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#atty@0.2.14","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atty-0.2.14/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"atty","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atty-0.2.14/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libatty-197e8dc1ab1e5b43.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strsim@0.8.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strsim","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.8.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstrsim-20ede2c518793cf3.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ansi_term@0.12.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ansi_term-0.12.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ansi_term","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ansi_term-0.12.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libansi_term-f00ff4043a9d5998.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#colorchoice@1.0.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"colorchoice","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcolorchoice-367a6f5a1e7ab532.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@1.3.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-1.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-1.3.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libbitflags-b551d3fe3a8a6729.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle@1.0.11","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle-bb72f1018d9ca59f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-query@1.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_query","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstyle_query-86569a613c3c9ba3.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#structopt-derive@0.4.18","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-derive-0.4.18/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"structopt_derive","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-derive-0.4.18/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstructopt_derive-e43c3a67b119a9f9.so"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#is_terminal_polyfill@1.70.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"is_terminal_polyfill","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libis_terminal_polyfill-9bf9dc9833a8f45a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml@0.9.8","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml-0.9.8/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml-0.9.8/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["parse","serde","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml-9fde908db9dc444d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtoml-9fde908db9dc444d.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#vec_map@0.8.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/vec_map-0.8.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"vec_map","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/vec_map-0.8.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libvec_map-8d88471343b6ed4f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ipnet@2.11.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ipnet","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libipnet-9490e3a689f6bf20.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libipnet-9490e3a689f6bf20.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#env_filter@0.1.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_filter-0.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"env_filter","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_filter-0.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["regex"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libenv_filter-8e23f91312ddcb1b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nix@0.29.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nix","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nix-0.29.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["fs","mount","process","sched","signal","uio"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-cdc5c81108a4ef9e.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnix-cdc5c81108a4ef9e.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library#reef-test@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeftest","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeftest-7dd80b833bf035af.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library#reef-test@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeftest","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/test_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeftest-6aa2e0b9a2bdad70.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstream@0.6.19","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstream","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.19/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["auto","wincon"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libanstream-51183de30b3eae15.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rtnetlink@0.18.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rtnetlink","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","tokio","tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librtnetlink-85a0bb3c05160f5b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio@1.47.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.47.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytes","default","fs","full","io-std","io-util","libc","macros","mio","net","parking_lot","process","rt","rt-multi-thread","signal","signal-hook-registry","socket2","sync","time","tokio-macros"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio-2f87de80df157adb.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtokio-2f87de80df157adb.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tun@0.8.4","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/Cargo.toml","target":{"kind":["staticlib","lib"],"crate_types":["staticlib","lib"],"name":"tun","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tun-0.8.4/src/lib.rs","edition":"2024","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["async","futures","futures-core","tokio","tokio-util"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtun-57e7b4f3f4423bb2.a","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libtun-57e7b4f3f4423bb2.rlib"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nftables@0.6.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nftables","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnftables-a2c8ab2480f8c046.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap@2.34.0","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.34.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-2.34.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ansi_term","atty","color","default","strsim","suggestions","vec_map"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libclap-3c7b143dedc82f2f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#structopt@0.3.26","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-0.3.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"structopt","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/structopt-0.3.26/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libstructopt-93801b993d9fdd6c.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeflib","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["test"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeflib-e8d64a1ff804584d.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeflib","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["test"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeflib-54a5191d4adfea8f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#netlink-packet-route@0.25.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"netlink_packet_route","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/netlink-packet-route-0.25.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_route-2cbe9d01617fe9b3.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnetlink_packet_route-2cbe9d01617fe9b3.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rtnetlink@0.18.1","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rtnetlink","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rtnetlink-0.18.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","tokio","tokio_socket"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librtnetlink-5fc96fc4a306b94d.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/librtnetlink-5fc96fc4a306b94d.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#jiff@0.2.15","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/jiff-0.2.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"jiff","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/jiff-0.2.15/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libjiff-488ce4ceefc927bf.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#env_logger@0.11.8","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_logger-0.11.8/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"env_logger","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/env_logger-0.11.8/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["auto-color","color","default","humantime","regex"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libenv_logger-2910e107e278689a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cbindgen@0.29.2","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cbindgen","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cbindgen-0.29.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clap","default"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcbindgen-bd6cbd9faa33b9f0.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libcbindgen-bd6cbd9faa33b9f0.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable#reef-standalone@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/Cargo.toml","target":{"kind":["bin"],"crate_types":["bin"],"name":"seaside_standalone","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/src/mod.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libseaside_standalone-b68f2985d3330c3a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable#reef-standalone@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/Cargo.toml","target":{"kind":["bin"],"crate_types":["bin"],"name":"seaside_standalone","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/standalone_executable/src/mod.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libseaside_standalone-8249b79ab5a20b1a.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nftables@0.6.3","manifest_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nftables","src_path":"/home/pseusys/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nftables-0.6.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnftables-b7ec44417831cc4b.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libnftables-b7ec44417831cc4b.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library#reef-common@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reeflib","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/common_library/lib/mod.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["test"],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeflib-6b9400739fd6c26f.rlib","/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libreeflib-6b9400739fd6c26f.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library#reefshared@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/reefshared-c3aadb147183e507/build-script-build"],"executable":null,"fresh":false} -{"reason":"build-script-executed","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library#reefshared@0.0.4","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/build/reefshared-7c3d38765d5fd02b/out"} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library#reefshared@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/Cargo.toml","target":{"kind":["cdylib"],"crate_types":["cdylib"],"name":"seaside","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/lib/mod.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libseaside-0f0f3e1c248c0e71.rmeta"],"executable":null,"fresh":false} -{"reason":"compiler-artifact","package_id":"path+file:///home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library#reefshared@0.0.4","manifest_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/Cargo.toml","target":{"kind":["cdylib"],"crate_types":["cdylib"],"name":"seaside","src_path":"/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/shared_library/lib/mod.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/home/pseusys/Documents/repositories/seasidevpn/viridian/reef/target/debug/deps/libseaside-70efaba1cf3c0a43.rmeta"],"executable":null,"fresh":false} -{"reason":"build-finished","success":true} diff --git a/viridian/reef/Dockerfile b/viridian/reef/Dockerfile index 8bd4c68a..6c5059fe 100644 --- a/viridian/reef/Dockerfile +++ b/viridian/reef/Dockerfile @@ -15,7 +15,7 @@ COPY viridian/reef/common_library/Cargo.toml viridian/reef/common_library/ COPY viridian/reef/shared_library/Cargo.toml viridian/reef/shared_library/ COPY viridian/reef/standalone_executable/Cargo.toml viridian/reef/standalone_executable/ COPY viridian/reef/test_library/Cargo.toml viridian/reef/test_library/ -RUN cargo build --manifest-path viridian/reef/Cargo.toml --bin cli --lib || true +RUN cargo build --manifest-path viridian/reef/Cargo.toml --bin seaside_standalone --lib || true COPY viridian/reef/common_library/ viridian/reef/common_library/ COPY viridian/reef/shared_library/ viridian/reef/shared_library/ @@ -25,7 +25,7 @@ COPY viridian/reef/test_library/ viridian/reef/test_library/ FROM downloader AS builder -RUN cargo build --manifest-path viridian/reef/Cargo.toml --bin cli --lib +RUN cargo build --manifest-path viridian/reef/Cargo.toml --bin seaside_standalone --lib FROM downloader AS tester @@ -50,7 +50,7 @@ ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && apt-get install -y --no-install-recommends iptables iproute2 python3-pip && rm -rf /var/lib/apt/lists/* && pip install --no-cache-dir pytest pytest-timeout COPY viridian/algae/tests/conftest.py viridian/algae/tests/test_local.py tests/ -COPY --from=builder /seaside/viridian/reef/target/debug/cli cli +COPY --from=builder /seaside/viridian/reef/target/debug/seaside_standalone seaside_exe VOLUME /seaside/viridian @@ -59,7 +59,7 @@ ENV SEASIDE_ADDRESS= ENV SEASIDE_API_PORT= ENV TEST_COMMAND="pytest --log-cli-level=INFO tests/test_local.py" -ENV RUN_COMMAND="./cli -a \$SEASIDE_ADDRESS -c \$SEASIDE_API_PORT -k ... -t ... -p \$SEASIDE_PAYLOAD_VIRIDIAN -e \"\$TEST_COMMAND\"" +ENV RUN_COMMAND="./seaside_exe -a \$SEASIDE_ADDRESS -c \$SEASIDE_API_PORT -k ... -t ... -p \$SEASIDE_PAYLOAD_VIRIDIAN -e \"\$TEST_COMMAND\"" ENTRYPOINT ["sh", "-c", "ip route replace default via \"$ARG_NETWORK_GATEWAY\" && eval \"$RUN_COMMAND\""] HEALTHCHECK --interval=1m --timeout=1s --retries=3 --start-period=10s --start-interval=3s CMD ls /sys/class/net | grep tun0 From b82541d3fc915bab6729b70ecaa79a8bb7b73a1d Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 20:07:32 +0100 Subject: [PATCH 07/67] rust version pinned --- .github/workflows/build.yml | 2 +- .github/workflows/lint.yml | 2 +- .github/workflows/test.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e3372ff5..93db7ac6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -129,7 +129,7 @@ jobs: - name: Setup Rust ๐Ÿฆ€ uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: stable + toolchain: "1.89.0" target: ${{ env.TARGET }} rust-src-dir: viridian/reef override: true diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index e32d7ce8..54e916c2 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -94,7 +94,7 @@ jobs: - name: Setup Rust ๐Ÿฆ€ uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: stable + toolchain: "1.89.0" rust-src-dir: viridian/reef - name: Lint Viridian Reef ๐Ÿงช diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index d709409e..752197f8 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -98,7 +98,7 @@ jobs: - name: Setup Rust ๐Ÿฆ€ uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: stable + toolchain: "1.89.0" target: ${{ matrix.os == 'ubuntu' && 'x86_64-unknown-linux-gnu' || 'x86_64-pc-windows-msvc' }} rust-src-dir: viridian/reef override: true From 97b560015f957d457a07cbf3f13fbe6b5811a4e3 Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 20:30:10 +0100 Subject: [PATCH 08/67] nm test --- .github/workflows/test.yml | 61 +++++++++++++++++++++++++++++++++++--- 1 file changed, 57 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 752197f8..4ac69424 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -66,12 +66,10 @@ jobs: test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - name: Test Viridian Algae PORT (standalone) ๐Ÿงช - id: test-viridian-algae-port working-directory: viridian/algae run: sudo -E env "PATH=$PATH" poetry poe client -m port -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports "${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }}" -c "${{ env.TEST_COMMAND }} --local-port 44444" - name: Test Viridian Algae TYPHOON (standalone) ๐Ÿงช - id: test-viridian-algae-typhoon working-directory: viridian/algae run: sudo -E env "PATH=$PATH" poetry poe client -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports "${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }}" -c "${{ env.TEST_COMMAND }} --local-port 44445" @@ -123,15 +121,70 @@ jobs: test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - name: Test Viridian Reef PORT (integration) ๐Ÿงช - id: test-viridian-reef-port working-directory: viridian/reef run: ${{ env.SUDO }} cargo run --bin seaside_standalone -- -m port -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44444" - name: Test Viridian Reef TYPHOON (integration) ๐Ÿงช - id: test-viridian-reef-typhoon working-directory: viridian/reef run: ${{ env.SUDO }} cargo run --bin seaside_standalone -- -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44445" + viridian-reef-nm-test: + name: Test Viridian Reef (Network Manager) + runs-on: ubuntu-latest + env: + TARGET_ADDRESS: 1.1.1.1 + TARGET_LOWER_PORT: 44442 + TARGET_HIGHER_PORT: 44446 + SEASIDE_LOG_LEVEL: reeflib=DEBUG,INFO + TEST_COMMAND: curl -v -I --fail --max-time 15 https://1.1.1.1 + + steps: + - name: Checkout ๐Ÿ›Ž๏ธ + uses: actions/checkout@v4 + + - name: Setup Rust ๐Ÿฆ€ + uses: actions-rust-lang/setup-rust-toolchain@v1 + with: + toolchain: "1.89.0" + target: x86_64-unknown-linux-gnu + rust-src-dir: viridian/reef + override: true + + - name: Install Network Manager + run: sudo apt-get install network-manager + + - name: Setup VPN Server ๐Ÿ–ด + id: setup-test-server + uses: ./.github/actions/setup-server + with: + target: ${{ env.TARGET_ADDRESS }} + lower_port: ${{ env.TARGET_LOWER_PORT }} + higher_port: ${{ env.TARGET_HIGHER_PORT }} + test-command: ${{ env.TEST_COMMAND }} --local-port 44443 + + - name: Install Network Manager + working-directory: viridian/barnacles/network-manager + run: make install + + - name: Create VPN Connections + run: | + sudo nmcli connection add type vpn con-name seaside-vpn-port ifname "*" vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=port" + sudo nmcli connection add type vpn con-name seaside-vpn-typhoon ifname "*" vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=typhoon" + + - name: Test Viridian Reef PORT (integration) ๐Ÿงช + working-directory: viridian/reef + run: | + sudo nmcli connection up seaside-vpn-port + ${{ env.TEST_COMMAND }} --local-port 44444 + sudo nmcli connection down seaside-vpn-port + + - name: Test Viridian Reef TYPHOON (integration) ๐Ÿงช + working-directory: viridian/reef + run: | + sudo nmcli connection up seaside-vpn-typhoon + ${{ env.TEST_COMMAND }} --local-port 44445 + sudo nmcli connection down seaside-vpn-vpn-typhoon + caerulean-whirlpool-test: name: Test Caerulean Whirlpool runs-on: ubuntu-latest From 7ae758070961f436fed3acc3330ef53cce175f07 Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 20:38:17 +0100 Subject: [PATCH 09/67] network manager dependencies --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4ac69424..25df0208 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -151,7 +151,7 @@ jobs: override: true - name: Install Network Manager - run: sudo apt-get install network-manager + run: sudo apt-get install network-manager build-essential libglib2.0-dev libglib2.0-dev-bin libnm-dev pkg-config - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server From f0eaff2560126a8fcb5599fc3c6143483c375d10 Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 20:53:20 +0100 Subject: [PATCH 10/67] added dependencies --- .github/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 25df0208..9df6a2d8 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -150,8 +150,8 @@ jobs: rust-src-dir: viridian/reef override: true - - name: Install Network Manager - run: sudo apt-get install network-manager build-essential libglib2.0-dev libglib2.0-dev-bin libnm-dev pkg-config + - name: Install Network Manager and Dependencies + run: sudo apt-get install network-manager build-essential libnm-dev libglib2.0-dev libglib2.0-dev-bin libgtk-3-dev pkg-config - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server From 8b2305ec25713098eecffaeb67e7a2191aa874fc Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 21:17:23 +0100 Subject: [PATCH 11/67] fixed dependencies --- viridian/reef/common_library/Cargo.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/viridian/reef/common_library/Cargo.toml b/viridian/reef/common_library/Cargo.toml index 240bc0e4..1e1c0bdc 100644 --- a/viridian/reef/common_library/Cargo.toml +++ b/viridian/reef/common_library/Cargo.toml @@ -16,6 +16,7 @@ bytes = "^1.10.1" cached = "^0.56.0" chacha20poly1305 = "^0.10.1" futures = "^0.3.31" +generic-array = "=0.14.7" # TODO: remove once https://github.com/RustCrypto/traits/issues/2036 is resolved! ipnet = "^2.10.1" lazy_static = "^1.5.0" log = "^0.4.22" From 5a2564cbf7aca3d743aae463714f5918decb37cc Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 22:40:54 +0100 Subject: [PATCH 12/67] dummy IP --- .github/workflows/test.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 9df6a2d8..041a898a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -168,8 +168,11 @@ jobs: - name: Create VPN Connections run: | - sudo nmcli connection add type vpn con-name seaside-vpn-port ifname "*" vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=port" - sudo nmcli connection add type vpn con-name seaside-vpn-typhoon ifname "*" vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=typhoon" + sudo ip link add dummy0 type dummy + sudo ip addr add 10.200.0.5/32 dev dummy0 + sudo ip link set dummy0 up + sudo nmcli connection add type vpn con-name seaside-vpn-port ifname dummy0 vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=port" + sudo nmcli connection add type vpn con-name seaside-vpn-typhoon ifname dummy0 vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=typhoon" - name: Test Viridian Reef PORT (integration) ๐Ÿงช working-directory: viridian/reef From 7fda9c8a3c2395672f1cabe19c054448e6e24ef3 Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 22:48:33 +0100 Subject: [PATCH 13/67] show logs --- .github/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 041a898a..e40699f9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -177,14 +177,14 @@ jobs: - name: Test Viridian Reef PORT (integration) ๐Ÿงช working-directory: viridian/reef run: | - sudo nmcli connection up seaside-vpn-port + sudo nmcli --show-logs connection up seaside-vpn-port ${{ env.TEST_COMMAND }} --local-port 44444 sudo nmcli connection down seaside-vpn-port - name: Test Viridian Reef TYPHOON (integration) ๐Ÿงช working-directory: viridian/reef run: | - sudo nmcli connection up seaside-vpn-typhoon + sudo nmcli --show-logs connection up seaside-vpn-typhoon ${{ env.TEST_COMMAND }} --local-port 44445 sudo nmcli connection down seaside-vpn-vpn-typhoon From 6fc81dbfb046b4666ad3c4003c074271a748426b Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 22:54:39 +0100 Subject: [PATCH 14/67] no dummies --- .github/workflows/test.yml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e40699f9..e8e1c0e9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -168,11 +168,8 @@ jobs: - name: Create VPN Connections run: | - sudo ip link add dummy0 type dummy - sudo ip addr add 10.200.0.5/32 dev dummy0 - sudo ip link set dummy0 up - sudo nmcli connection add type vpn con-name seaside-vpn-port ifname dummy0 vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=port" - sudo nmcli connection add type vpn con-name seaside-vpn-typhoon ifname dummy0 vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=typhoon" + sudo nmcli connection add type vpn con-name seaside-vpn-port vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=port" + sudo nmcli connection add type vpn con-name seaside-vpn-typhoon vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=typhoon" - name: Test Viridian Reef PORT (integration) ๐Ÿงช working-directory: viridian/reef From 0ab10a1747ff776522a1e85acb05616d77238e0e Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 22:56:15 +0100 Subject: [PATCH 15/67] no logs --- .github/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e8e1c0e9..755602f6 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -174,14 +174,14 @@ jobs: - name: Test Viridian Reef PORT (integration) ๐Ÿงช working-directory: viridian/reef run: | - sudo nmcli --show-logs connection up seaside-vpn-port + sudo nmcli connection up seaside-vpn-port ${{ env.TEST_COMMAND }} --local-port 44444 sudo nmcli connection down seaside-vpn-port - name: Test Viridian Reef TYPHOON (integration) ๐Ÿงช working-directory: viridian/reef run: | - sudo nmcli --show-logs connection up seaside-vpn-typhoon + sudo nmcli connection up seaside-vpn-typhoon ${{ env.TEST_COMMAND }} --local-port 44445 sudo nmcli connection down seaside-vpn-vpn-typhoon From d476df8a0875d383c815744b6adb7275d0907b7d Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 23:40:23 +0100 Subject: [PATCH 16/67] run in docker? --- .github/workflows/test.yml | 27 ++++----------------------- viridian/reef/Dockerfile | 20 ++++++++++++++++++++ 2 files changed, 24 insertions(+), 23 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 755602f6..14a304ff 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -142,17 +142,6 @@ jobs: - name: Checkout ๐Ÿ›Ž๏ธ uses: actions/checkout@v4 - - name: Setup Rust ๐Ÿฆ€ - uses: actions-rust-lang/setup-rust-toolchain@v1 - with: - toolchain: "1.89.0" - target: x86_64-unknown-linux-gnu - rust-src-dir: viridian/reef - override: true - - - name: Install Network Manager and Dependencies - run: sudo apt-get install network-manager build-essential libnm-dev libglib2.0-dev libglib2.0-dev-bin libgtk-3-dev pkg-config - - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server uses: ./.github/actions/setup-server @@ -162,21 +151,13 @@ jobs: higher_port: ${{ env.TARGET_HIGHER_PORT }} test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - - name: Install Network Manager - working-directory: viridian/barnacles/network-manager - run: make install - - - name: Create VPN Connections - run: | - sudo nmcli connection add type vpn con-name seaside-vpn-port vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=port" - sudo nmcli connection add type vpn con-name seaside-vpn-typhoon vpn-type seasidevpn vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=typhoon" + - name: Build Docker Image + working-directory: viridian/reef + run: docker build --target nm-tester -t nm-tester-image . - name: Test Viridian Reef PORT (integration) ๐Ÿงช working-directory: viridian/reef - run: | - sudo nmcli connection up seaside-vpn-port - ${{ env.TEST_COMMAND }} --local-port 44444 - sudo nmcli connection down seaside-vpn-port + run: docker run --privileged --network=host -e PROTOCOL=port -e TEST_COMMAND="${{ env.TEST_COMMAND }} --local-port 44444" -v /seaside/viridian/certificate.sea:${{ steps.setup-test-server.outputs.connection-certificate }} nm-tester-image - name: Test Viridian Reef TYPHOON (integration) ๐Ÿงช working-directory: viridian/reef diff --git a/viridian/reef/Dockerfile b/viridian/reef/Dockerfile index 6c5059fe..a9babac9 100644 --- a/viridian/reef/Dockerfile +++ b/viridian/reef/Dockerfile @@ -36,6 +36,26 @@ RUN apt-get update && apt-get install -y --no-install-recommends net-tools uml-u WORKDIR /seaside/viridian/reef +FROM tester AS nm-tester + +RUN apt-get update && apt-get install -y network-manager dbus build-essential libnm-dev libglib2.0-dev libglib2.0-dev-bin libgtk-3-dev pkg-config && rm -rf /var/lib/apt/lists/* + +COPY viridian/barnacles/network-manager/ viridian/barnacles/network-manager/ +RUN make -C viridian/barnacles/network-manager/ install + +VOLUME /seaside/viridian/certificate.sea + +ENV PROTOCOL= +ENV CERTIFICATE="/seaside/viridian/certificate.sea" + +ENV TEST_COMMAND= +ENV CREATE_COMMAND="nmcli connection add type vpn con-name seaside-vpn-$PROTOCOL vpn-type seasidevpn vpn.data \"certificate=$CERTIFICATE,protocol=$PROTOCOL\"" +ENV START_COMMAND="nmcli connection up seaside-vpn-$PROTOCOL" +ENV RUN_COMMAND="$CREATE_COMMAND && $START_COMMAND && $TEST_COMMAND" + +ENTRYPOINT [ "sh", "-c", "/etc/init.d/dbus start || dbus-daemon --system & NetworkManager --no-daemon & eval \"$RUN_COMMAND\"" ] + + FROM ubuntu:22.04 AS default WORKDIR /seaside/viridian From 4c5bc71f11fd9baf6dcba6470c3a5bf159b5160d Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 31 Oct 2025 23:50:54 +0100 Subject: [PATCH 17/67] new dummy connection --- .github/workflows/test.yml | 31 +++++++++++++++++++++++++++---- viridian/reef/Dockerfile | 20 -------------------- 2 files changed, 27 insertions(+), 24 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 14a304ff..146e0ae4 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -142,6 +142,17 @@ jobs: - name: Checkout ๐Ÿ›Ž๏ธ uses: actions/checkout@v4 + - name: Setup Rust ๐Ÿฆ€ + uses: actions-rust-lang/setup-rust-toolchain@v1 + with: + toolchain: "1.89.0" + target: x86_64-unknown-linux-gnu + rust-src-dir: viridian/reef + override: true + + - name: Install Network Manager and Dependencies + run: sudo apt-get install network-manager build-essential libnm-dev libglib2.0-dev libglib2.0-dev-bin libgtk-3-dev pkg-config + - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server uses: ./.github/actions/setup-server @@ -151,13 +162,25 @@ jobs: higher_port: ${{ env.TARGET_HIGHER_PORT }} test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - - name: Build Docker Image - working-directory: viridian/reef - run: docker build --target nm-tester -t nm-tester-image . + - name: Install Network Manager + working-directory: viridian/barnacles/network-manager + run: make install + + - name: Create VPN Connections + run: | + sudo nmcli connection add type ethernet con-name dummy-eth ifname eth0 + sudo nmcli connection up dummy-eth + sudo nmcli connection add type vpn con-name seaside-vpn-port ifname dummy-eth vpn-type seasidevpn + sudo nmcli connection modify seaside-vpn-port vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=port" + sudo nmcli connection add type vpn con-name seaside-vpn-typhoon ifname dummy-eth vpn-type seasidevpn + sudo nmcli connection modify seaside-vpn-typhoon vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=typhoon" - name: Test Viridian Reef PORT (integration) ๐Ÿงช working-directory: viridian/reef - run: docker run --privileged --network=host -e PROTOCOL=port -e TEST_COMMAND="${{ env.TEST_COMMAND }} --local-port 44444" -v /seaside/viridian/certificate.sea:${{ steps.setup-test-server.outputs.connection-certificate }} nm-tester-image + run: | + sudo nmcli connection up seaside-vpn-port + ${{ env.TEST_COMMAND }} --local-port 44444 + sudo nmcli connection down seaside-vpn-port - name: Test Viridian Reef TYPHOON (integration) ๐Ÿงช working-directory: viridian/reef diff --git a/viridian/reef/Dockerfile b/viridian/reef/Dockerfile index a9babac9..6c5059fe 100644 --- a/viridian/reef/Dockerfile +++ b/viridian/reef/Dockerfile @@ -36,26 +36,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends net-tools uml-u WORKDIR /seaside/viridian/reef -FROM tester AS nm-tester - -RUN apt-get update && apt-get install -y network-manager dbus build-essential libnm-dev libglib2.0-dev libglib2.0-dev-bin libgtk-3-dev pkg-config && rm -rf /var/lib/apt/lists/* - -COPY viridian/barnacles/network-manager/ viridian/barnacles/network-manager/ -RUN make -C viridian/barnacles/network-manager/ install - -VOLUME /seaside/viridian/certificate.sea - -ENV PROTOCOL= -ENV CERTIFICATE="/seaside/viridian/certificate.sea" - -ENV TEST_COMMAND= -ENV CREATE_COMMAND="nmcli connection add type vpn con-name seaside-vpn-$PROTOCOL vpn-type seasidevpn vpn.data \"certificate=$CERTIFICATE,protocol=$PROTOCOL\"" -ENV START_COMMAND="nmcli connection up seaside-vpn-$PROTOCOL" -ENV RUN_COMMAND="$CREATE_COMMAND && $START_COMMAND && $TEST_COMMAND" - -ENTRYPOINT [ "sh", "-c", "/etc/init.d/dbus start || dbus-daemon --system & NetworkManager --no-daemon & eval \"$RUN_COMMAND\"" ] - - FROM ubuntu:22.04 AS default WORKDIR /seaside/viridian From bdc26bde955e0550af1ac769515c90f59878d281 Mon Sep 17 00:00:00 2001 From: pseusys Date: Mon, 3 Nov 2025 00:35:07 +0100 Subject: [PATCH 18/67] reconf --- .github/workflows/test.yml | 61 ------------------- viridian/barnacles/network-manager/Makefile | 11 ++-- .../barnacles/network-manager/plugin/plugin.c | 52 +++++++++++----- 3 files changed, 44 insertions(+), 80 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 146e0ae4..d09369f7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -128,67 +128,6 @@ jobs: working-directory: viridian/reef run: ${{ env.SUDO }} cargo run --bin seaside_standalone -- -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44445" - viridian-reef-nm-test: - name: Test Viridian Reef (Network Manager) - runs-on: ubuntu-latest - env: - TARGET_ADDRESS: 1.1.1.1 - TARGET_LOWER_PORT: 44442 - TARGET_HIGHER_PORT: 44446 - SEASIDE_LOG_LEVEL: reeflib=DEBUG,INFO - TEST_COMMAND: curl -v -I --fail --max-time 15 https://1.1.1.1 - - steps: - - name: Checkout ๐Ÿ›Ž๏ธ - uses: actions/checkout@v4 - - - name: Setup Rust ๐Ÿฆ€ - uses: actions-rust-lang/setup-rust-toolchain@v1 - with: - toolchain: "1.89.0" - target: x86_64-unknown-linux-gnu - rust-src-dir: viridian/reef - override: true - - - name: Install Network Manager and Dependencies - run: sudo apt-get install network-manager build-essential libnm-dev libglib2.0-dev libglib2.0-dev-bin libgtk-3-dev pkg-config - - - name: Setup VPN Server ๐Ÿ–ด - id: setup-test-server - uses: ./.github/actions/setup-server - with: - target: ${{ env.TARGET_ADDRESS }} - lower_port: ${{ env.TARGET_LOWER_PORT }} - higher_port: ${{ env.TARGET_HIGHER_PORT }} - test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - - - name: Install Network Manager - working-directory: viridian/barnacles/network-manager - run: make install - - - name: Create VPN Connections - run: | - sudo nmcli connection add type ethernet con-name dummy-eth ifname eth0 - sudo nmcli connection up dummy-eth - sudo nmcli connection add type vpn con-name seaside-vpn-port ifname dummy-eth vpn-type seasidevpn - sudo nmcli connection modify seaside-vpn-port vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=port" - sudo nmcli connection add type vpn con-name seaside-vpn-typhoon ifname dummy-eth vpn-type seasidevpn - sudo nmcli connection modify seaside-vpn-typhoon vpn.data "certificate=${{ steps.setup-test-server.outputs.connection-certificate }},protocol=typhoon" - - - name: Test Viridian Reef PORT (integration) ๐Ÿงช - working-directory: viridian/reef - run: | - sudo nmcli connection up seaside-vpn-port - ${{ env.TEST_COMMAND }} --local-port 44444 - sudo nmcli connection down seaside-vpn-port - - - name: Test Viridian Reef TYPHOON (integration) ๐Ÿงช - working-directory: viridian/reef - run: | - sudo nmcli connection up seaside-vpn-typhoon - ${{ env.TEST_COMMAND }} --local-port 44445 - sudo nmcli connection down seaside-vpn-vpn-typhoon - caerulean-whirlpool-test: name: Test Caerulean Whirlpool runs-on: ubuntu-latest diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index 229fcfd3..bdf7e9c4 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -6,6 +6,7 @@ SHELL := /bin/bash .SHELLFLAGS := -c -e BUILD_TYPE := debug +RUNNING_IN_DOCKER := false @@ -86,15 +87,17 @@ install: build sudo install -D -m 644 $(NM_CONFIGURATION_DIR)/service.conf $(INSTALL_CONF) sudo install -D -m 644 $(NM_BUILD_DIR)/editor.so $(INSTALL_EDITOR) sudo install -D -m 644 $(NM_BIN_DIR)/libseaside.so $(INSTALL_BIN) +ifneq ($(RUNNING_IN_DOCKER),true) sudo systemctl restart NetworkManager +endif .PHONY: install run: install cd $(SERVICE_DIR) ifeq ($(BUILD_TYPE),debug) - sudo -E G_MESSAGES_DEBUG=all nm-$(PLUGIN_NAME)-service + sudo -E G_MESSAGES_DEBUG=all ./nm-$(PLUGIN_NAME)-service else - sudo nm-$(PLUGIN_NAME)-service + sudo ./nm-$(PLUGIN_NAME)-service endif .PHONY: install @@ -102,8 +105,8 @@ endif # Artifact cleaning: -clean: rust-clean +clean: @ # Clean network manager plugin build artifacts - rm -f $(NM_BUILD_DIR) + rm -rf $(NM_BUILD_DIR) sudo rm -f $(INSTALL_PLUGIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) $(INSTALL_BIN) .PHONY: clean diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index 7ef6e5a6..b51763be 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -74,39 +74,50 @@ seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) static void seaside_set_ip4_from_vpnconfig(NMVpnServicePlugin *plugin, const VPNConfig *cfg) { - GVariantBuilder b; - g_variant_builder_init(&b, G_VARIANT_TYPE_VARDICT); + GVariantBuilder gen_builder; + g_variant_builder_init(&gen_builder, G_VARIANT_TYPE_VARDICT); if (cfg->tunnel_name && cfg->tunnel_name[0]) { GVariant *v = g_variant_new_string(cfg->tunnel_name); - g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_TUNDEV, v); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_TUNDEV, v); + } + + if (cfg->tunnel_mtu) { + GVariant *v = g_variant_new_uint32(cfg->tunnel_mtu); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_MTU, v); } if (cfg->tunnel_address) { - GVariant *v = g_variant_new_uint32(cfg->tunnel_address); - g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, v); + GVariant *v = g_variant_new_uint32(g_htonl(cfg->tunnel_address)); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_EXT_GATEWAY, v); } - if (cfg->tunnel_prefix) { - GVariant *v = g_variant_new_uint32(cfg->tunnel_prefix); - g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, v); + GVariant *gen_dict = g_variant_builder_end(&gen_builder); + nm_vpn_service_plugin_set_config(plugin, gen_dict); + + GVariantBuilder ipv4_builder; + g_variant_builder_init(&ipv4_builder, G_VARIANT_TYPE_VARDICT); + + if (cfg->tunnel_address) { + GVariant *v = g_variant_new_uint32(g_htonl(cfg->tunnel_address)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, v); } - if (cfg->tunnel_mtu) { - GVariant *v = g_variant_new_uint32(cfg->tunnel_mtu); - g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_MTU, v); + if (cfg->tunnel_prefix) { + GVariant *v = g_variant_new_uint32(cfg->tunnel_prefix); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, v); } if (cfg->dns_address) { GVariantBuilder dns_builder; g_variant_builder_init(&dns_builder, G_VARIANT_TYPE("au")); - g_variant_builder_add(&dns_builder, "u", cfg->dns_address); + g_variant_builder_add(&dns_builder, "u", g_htonl(cfg->dns_address)); GVariant *dns_variant = g_variant_builder_end(&dns_builder); - g_variant_builder_add(&b, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, dns_variant); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, dns_variant); } - GVariant *dict = g_variant_builder_end(&b); - nm_vpn_service_plugin_set_ip4_config(plugin, dict); + GVariant *ipv4_dict = g_variant_builder_end(&ipv4_builder); + nm_vpn_service_plugin_set_ip4_config(plugin, ipv4_dict); } /* real_connect: invoked by NM when starting a VPN session */ @@ -208,6 +219,16 @@ real_disconnect(NMVpnServicePlugin *plugin, GError **error) return TRUE; } +static gboolean +empty_need_secrets (NMVpnServicePlugin *plugin, + NMConnection *connection, + const char **setting_name, + GError **error) +{ + g_debug("DBUS need secrets: Skipped!"); + return FALSE; +} + /* GObject init/class functions */ static void nm_seaside_plugin_init(NMSeasidePlugin *plugin) @@ -226,6 +247,7 @@ nm_seaside_plugin_class_init(NMSeasidePluginClass *klass) { NMVpnServicePluginClass *parent = NM_VPN_SERVICE_PLUGIN_CLASS(klass); parent->connect = real_connect; + parent->need_secrets = empty_need_secrets; parent->disconnect = real_disconnect; } From 7c2719bc5025504669a6d83d003bb4b369a1e38f Mon Sep 17 00:00:00 2001 From: pseusys Date: Mon, 3 Nov 2025 02:55:12 +0100 Subject: [PATCH 19/67] plugin processed --- .../barnacles/network-manager/plugin/plugin.c | 55 +++++++++++++++++-- viridian/reef/shared_library/lib/mod.rs | 55 ++++++++++--------- viridian/reef/shared_library/lib/viridian.rs | 3 +- 3 files changed, 81 insertions(+), 32 deletions(-) diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index b51763be..67742e31 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -20,7 +20,7 @@ #define LIB_BASENAME "libseaside.so" typedef bool (*vpn_init_fn)(const char*, const char*, struct VPNConfig*, void**, char**); -typedef bool (*vpn_start_fn)(void*, const void*, char**); +typedef bool (*vpn_start_fn)(void*, const void*, const void*, void (*)(void*, char*), char**); typedef bool (*vpn_stop_fn)(void*, char**); /* Private plugin state */ @@ -35,6 +35,44 @@ typedef struct { G_DEFINE_TYPE_WITH_PRIVATE(NMSeasidePlugin, nm_seaside_plugin, NM_TYPE_VPN_SERVICE_PLUGIN) +typedef struct { + NMVpnServicePlugin *plugin; + char *message; +} CaptureErrorData; + +static gboolean capture_error_idle(gpointer data) { + g_debug("DBUS runtime: Starting synchronous error report..."); + CaptureErrorData *d = data; + + if (d->message) { + g_debug("DBUS runtime: Setting plugin failure..."); + nm_vpn_service_plugin_failure(d->plugin, NM_VPN_PLUGIN_FAILURE_CONNECT_FAILED); + + g_debug("DBUS runtime: Requesting disconnect from NM..."); + nm_vpn_service_plugin_disconnect(d->plugin, NULL); + + g_error("DBUS runtime: Error running SeasideVPN interface: %s", d->message); + free(d->message); + + } else + g_debug("DBUS runtime: SeasideVPN interface exited cleanly!"); + + g_free(d); + g_debug("DBUS runtime: Error reported successfully!"); + return G_SOURCE_REMOVE; +} + +static void +capture_error(void* plugin_ptr, char* error) +{ + g_debug("DBUS runtime: Starting asynchronous error report..."); + CaptureErrorData *d = g_new0(CaptureErrorData, 1); + d->plugin = (NMVpnServicePlugin *) plugin_ptr; + d->message = error ? error : NULL; + g_idle_add(capture_error_idle, d); + g_debug("DBUS runtime: Asynchronous report sent!"); +} + /* Try to dlopen letting the system search for the library; fall back to explicit paths. */ static gboolean seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) @@ -87,8 +125,8 @@ seaside_set_ip4_from_vpnconfig(NMVpnServicePlugin *plugin, const VPNConfig *cfg) g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_MTU, v); } - if (cfg->tunnel_address) { - GVariant *v = g_variant_new_uint32(g_htonl(cfg->tunnel_address)); + if (cfg->remote_address) { + GVariant *v = g_variant_new_uint32(g_htonl(cfg->remote_address)); g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_EXT_GATEWAY, v); } @@ -103,6 +141,11 @@ seaside_set_ip4_from_vpnconfig(NMVpnServicePlugin *plugin, const VPNConfig *cfg) g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, v); } + if (cfg->tunnel_gateway) { + GVariant *v = g_variant_new_uint32(g_htonl(cfg->tunnel_gateway)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_INT_GATEWAY, v); + } + if (cfg->tunnel_prefix) { GVariant *v = g_variant_new_uint32(cfg->tunnel_prefix); g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, v); @@ -112,8 +155,8 @@ seaside_set_ip4_from_vpnconfig(NMVpnServicePlugin *plugin, const VPNConfig *cfg) GVariantBuilder dns_builder; g_variant_builder_init(&dns_builder, G_VARIANT_TYPE("au")); g_variant_builder_add(&dns_builder, "u", g_htonl(cfg->dns_address)); - GVariant *dns_variant = g_variant_builder_end(&dns_builder); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, dns_variant); + GVariant *v = g_variant_builder_end(&dns_builder); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, v); } GVariant *ipv4_dict = g_variant_builder_end(&ipv4_builder); @@ -181,7 +224,7 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro /* Start engine in background; pass plugin pointer so callbacks are instance-specific */ g_debug("DBUS connect: Starting viridian..."); - if (!priv->vpn_start(viridian, &priv->coordinator, &err_string)) { + if (!priv->vpn_start(viridian, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { g_warning("DBUS connect: Error starting viridian: %s", err_string); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error starting viridian: %s", err_string); free(err_string); diff --git a/viridian/reef/shared_library/lib/mod.rs b/viridian/reef/shared_library/lib/mod.rs index 2f247430..18b5ec03 100644 --- a/viridian/reef/shared_library/lib/mod.rs +++ b/viridian/reef/shared_library/lib/mod.rs @@ -1,16 +1,17 @@ use std::ffi::{c_char, c_void, CStr, CString}; use std::fs::read; -use std::net::IpAddr; +use std::ptr::null; use std::str::FromStr; use prost::Message; use tokio::sync::oneshot::{channel, Sender}; use tokio::task::JoinHandle; +use tun::AbstractDevice; use reeflib::generated::SeasideWhirlpoolClientCertificate; use reeflib::protocol::ProtocolType; +use reeflib::utils::parse_address; use reeflib::{run_coroutine_in_thread, run_coroutine_sync, DynResult}; -use tun::AbstractDevice; use crate::viridian::Viridian; @@ -24,23 +25,31 @@ unsafe impl Send for RawPtr {} /// cbindgen:ignore struct Coordinator { - handle: JoinHandle>, + handle: JoinHandle, terminator: Sender<()> } #[repr(C)] pub struct VPNConfig { + remote_address: u32, tunnel_name: *const c_char, + tunnel_gateway: u32, tunnel_address: u32, tunnel_prefix: u32, tunnel_mtu: u32, dns_address: u32 } +macro_rules! error_to_string { + ($result:expr) => {{ + let sanitized = $result.chars().map(|c| if c == '\0' { '?' } else { c }).collect::(); + CString::new(sanitized).unwrap().into_raw() + }}; +} + macro_rules! return_error { ($result:expr, $error:ident) => {{ - let sanitized = $result.chars().map(|c| if c == '\0' { '?' } else { c }).collect::(); - unsafe { *$error = CString::new(sanitized).unwrap().into_raw() }; + unsafe { *$error = error_to_string!($result) }; return false; }}; } @@ -66,12 +75,17 @@ pub extern "C" fn vpn_init(certificate: *const c_char, protocol: *const c_char, Err(err) => return_error!(format!("Error resolving certificate string: {err}"), error) }; + let remote_address = certificate.address.clone(); let viridian = match run_coroutine_sync!(async { Viridian::new(certificate, protocol).await }) { Ok(res) => res, Err(err) => return_error!(format!("Error creating viridian: {err}"), error) }; let vpn_config = VPNConfig { + remote_address: match parse_address(&remote_address) { + Ok(res) => res.to_bits(), + Err(err) => return_error!(format!("Error handling remote gateway address: {err}"), error) + }, tunnel_name: match viridian.tunnel.tunnel.tunnel_device.tun_name() { Ok(tun_name) => match CString::new(tun_name) { Ok(res) => res.into_raw(), @@ -79,20 +93,9 @@ pub extern "C" fn vpn_init(certificate: *const c_char, protocol: *const c_char, }, Err(err) => return_error!(format!("Error extracting tunnel device name: {err}"), error) }, - tunnel_address: match viridian.tunnel.tunnel.tunnel_device.address() { - Ok(res) => match res { - IpAddr::V4(ipv4_addr) => ipv4_addr.to_bits(), - IpAddr::V6(ipv6_addr) => return_error!(format!("Error handling IPv6 tunnel device address: {ipv6_addr}"), error) - }, - Err(err) => return_error!(format!("Error extracting tunnel device address: {err}"), error) - }, - tunnel_prefix: match viridian.tunnel.tunnel.tunnel_device.netmask() { - Ok(res) => match res { - IpAddr::V4(ipv4_addr) => ipv4_addr.to_bits().count_ones(), - IpAddr::V6(ipv6_addr) => return_error!(format!("Error handling IPv6 tunnel device netmask: {ipv6_addr}"), error) - }, - Err(err) => return_error!(format!("Error extracting tunnel device address: {err}"), error) - }, + tunnel_gateway: viridian.tunnel_network.network().to_bits() + 1, + tunnel_address: viridian.tunnel_network.addr().to_bits(), + tunnel_prefix: viridian.tunnel_network.netmask().to_bits().count_ones(), tunnel_mtu: match viridian.tunnel.tunnel.tunnel_device.mtu() { Ok(res) => res.into(), Err(err) => return_error!(format!("Error extracting tunnel device MTU: {err}"), error) @@ -109,14 +112,19 @@ pub extern "C" fn vpn_init(certificate: *const c_char, protocol: *const c_char, } #[no_mangle] -pub extern "C" fn vpn_start(viridian_ptr: *mut c_void, coordinator_ptr: *mut *mut c_void, _: *mut *mut c_char) -> bool { +pub extern "C" fn vpn_start(viridian_ptr: *mut c_void, coordinator_ptr: *mut *mut c_void, plugin_ptr: *mut c_void, error_callback: extern "C" fn(*mut c_void, *const c_char) -> c_void, _: *mut *mut c_char) -> bool { + let plugin_raw = RawPtr(plugin_ptr); let viridian_raw = RawPtr(viridian_ptr); let (sender, mut receiver) = channel(); let handle = run_coroutine_in_thread!(async { + let plugin_raw_copy = plugin_raw; let viridian_raw_copy = viridian_raw; let mut viridian = unsafe { Box::from_raw(viridian_raw_copy.0 as *mut Viridian) }; - viridian.start(&mut receiver).await + match viridian.start(&mut receiver).await { + Ok(_) => error_callback(plugin_raw_copy.0, null()), + Err(err) => error_callback(plugin_raw_copy.0, error_to_string!(format!("Error in VPN loop: {err}"))), + } }); let coordinator = Box::new(Coordinator { handle, terminator: sender }); @@ -134,10 +142,7 @@ pub extern "C" fn vpn_stop(coordinator_ptr: *mut c_void, error: *mut *mut c_char } match run_coroutine_sync!(async { handle.await }) { - Ok(join_res) => match join_res { - Ok(_) => true, - Err(err) => return_error!(format!("Error terminating VPN loop: {err}"), error) - }, + Ok(_) => true, Err(err) => return_error!(format!("Error joining VPN loop termination: {err}"), error) } } diff --git a/viridian/reef/shared_library/lib/viridian.rs b/viridian/reef/shared_library/lib/viridian.rs index b072738a..0feb351c 100644 --- a/viridian/reef/shared_library/lib/viridian.rs +++ b/viridian/reef/shared_library/lib/viridian.rs @@ -23,6 +23,7 @@ pub struct Viridian<'a> { address: Ipv4Addr, port: u16, pub tunnel: Tunnel, + pub tunnel_network: Ipv4Net, client_type: ProtocolType, local_address: Ipv4Addr, pub dns: Option, @@ -54,7 +55,7 @@ impl<'a> Viridian<'a> { let tunnel = Tunnel::new(address, &tunnel_name, tunnel_network).await?; let default_ip = tunnel.default_ip(); - Ok(Viridian { key: ByteBuffer::from(certificate.typhoon_public), token: ByteBuffer::from(certificate.token), address, port, tunnel, client_type: protocol, local_address: default_ip, dns }) + Ok(Viridian { key: ByteBuffer::from(certificate.typhoon_public), token: ByteBuffer::from(certificate.token), address, port, tunnel, tunnel_network, client_type: protocol, local_address: default_ip, dns }) } pub async fn start(&mut self, receiver: &mut Receiver<()>) -> DynResult<()> { From 49935aabcbde5e1ddbf0986366f0a4c25a7d9bd5 Mon Sep 17 00:00:00 2001 From: pseusys Date: Mon, 3 Nov 2025 19:43:18 +0100 Subject: [PATCH 20/67] plugin works! --- .../barnacles/network-manager/plugin/plugin.c | 112 +++++++++--------- viridian/reef/shared_library/lib/mod.rs | 31 +++-- 2 files changed, 72 insertions(+), 71 deletions(-) diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index 67742e31..bd4a8f97 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -19,22 +19,24 @@ /* Shared library base names to try letting the loader find them */ #define LIB_BASENAME "libseaside.so" -typedef bool (*vpn_init_fn)(const char*, const char*, struct VPNConfig*, void**, char**); -typedef bool (*vpn_start_fn)(void*, const void*, const void*, void (*)(void*, char*), char**); +typedef bool (*vpn_start_fn)(const char*, const char*, struct VPNConfig**, void**, void*, void (*)(void*, char*), char**); typedef bool (*vpn_stop_fn)(void*, char**); /* Private plugin state */ typedef struct { void *lib_handle; void *coordinator; - vpn_init_fn vpn_init; vpn_start_fn vpn_start; vpn_stop_fn vpn_stop; - gboolean running; } NMSeasidePluginPrivate; G_DEFINE_TYPE_WITH_PRIVATE(NMSeasidePlugin, nm_seaside_plugin, NM_TYPE_VPN_SERVICE_PLUGIN) +typedef struct { + NMVpnServicePlugin* plugin; + VPNConfig* cfg; +} IdleConfigData; + typedef struct { NMVpnServicePlugin *plugin; char *message; @@ -66,9 +68,9 @@ static void capture_error(void* plugin_ptr, char* error) { g_debug("DBUS runtime: Starting asynchronous error report..."); - CaptureErrorData *d = g_new0(CaptureErrorData, 1); + CaptureErrorData *d = g_new(CaptureErrorData, 1); d->plugin = (NMVpnServicePlugin *) plugin_ptr; - d->message = error ? error : NULL; + d->message = error; g_idle_add(capture_error_idle, d); g_debug("DBUS runtime: Asynchronous report sent!"); } @@ -91,11 +93,10 @@ seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) } /* Resolve symbols */ - priv->vpn_init = (vpn_init_fn) dlsym(priv->lib_handle, "vpn_init"); priv->vpn_start = (vpn_start_fn) dlsym(priv->lib_handle, "vpn_start"); priv->vpn_stop = (vpn_stop_fn) dlsym(priv->lib_handle, "vpn_stop"); - if (!priv->vpn_init || !priv->vpn_start || !priv->vpn_stop) { + if (!priv->vpn_start || !priv->vpn_stop) { g_set_error (error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, @@ -109,58 +110,77 @@ seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) } /* Build and send NM IPv4 config from VPNConfig */ -static void -seaside_set_ip4_from_vpnconfig(NMVpnServicePlugin *plugin, const VPNConfig *cfg) +static gboolean +seaside_set_vpnconfig(gpointer user_data) { + g_debug("DBUS config: Starting asynchronous configuration setting..."); + IdleConfigData *data = (IdleConfigData *)user_data; + GVariantBuilder gen_builder; + g_debug("DBUS config: Initializing general configuration..."); g_variant_builder_init(&gen_builder, G_VARIANT_TYPE_VARDICT); - if (cfg->tunnel_name && cfg->tunnel_name[0]) { - GVariant *v = g_variant_new_string(cfg->tunnel_name); + if (data->cfg->tunnel_name && data->cfg->tunnel_name[0]) { + g_debug("DBUS config: Setting tunnel name to: %s", data->cfg->tunnel_name); + GVariant *v = g_variant_new_string(data->cfg->tunnel_name); g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_TUNDEV, v); } - if (cfg->tunnel_mtu) { - GVariant *v = g_variant_new_uint32(cfg->tunnel_mtu); + if (data->cfg->tunnel_mtu) { + g_debug("DBUS config: Setting tunnel MTU to: %d", data->cfg->tunnel_mtu); + GVariant *v = g_variant_new_uint32(data->cfg->tunnel_mtu); g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_MTU, v); } - if (cfg->remote_address) { - GVariant *v = g_variant_new_uint32(g_htonl(cfg->remote_address)); + if (data->cfg->remote_address) { + g_debug("DBUS config: Setting tunnel remote gateway to: %d", data->cfg->remote_address); + GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->remote_address)); g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_EXT_GATEWAY, v); } GVariant *gen_dict = g_variant_builder_end(&gen_builder); - nm_vpn_service_plugin_set_config(plugin, gen_dict); + g_debug("DBUS config: Sending general configuration..."); + nm_vpn_service_plugin_set_config(data->plugin, gen_dict); GVariantBuilder ipv4_builder; + g_debug("DBUS config: Initializing IPv4 configuration..."); g_variant_builder_init(&ipv4_builder, G_VARIANT_TYPE_VARDICT); - if (cfg->tunnel_address) { - GVariant *v = g_variant_new_uint32(g_htonl(cfg->tunnel_address)); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, v); + if (data->cfg->tunnel_gateway) { + g_debug("DBUS config: Setting tunnel internal gateway to: %d", data->cfg->tunnel_gateway); + GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->tunnel_gateway)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_INT_GATEWAY, v); } - if (cfg->tunnel_gateway) { - GVariant *v = g_variant_new_uint32(g_htonl(cfg->tunnel_gateway)); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_INT_GATEWAY, v); + if (data->cfg->tunnel_address) { + g_debug("DBUS config: Setting tunnel address to: %d", data->cfg->tunnel_address); + GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->tunnel_address)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, v); } - if (cfg->tunnel_prefix) { - GVariant *v = g_variant_new_uint32(cfg->tunnel_prefix); + if (data->cfg->tunnel_prefix) { + g_debug("DBUS config: Setting tunnel prefix to: %d", data->cfg->tunnel_prefix); + GVariant *v = g_variant_new_uint32(data->cfg->tunnel_prefix); g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, v); } - if (cfg->dns_address) { + if (data->cfg->dns_address) { + g_debug("DBUS config: Setting tunnel DNS address to: %d", data->cfg->dns_address); GVariantBuilder dns_builder; g_variant_builder_init(&dns_builder, G_VARIANT_TYPE("au")); - g_variant_builder_add(&dns_builder, "u", g_htonl(cfg->dns_address)); + g_variant_builder_add(&dns_builder, "u", g_htonl(data->cfg->dns_address)); GVariant *v = g_variant_builder_end(&dns_builder); g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, v); } GVariant *ipv4_dict = g_variant_builder_end(&ipv4_builder); - nm_vpn_service_plugin_set_ip4_config(plugin, ipv4_dict); + g_debug("DBUS config: Sending IPv4 configuration..."); + nm_vpn_service_plugin_set_ip4_config(data->plugin, ipv4_dict); + + free(data->cfg); + g_free(data); + g_debug("DBUS config: Configuration sent!"); + return G_SOURCE_REMOVE; } /* real_connect: invoked by NM when starting a VPN session */ @@ -198,40 +218,25 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro if (!seaside_load_library(priv, error)) { g_warning("DBUS connect: Error loading Seaside Reef DLL"); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, - "Error loading Seaside Reef DLL"); return FALSE; } else g_debug("DBUS connect: Seaside Reef DLL loaded!"); - VPNConfig cfg; - memset(&cfg, 0, sizeof(cfg)); - - void *viridian; + VPNConfig *cfg; char *err_string; - - /* Synchronous initialization: library fills VPNConfig */ - g_debug("DBUS connect: Initializing viridian..."); - if (!priv->vpn_init(certificate, protocol, &cfg, &viridian, &err_string)) { - g_warning("DBUS connect: Error initializing viridian: %s", err_string); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error initializing viridian: %s", err_string); - free(err_string); - return FALSE; - } else g_debug("DBUS connect: Viridian initialized!"); - - /* Tell NetworkManager about the IP config we want applied */ - g_debug("DBUS connect: Setting IPv4 parameters..."); - seaside_set_ip4_from_vpnconfig(plugin, &cfg); - - /* Start engine in background; pass plugin pointer so callbacks are instance-specific */ g_debug("DBUS connect: Starting viridian..."); - if (!priv->vpn_start(viridian, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { + if (!priv->vpn_start(certificate, protocol, &cfg, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { g_warning("DBUS connect: Error starting viridian: %s", err_string); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error starting viridian: %s", err_string); free(err_string); return FALSE; } else g_debug("DBUS connect: Viridian started!"); - priv->running = TRUE; + IdleConfigData *data = g_new(IdleConfigData, 1); + data->plugin = plugin; + data->cfg = cfg; + g_debug("DBUS connect: Scheduling configuration setting..."); + g_idle_add(seaside_set_vpnconfig, data); + g_debug("DBUS connect: Success!"); return TRUE; } @@ -243,7 +248,7 @@ real_disconnect(NMVpnServicePlugin *plugin, GError **error) g_debug("DBUS disconnect: Starting..."); NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); - if (priv->coordinator && priv->running && priv->vpn_stop) { + if (priv->coordinator && priv->vpn_stop) { char *err_string; g_debug("DBUS disconnect: Stopping SeasideVPN interface..."); @@ -254,7 +259,6 @@ real_disconnect(NMVpnServicePlugin *plugin, GError **error) } else g_debug("DBUS disconnect: SeasideVPN interface stopped successfully!"); priv->coordinator = NULL; - priv->running = FALSE; } else g_debug("DBUS disconnect: SeasideVPN interface was never run!"); nm_vpn_service_plugin_disconnect(plugin, NULL); @@ -279,10 +283,8 @@ nm_seaside_plugin_init(NMSeasidePlugin *plugin) NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(plugin); priv->lib_handle = NULL; priv->coordinator = NULL; - priv->vpn_init = NULL; priv->vpn_start = NULL; priv->vpn_stop = NULL; - priv->running = FALSE; } static void diff --git a/viridian/reef/shared_library/lib/mod.rs b/viridian/reef/shared_library/lib/mod.rs index 18b5ec03..acfbabb5 100644 --- a/viridian/reef/shared_library/lib/mod.rs +++ b/viridian/reef/shared_library/lib/mod.rs @@ -1,6 +1,6 @@ use std::ffi::{c_char, c_void, CStr, CString}; use std::fs::read; -use std::ptr::null; +use std::ptr::null_mut; use std::str::FromStr; use prost::Message; @@ -24,7 +24,8 @@ struct RawPtr(*mut c_void); unsafe impl Send for RawPtr {} /// cbindgen:ignore -struct Coordinator { +struct Coordinator<'a> { + viridian: *mut Viridian<'a>, handle: JoinHandle, terminator: Sender<()> } @@ -55,7 +56,7 @@ macro_rules! return_error { } #[no_mangle] -pub extern "C" fn vpn_init(certificate: *const c_char, protocol: *const c_char, config: *mut VPNConfig, viridian_ptr: *mut *mut c_void, error: *mut *mut c_char) -> bool { +pub extern "C" fn vpn_start(certificate: *const c_char, protocol: *const c_char, config: *mut *mut VPNConfig, coordinator_ptr: *mut *mut c_void, plugin_ptr: *mut c_void, error_callback: extern "C" fn(*mut c_void, *mut c_char) -> c_void, error: *mut *mut c_char) -> bool { let protocol = match unsafe { CStr::from_ptr(protocol) }.to_str() { Ok(proto_str) => match ProtocolType::from_str(proto_str) { Ok(res) => res, @@ -106,29 +107,24 @@ pub extern "C" fn vpn_init(certificate: *const c_char, protocol: *const c_char, } }; - unsafe { *config = vpn_config } - unsafe { *viridian_ptr = Box::into_raw(Box::new(viridian)) as *mut c_void }; - true -} + let viridian_ptr = Box::into_raw(Box::new(viridian)); + let (sender, mut receiver) = channel(); -#[no_mangle] -pub extern "C" fn vpn_start(viridian_ptr: *mut c_void, coordinator_ptr: *mut *mut c_void, plugin_ptr: *mut c_void, error_callback: extern "C" fn(*mut c_void, *const c_char) -> c_void, _: *mut *mut c_char) -> bool { let plugin_raw = RawPtr(plugin_ptr); - let viridian_raw = RawPtr(viridian_ptr); - let (sender, mut receiver) = channel(); + let viridian_raw = RawPtr(viridian_ptr as *mut c_void); let handle = run_coroutine_in_thread!(async { let plugin_raw_copy = plugin_raw; let viridian_raw_copy = viridian_raw; let mut viridian = unsafe { Box::from_raw(viridian_raw_copy.0 as *mut Viridian) }; match viridian.start(&mut receiver).await { - Ok(_) => error_callback(plugin_raw_copy.0, null()), + Ok(_) => error_callback(plugin_raw_copy.0, null_mut()), Err(err) => error_callback(plugin_raw_copy.0, error_to_string!(format!("Error in VPN loop: {err}"))), } }); - let coordinator = Box::new(Coordinator { handle, terminator: sender }); - unsafe { *coordinator_ptr = Box::into_raw(coordinator) as *mut c_void }; + unsafe { *config = Box::into_raw(Box::new(vpn_config)) }; + unsafe { *coordinator_ptr = Box::into_raw(Box::new(Coordinator { viridian: viridian_ptr, handle, terminator: sender })) as *mut c_void }; true } @@ -141,8 +137,11 @@ pub extern "C" fn vpn_stop(coordinator_ptr: *mut c_void, error: *mut *mut c_char return_error!("Error terminating VPN loop", error) } - match run_coroutine_sync!(async { handle.await }) { + let result = match run_coroutine_sync!(async { handle.await }) { Ok(_) => true, Err(err) => return_error!(format!("Error joining VPN loop termination: {err}"), error) - } + }; + + let _viridian = unsafe { Box::from_raw(coordinator.viridian as *mut Viridian) }; + return result; } From 7794aec14323c08cfc235c00ff4badd9fe36bbd7 Mon Sep 17 00:00:00 2001 From: pseusys Date: Mon, 3 Nov 2025 20:54:07 +0100 Subject: [PATCH 21/67] logging improved --- .../configuration/service.conf | 1 + .../barnacles/network-manager/editor/editor.c | 12 ++++++--- .../barnacles/network-manager/plugin/plugin.c | 25 ++++++++++++++----- 3 files changed, 29 insertions(+), 9 deletions(-) diff --git a/viridian/barnacles/network-manager/configuration/service.conf b/viridian/barnacles/network-manager/configuration/service.conf index 1cab3d3c..8b79e69d 100644 --- a/viridian/barnacles/network-manager/configuration/service.conf +++ b/viridian/barnacles/network-manager/configuration/service.conf @@ -7,6 +7,7 @@ + diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/barnacles/network-manager/editor/editor.c index 55b6822a..c297e87c 100644 --- a/viridian/barnacles/network-manager/editor/editor.c +++ b/viridian/barnacles/network-manager/editor/editor.c @@ -85,12 +85,14 @@ static gboolean check_validity(SeasideEditor* self, GError** error) { char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(widget)); if (!filename || !strlen(filename)) { + g_warning("Error reading filename!"); g_set_error (error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "No certificate file selected"); g_free(filename); return FALSE; } if (!g_file_test(filename, G_FILE_TEST_EXISTS)) { + g_warning("Error checking filename existence!"); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "Selected certificate file does not exist: %s", filename); g_free(filename); return FALSE; @@ -192,20 +194,23 @@ static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError NMVpnEditor* object = g_object_new(SEASIDE_TYPE_EDITOR, NULL); if (!object) { - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not create seaside object"); + g_warning("Error creating SeasideVPN editor interface!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error creating SeasideVPN editor interface"); return NULL; } SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(object)); - priv->builder = gtk_builder_new(); - if (!gtk_builder_add_from_resource(priv->builder, "/org/freedesktop/network-manager-seasidevpn/dialog.ui", error)) { + priv->builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog.ui"); + if (!priv->builder) { + g_warning("Error loading SeasideVPN editor interface UI!"); g_object_unref(object); return NULL; } priv->widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "root_box")); if (!priv->widget) { + g_warning("Error building SeasideVPN editor interface UI!"); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); g_object_unref(object); return NULL; @@ -213,6 +218,7 @@ static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError g_object_ref_sink(priv->widget); if (!init_editor_plugin(SEASIDE_EDITOR(object), connection, error)) { + g_warning("Error initializing SeasideVPN editor interface UI!"); g_object_unref(object); return NULL; } diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index bd4a8f97..d5163b36 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -19,6 +19,8 @@ /* Shared library base names to try letting the loader find them */ #define LIB_BASENAME "libseaside.so" +#define IP(x) ((char*)&x)[0], ((char*)&x)[1], ((char*)&x)[2], ((char*)&x)[3] + typedef bool (*vpn_start_fn)(const char*, const char*, struct VPNConfig**, void**, void*, void (*)(void*, char*), char**); typedef bool (*vpn_stop_fn)(void*, char**); @@ -127,13 +129,13 @@ seaside_set_vpnconfig(gpointer user_data) } if (data->cfg->tunnel_mtu) { - g_debug("DBUS config: Setting tunnel MTU to: %d", data->cfg->tunnel_mtu); + g_debug("DBUS config: Setting tunnel MTU to: %u", data->cfg->tunnel_mtu); GVariant *v = g_variant_new_uint32(data->cfg->tunnel_mtu); g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_MTU, v); } if (data->cfg->remote_address) { - g_debug("DBUS config: Setting tunnel remote gateway to: %d", data->cfg->remote_address); + g_debug("DBUS config: Setting tunnel remote gateway to: %02x.%02x.%02x.%02x", IP(data->cfg->remote_address)); GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->remote_address)); g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_EXT_GATEWAY, v); } @@ -147,25 +149,25 @@ seaside_set_vpnconfig(gpointer user_data) g_variant_builder_init(&ipv4_builder, G_VARIANT_TYPE_VARDICT); if (data->cfg->tunnel_gateway) { - g_debug("DBUS config: Setting tunnel internal gateway to: %d", data->cfg->tunnel_gateway); + g_debug("DBUS config: Setting tunnel internal gateway to: %02x.%02x.%02x.%02x", IP(data->cfg->tunnel_gateway)); GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->tunnel_gateway)); g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_INT_GATEWAY, v); } if (data->cfg->tunnel_address) { - g_debug("DBUS config: Setting tunnel address to: %d", data->cfg->tunnel_address); + g_debug("DBUS config: Setting tunnel address to: %02x.%02x.%02x.%02x", IP(data->cfg->tunnel_address)); GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->tunnel_address)); g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, v); } if (data->cfg->tunnel_prefix) { - g_debug("DBUS config: Setting tunnel prefix to: %d", data->cfg->tunnel_prefix); + g_debug("DBUS config: Setting tunnel prefix to: %u", data->cfg->tunnel_prefix); GVariant *v = g_variant_new_uint32(data->cfg->tunnel_prefix); g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, v); } if (data->cfg->dns_address) { - g_debug("DBUS config: Setting tunnel DNS address to: %d", data->cfg->dns_address); + g_debug("DBUS config: Setting tunnel DNS address to: %02x.%02x.%02x.%02x", IP(data->cfg->dns_address)); GVariantBuilder dns_builder; g_variant_builder_init(&dns_builder, G_VARIANT_TYPE("au")); g_variant_builder_add(&dns_builder, "u", g_htonl(data->cfg->dns_address)); @@ -276,6 +278,16 @@ empty_need_secrets (NMVpnServicePlugin *plugin, return FALSE; } +static gboolean +empty_new_secrets (NMVpnServicePlugin *base_plugin, + NMConnection *connection, + GError **error) + +{ + g_debug("DBUS new secrets: Skipped!"); + return TRUE; +} + /* GObject init/class functions */ static void nm_seaside_plugin_init(NMSeasidePlugin *plugin) @@ -294,6 +306,7 @@ nm_seaside_plugin_class_init(NMSeasidePluginClass *klass) parent->connect = real_connect; parent->need_secrets = empty_need_secrets; parent->disconnect = real_disconnect; + parent->new_secrets = empty_new_secrets; } /* Factory to create a plugin instance and register D-Bus service name */ From 8e75bd8974420d112e82385e53e16c949fdf92b1 Mon Sep 17 00:00:00 2001 From: pseusys Date: Wed, 5 Nov 2025 23:59:34 +0100 Subject: [PATCH 22/67] full support for gtk4 --- viridian/barnacles/network-manager/Makefile | 24 +- .../configuration/descriptor.ini | 8 - .../editor/{dialog.ui => dialog_gtk3.ui} | 0 .../network-manager/editor/dialog_gtk4.ui | 61 +++++ .../barnacles/network-manager/editor/editor.c | 246 +++--------------- .../barnacles/network-manager/editor/editor.h | 19 ++ .../network-manager/editor/gresource.xml | 3 +- .../network-manager/editor/interface.h | 39 +++ .../network-manager/editor/interface_gtk3.c | 180 +++++++++++++ .../network-manager/editor/interface_gtk4.c | 240 +++++++++++++++++ 10 files changed, 589 insertions(+), 231 deletions(-) rename viridian/barnacles/network-manager/editor/{dialog.ui => dialog_gtk3.ui} (100%) create mode 100644 viridian/barnacles/network-manager/editor/dialog_gtk4.ui create mode 100644 viridian/barnacles/network-manager/editor/interface.h create mode 100644 viridian/barnacles/network-manager/editor/interface_gtk3.c create mode 100644 viridian/barnacles/network-manager/editor/interface_gtk4.c diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index bdf7e9c4..c932b49b 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -18,8 +18,13 @@ help: # Building and setting up system: +G_C_FLAGS := $(shell pkg-config --cflags --libs libnm) +ifeq ($(BUILD_TYPE),debug) + G_C_FLAGS := $(G_C_FLAGS) -Og +endif -G_C_FLAGS := $(shell pkg-config --cflags --libs libnm gtk+-3.0) +G_C_FLAGS_GTK_3 := $(G_C_FLAGS) $(shell pkg-config --cflags --libs gtk+-3.0) +G_C_FLAGS_GTK_4 := $(G_C_FLAGS) $(shell pkg-config --cflags --libs gtk4) BUILD_ARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) PLUGIN_NAME := seasidevpn @@ -30,6 +35,7 @@ BIN_DIR := /usr/lib/$(BUILD_ARCH) PLUGIN_DIR := $(BIN_DIR)/NetworkManager SERVICE_DIR := /usr/libexec NM_DBUS_DIR := /usr/share/dbus-1/system.d +PLUGIN_INTERFACE_BASE := $(PLUGIN_DIR)/libnm-vpn-editor-$(PLUGIN_NAME) REEF_DIR := ../../reef NM_CONFIGURATION_DIR := configuration @@ -43,12 +49,10 @@ INSTALL_PLUGIN := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-service INSTALL_NAME := $(LIB_DIR)/nm-$(PLUGIN_NAME)-service.name INSTALL_CONF := $(NM_DBUS_DIR)/nm-$(PLUGIN_NAME)-service.conf INSTALL_EDITOR := $(PLUGIN_DIR)/libnm-vpn-plugin-$(PLUGIN_NAME).so +INSTALL_INTERFACE_GTK3 := $(PLUGIN_INTERFACE_BASE)-gtk3.so +INSTALL_INTERFACE_GTK4 := $(PLUGIN_INTERFACE_BASE)-gtk4.so - -G_C_FLAGS := $(G_C_FLAGS) -DSEASIDE_PLUGIN_SERVICE="\"$(SERVICE_NAME)\"" -ifeq ($(BUILD_TYPE),debug) - G_C_FLAGS := $(G_C_FLAGS) -Og -endif +EXTRA_FLAGS := -DSEASIDE_PLUGIN_SERVICE="\"$(SERVICE_NAME)\"" -DEDITOR_INTERFACE_PATH="\"$(PLUGIN_INTERFACE_BASE)\"" dir-build: @@ -59,7 +63,9 @@ dir-build: editor-build: dir-build @ # Build network manager reef editor glib-compile-resources $(NM_EDITOR_DIR)/gresource.xml --sourcedir=$(NM_EDITOR_DIR) --target=$(NM_BUILD_DIR)/resources.gen.c --generate-source - gcc -fPIC -shared $(NM_EDITOR_DIR)/editor.c $(NM_BUILD_DIR)/resources.gen.c $(NM_EDITOR_DIR)/editor.h -o $(NM_BUILD_DIR)/editor.so $(G_C_FLAGS) + gcc -fPIC -shared $(NM_EDITOR_DIR)/editor.c $(NM_EDITOR_DIR)/editor.h -o $(NM_BUILD_DIR)/editor.so $(G_C_FLAGS) $(EXTRA_FLAGS) + gcc -fPIC -shared $(NM_EDITOR_DIR)/*.h $(NM_EDITOR_DIR)/interface_gtk3.c $(NM_BUILD_DIR)/resources.gen.c -o $(NM_BUILD_DIR)/interface-gtk3.so $(EXTRA_FLAGS) $(G_C_FLAGS_GTK_3) + gcc -fPIC -shared $(NM_EDITOR_DIR)/*.h $(NM_EDITOR_DIR)/interface_gtk4.c $(NM_BUILD_DIR)/resources.gen.c -o $(NM_BUILD_DIR)/interface-gtk4.so $(EXTRA_FLAGS) $(G_C_FLAGS_GTK_4) .PHONY: editor-build plugin-build: dir-build @@ -86,6 +92,8 @@ install: build sudo install -D -m 644 $(NM_BUILD_DIR)/descriptor.ini.gen $(INSTALL_NAME) sudo install -D -m 644 $(NM_CONFIGURATION_DIR)/service.conf $(INSTALL_CONF) sudo install -D -m 644 $(NM_BUILD_DIR)/editor.so $(INSTALL_EDITOR) + sudo install -D -m 644 $(NM_BUILD_DIR)/interface-gtk3.so $(INSTALL_INTERFACE_GTK3) + sudo install -D -m 644 $(NM_BUILD_DIR)/interface-gtk4.so $(INSTALL_INTERFACE_GTK4) sudo install -D -m 644 $(NM_BIN_DIR)/libseaside.so $(INSTALL_BIN) ifneq ($(RUNNING_IN_DOCKER),true) sudo systemctl restart NetworkManager @@ -108,5 +116,5 @@ endif clean: @ # Clean network manager plugin build artifacts rm -rf $(NM_BUILD_DIR) - sudo rm -f $(INSTALL_PLUGIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) $(INSTALL_BIN) + sudo rm -f $(INSTALL_PLUGIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) $(INSTALL_INTERFACE_GTK3) $(INSTALL_INTERFACE_GTK4) $(INSTALL_BIN) .PHONY: clean diff --git a/viridian/barnacles/network-manager/configuration/descriptor.ini b/viridian/barnacles/network-manager/configuration/descriptor.ini index 90154028..ce6c37ca 100644 --- a/viridian/barnacles/network-manager/configuration/descriptor.ini +++ b/viridian/barnacles/network-manager/configuration/descriptor.ini @@ -3,14 +3,6 @@ name=SEASIDE-PLUGIN-NAME service=DBUS-SERVICE-NAME program=PATH-TO-SEASIDEVPN-PLUGIN supports-multiple-connections=false -supports-secrets=false -supports-save-password=false -supports-save-username=false -supports-user-interaction=false -supports-ipv6=false -supports-mtu-setting=true -supports-routing=true -supports-bypass=false [libnm] plugin=PATH-TO-SEASIDEVPN-EDITOR diff --git a/viridian/barnacles/network-manager/editor/dialog.ui b/viridian/barnacles/network-manager/editor/dialog_gtk3.ui similarity index 100% rename from viridian/barnacles/network-manager/editor/dialog.ui rename to viridian/barnacles/network-manager/editor/dialog_gtk3.ui diff --git a/viridian/barnacles/network-manager/editor/dialog_gtk4.ui b/viridian/barnacles/network-manager/editor/dialog_gtk4.ui new file mode 100644 index 00000000..f76d24ad --- /dev/null +++ b/viridian/barnacles/network-manager/editor/dialog_gtk4.ui @@ -0,0 +1,61 @@ + + + + vertical + 6 + + + + Certificate file (.sea): + start + + + + + + horizontal + 6 + + + No file selected + true + start + + + + + Choose... + + + + + + + + Protocol: + start + + + + + + horizontal + 6 + + + + TYPHOON + true + + + + + + PORT + radio_typhoon + + + + + + diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/barnacles/network-manager/editor/editor.c index c297e87c..eb2578cb 100644 --- a/viridian/barnacles/network-manager/editor/editor.c +++ b/viridian/barnacles/network-manager/editor/editor.c @@ -1,23 +1,9 @@ -#include -#include -#include -#include -#include -#include +#include #include -#define SEASIDE_EDITOR_PLUGIN_ERROR NM_CONNECTION_ERROR -#define SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY NM_CONNECTION_ERROR_INVALID_PROPERTY - #include "editor.h" -#define SEASIDE_PLUGIN_NAME "SeasideVPN" -#define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" - -#define NM_SEASIDE_KEY_CERTIFICATE "certificate" -#define NM_SEASIDE_KEY_PROTOCOL "protocol" - // PLUGIN: enum { @@ -31,19 +17,6 @@ static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* ifa G_DEFINE_TYPE_EXTENDED(SeasideEditorPlugin, seaside_editor_plugin, G_TYPE_OBJECT, 0, G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR_PLUGIN, seaside_editor_plugin_interface_init)) -// UI WIDGET: - -static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class); - -typedef struct { - GtkBuilder *builder; - GtkWidget *widget; - GtkSizeGroup *group; - gboolean window_added; -} SeasideEditorPrivate; - -G_DEFINE_TYPE_WITH_CODE(SeasideEditor, seaside_editor, G_TYPE_OBJECT, G_ADD_PRIVATE(SeasideEditor) G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR, seaside_editor_interface_init)) - typedef enum { NM_SEASIDE_IMPORT_EXPORT_ERROR_UNKNOWN = 0, NM_SEASIDE_IMPORT_EXPORT_ERROR_NOT_SEASIDE, @@ -60,202 +33,49 @@ static GQuark nm_seaside_import_export_error_quark(void) { return quark; } -static NMConnection* import(NMVpnEditorPlugin* iface, const char* path, GError** error) { - g_message("Importing SeasideVPN connection..."); - - NMConnection* connection = nm_simple_connection_new(); - - NMSettingConnection* s_con = NM_SETTING_CONNECTION(nm_setting_connection_new()); - nm_connection_add_setting(connection, NM_SETTING(s_con)); - - NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); - g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); - nm_connection_add_setting(connection, NM_SETTING(s_vpn)); - - NMSettingIP4Config* s_ip4 = NM_SETTING_IP4_CONFIG(nm_setting_ip4_config_new()); - nm_connection_add_setting(connection, NM_SETTING(s_ip4)); - - nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, path); - return connection; -} - -static gboolean check_validity(SeasideEditor* self, GError** error) { - SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); - GtkWidget* widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); - char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(widget)); - - if (!filename || !strlen(filename)) { - g_warning("Error reading filename!"); - g_set_error (error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "No certificate file selected"); - g_free(filename); - return FALSE; - } - - if (!g_file_test(filename, G_FILE_TEST_EXISTS)) { - g_warning("Error checking filename existence!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "Selected certificate file does not exist: %s", filename); - g_free(filename); - return FALSE; - } - - g_free(filename); - return TRUE; -} - -static void stuff_changed_cb(GtkWidget* widget, gpointer user_data) { - g_signal_emit_by_name(SEASIDE_EDITOR(user_data), "changed"); +static guint32 get_capabilities (NMVpnEditorPlugin* iface) { + g_message("Checking SeasideVPN capabilities..."); + return NM_VPN_EDITOR_PLUGIN_CAPABILITY_NONE; } -static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { - g_message("Initializing SeasideVPN editor plugin..."); - - SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); - NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); - - GtkWidget* filechooser = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); - if (!filechooser) return FALSE; - - GtkFileFilter *filter_cert = gtk_file_filter_new(); - gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); - gtk_file_filter_add_pattern(filter_cert, "*.sea"); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(filechooser), filter_cert); - - GtkFileFilter *filter_all = gtk_file_filter_new(); - gtk_file_filter_set_name(filter_all, "All Files"); - gtk_file_filter_add_pattern(filter_all, "*"); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(filechooser), filter_all); - - GtkRadioButton* radio_typhoon = GTK_RADIO_BUTTON(gtk_builder_get_object(priv->builder, "radio_typhoon")); - GtkRadioButton* radio_port = GTK_RADIO_BUTTON(gtk_builder_get_object(priv->builder, "radio_port")); - if (!radio_typhoon || !radio_port) return FALSE; - - if (s_vpn) { - const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); - if (cert_value) gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(filechooser), cert_value); - - const char* proto_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); - if (proto_value) { - if (radio_typhoon && g_strcmp0(proto_value, "typhoon") == 0) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_typhoon), TRUE); - else if (radio_port && g_strcmp0(proto_value, "port") == 0) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_port), TRUE); - else - return FALSE; - } else { - if (radio_typhoon) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radio_typhoon), TRUE); +static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface, NMConnection* connection, GError** error) { + g_message("Getting SeasideVPN editor..."); + + unsigned int gtk_major = 3; + void *handle = dlopen(NULL, RTLD_NOW); + if (handle) { + unsigned int (*get_major_version)(void) = (unsigned int (*)(void)) dlsym(handle, "gtk_get_major_version"); + if (get_major_version) { + gtk_major = get_major_version(); } + dlclose(handle); + } else { + g_warning("Failed to open process handle for symbol lookup: %s", dlerror()); } - g_signal_connect(G_OBJECT(filechooser), "file-set", G_CALLBACK(stuff_changed_cb), self); - g_signal_connect(G_OBJECT(radio_typhoon), "toggled", G_CALLBACK(stuff_changed_cb), self); - g_signal_connect(G_OBJECT(radio_port), "toggled", G_CALLBACK(stuff_changed_cb), self); - return TRUE; -} - -static GObject* get_widget(NMVpnEditor* iface) { - SeasideEditor* self = SEASIDE_EDITOR(iface); - SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); - return G_OBJECT(priv->widget); -} - -static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, GError** error) { - g_message("Updating SeasideVPN connection..."); - - SeasideEditor* self = SEASIDE_EDITOR(iface); - SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); - if (!check_validity(self, error)) return FALSE; - - NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); - g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); - - GtkWidget* filechooser = GTK_WIDGET(gtk_builder_get_object(priv->builder, "filechooser_certificate")); - const char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(filechooser)); - if (filename && strlen(filename)) nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, filename); - - GtkRadioButton* radio_typhoon = GTK_RADIO_BUTTON(gtk_builder_get_object(priv->builder, "radio_typhoon")); - GtkRadioButton* radio_port = GTK_RADIO_BUTTON(gtk_builder_get_object(priv->builder, "radio_port")); - - const char* protocol_value = "typhoon"; - if (radio_typhoon && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radio_typhoon))) - protocol_value = "typhoon"; - else if (radio_port && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(radio_port))) - protocol_value = "port"; - nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, protocol_value); - - nm_connection_add_setting(connection, NM_SETTING(s_vpn)); - return TRUE; -} - - -static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError** error) { - g_message("Constructing SeasideVPN editor interface..."); - if (error) g_return_val_if_fail(*error == NULL, NULL); - - NMVpnEditor* object = g_object_new(SEASIDE_TYPE_EDITOR, NULL); - if (!object) { - g_warning("Error creating SeasideVPN editor interface!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error creating SeasideVPN editor interface"); - return NULL; - } - - SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(object)); - - priv->builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog.ui"); - if (!priv->builder) { - g_warning("Error loading SeasideVPN editor interface UI!"); - g_object_unref(object); - return NULL; + const char *libname; + if (gtk_major >= 4) { + libname = EDITOR_INTERFACE_PATH "-gtk4.so"; + } else { + libname = EDITOR_INTERFACE_PATH "-gtk3.so"; } - priv->widget = GTK_WIDGET(gtk_builder_get_object(priv->builder, "root_box")); - if (!priv->widget) { - g_warning("Error building SeasideVPN editor interface UI!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); - g_object_unref(object); + void *editor_handle = dlopen(libname, RTLD_LAZY); + if (!editor_handle) { + g_warning("Failed to open interface library: %s: %s", libname, dlerror()); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Failed to load editor library %s: %s", libname, dlerror()); return NULL; } - g_object_ref_sink(priv->widget); - if (!init_editor_plugin(SEASIDE_EDITOR(object), connection, error)) { - g_warning("Error initializing SeasideVPN editor interface UI!"); - g_object_unref(object); + NMVpnEditor *(*create_func)(NMConnection *, GError **) = (NMVpnEditor *(*)(NMConnection *, GError **)) dlsym(editor_handle, "create_seaside_editor"); + if (!create_func) { + g_warning("Failed to resolve create_seaside_editor symbol: %s", dlerror()); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Failed to resolve create_seaside_editor symbol: %s", dlerror()); + dlclose(editor_handle); return NULL; } - return object; -} -static void dispose(GObject* object) { - SeasideEditor* self = SEASIDE_EDITOR(object); - SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(self)); - - if (priv->group) g_object_unref(priv->group); - if (priv->widget) g_object_unref(priv->widget); - if (priv->builder) g_object_unref(priv->builder); - - G_OBJECT_CLASS(seaside_editor_parent_class)->dispose(object); -} - -static void seaside_editor_class_init (SeasideEditorClass* req_class) { - GObjectClass* object_class = G_OBJECT_CLASS(req_class); - object_class->dispose = dispose; -} - -static void seaside_editor_init(SeasideEditor* plugin) {} - -static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { - g_message("Initializing SeasideVPN editor interface..."); - - iface_class->get_widget = get_widget; - iface_class->update_connection = update_connection; -} - -static guint32 get_capabilities (NMVpnEditorPlugin* iface) { - return NM_VPN_EDITOR_PLUGIN_CAPABILITY_IMPORT; -} - -static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface, NMConnection* connection, GError** error) { - return nm_vpn_editor_interface_new(connection, error); + return create_func(connection, error); } static void get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec) { @@ -293,16 +113,14 @@ static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* ifa iface_class->get_editor = get_editor; iface_class->get_capabilities = get_capabilities; - iface_class->import_from_file = import; } G_MODULE_EXPORT NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin *editor_plugin, NMConnection* connection, GError** error) { g_message("SeasideVPN editor factory called..."); if (error) g_return_val_if_fail(*error == NULL, NULL); - return nm_vpn_editor_interface_new(connection, error); + return get_editor(NM_VPN_EDITOR_PLUGIN(editor_plugin), connection, error); } - G_MODULE_EXPORT NMVpnEditorPlugin* nm_vpn_editor_plugin_factory(GError** error) { g_message("SeasideVPN editor plugin factory called..."); if (error) g_return_val_if_fail(*error == NULL, NULL); diff --git a/viridian/barnacles/network-manager/editor/editor.h b/viridian/barnacles/network-manager/editor/editor.h index e14437c0..2989ab4d 100644 --- a/viridian/barnacles/network-manager/editor/editor.h +++ b/viridian/barnacles/network-manager/editor/editor.h @@ -1,8 +1,19 @@ #ifndef NM_SEASIDE_EDITOR_H #define NM_SEASIDE_EDITOR_H +#include +#include +#include +#include +#include + #include + +#define SEASIDE_EDITOR_PLUGIN_ERROR NM_CONNECTION_ERROR +#define SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY NM_CONNECTION_ERROR_INVALID_PROPERTY + + #define SEASIDE_TYPE_EDITOR_PLUGIN (seaside_editor_plugin_get_type()) #define SEASIDE_EDITOR_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SEASIDE_TYPE_EDITOR_PLUGIN, SeasideEditorPlugin)) #define SEASIDE_EDITOR_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), SEASIDE_TYPE_EDITOR_PLUGIN, SeasideEditorPluginClass)) @@ -44,4 +55,12 @@ struct _SeasideEditorClass { GType seaside_editor_get_type(void); + +#define SEASIDE_PLUGIN_NAME "SeasideVPN" +#define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" + +#define NM_SEASIDE_KEY_CERTIFICATE "certificate" +#define NM_SEASIDE_KEY_PROTOCOL "protocol" + + #endif /* NM_SEASIDE_EDITOR_H */ diff --git a/viridian/barnacles/network-manager/editor/gresource.xml b/viridian/barnacles/network-manager/editor/gresource.xml index cc46b1b1..650f3d0b 100644 --- a/viridian/barnacles/network-manager/editor/gresource.xml +++ b/viridian/barnacles/network-manager/editor/gresource.xml @@ -1,6 +1,7 @@ - dialog.ui + dialog_gtk3.ui + dialog_gtk4.ui diff --git a/viridian/barnacles/network-manager/editor/interface.h b/viridian/barnacles/network-manager/editor/interface.h new file mode 100644 index 00000000..4b83cf01 --- /dev/null +++ b/viridian/barnacles/network-manager/editor/interface.h @@ -0,0 +1,39 @@ +#ifndef IFACE_COMMON_H +#define IFACE_COMMON_H + +#include +#include +#include + +#include +#include + +#include "editor.h" + +#define SEASIDE_EDITOR_PLUGIN_ERROR NM_CONNECTION_ERROR +#define SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY NM_CONNECTION_ERROR_INVALID_PROPERTY + +#define SEASIDE_PLUGIN_NAME "SeasideVPN" +#define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" + +#define NM_SEASIDE_KEY_CERTIFICATE "certificate" +#define NM_SEASIDE_KEY_PROTOCOL "protocol" + +typedef struct { + GtkWidget *widget; + GtkSizeGroup *group; + gboolean window_added; + char *certificate_filename; + GtkWidget *label_selected_certificate; + GtkWidget *radio_typhoon; + GtkWidget *radio_port; + GtkWidget *filechooser_widget; +} SeasideEditorPrivate; + +void stuff_changed_cb(GtkWidget* widget, gpointer user_data) { + g_signal_emit_by_name(SEASIDE_EDITOR(user_data), "changed"); +} + +NMVpnEditor *create_seaside_editor(NMConnection *connection, GError **error); + +#endif /* IFACE_COMMON_H */ diff --git a/viridian/barnacles/network-manager/editor/interface_gtk3.c b/viridian/barnacles/network-manager/editor/interface_gtk3.c new file mode 100644 index 00000000..d2d3b9f0 --- /dev/null +++ b/viridian/barnacles/network-manager/editor/interface_gtk3.c @@ -0,0 +1,180 @@ +#include + +#include "interface.h" + +// UI WIDGET: + +static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class); + +G_DEFINE_TYPE_WITH_CODE(SeasideEditor, seaside_editor, G_TYPE_OBJECT, G_ADD_PRIVATE(SeasideEditor) G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR, seaside_editor_interface_init)) + +static gboolean check_validity(SeasideEditor* self, GError** error) { + SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + char *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(priv->filechooser_widget)); + + if (!filename || !strlen(filename)) { + g_warning("Error reading filename!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "No certificate file selected"); + g_free(filename); + return FALSE; + } + + if (!g_file_test(filename, G_FILE_TEST_EXISTS)) { + g_warning("Error checking filename existence!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "Selected certificate file does not exist: %s", filename); + g_free(filename); + return FALSE; + } + + g_free(filename); + return TRUE; +} + +static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { + g_message("Initializing SeasideVPN editor plugin (GTK3)..."); + + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); + + GtkBuilder *builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog_gtk3.ui"); + if (!builder) { + g_warning("Error loading SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + return FALSE; + } + + priv->widget = GTK_WIDGET(gtk_builder_get_object(builder, "root_box")); + if (!priv->widget) { + g_warning("Error building SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + g_object_unref(builder); + return FALSE; + } + g_object_ref_sink(priv->widget); + + priv->filechooser_widget = GTK_WIDGET(gtk_builder_get_object(builder, "filechooser_certificate")); + priv->radio_typhoon = GTK_WIDGET(gtk_builder_get_object(builder, "radio_typhoon")); + priv->radio_port = GTK_WIDGET(gtk_builder_get_object(builder, "radio_port")); + + if (!priv->filechooser_widget || !priv->radio_typhoon || !priv->radio_port) { + g_object_unref(priv->widget); + g_object_unref(builder); + return FALSE; + } + + GtkFileFilter *filter_cert = gtk_file_filter_new(); + gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); + gtk_file_filter_add_pattern(filter_cert, "*.sea"); + gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(priv->filechooser_widget), filter_cert); + + GtkFileFilter *filter_all = gtk_file_filter_new(); + gtk_file_filter_set_name(filter_all, "All Files"); + gtk_file_filter_add_pattern(filter_all, "*"); + gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(priv->filechooser_widget), filter_all); + + if (s_vpn) { + const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); + if (cert_value) gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(priv->filechooser_widget), cert_value); + + const char* proto_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); + if (proto_value) { + if (g_strcmp0(proto_value, "typhoon") == 0) + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon), TRUE); + else if (g_strcmp0(proto_value, "port") == 0) + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_port), TRUE); + else { + g_object_unref(priv->widget); + g_object_unref(builder); + return FALSE; + } + } else { + gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon), TRUE); + } + } + + g_signal_connect(G_OBJECT(priv->filechooser_widget), "file-set", G_CALLBACK(stuff_changed_cb), self); + g_signal_connect(G_OBJECT(priv->radio_typhoon), "toggled", G_CALLBACK(stuff_changed_cb), self); + g_signal_connect(G_OBJECT(priv->radio_port), "toggled", G_CALLBACK(stuff_changed_cb), self); + + g_object_unref(builder); + return TRUE; +} + +static GObject* get_widget(NMVpnEditor* iface) { + SeasideEditor* self = SEASIDE_EDITOR(iface); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + return G_OBJECT(priv->widget); +} + +static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, GError** error) { + g_message("Updating SeasideVPN connection..."); + + SeasideEditor* self = SEASIDE_EDITOR(iface); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + if (!check_validity(self, error)) return FALSE; + + NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); + g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); + + char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(priv->filechooser_widget)); + if (filename && strlen(filename)) nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, filename); + g_free(filename); + + const char* protocol_value = "typhoon"; + if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon))) + protocol_value = "typhoon"; + else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->radio_port))) + protocol_value = "port"; + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, protocol_value); + + nm_connection_add_setting(connection, NM_SETTING(s_vpn)); + return TRUE; +} + +static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError** error) { + g_message("Constructing SeasideVPN editor interface..."); + if (error) g_return_val_if_fail(*error == NULL, NULL); + + NMVpnEditor* object = g_object_new(SEASIDE_TYPE_EDITOR, NULL); + if (!object) { + g_warning("Error creating SeasideVPN editor interface!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error creating SeasideVPN editor interface"); + return NULL; + } + + if (!init_editor_plugin(SEASIDE_EDITOR(object), connection, error)) { + g_warning("Error initializing SeasideVPN editor interface UI!"); + g_object_unref(object); + return NULL; + } + return object; +} + +static void dispose(GObject* object) { + SeasideEditor* self = SEASIDE_EDITOR(object); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(self)); + + g_free(priv->certificate_filename); + if (priv->group) g_object_unref(priv->group); + if (priv->widget) g_object_unref(priv->widget); + + G_OBJECT_CLASS(seaside_editor_parent_class)->dispose(object); +} + +static void seaside_editor_class_init (SeasideEditorClass* req_class) { + GObjectClass* object_class = G_OBJECT_CLASS(req_class); + object_class->dispose = dispose; +} + +static void seaside_editor_init(SeasideEditor* plugin) {} + +static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { + g_message("Initializing SeasideVPN editor interface..."); + + iface_class->get_widget = get_widget; + iface_class->update_connection = update_connection; +} + +G_MODULE_EXPORT NMVpnEditor *create_seaside_editor(NMConnection *connection, GError **error) { + return nm_vpn_editor_interface_new(connection, error); +} diff --git a/viridian/barnacles/network-manager/editor/interface_gtk4.c b/viridian/barnacles/network-manager/editor/interface_gtk4.c new file mode 100644 index 00000000..cadfa14d --- /dev/null +++ b/viridian/barnacles/network-manager/editor/interface_gtk4.c @@ -0,0 +1,240 @@ +#include + +#include "interface.h" + +// UI WIDGET: + +static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class); + +G_DEFINE_TYPE_WITH_CODE(SeasideEditor, seaside_editor, G_TYPE_OBJECT, G_ADD_PRIVATE(SeasideEditor) G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR, seaside_editor_interface_init)) + +typedef struct { + GMainLoop *loop; + GFile *file; +} DialogData; + +static void on_file_dialog_done(GObject *source_object, GAsyncResult *res, gpointer user_data) { + DialogData *data = (DialogData *)user_data; + GError *error = NULL; + + data->file = gtk_file_dialog_open_finish(GTK_FILE_DIALOG(source_object), res, &error); + if (error) { + g_warning("File dialog error: %s", error->message); + g_error_free(error); + } + + g_main_loop_quit(data->loop); +} + +static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { + SeasideEditor *self = SEASIDE_EDITOR(user_data); + SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + + GtkFileDialog *dialog = gtk_file_dialog_new(); + gtk_file_dialog_set_title(dialog, "Select Seaside Certificate"); + gtk_file_dialog_set_modal(dialog, TRUE); + gtk_file_dialog_set_accept_label(dialog, "_Open"); + + GListStore *filters = g_list_store_new(GTK_TYPE_FILE_FILTER); + + GtkFileFilter *filter_cert = gtk_file_filter_new(); + gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); + gtk_file_filter_add_pattern(filter_cert, "*.sea"); + g_list_store_append(filters, filter_cert); + g_object_unref(filter_cert); + + GtkFileFilter *filter_all = gtk_file_filter_new(); + gtk_file_filter_set_name(filter_all, "All Files"); + gtk_file_filter_add_pattern(filter_all, "*"); + g_list_store_append(filters, filter_all); + g_object_unref(filter_all); + + gtk_file_dialog_set_filters(dialog, G_LIST_MODEL(filters)); + g_object_unref(filters); + + if (priv->certificate_filename) { + GFile *initial_file = g_file_new_for_path(priv->certificate_filename); + gtk_file_dialog_set_initial_file(dialog, initial_file); + g_object_unref(initial_file); + } + + DialogData data = { g_main_loop_new(NULL, FALSE), NULL }; + gtk_file_dialog_open(dialog, NULL, NULL, on_file_dialog_done, &data); // Parent is NULL; adjust if needed + + g_main_loop_run(data.loop); + + if (data.file) { + char *filename = g_file_get_path(data.file); + g_free(priv->certificate_filename); + priv->certificate_filename = filename; + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), g_path_get_basename(filename)); + stuff_changed_cb(NULL, self); + g_object_unref(data.file); + } + + g_main_loop_unref(data.loop); + g_object_unref(dialog); +} + +static gboolean check_validity(SeasideEditor* self, GError** error) { + SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + char *filename = g_strdup(priv->certificate_filename); + + if (!filename || !strlen(filename)) { + g_warning("Error reading filename!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "No certificate file selected"); + g_free(filename); + return FALSE; + } + + if (!g_file_test(filename, G_FILE_TEST_EXISTS)) { + g_warning("Error checking filename existence!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "Selected certificate file does not exist: %s", filename); + g_free(filename); + return FALSE; + } + + g_free(filename); + return TRUE; +} + +static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { + g_message("Initializing SeasideVPN editor plugin (GTK4)..."); + + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); + + GtkBuilder *builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog_gtk4.ui"); + if (!builder) { + g_warning("Error loading SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + return FALSE; + } + + priv->widget = GTK_WIDGET(gtk_builder_get_object(builder, "root_box")); + if (!priv->widget) { + g_warning("Error building SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + g_object_unref(builder); + return FALSE; + } + g_object_ref_sink(priv->widget); + + priv->filechooser_widget = GTK_WIDGET(gtk_builder_get_object(builder, "filechooser_certificate")); + priv->label_selected_certificate = GTK_WIDGET(gtk_builder_get_object(builder, "label_selected_certificate")); + priv->radio_typhoon = GTK_WIDGET(gtk_builder_get_object(builder, "radio_typhoon")); + priv->radio_port = GTK_WIDGET(gtk_builder_get_object(builder, "radio_port")); + + if (!priv->filechooser_widget || !priv->label_selected_certificate || !priv->radio_typhoon || !priv->radio_port) { + g_object_unref(priv->widget); + g_object_unref(builder); + return FALSE; + } + + if (s_vpn) { + const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); + if (cert_value) { + priv->certificate_filename = g_strdup(cert_value); + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), g_path_get_basename(cert_value)); + } + + const char* proto_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); + if (proto_value) { + if (g_strcmp0(proto_value, "typhoon") == 0) + gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_typhoon), TRUE); + else if (g_strcmp0(proto_value, "port") == 0) + gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_port), TRUE); + else { + g_object_unref(priv->widget); + g_object_unref(builder); + return FALSE; + } + } else { + gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_typhoon), TRUE); + } + } + + g_signal_connect(G_OBJECT(priv->filechooser_widget), "clicked", G_CALLBACK(choose_certificate_cb), self); + g_signal_connect(G_OBJECT(priv->radio_typhoon), "toggled", G_CALLBACK(stuff_changed_cb), self); + g_signal_connect(G_OBJECT(priv->radio_port), "toggled", G_CALLBACK(stuff_changed_cb), self); + + g_object_unref(builder); + return TRUE; +} + +static GObject* get_widget(NMVpnEditor* iface) { + SeasideEditor* self = SEASIDE_EDITOR(iface); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + return G_OBJECT(priv->widget); +} + +static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, GError** error) { + g_message("Updating SeasideVPN connection..."); + + SeasideEditor* self = SEASIDE_EDITOR(iface); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + if (!check_validity(self, error)) return FALSE; + + NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); + g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); + + if (priv->certificate_filename && strlen(priv->certificate_filename)) nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, priv->certificate_filename); + + const char* protocol_value = "typhoon"; + if (gtk_check_button_get_active(GTK_CHECK_BUTTON(priv->radio_typhoon))) + protocol_value = "typhoon"; + else if (gtk_check_button_get_active(GTK_CHECK_BUTTON(priv->radio_port))) + protocol_value = "port"; + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, protocol_value); + + nm_connection_add_setting(connection, NM_SETTING(s_vpn)); + return TRUE; +} + +static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError** error) { + g_message("Constructing SeasideVPN editor interface..."); + if (error) g_return_val_if_fail(*error == NULL, NULL); + + NMVpnEditor* object = g_object_new(SEASIDE_TYPE_EDITOR, NULL); + if (!object) { + g_warning("Error creating SeasideVPN editor interface!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error creating SeasideVPN editor interface"); + return NULL; + } + + if (!init_editor_plugin(SEASIDE_EDITOR(object), connection, error)) { + g_warning("Error initializing SeasideVPN editor interface UI!"); + g_object_unref(object); + return NULL; + } + return object; +} + +static void dispose(GObject* object) { + SeasideEditor* self = SEASIDE_EDITOR(object); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(self)); + + g_free(priv->certificate_filename); + if (priv->group) g_object_unref(priv->group); + if (priv->widget) g_object_unref(priv->widget); + + G_OBJECT_CLASS(seaside_editor_parent_class)->dispose(object); +} + +static void seaside_editor_class_init (SeasideEditorClass* req_class) { + GObjectClass* object_class = G_OBJECT_CLASS(req_class); + object_class->dispose = dispose; +} + +static void seaside_editor_init(SeasideEditor* plugin) {} + +static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { + g_message("Initializing SeasideVPN editor interface..."); + + iface_class->get_widget = get_widget; + iface_class->update_connection = update_connection; +} + +G_MODULE_EXPORT NMVpnEditor *create_seaside_editor(NMConnection *connection, GError **error) { + return nm_vpn_editor_interface_new(connection, error); +} From 696a3ce0f0ecfc662ce1d3b3007d956fdebf965d Mon Sep 17 00:00:00 2001 From: pseusys Date: Thu, 6 Nov 2025 03:45:05 +0100 Subject: [PATCH 23/67] full tunnel --- .../barnacles/network-manager/plugin/plugin.c | 53 +++++++++---------- viridian/reef/shared_library/lib/mod.rs | 6 +-- 2 files changed, 26 insertions(+), 33 deletions(-) diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index d5163b36..73ce9bc1 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -19,7 +19,8 @@ /* Shared library base names to try letting the loader find them */ #define LIB_BASENAME "libseaside.so" -#define IP(x) ((char*)&x)[0], ((char*)&x)[1], ((char*)&x)[2], ((char*)&x)[3] +#define IP_TEMPLATE "%u.%u.%u.%u" +#define IP(x) ((uint8_t*) &x)[3], ((uint8_t*) &x)[2], ((uint8_t*) &x)[1], ((uint8_t*) &x)[0] typedef bool (*vpn_start_fn)(const char*, const char*, struct VPNConfig**, void**, void*, void (*)(void*, char*), char**); typedef bool (*vpn_stop_fn)(void*, char**); @@ -46,7 +47,7 @@ typedef struct { static gboolean capture_error_idle(gpointer data) { g_debug("DBUS runtime: Starting synchronous error report..."); - CaptureErrorData *d = data; + CaptureErrorData *d = (CaptureErrorData *)data; if (d->message) { g_debug("DBUS runtime: Setting plugin failure..."); @@ -113,7 +114,7 @@ seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) /* Build and send NM IPv4 config from VPNConfig */ static gboolean -seaside_set_vpnconfig(gpointer user_data) +seaside_set_vpnconfig_idle(gpointer user_data) { g_debug("DBUS config: Starting asynchronous configuration setting..."); IdleConfigData *data = (IdleConfigData *)user_data; @@ -123,61 +124,55 @@ seaside_set_vpnconfig(gpointer user_data) g_variant_builder_init(&gen_builder, G_VARIANT_TYPE_VARDICT); if (data->cfg->tunnel_name && data->cfg->tunnel_name[0]) { - g_debug("DBUS config: Setting tunnel name to: %s", data->cfg->tunnel_name); - GVariant *v = g_variant_new_string(data->cfg->tunnel_name); - g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_TUNDEV, v); + g_debug("DBUS config: Setting tunnel name to: %s...", data->cfg->tunnel_name); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_TUNDEV, g_variant_new_string(data->cfg->tunnel_name)); } if (data->cfg->tunnel_mtu) { - g_debug("DBUS config: Setting tunnel MTU to: %u", data->cfg->tunnel_mtu); - GVariant *v = g_variant_new_uint32(data->cfg->tunnel_mtu); - g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_MTU, v); + g_debug("DBUS config: Setting tunnel MTU to: %u...", data->cfg->tunnel_mtu); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_MTU, g_variant_new_uint32(data->cfg->tunnel_mtu)); } if (data->cfg->remote_address) { - g_debug("DBUS config: Setting tunnel remote gateway to: %02x.%02x.%02x.%02x", IP(data->cfg->remote_address)); - GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->remote_address)); - g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_EXT_GATEWAY, v); + g_debug("DBUS config: Setting tunnel remote gateway to: " IP_TEMPLATE "...", IP(data->cfg->remote_address)); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_EXT_GATEWAY, g_variant_new_uint32(g_htonl(data->cfg->remote_address))); } - GVariant *gen_dict = g_variant_builder_end(&gen_builder); + g_debug("DBUS config: Setting IPv4 configuration to allowed..."); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_HAS_IP4, g_variant_new_boolean(TRUE)); + g_debug("DBUS config: Sending general configuration..."); - nm_vpn_service_plugin_set_config(data->plugin, gen_dict); + nm_vpn_service_plugin_set_config(data->plugin, g_variant_builder_end(&gen_builder)); GVariantBuilder ipv4_builder; g_debug("DBUS config: Initializing IPv4 configuration..."); g_variant_builder_init(&ipv4_builder, G_VARIANT_TYPE_VARDICT); if (data->cfg->tunnel_gateway) { - g_debug("DBUS config: Setting tunnel internal gateway to: %02x.%02x.%02x.%02x", IP(data->cfg->tunnel_gateway)); - GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->tunnel_gateway)); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_INT_GATEWAY, v); + g_debug("DBUS config: Setting tunnel internal gateway to: " IP_TEMPLATE "...", IP(data->cfg->tunnel_gateway)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_INT_GATEWAY, g_variant_new_uint32(g_htonl(data->cfg->tunnel_gateway))); } if (data->cfg->tunnel_address) { - g_debug("DBUS config: Setting tunnel address to: %02x.%02x.%02x.%02x", IP(data->cfg->tunnel_address)); - GVariant *v = g_variant_new_uint32(g_htonl(data->cfg->tunnel_address)); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, v); + g_debug("DBUS config: Setting tunnel address to: " IP_TEMPLATE "...", IP(data->cfg->tunnel_address)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, g_variant_new_uint32(g_htonl(data->cfg->tunnel_address))); } if (data->cfg->tunnel_prefix) { - g_debug("DBUS config: Setting tunnel prefix to: %u", data->cfg->tunnel_prefix); - GVariant *v = g_variant_new_uint32(data->cfg->tunnel_prefix); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, v); + g_debug("DBUS config: Setting tunnel prefix to: %u...", data->cfg->tunnel_prefix); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, g_variant_new_uint32(data->cfg->tunnel_prefix)); } if (data->cfg->dns_address) { - g_debug("DBUS config: Setting tunnel DNS address to: %02x.%02x.%02x.%02x", IP(data->cfg->dns_address)); + g_debug("DBUS config: Setting tunnel DNS address to: " IP_TEMPLATE "...", IP(data->cfg->dns_address)); GVariantBuilder dns_builder; g_variant_builder_init(&dns_builder, G_VARIANT_TYPE("au")); g_variant_builder_add(&dns_builder, "u", g_htonl(data->cfg->dns_address)); - GVariant *v = g_variant_builder_end(&dns_builder); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, v); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, g_variant_builder_end(&dns_builder)); } - GVariant *ipv4_dict = g_variant_builder_end(&ipv4_builder); g_debug("DBUS config: Sending IPv4 configuration..."); - nm_vpn_service_plugin_set_ip4_config(data->plugin, ipv4_dict); + nm_vpn_service_plugin_set_ip4_config(data->plugin, g_variant_builder_end(&ipv4_builder)); free(data->cfg); g_free(data); @@ -237,7 +232,7 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro data->plugin = plugin; data->cfg = cfg; g_debug("DBUS connect: Scheduling configuration setting..."); - g_idle_add(seaside_set_vpnconfig, data); + g_idle_add(seaside_set_vpnconfig_idle, data); g_debug("DBUS connect: Success!"); return TRUE; diff --git a/viridian/reef/shared_library/lib/mod.rs b/viridian/reef/shared_library/lib/mod.rs index acfbabb5..944f92dd 100644 --- a/viridian/reef/shared_library/lib/mod.rs +++ b/viridian/reef/shared_library/lib/mod.rs @@ -24,8 +24,7 @@ struct RawPtr(*mut c_void); unsafe impl Send for RawPtr {} /// cbindgen:ignore -struct Coordinator<'a> { - viridian: *mut Viridian<'a>, +struct Coordinator { handle: JoinHandle, terminator: Sender<()> } @@ -124,7 +123,7 @@ pub extern "C" fn vpn_start(certificate: *const c_char, protocol: *const c_char, }); unsafe { *config = Box::into_raw(Box::new(vpn_config)) }; - unsafe { *coordinator_ptr = Box::into_raw(Box::new(Coordinator { viridian: viridian_ptr, handle, terminator: sender })) as *mut c_void }; + unsafe { *coordinator_ptr = Box::into_raw(Box::new(Coordinator { handle, terminator: sender })) as *mut c_void }; true } @@ -142,6 +141,5 @@ pub extern "C" fn vpn_stop(coordinator_ptr: *mut c_void, error: *mut *mut c_char Err(err) => return_error!(format!("Error joining VPN loop termination: {err}"), error) }; - let _viridian = unsafe { Box::from_raw(coordinator.viridian as *mut Viridian) }; return result; } From 23511325dd46cf41a76b17471b7a72489946bf54 Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 7 Nov 2025 03:46:46 +0100 Subject: [PATCH 24/67] secrets absence fixed --- viridian/barnacles/network-manager/Makefile | 7 +- viridian/barnacles/network-manager/README.md | 2 +- .../configuration/descriptor.ini | 4 +- .../network-manager/editor/auth_dialog.c | 71 +++++++++++++++++++ 4 files changed, 81 insertions(+), 3 deletions(-) create mode 100644 viridian/barnacles/network-manager/editor/auth_dialog.c diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index c932b49b..191a390f 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -25,6 +25,7 @@ endif G_C_FLAGS_GTK_3 := $(G_C_FLAGS) $(shell pkg-config --cflags --libs gtk+-3.0) G_C_FLAGS_GTK_4 := $(G_C_FLAGS) $(shell pkg-config --cflags --libs gtk4) +G_C_FLAGS_SECRET := $(G_C_FLAGS) $(shell pkg-config --cflags --libs libsecret-1) BUILD_ARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) PLUGIN_NAME := seasidevpn @@ -51,6 +52,7 @@ INSTALL_CONF := $(NM_DBUS_DIR)/nm-$(PLUGIN_NAME)-service.conf INSTALL_EDITOR := $(PLUGIN_DIR)/libnm-vpn-plugin-$(PLUGIN_NAME).so INSTALL_INTERFACE_GTK3 := $(PLUGIN_INTERFACE_BASE)-gtk3.so INSTALL_INTERFACE_GTK4 := $(PLUGIN_INTERFACE_BASE)-gtk4.so +INSTALL_DIALOG := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-auth-dialog EXTRA_FLAGS := -DSEASIDE_PLUGIN_SERVICE="\"$(SERVICE_NAME)\"" -DEDITOR_INTERFACE_PATH="\"$(PLUGIN_INTERFACE_BASE)\"" @@ -63,6 +65,7 @@ dir-build: editor-build: dir-build @ # Build network manager reef editor glib-compile-resources $(NM_EDITOR_DIR)/gresource.xml --sourcedir=$(NM_EDITOR_DIR) --target=$(NM_BUILD_DIR)/resources.gen.c --generate-source + gcc $(NM_EDITOR_DIR)/auth_dialog.c -o $(NM_BUILD_DIR)/auth_dialog $(G_C_FLAGS_SECRET) gcc -fPIC -shared $(NM_EDITOR_DIR)/editor.c $(NM_EDITOR_DIR)/editor.h -o $(NM_BUILD_DIR)/editor.so $(G_C_FLAGS) $(EXTRA_FLAGS) gcc -fPIC -shared $(NM_EDITOR_DIR)/*.h $(NM_EDITOR_DIR)/interface_gtk3.c $(NM_BUILD_DIR)/resources.gen.c -o $(NM_BUILD_DIR)/interface-gtk3.so $(EXTRA_FLAGS) $(G_C_FLAGS_GTK_3) gcc -fPIC -shared $(NM_EDITOR_DIR)/*.h $(NM_EDITOR_DIR)/interface_gtk4.c $(NM_BUILD_DIR)/resources.gen.c -o $(NM_BUILD_DIR)/interface-gtk4.so $(EXTRA_FLAGS) $(G_C_FLAGS_GTK_4) @@ -80,6 +83,7 @@ config-build: dir-build sed -i "s|DBUS-SERVICE-NAME|$(SERVICE_NAME)|" $(NM_BUILD_DIR)/descriptor.ini.gen sed -i "s|PATH-TO-SEASIDEVPN-PLUGIN|$(INSTALL_PLUGIN)|" $(NM_BUILD_DIR)/descriptor.ini.gen sed -i "s|PATH-TO-SEASIDEVPN-EDITOR|$(INSTALL_EDITOR)|" $(NM_BUILD_DIR)/descriptor.ini.gen + sed -i "s|SEASIDE-AUTH-DIALOG|$(INSTALL_DIALOG)|" $(NM_BUILD_DIR)/descriptor.ini.gen .PHONY: config-build build: editor-build plugin-build config-build @@ -94,6 +98,7 @@ install: build sudo install -D -m 644 $(NM_BUILD_DIR)/editor.so $(INSTALL_EDITOR) sudo install -D -m 644 $(NM_BUILD_DIR)/interface-gtk3.so $(INSTALL_INTERFACE_GTK3) sudo install -D -m 644 $(NM_BUILD_DIR)/interface-gtk4.so $(INSTALL_INTERFACE_GTK4) + sudo install -D -m 755 $(NM_BUILD_DIR)/auth_dialog $(INSTALL_DIALOG) sudo install -D -m 644 $(NM_BIN_DIR)/libseaside.so $(INSTALL_BIN) ifneq ($(RUNNING_IN_DOCKER),true) sudo systemctl restart NetworkManager @@ -116,5 +121,5 @@ endif clean: @ # Clean network manager plugin build artifacts rm -rf $(NM_BUILD_DIR) - sudo rm -f $(INSTALL_PLUGIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) $(INSTALL_INTERFACE_GTK3) $(INSTALL_INTERFACE_GTK4) $(INSTALL_BIN) + sudo rm -f $(INSTALL_PLUGIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) $(INSTALL_INTERFACE_GTK3) $(INSTALL_INTERFACE_GTK4) $(INSTALL_DIALOG) $(INSTALL_BIN) .PHONY: clean diff --git a/viridian/barnacles/network-manager/README.md b/viridian/barnacles/network-manager/README.md index d73002e8..7ed6e04d 100644 --- a/viridian/barnacles/network-manager/README.md +++ b/viridian/barnacles/network-manager/README.md @@ -1 +1 @@ -> `build-essential libglib2.0-dev libglib2.0-dev-bin libnm-dev pkg-config` \ No newline at end of file +> `build-essential libsecret-1-dev libglib2.0-dev libgtk-3-dev libglib2.0-dev-bin libnm-dev pkg-config` diff --git a/viridian/barnacles/network-manager/configuration/descriptor.ini b/viridian/barnacles/network-manager/configuration/descriptor.ini index ce6c37ca..ed388739 100644 --- a/viridian/barnacles/network-manager/configuration/descriptor.ini +++ b/viridian/barnacles/network-manager/configuration/descriptor.ini @@ -8,4 +8,6 @@ supports-multiple-connections=false plugin=PATH-TO-SEASIDEVPN-EDITOR [GNOME] -supports-external-ui-mode=true +auth-dialog=SEASIDE-AUTH-DIALOG +supports-external-ui-mode=false +supports-hints=false diff --git a/viridian/barnacles/network-manager/editor/auth_dialog.c b/viridian/barnacles/network-manager/editor/auth_dialog.c new file mode 100644 index 00000000..696473ee --- /dev/null +++ b/viridian/barnacles/network-manager/editor/auth_dialog.c @@ -0,0 +1,71 @@ +#include +#include +#include +#include + +#define SECRET_API_SUBJECT_TO_CHANGE +#include + +#include +#include + + +static void +wait_for_quit (void) +{ + GString *str; + char c; + ssize_t n; + time_t start; + + str = g_string_sized_new (10); + start = time (NULL); + do { + errno = 0; + n = read (0, &c, 1); + if (n == 0 || (n < 0 && errno == EAGAIN)) + g_usleep (G_USEC_PER_SEC / 10); + else if (n == 1) { + g_string_append_c (str, c); + if (strstr (str->str, "QUIT") || (str->len > 10)) + break; + } else + break; + } while (time (NULL) < start + 20); + g_string_free (str, TRUE); +} + + +int +main (int argc, char *argv[]) +{ + char *vpn_name = NULL, *vpn_uuid = NULL; + GHashTable *data = NULL, *secrets = NULL; + + GOptionContext *context; + GOptionEntry entries[] = { + { "uuid", 'u', 0, G_OPTION_ARG_STRING, &vpn_uuid, "UUID of VPN connection", NULL }, + { "name", 'n', 0, G_OPTION_ARG_STRING, &vpn_name, "Name of VPN connection", NULL }, + { NULL } + }; + + context = g_option_context_new ("- seaside auth dialog"); + g_option_context_parse (context, &argc, &argv, NULL); + g_option_context_free (context); + + + if (!nm_vpn_service_plugin_read_vpn_details (0, &data, &secrets)) { + fprintf (stderr, "Failed to read '%s' (%s) data and secrets from stdin.\n", vpn_name, vpn_uuid); + return 1; + } + + fprintf(stdout, "\n\n"); + fflush(stdout); + wait_for_quit(); + + if (data) + g_hash_table_unref (data); + if (secrets) + g_hash_table_unref (secrets); + return 0; +} From b24087eac9936f0920ccf1c400ee9444a8e8b0ca Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 8 Nov 2025 02:10:47 +0100 Subject: [PATCH 25/67] general certification update --- .../network-manager/editor/dialog_gtk3.ui | 19 +- .../barnacles/network-manager/editor/editor.c | 67 ++++++++ .../barnacles/network-manager/editor/editor.h | 4 +- .../network-manager/editor/interface.h | 12 +- .../network-manager/editor/interface_gtk3.c | 162 ++++++++++++------ .../network-manager/editor/interface_gtk4.c | 151 +++++++++------- .../barnacles/network-manager/plugin/plugin.c | 25 ++- .../barnacles/network-manager/plugin/plugin.h | 1 + viridian/reef/common_library/Cargo.toml | 1 - viridian/reef/shared_library/lib/mod.rs | 25 ++- 10 files changed, 320 insertions(+), 147 deletions(-) diff --git a/viridian/barnacles/network-manager/editor/dialog_gtk3.ui b/viridian/barnacles/network-manager/editor/dialog_gtk3.ui index 84c51bda..5cbe961a 100644 --- a/viridian/barnacles/network-manager/editor/dialog_gtk3.ui +++ b/viridian/barnacles/network-manager/editor/dialog_gtk3.ui @@ -12,10 +12,21 @@ - - Select Seaside Certificate - open - false + + horizontal + 6 + + + No file selected + true + start + + + + + Choose... + + diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/barnacles/network-manager/editor/editor.c index eb2578cb..cbe5082a 100644 --- a/viridian/barnacles/network-manager/editor/editor.c +++ b/viridian/barnacles/network-manager/editor/editor.c @@ -78,7 +78,71 @@ static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface, NMConnection* connectio return create_func(connection, error); } +static NMConnection* import(NMVpnEditorPlugin* iface, const char* path, GError** error) { + g_message("Importing SeasideVPN connection..."); + NMConnection* connection = nm_simple_connection_new(); + + NMSettingConnection* s_con = NM_SETTING_CONNECTION(nm_setting_connection_new()); + nm_connection_add_setting(connection, NM_SETTING(s_con)); + + NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); + g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); + nm_connection_add_setting(connection, NM_SETTING(s_vpn)); + + NMSettingIP4Config* s_ip4 = NM_SETTING_IP4_CONFIG(nm_setting_ip4_config_new()); + nm_connection_add_setting(connection, NM_SETTING(s_ip4)); + + gsize length = 0; + gchar *contents = NULL; + if (!g_file_get_contents(path, &contents, &length, error)) + return NULL; + + gchar *encoded = g_base64_encode((const guchar *)contents, length); + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, encoded); + g_free(encoded); + g_free(contents); + + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, NM_SEASIDE_PROTOCOL_DEFAULT); + return connection; +} + +static gboolean export (NMVpnEditorPlugin *iface, const char *path, NMConnection *connection, GError **error) { + g_message("Exporting SeasideVPN connection..."); + NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); + + const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); + if (!cert_value) + return FALSE; + + gsize length = 0; + guchar *decoded = g_base64_decode(cert_value, &length); + if (!decoded || length == 0) + return FALSE; + + if (!g_file_set_contents(path, decoded, length, error)) + return FALSE; + + g_free(decoded); + return FALSE; +} + +static char *get_suggested_filename (NMVpnEditorPlugin *iface, NMConnection *connection) { + g_message("Suggesting SeasideVPN connection file name..."); + g_return_val_if_fail (connection != NULL, NULL); + + NMSettingConnection *s_con = nm_connection_get_setting_connection (connection); + g_return_val_if_fail (s_con != NULL, NULL); + + const char *id = nm_setting_connection_get_id (s_con); + g_return_val_if_fail (id != NULL, NULL); + + return g_strdup_printf ("%s.sea", id); +} + + static void get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec) { + g_message("Getting SeasideVPN connection property %d...", prop_id); + switch (prop_id) { case PROP_NAME: g_value_set_string(value, SEASIDE_PLUGIN_NAME); @@ -113,6 +177,9 @@ static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* ifa iface_class->get_editor = get_editor; iface_class->get_capabilities = get_capabilities; + iface_class->import_from_file = import; + iface_class->export_to_file = export; + iface_class->get_suggested_filename = get_suggested_filename; } G_MODULE_EXPORT NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin *editor_plugin, NMConnection* connection, GError** error) { diff --git a/viridian/barnacles/network-manager/editor/editor.h b/viridian/barnacles/network-manager/editor/editor.h index 2989ab4d..7561abdd 100644 --- a/viridian/barnacles/network-manager/editor/editor.h +++ b/viridian/barnacles/network-manager/editor/editor.h @@ -60,7 +60,9 @@ GType seaside_editor_get_type(void); #define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" #define NM_SEASIDE_KEY_CERTIFICATE "certificate" -#define NM_SEASIDE_KEY_PROTOCOL "protocol" +#define NM_SEASIDE_KEY_PROTOCOL "protocol" + +#define NM_SEASIDE_PROTOCOL_DEFAULT "typhoon" #endif /* NM_SEASIDE_EDITOR_H */ diff --git a/viridian/barnacles/network-manager/editor/interface.h b/viridian/barnacles/network-manager/editor/interface.h index 4b83cf01..7deff90c 100644 --- a/viridian/barnacles/network-manager/editor/interface.h +++ b/viridian/barnacles/network-manager/editor/interface.h @@ -10,20 +10,12 @@ #include "editor.h" -#define SEASIDE_EDITOR_PLUGIN_ERROR NM_CONNECTION_ERROR -#define SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY NM_CONNECTION_ERROR_INVALID_PROPERTY - -#define SEASIDE_PLUGIN_NAME "SeasideVPN" -#define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" - -#define NM_SEASIDE_KEY_CERTIFICATE "certificate" -#define NM_SEASIDE_KEY_PROTOCOL "protocol" - typedef struct { GtkWidget *widget; GtkSizeGroup *group; gboolean window_added; - char *certificate_filename; + char *certificate_filedata; + char *protocol_name; GtkWidget *label_selected_certificate; GtkWidget *radio_typhoon; GtkWidget *radio_port; diff --git a/viridian/barnacles/network-manager/editor/interface_gtk3.c b/viridian/barnacles/network-manager/editor/interface_gtk3.c index d2d3b9f0..3df12240 100644 --- a/viridian/barnacles/network-manager/editor/interface_gtk3.c +++ b/viridian/barnacles/network-manager/editor/interface_gtk3.c @@ -8,73 +8,132 @@ static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class); G_DEFINE_TYPE_WITH_CODE(SeasideEditor, seaside_editor, G_TYPE_OBJECT, G_ADD_PRIVATE(SeasideEditor) G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR, seaside_editor_interface_init)) -static gboolean check_validity(SeasideEditor* self, GError** error) { +static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { + SeasideEditor *self = SEASIDE_EDITOR(user_data); SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); - char *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(priv->filechooser_widget)); - if (!filename || !strlen(filename)) { - g_warning("Error reading filename!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "No certificate file selected"); - g_free(filename); - return FALSE; + GtkWidget *dialog = gtk_file_chooser_dialog_new("Select Seaside Certificate", + NULL, + GTK_FILE_CHOOSER_ACTION_OPEN, + "_Cancel", GTK_RESPONSE_CANCEL, + "_Open", GTK_RESPONSE_ACCEPT, + NULL); + + GtkFileFilter *filter_cert = gtk_file_filter_new(); + gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); + gtk_file_filter_add_pattern(filter_cert, "*.sea"); + gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog), filter_cert); + + GtkFileFilter *filter_all = gtk_file_filter_new(); + gtk_file_filter_set_name(filter_all, "All Files"); + gtk_file_filter_add_pattern(filter_all, "*"); + gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog), filter_all); + + if (gtk_dialog_run(GTK_DIALOG(dialog)) != GTK_RESPONSE_ACCEPT) { + g_debug("Choosing certificate: User cancelled SeasideVPN certificate choosing dialog!"); + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: cancelled!"); + gtk_widget_destroy(dialog); + return; } - if (!g_file_test(filename, G_FILE_TEST_EXISTS)) { - g_warning("Error checking filename existence!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "Selected certificate file does not exist: %s", filename); - g_free(filename); - return FALSE; + char *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); + g_debug("Choosing certificate: Updated SeasideVPN certificate to: %s", filename); + gtk_widget_destroy(dialog); + + gsize length = 0; + gchar *contents = NULL; + if (!g_file_get_contents(filename, &contents, &length, NULL)) { + g_debug("Choosing certificate: Reading SeasideVPN certificate file contents failed!"); + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: reading error!"); + return; + } + + gchar *encoded = g_base64_encode((const guchar *)contents, length); + if (!encoded) { + g_debug("Choosing certificate: Error encoding contents of the SeasideVPN certificate file !"); + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: embedding error!"); + g_free(contents); + return; } + g_free(priv->certificate_filedata); + priv->certificate_filedata = encoded; + g_free(encoded); + g_free(contents); g_free(filename); - return TRUE; + + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); + stuff_changed_cb(NULL, self); } -static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { - g_message("Initializing SeasideVPN editor plugin (GTK3)..."); +static void change_protocol_cb(GtkWidget *button, gpointer user_data) { + SeasideEditor *self = SEASIDE_EDITOR(user_data); + SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + + gboolean typhoon_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon)); + gboolean port_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->radio_port)); + + if (typhoon_active && port_active) { + g_debug("Choosing certificate: Error encoding contents of the SeasideVPN certificate file !"); + return; + } + + g_free(priv->protocol_name); + if (typhoon_active) + priv->protocol_name = g_strdup("typhoon"); + else if (port_active) + priv->protocol_name = g_strdup("port"); + stuff_changed_cb(NULL, self); +} + +static gboolean check_validity(SeasideEditor* self) { + SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + if (!priv->certificate_filedata) g_debug("Validating connection: Certificate file data is missing!"); + if (!priv->protocol_name) g_debug("Validating connection: Certificate file data is missing!"); + return priv->certificate_filedata != NULL && priv->protocol_name != NULL; +} + +static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); GtkBuilder *builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog_gtk3.ui"); if (!builder) { - g_warning("Error loading SeasideVPN editor interface UI!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + g_warning("Initialising plugin: Error loading SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error loading SeasideVPN editor interface UI!"); return FALSE; } priv->widget = GTK_WIDGET(gtk_builder_get_object(builder, "root_box")); if (!priv->widget) { - g_warning("Error building SeasideVPN editor interface UI!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + g_warning("Initialising plugin: Error building SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error building SeasideVPN editor interface UI!"); g_object_unref(builder); return FALSE; } g_object_ref_sink(priv->widget); priv->filechooser_widget = GTK_WIDGET(gtk_builder_get_object(builder, "filechooser_certificate")); + priv->label_selected_certificate = GTK_WIDGET(gtk_builder_get_object(builder, "label_selected_certificate")); priv->radio_typhoon = GTK_WIDGET(gtk_builder_get_object(builder, "radio_typhoon")); priv->radio_port = GTK_WIDGET(gtk_builder_get_object(builder, "radio_port")); - if (!priv->filechooser_widget || !priv->radio_typhoon || !priv->radio_port) { + if (!priv->filechooser_widget || !priv->label_selected_certificate || !priv->radio_typhoon || !priv->radio_port) { + g_warning("Initialising plugin: Error checking properties of SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error checking properties of SeasideVPN editor interface UI!"); g_object_unref(priv->widget); g_object_unref(builder); return FALSE; } - GtkFileFilter *filter_cert = gtk_file_filter_new(); - gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); - gtk_file_filter_add_pattern(filter_cert, "*.sea"); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(priv->filechooser_widget), filter_cert); - - GtkFileFilter *filter_all = gtk_file_filter_new(); - gtk_file_filter_set_name(filter_all, "All Files"); - gtk_file_filter_add_pattern(filter_all, "*"); - gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(priv->filechooser_widget), filter_all); - if (s_vpn) { const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); - if (cert_value) gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(priv->filechooser_widget), cert_value); + priv->certificate_filedata = g_strdup(cert_value); + if (cert_value) + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file embedded!"); + else + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file not selected!"); const char* proto_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); if (proto_value) { @@ -83,18 +142,21 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection else if (g_strcmp0(proto_value, "port") == 0) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_port), TRUE); else { + g_warning("Initialising plugin: Error checking 'protocol' value of SeasideVPN connection settings: %s!", proto_value); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error checking 'protocol' value of SeasideVPN connection settings!"); g_object_unref(priv->widget); g_object_unref(builder); return FALSE; } } else { + priv->protocol_name = g_strdup(NM_SEASIDE_PROTOCOL_DEFAULT); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon), TRUE); } } - g_signal_connect(G_OBJECT(priv->filechooser_widget), "file-set", G_CALLBACK(stuff_changed_cb), self); - g_signal_connect(G_OBJECT(priv->radio_typhoon), "toggled", G_CALLBACK(stuff_changed_cb), self); - g_signal_connect(G_OBJECT(priv->radio_port), "toggled", G_CALLBACK(stuff_changed_cb), self); + g_signal_connect(G_OBJECT(priv->filechooser_widget), "clicked", G_CALLBACK(choose_certificate_cb), self); + g_signal_connect(G_OBJECT(priv->radio_typhoon), "toggled", G_CALLBACK(change_protocol_cb), self); + g_signal_connect(G_OBJECT(priv->radio_port), "toggled", G_CALLBACK(change_protocol_cb), self); g_object_unref(builder); return TRUE; @@ -107,43 +169,37 @@ static GObject* get_widget(NMVpnEditor* iface) { } static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, GError** error) { - g_message("Updating SeasideVPN connection..."); - SeasideEditor* self = SEASIDE_EDITOR(iface); SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); - if (!check_validity(self, error)) return FALSE; + + if (!check_validity(self)) { + g_debug("Updating connection: Aborting because validation failed!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Aborting because validation failed!"); + return FALSE; + } NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); - char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(priv->filechooser_widget)); - if (filename && strlen(filename)) nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, filename); - g_free(filename); - - const char* protocol_value = "typhoon"; - if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon))) - protocol_value = "typhoon"; - else if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->radio_port))) - protocol_value = "port"; - nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, protocol_value); + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, priv->certificate_filedata); + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, priv->protocol_name); nm_connection_add_setting(connection, NM_SETTING(s_vpn)); return TRUE; } static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError** error) { - g_message("Constructing SeasideVPN editor interface..."); if (error) g_return_val_if_fail(*error == NULL, NULL); NMVpnEditor* object = g_object_new(SEASIDE_TYPE_EDITOR, NULL); if (!object) { - g_warning("Error creating SeasideVPN editor interface!"); + g_warning("Constructing interface: Error creating SeasideVPN editor interface!"); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error creating SeasideVPN editor interface"); return NULL; } if (!init_editor_plugin(SEASIDE_EDITOR(object), connection, error)) { - g_warning("Error initializing SeasideVPN editor interface UI!"); + g_warning("Constructing interface: Error initializing SeasideVPN editor interface UI!"); g_object_unref(object); return NULL; } @@ -154,7 +210,9 @@ static void dispose(GObject* object) { SeasideEditor* self = SEASIDE_EDITOR(object); SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(self)); - g_free(priv->certificate_filename); + g_free(priv->certificate_filedata); + g_free(priv->protocol_name); + if (priv->group) g_object_unref(priv->group); if (priv->widget) g_object_unref(priv->widget); @@ -169,8 +227,6 @@ static void seaside_editor_class_init (SeasideEditorClass* req_class) { static void seaside_editor_init(SeasideEditor* plugin) {} static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { - g_message("Initializing SeasideVPN editor interface..."); - iface_class->get_widget = get_widget; iface_class->update_connection = update_connection; } diff --git a/viridian/barnacles/network-manager/editor/interface_gtk4.c b/viridian/barnacles/network-manager/editor/interface_gtk4.c index cadfa14d..96fb96d8 100644 --- a/viridian/barnacles/network-manager/editor/interface_gtk4.c +++ b/viridian/barnacles/network-manager/editor/interface_gtk4.c @@ -19,7 +19,7 @@ static void on_file_dialog_done(GObject *source_object, GAsyncResult *res, gpoin data->file = gtk_file_dialog_open_finish(GTK_FILE_DIALOG(source_object), res, &error); if (error) { - g_warning("File dialog error: %s", error->message); + g_debug("Choosing certificate: File dialog error: %s", error->message); g_error_free(error); } @@ -52,69 +52,94 @@ static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { gtk_file_dialog_set_filters(dialog, G_LIST_MODEL(filters)); g_object_unref(filters); - if (priv->certificate_filename) { - GFile *initial_file = g_file_new_for_path(priv->certificate_filename); - gtk_file_dialog_set_initial_file(dialog, initial_file); - g_object_unref(initial_file); + DialogData data = { g_main_loop_new(NULL, FALSE), NULL }; + gtk_file_dialog_open(dialog, NULL, NULL, on_file_dialog_done, &data); + g_main_loop_run(data.loop); + + g_main_loop_unref(data.loop); + g_object_unref(dialog); + + if (!data.file) { + g_debug("Choosing certificate: Error in SeasideVPN certificate choosing dialog!"); + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: error!"); + return; } - DialogData data = { g_main_loop_new(NULL, FALSE), NULL }; - gtk_file_dialog_open(dialog, NULL, NULL, on_file_dialog_done, &data); // Parent is NULL; adjust if needed + char *filename = g_file_get_path(data.file); + g_debug("Choosing certificate: Updated SeasideVPN certificate to: %s", filename); + g_free(filename); - g_main_loop_run(data.loop); + GBytes *contents = g_file_load_bytes(data.file, NULL, NULL, NULL); + if (!contents) { + g_debug("Choosing certificate: Reading SeasideVPN certificate file contents failed!"); + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: reading error!"); + return; + } - if (data.file) { - char *filename = g_file_get_path(data.file); - g_free(priv->certificate_filename); - priv->certificate_filename = filename; - gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), g_path_get_basename(filename)); - stuff_changed_cb(NULL, self); - g_object_unref(data.file); + gsize length = 0; + gpointer raw_contents = g_bytes_unref_to_data(contents, &length); + + gchar *encoded = g_base64_encode((const guchar *)raw_contents, length); + if (!encoded) { + g_debug("Choosing certificate: Error encoding contents of the SeasideVPN certificate file !"); + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: embedding error!"); + g_free(raw_contents); + return; } - g_main_loop_unref(data.loop); - g_object_unref(dialog); + g_free(priv->certificate_filedata); + priv->certificate_filedata = encoded; + g_free(encoded); + g_free(raw_contents); + + g_object_unref(data.file); + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); + stuff_changed_cb(NULL, self); } -static gboolean check_validity(SeasideEditor* self, GError** error) { +static void change_protocol_cb(GtkWidget *button, gpointer user_data) { + SeasideEditor *self = SEASIDE_EDITOR(user_data); SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); - char *filename = g_strdup(priv->certificate_filename); - if (!filename || !strlen(filename)) { - g_warning("Error reading filename!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "No certificate file selected"); - g_free(filename); - return FALSE; - } + gboolean typhoon_active = gtk_check_button_get_active(GTK_CHECK_BUTTON(priv->radio_typhoon)); + gboolean port_active = gtk_check_button_get_active(GTK_CHECK_BUTTON(priv->radio_port)); - if (!g_file_test(filename, G_FILE_TEST_EXISTS)) { - g_warning("Error checking filename existence!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY, "Selected certificate file does not exist: %s", filename); - g_free(filename); - return FALSE; + if (typhoon_active && port_active) { + g_debug("Choosing certificate: Error encoding contents of the SeasideVPN certificate file !"); + return; } - g_free(filename); - return TRUE; + g_free(priv->protocol_name); + if (typhoon_active) + priv->protocol_name = g_strdup("typhoon"); + else if (port_active) + priv->protocol_name = g_strdup("port"); + + stuff_changed_cb(NULL, self); } -static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { - g_message("Initializing SeasideVPN editor plugin (GTK4)..."); +static gboolean check_validity(SeasideEditor* self) { + SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + if (!priv->certificate_filedata) g_debug("Validating connection: Certificate file data is missing!"); + if (!priv->protocol_name) g_debug("Validating connection: Certificate file data is missing!"); + return priv->certificate_filedata != NULL && priv->protocol_name != NULL; +} +static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); GtkBuilder *builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog_gtk4.ui"); if (!builder) { - g_warning("Error loading SeasideVPN editor interface UI!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + g_warning("Initialising plugin: Error loading SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error loading SeasideVPN editor interface UI!"); return FALSE; } priv->widget = GTK_WIDGET(gtk_builder_get_object(builder, "root_box")); if (!priv->widget) { - g_warning("Error building SeasideVPN editor interface UI!"); - g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "could not load UI widget"); + g_warning("Initialising plugin: Error building SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error building SeasideVPN editor interface UI!"); g_object_unref(builder); return FALSE; } @@ -126,6 +151,8 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection priv->radio_port = GTK_WIDGET(gtk_builder_get_object(builder, "radio_port")); if (!priv->filechooser_widget || !priv->label_selected_certificate || !priv->radio_typhoon || !priv->radio_port) { + g_warning("Initialising plugin: Error checking properties of SeasideVPN editor interface UI!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error checking properties of SeasideVPN editor interface UI!"); g_object_unref(priv->widget); g_object_unref(builder); return FALSE; @@ -133,10 +160,11 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection if (s_vpn) { const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); - if (cert_value) { - priv->certificate_filename = g_strdup(cert_value); - gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), g_path_get_basename(cert_value)); - } + priv->certificate_filedata = g_strdup(cert_value); + if (cert_value) + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file embedded!"); + else + gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file not selected!"); const char* proto_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); if (proto_value) { @@ -145,18 +173,21 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection else if (g_strcmp0(proto_value, "port") == 0) gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_port), TRUE); else { + g_warning("Initialising plugin: Error checking 'protocol' value of SeasideVPN connection settings: %s!", proto_value); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error checking 'protocol' value of SeasideVPN connection settings!"); g_object_unref(priv->widget); g_object_unref(builder); return FALSE; } } else { + priv->protocol_name = g_strdup(NM_SEASIDE_PROTOCOL_DEFAULT); gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_typhoon), TRUE); } } g_signal_connect(G_OBJECT(priv->filechooser_widget), "clicked", G_CALLBACK(choose_certificate_cb), self); - g_signal_connect(G_OBJECT(priv->radio_typhoon), "toggled", G_CALLBACK(stuff_changed_cb), self); - g_signal_connect(G_OBJECT(priv->radio_port), "toggled", G_CALLBACK(stuff_changed_cb), self); + g_signal_connect(G_OBJECT(priv->radio_typhoon), "toggled", G_CALLBACK(change_protocol_cb), self); + g_signal_connect(G_OBJECT(priv->radio_port), "toggled", G_CALLBACK(change_protocol_cb), self); g_object_unref(builder); return TRUE; @@ -169,41 +200,37 @@ static GObject* get_widget(NMVpnEditor* iface) { } static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, GError** error) { - g_message("Updating SeasideVPN connection..."); + SeasideEditor* self = SEASIDE_EDITOR(iface); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); - SeasideEditor* self = SEASIDE_EDITOR(iface); - SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); - if (!check_validity(self, error)) return FALSE; + if (!check_validity(self)) { + g_debug("Updating connection: Aborting because validation failed!"); + g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Aborting because validation failed!"); + return FALSE; + } NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); - if (priv->certificate_filename && strlen(priv->certificate_filename)) nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, priv->certificate_filename); - - const char* protocol_value = "typhoon"; - if (gtk_check_button_get_active(GTK_CHECK_BUTTON(priv->radio_typhoon))) - protocol_value = "typhoon"; - else if (gtk_check_button_get_active(GTK_CHECK_BUTTON(priv->radio_port))) - protocol_value = "port"; - nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, protocol_value); + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, priv->certificate_filedata); + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, priv->protocol_name); nm_connection_add_setting(connection, NM_SETTING(s_vpn)); return TRUE; } static NMVpnEditor* nm_vpn_editor_interface_new(NMConnection* connection, GError** error) { - g_message("Constructing SeasideVPN editor interface..."); if (error) g_return_val_if_fail(*error == NULL, NULL); NMVpnEditor* object = g_object_new(SEASIDE_TYPE_EDITOR, NULL); if (!object) { - g_warning("Error creating SeasideVPN editor interface!"); + g_warning("Constructing interface: Error creating SeasideVPN editor interface!"); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error creating SeasideVPN editor interface"); return NULL; } if (!init_editor_plugin(SEASIDE_EDITOR(object), connection, error)) { - g_warning("Error initializing SeasideVPN editor interface UI!"); + g_warning("Constructing interface: Error initializing SeasideVPN editor interface UI!"); g_object_unref(object); return NULL; } @@ -214,7 +241,9 @@ static void dispose(GObject* object) { SeasideEditor* self = SEASIDE_EDITOR(object); SeasideEditorPrivate* priv = seaside_editor_get_instance_private(SEASIDE_EDITOR(self)); - g_free(priv->certificate_filename); + g_free(priv->certificate_filedata); + g_free(priv->protocol_name); + if (priv->group) g_object_unref(priv->group); if (priv->widget) g_object_unref(priv->widget); @@ -229,8 +258,6 @@ static void seaside_editor_class_init (SeasideEditorClass* req_class) { static void seaside_editor_init(SeasideEditor* plugin) {} static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { - g_message("Initializing SeasideVPN editor interface..."); - iface_class->get_widget = get_widget; iface_class->update_connection = update_connection; } diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index 73ce9bc1..488873a9 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -22,7 +22,7 @@ #define IP_TEMPLATE "%u.%u.%u.%u" #define IP(x) ((uint8_t*) &x)[3], ((uint8_t*) &x)[2], ((uint8_t*) &x)[1], ((uint8_t*) &x)[0] -typedef bool (*vpn_start_fn)(const char*, const char*, struct VPNConfig**, void**, void*, void (*)(void*, char*), char**); +typedef bool (*vpn_start_fn)(const char*, uintptr_t, const char*, struct VPNConfig**, void**, void*, void (*)(void*, char*), char**); typedef bool (*vpn_stop_fn)(void*, char**); /* Private plugin state */ @@ -174,7 +174,7 @@ seaside_set_vpnconfig_idle(gpointer user_data) g_debug("DBUS config: Sending IPv4 configuration..."); nm_vpn_service_plugin_set_ip4_config(data->plugin, g_variant_builder_end(&ipv4_builder)); - free(data->cfg); + g_free(data->cfg); g_free(data); g_debug("DBUS config: Configuration sent!"); return G_SOURCE_REMOVE; @@ -196,20 +196,30 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro } g_debug("DBUS connect: Reading configuration data..."); + const char *certifile = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFILE); const char *certificate = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); const char *protocol = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); + gsize certificate_length = 0; + char * certificate_data = NULL; + if (!certificate) { g_warning("DBUS connect: Error extracting 'certificate' parameter"); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, - "Error extracting 'certificate' parameter"); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, "Error extracting 'certificate' parameter"); return FALSE; } else g_debug("DBUS connect: Certificate parameter read: %s", certificate); + if (certifile) { + g_debug("DBUS connect: Certificate parameter is a file name!"); + certificate_data = (char *)g_strdup(certificate); + } else { + g_debug("DBUS connect: Certificate parameter is embedded data!"); + certificate_data = (char *)g_base64_decode((const guchar *)certificate, &certificate_length); + } + if (!protocol) { g_warning("DBUS connect: Error extracting 'protocol' parameter"); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, - "Error extracting 'protocol' parameter"); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, "Error extracting 'protocol' parameter"); return FALSE; } else g_debug("DBUS connect: Protocol parameter read: %s", protocol); @@ -221,7 +231,7 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro VPNConfig *cfg; char *err_string; g_debug("DBUS connect: Starting viridian..."); - if (!priv->vpn_start(certificate, protocol, &cfg, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { + if (!priv->vpn_start(certificate, certificate_length, protocol, &cfg, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { g_warning("DBUS connect: Error starting viridian: %s", err_string); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error starting viridian: %s", err_string); free(err_string); @@ -235,6 +245,7 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro g_idle_add(seaside_set_vpnconfig_idle, data); g_debug("DBUS connect: Success!"); + g_free(certificate_data); return TRUE; } diff --git a/viridian/barnacles/network-manager/plugin/plugin.h b/viridian/barnacles/network-manager/plugin/plugin.h index 9c64e98a..c65b3e1b 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.h +++ b/viridian/barnacles/network-manager/plugin/plugin.h @@ -9,6 +9,7 @@ #define NM_DBUS_INTERFACE_SEASIDE "org.freedesktop.NetworkManager.seasidevpn" #define NM_DBUS_PATH_SEASIDE "/org/freedesktop/NetworkManager/seasidevpn" +#define NM_SEASIDE_KEY_CERTIFILE "certifile" #define NM_SEASIDE_KEY_CERTIFICATE "certificate" #define NM_SEASIDE_KEY_PROTOCOL "protocol" diff --git a/viridian/reef/common_library/Cargo.toml b/viridian/reef/common_library/Cargo.toml index 1e1c0bdc..0aa29178 100644 --- a/viridian/reef/common_library/Cargo.toml +++ b/viridian/reef/common_library/Cargo.toml @@ -29,7 +29,6 @@ tokio = { version = "^1.47.1", features = ["full"] } x25519-dalek = { version = "^2.0.1", features = ["static_secrets"] } [target.'cfg(target_os = "linux")'.dependencies] -nftables = "^0.6.3" rtnetlink = "^0.18.0" tun = { version = "^0.8.3", features = ["async"] } diff --git a/viridian/reef/shared_library/lib/mod.rs b/viridian/reef/shared_library/lib/mod.rs index 944f92dd..acf4a6ce 100644 --- a/viridian/reef/shared_library/lib/mod.rs +++ b/viridian/reef/shared_library/lib/mod.rs @@ -1,6 +1,7 @@ use std::ffi::{c_char, c_void, CStr, CString}; use std::fs::read; use std::ptr::null_mut; +use std::slice::from_raw_parts; use std::str::FromStr; use prost::Message; @@ -55,7 +56,7 @@ macro_rules! return_error { } #[no_mangle] -pub extern "C" fn vpn_start(certificate: *const c_char, protocol: *const c_char, config: *mut *mut VPNConfig, coordinator_ptr: *mut *mut c_void, plugin_ptr: *mut c_void, error_callback: extern "C" fn(*mut c_void, *mut c_char) -> c_void, error: *mut *mut c_char) -> bool { +pub extern "C" fn vpn_start(certificate: *const c_char, cert_data_length: usize, protocol: *const c_char, config: *mut *mut VPNConfig, coordinator_ptr: *mut *mut c_void, plugin_ptr: *mut c_void, error_callback: extern "C" fn(*mut c_void, *mut c_char) -> c_void, error: *mut *mut c_char) -> bool { let protocol = match unsafe { CStr::from_ptr(protocol) }.to_str() { Ok(proto_str) => match ProtocolType::from_str(proto_str) { Ok(res) => res, @@ -64,15 +65,21 @@ pub extern "C" fn vpn_start(certificate: *const c_char, protocol: *const c_char, Err(err) => return_error!(format!("Error resolving protocol string: {err}"), error) }; - let certificate = match unsafe { CStr::from_ptr(certificate) }.to_str() { - Ok(cert_str) => match read(cert_str) { - Ok(cert_bytes) => match SeasideWhirlpoolClientCertificate::decode(&*cert_bytes) { - Ok(res) => res, - Err(err) => return_error!(format!("Error decoding certificate: {err}"), error) + let cert_data = if cert_data_length > 0 { + unsafe { from_raw_parts(certificate as *const u8, cert_data_length).to_vec() } + } else { + match unsafe { CStr::from_ptr(certificate) }.to_str() { + Ok(cert_str) => match read(cert_str) { + Ok(cert_bytes) => cert_bytes, + Err(err) => return_error!(format!("Error reading certificate file: {err}"), error) }, - Err(err) => return_error!(format!("Error reading certificate file: {err}"), error) - }, - Err(err) => return_error!(format!("Error resolving certificate string: {err}"), error) + Err(err) => return_error!(format!("Error resolving certificate string: {err}"), error) + } + }; + + let certificate = match SeasideWhirlpoolClientCertificate::decode(&*cert_data) { + Ok(res) => res, + Err(err) => return_error!(format!("Error decoding certificate: {err}"), error) }; let remote_address = certificate.address.clone(); From fb1a488a2449bada00ba55de14ae42ba440e7c97 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 8 Nov 2025 04:38:54 +0100 Subject: [PATCH 26/67] embedded cert --- viridian/barnacles/network-manager/editor/editor.h | 1 + .../network-manager/editor/interface_gtk3.c | 12 +++++++----- .../network-manager/editor/interface_gtk4.c | 12 +++++++----- viridian/barnacles/network-manager/plugin/plugin.c | 4 ++-- 4 files changed, 17 insertions(+), 12 deletions(-) diff --git a/viridian/barnacles/network-manager/editor/editor.h b/viridian/barnacles/network-manager/editor/editor.h index 7561abdd..ec65d6f4 100644 --- a/viridian/barnacles/network-manager/editor/editor.h +++ b/viridian/barnacles/network-manager/editor/editor.h @@ -59,6 +59,7 @@ GType seaside_editor_get_type(void); #define SEASIDE_PLUGIN_NAME "SeasideVPN" #define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" +#define NM_SEASIDE_KEY_CERTIFILE "certifile" #define NM_SEASIDE_KEY_CERTIFICATE "certificate" #define NM_SEASIDE_KEY_PROTOCOL "protocol" diff --git a/viridian/barnacles/network-manager/editor/interface_gtk3.c b/viridian/barnacles/network-manager/editor/interface_gtk3.c index 3df12240..04da10bf 100644 --- a/viridian/barnacles/network-manager/editor/interface_gtk3.c +++ b/viridian/barnacles/network-manager/editor/interface_gtk3.c @@ -48,6 +48,7 @@ static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { return; } + g_free(filename); gchar *encoded = g_base64_encode((const guchar *)contents, length); if (!encoded) { g_debug("Choosing certificate: Error encoding contents of the SeasideVPN certificate file !"); @@ -58,10 +59,9 @@ static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { g_free(priv->certificate_filedata); priv->certificate_filedata = encoded; - g_free(encoded); - g_free(contents); - g_free(filename); + g_debug("Choosing certificate: New SeasideVPN certificate file embedded value (%ld bytes) is set to: %s", length, encoded); + g_free(contents); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); stuff_changed_cb(NULL, self); } @@ -90,7 +90,7 @@ static void change_protocol_cb(GtkWidget *button, gpointer user_data) { static gboolean check_validity(SeasideEditor* self) { SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); if (!priv->certificate_filedata) g_debug("Validating connection: Certificate file data is missing!"); - if (!priv->protocol_name) g_debug("Validating connection: Certificate file data is missing!"); + if (!priv->protocol_name) g_debug("Validating connection: Certificate protocol name is missing!"); return priv->certificate_filedata != NULL && priv->protocol_name != NULL; } @@ -149,9 +149,10 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection return FALSE; } } else { - priv->protocol_name = g_strdup(NM_SEASIDE_PROTOCOL_DEFAULT); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon), TRUE); + proto_value = NM_SEASIDE_PROTOCOL_DEFAULT; } + priv->protocol_name = g_strdup(proto_value); } g_signal_connect(G_OBJECT(priv->filechooser_widget), "clicked", G_CALLBACK(choose_certificate_cb), self); @@ -181,6 +182,7 @@ static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFILE, NULL); nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, priv->certificate_filedata); nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, priv->protocol_name); diff --git a/viridian/barnacles/network-manager/editor/interface_gtk4.c b/viridian/barnacles/network-manager/editor/interface_gtk4.c index 96fb96d8..e26a7a86 100644 --- a/viridian/barnacles/network-manager/editor/interface_gtk4.c +++ b/viridian/barnacles/network-manager/editor/interface_gtk4.c @@ -76,6 +76,7 @@ static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { return; } + g_object_unref(data.file); gsize length = 0; gpointer raw_contents = g_bytes_unref_to_data(contents, &length); @@ -89,10 +90,9 @@ static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { g_free(priv->certificate_filedata); priv->certificate_filedata = encoded; - g_free(encoded); - g_free(raw_contents); + g_debug("Choosing certificate: New SeasideVPN certificate file embedded value (%ld bytes) is set to: %s", length, encoded); - g_object_unref(data.file); + g_free(raw_contents); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); stuff_changed_cb(NULL, self); } @@ -121,7 +121,7 @@ static void change_protocol_cb(GtkWidget *button, gpointer user_data) { static gboolean check_validity(SeasideEditor* self) { SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); if (!priv->certificate_filedata) g_debug("Validating connection: Certificate file data is missing!"); - if (!priv->protocol_name) g_debug("Validating connection: Certificate file data is missing!"); + if (!priv->protocol_name) g_debug("Validating connection: Certificate protocol name is missing!"); return priv->certificate_filedata != NULL && priv->protocol_name != NULL; } @@ -180,9 +180,10 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection return FALSE; } } else { - priv->protocol_name = g_strdup(NM_SEASIDE_PROTOCOL_DEFAULT); gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_typhoon), TRUE); + proto_value = NM_SEASIDE_PROTOCOL_DEFAULT; } + priv->protocol_name = g_strdup(proto_value); } g_signal_connect(G_OBJECT(priv->filechooser_widget), "clicked", G_CALLBACK(choose_certificate_cb), self); @@ -212,6 +213,7 @@ static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, NMSettingVpn* s_vpn = NM_SETTING_VPN(nm_setting_vpn_new()); g_object_set(s_vpn, NM_SETTING_VPN_SERVICE_TYPE, SEASIDE_PLUGIN_SERVICE, NULL); + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFILE, NULL); nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, priv->certificate_filedata); nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, priv->protocol_name); diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index 488873a9..71f50251 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -213,8 +213,8 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro g_debug("DBUS connect: Certificate parameter is a file name!"); certificate_data = (char *)g_strdup(certificate); } else { - g_debug("DBUS connect: Certificate parameter is embedded data!"); certificate_data = (char *)g_base64_decode((const guchar *)certificate, &certificate_length); + g_debug("DBUS connect: Certificate parameter is embedded data (%ld bytes)!", certificate_length); } if (!protocol) { @@ -231,7 +231,7 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro VPNConfig *cfg; char *err_string; g_debug("DBUS connect: Starting viridian..."); - if (!priv->vpn_start(certificate, certificate_length, protocol, &cfg, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { + if (!priv->vpn_start(certificate_data, certificate_length, protocol, &cfg, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { g_warning("DBUS connect: Error starting viridian: %s", err_string); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error starting viridian: %s", err_string); free(err_string); From 47333b93fd86dedfcb03ada074938265fc36a543 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 8 Nov 2025 20:05:10 +0100 Subject: [PATCH 27/67] gcc warnings --- viridian/barnacles/network-manager/Makefile | 157 +++++++++++++++--- .../network-manager/editor/auth_dialog.c | 5 +- .../barnacles/network-manager/editor/editor.c | 30 ++-- .../barnacles/network-manager/editor/editor.h | 6 + .../network-manager/editor/interface.h | 4 - .../network-manager/editor/interface_gtk3.c | 14 +- .../network-manager/editor/interface_gtk4.c | 14 +- .../network-manager/include/common.h | 17 ++ .../barnacles/network-manager/plugin/plugin.c | 48 +++--- .../barnacles/network-manager/plugin/plugin.h | 6 +- 10 files changed, 218 insertions(+), 83 deletions(-) create mode 100644 viridian/barnacles/network-manager/include/common.h diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index 191a390f..566975ab 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -8,8 +8,6 @@ SHELL := /bin/bash BUILD_TYPE := debug RUNNING_IN_DOCKER := false - - help: @ # Print available make target information echo -e "help" @@ -17,15 +15,33 @@ help: -# Building and setting up system: -G_C_FLAGS := $(shell pkg-config --cflags --libs libnm) +# Compilation flags: + +GCC_COMPILATION_FLAGS_BASE := ifeq ($(BUILD_TYPE),debug) - G_C_FLAGS := $(G_C_FLAGS) -Og + GCC_COMPILATION_FLAGS_BASE := $(GCC_COMPILATION_FLAGS_BASE) -Og endif +GCC_COMPILATION_FLAGS := $(GCC_COMPILATION_FLAGS_BASE) -Wall -Wextra -Wpedantic -Wshadow -Wpointer-arith -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wformat=2 -Werror + +RAW_GCC_FLAGS_GLIB := $(shell pkg-config --cflags --libs glib-2.0) +GCC_FLAGS_GLIB := $(GCC_COMPILATION_FLAGS_BASE) $(RAW_GCC_FLAGS_GLIB:-I%=-isystem %) + +RAW_GCC_FLAGS_LIBNM := $(shell pkg-config --cflags --libs libnm) +GCC_FLAGS_LIBNM := $(GCC_COMPILATION_FLAGS) $(RAW_GCC_FLAGS_LIBNM:-I%=-isystem %) + +RAW_GCC_FLAGS_GTK3 := $(shell pkg-config --cflags --libs libnm gtk+-3.0) +GCC_FLAGS_GTK3 := $(GCC_COMPILATION_FLAGS) $(RAW_GCC_FLAGS_GTK3:-I%=-isystem %) + +RAW_GCC_FLAGS_GTK4 := $(shell pkg-config --cflags --libs libnm gtk4) +GCC_FLAGS_GTK4 := $(GCC_COMPILATION_FLAGS) $(RAW_GCC_FLAGS_GTK4:-I%=-isystem %) + +RAW_GCC_FLAGS_LIBSECRET := $(shell pkg-config --cflags --libs libnm libsecret-1) +GCC_FLAGS_LIBSECRET := $(GCC_COMPILATION_FLAGS) $(RAW_GCC_FLAGS_LIBSECRET:-I%=-isystem %) + + + +# Building and setting up system: -G_C_FLAGS_GTK_3 := $(G_C_FLAGS) $(shell pkg-config --cflags --libs gtk+-3.0) -G_C_FLAGS_GTK_4 := $(G_C_FLAGS) $(shell pkg-config --cflags --libs gtk4) -G_C_FLAGS_SECRET := $(G_C_FLAGS) $(shell pkg-config --cflags --libs libsecret-1) BUILD_ARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) PLUGIN_NAME := seasidevpn @@ -38,12 +54,15 @@ SERVICE_DIR := /usr/libexec NM_DBUS_DIR := /usr/share/dbus-1/system.d PLUGIN_INTERFACE_BASE := $(PLUGIN_DIR)/libnm-vpn-editor-$(PLUGIN_NAME) -REEF_DIR := ../../reef +VIRIDIAN_DIR := ../.. +REEF_DIR := $(VIRIDIAN_DIR)/reef NM_CONFIGURATION_DIR := configuration +NM_INCLUDE_DIR := include NM_PLUGIN_DIR := plugin NM_EDITOR_DIR := editor NM_BUILD_DIR := build NM_BIN_DIR := $(REEF_DIR)/target/$(BUILD_TYPE) +SHARED_LIBRARY := $(REEF_DIR)/shared_library/include INSTALL_BIN := $(BIN_DIR)/libseaside.so INSTALL_PLUGIN := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-service @@ -55,29 +74,98 @@ INSTALL_INTERFACE_GTK4 := $(PLUGIN_INTERFACE_BASE)-gtk4.so INSTALL_DIALOG := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-auth-dialog EXTRA_FLAGS := -DSEASIDE_PLUGIN_SERVICE="\"$(SERVICE_NAME)\"" -DEDITOR_INTERFACE_PATH="\"$(PLUGIN_INTERFACE_BASE)\"" +EDITOR_PLUGIN_INCLUDES := -I$(SHARED_LIBRARY) -I$(NM_INCLUDE_DIR) +CLANG_CONFIGURATION_FILE := $(VIRIDIAN_DIR)/.clang-tidy +CLANG_FORMATTING_FILE := $(VIRIDIAN_DIR)/.clang-format -dir-build: - @ # Create build directory + + +# Build accessories: + +create-build-directory: + @ # Ensure build directory exists mkdir -p $(NM_BUILD_DIR) -.PHONY: dir-build - -editor-build: dir-build - @ # Build network manager reef editor - glib-compile-resources $(NM_EDITOR_DIR)/gresource.xml --sourcedir=$(NM_EDITOR_DIR) --target=$(NM_BUILD_DIR)/resources.gen.c --generate-source - gcc $(NM_EDITOR_DIR)/auth_dialog.c -o $(NM_BUILD_DIR)/auth_dialog $(G_C_FLAGS_SECRET) - gcc -fPIC -shared $(NM_EDITOR_DIR)/editor.c $(NM_EDITOR_DIR)/editor.h -o $(NM_BUILD_DIR)/editor.so $(G_C_FLAGS) $(EXTRA_FLAGS) - gcc -fPIC -shared $(NM_EDITOR_DIR)/*.h $(NM_EDITOR_DIR)/interface_gtk3.c $(NM_BUILD_DIR)/resources.gen.c -o $(NM_BUILD_DIR)/interface-gtk3.so $(EXTRA_FLAGS) $(G_C_FLAGS_GTK_3) - gcc -fPIC -shared $(NM_EDITOR_DIR)/*.h $(NM_EDITOR_DIR)/interface_gtk4.c $(NM_BUILD_DIR)/resources.gen.c -o $(NM_BUILD_DIR)/interface-gtk4.so $(EXTRA_FLAGS) $(G_C_FLAGS_GTK_4) -.PHONY: editor-build +.PHONY: create-build-directory -plugin-build: dir-build - @ # Build network manager reef plugin +$(SHARED_LIBRARY)/seaside.h: + @ # Compile rust shared library $(MAKE) -C $(REEF_DIR) -s --no-print-directory build-lib - gcc -fPIC $(NM_PLUGIN_DIR)/plugin.c $(NM_PLUGIN_DIR)/plugin.h -o $(NM_BUILD_DIR)/plugin $(G_C_FLAGS) + +$(NM_INCLUDE_DIR)/common.h: $(SHARED_LIBRARY)/seaside.h + @ # The common header depends on the rust shared library + +$(NM_BUILD_DIR)/resources.gen.c: $(NM_EDITOR_DIR)/gresource.xml | create-build-directory + @ # Generate GLib resources source file + glib-compile-resources $< --sourcedir=$(NM_EDITOR_DIR) --target=$@ --generate-source + + + +# Compile C wrappers: + +$(NM_BUILD_DIR)/resources.gen.o: $(NM_BUILD_DIR)/resources.gen.c | create-build-directory + @ + gcc -c $< -o $@ $(GCC_FLAGS_GLIB) + +$(NM_BUILD_DIR)/auth_dialog.o: $(NM_EDITOR_DIR)/auth_dialog.c | create-build-directory + @ + # clang-tidy --config-file=$(CLANG_CONFIGURATION_FILE) $< -- $(GCC_FLAGS_LIBSECRET) + gcc -fPIC -c $< -o $@ $(GCC_FLAGS_LIBSECRET) + +$(NM_BUILD_DIR)/editor.o: $(NM_EDITOR_DIR)/editor.c $(NM_EDITOR_DIR)/editor.h $(NM_INCLUDE_DIR)/common.h | create-build-directory + @ + # clang-tidy --config-file=$(CLANG_CONFIGURATION_FILE) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) + gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) + +$(NM_BUILD_DIR)/interface_gtk3.o: $(NM_EDITOR_DIR)/interface_gtk3.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory + @ + gcc -fPIC -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) + +$(NM_BUILD_DIR)/interface_gtk4.o: $(NM_EDITOR_DIR)/interface_gtk4.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory + @ + gcc -fPIC -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) + +$(NM_BUILD_DIR)/plugin.o: $(NM_PLUGIN_DIR)/plugin.c $(NM_PLUGIN_DIR)/plugin.h $(SHARED_LIBRARY)/seaside.h $(NM_INCLUDE_DIR)/common.h | create-build-directory + @ + gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) + + + +# Link C wrappers: + +$(NM_BUILD_DIR)/auth_dialog: $(NM_BUILD_DIR)/auth_dialog.o + @ + gcc $^ -o $@ $(GCC_FLAGS_LIBSECRET) + +$(NM_BUILD_DIR)/editor.so: $(NM_BUILD_DIR)/editor.o + @ + gcc -shared $^ -o $@ $(GCC_FLAGS_LIBNM) + +$(NM_BUILD_DIR)/interface-gtk3.so: $(NM_BUILD_DIR)/interface_gtk3.o $(NM_BUILD_DIR)/resources.gen.o + @ + gcc -shared $^ -o $@ $(GCC_FLAGS_GTK3) + +$(NM_BUILD_DIR)/interface-gtk4.so: $(NM_BUILD_DIR)/interface_gtk4.o $(NM_BUILD_DIR)/resources.gen.o + @ + gcc -shared $^ -o $@ $(GCC_FLAGS_GTK4) + +$(NM_BUILD_DIR)/plugin: $(NM_BUILD_DIR)/plugin.o + @ + gcc $^ -o $@ $(GCC_FLAGS_LIBNM) + + + +# Build everything: + +editor-build: $(NM_BUILD_DIR)/auth_dialog $(NM_BUILD_DIR)/editor.so $(NM_BUILD_DIR)/interface-gtk3.so $(NM_BUILD_DIR)/interface-gtk4.so + @ +.PHONY: editor-build + +plugin-build: $(NM_BUILD_DIR)/plugin + @ .PHONY: plugin-build -config-build: dir-build +config-build: create-build-directory @ # Build network manager reef configuration sed "s|SEASIDE-PLUGIN-NAME|$(PLUGIN_NAME)|" $(NM_CONFIGURATION_DIR)/descriptor.ini > $(NM_BUILD_DIR)/descriptor.ini.gen sed -i "s|DBUS-SERVICE-NAME|$(SERVICE_NAME)|" $(NM_BUILD_DIR)/descriptor.ini.gen @@ -90,6 +178,10 @@ build: editor-build plugin-build config-build @ # Build network manager reef plugin .PHONY: build + + +# Install and run the artifacts: + install: build @ # Install network manager reef plugin sudo install -D -m 755 $(NM_BUILD_DIR)/plugin $(INSTALL_PLUGIN) @@ -106,6 +198,7 @@ endif .PHONY: install run: install + @ cd $(SERVICE_DIR) ifeq ($(BUILD_TYPE),debug) sudo -E G_MESSAGES_DEBUG=all ./nm-$(PLUGIN_NAME)-service @@ -116,6 +209,20 @@ endif +# Lint C sources: + +lint: + @ + clang-format --Werror --sort-includes --style=file:$(CLANG_FORMATTING_FILE) --dry-run **/*.c **/*.h +.PHONY: lint + +format: + @ + clang-format --Werror --sort-includes --style=file:$(CLANG_FORMATTING_FILE) **/*.c **/*.h +.PHONY: format + + + # Artifact cleaning: clean: diff --git a/viridian/barnacles/network-manager/editor/auth_dialog.c b/viridian/barnacles/network-manager/editor/auth_dialog.c index 696473ee..16a14ece 100644 --- a/viridian/barnacles/network-manager/editor/auth_dialog.c +++ b/viridian/barnacles/network-manager/editor/auth_dialog.c @@ -44,12 +44,13 @@ main (int argc, char *argv[]) GOptionContext *context; GOptionEntry entries[] = { - { "uuid", 'u', 0, G_OPTION_ARG_STRING, &vpn_uuid, "UUID of VPN connection", NULL }, - { "name", 'n', 0, G_OPTION_ARG_STRING, &vpn_name, "Name of VPN connection", NULL }, + { "uuid", 'u', 0, G_OPTION_ARG_STRING, (void*) &vpn_uuid, "UUID of VPN connection", NULL }, + { "name", 'n', 0, G_OPTION_ARG_STRING, (void*) &vpn_name, "Name of VPN connection", NULL }, { NULL } }; context = g_option_context_new ("- seaside auth dialog"); + g_option_context_add_main_entries (context, entries, NULL); g_option_context_parse (context, &argc, &argv, NULL); g_option_context_free (context); diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/barnacles/network-manager/editor/editor.c index cbe5082a..4ce1345b 100644 --- a/viridian/barnacles/network-manager/editor/editor.c +++ b/viridian/barnacles/network-manager/editor/editor.c @@ -1,7 +1,6 @@ #include -#include - +#include "common.h" #include "editor.h" // PLUGIN: @@ -27,26 +26,27 @@ typedef enum { #define NM_SEASIDE_IMPORT_EXPORT_ERROR nm_seaside_import_export_error_quark() +__attribute__((unused)) static GQuark nm_seaside_import_export_error_quark(void) { static GQuark quark = 0; if (G_UNLIKELY(quark == 0)) quark = g_quark_from_static_string("nm-seaside-import-export-error-quark"); return quark; } -static guint32 get_capabilities (NMVpnEditorPlugin* iface) { +static guint32 get_capabilities (NMVpnEditorPlugin* iface __attribute__((unused))) { g_message("Checking SeasideVPN capabilities..."); return NM_VPN_EDITOR_PLUGIN_CAPABILITY_NONE; } -static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface, NMConnection* connection, GError** error) { +static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface __attribute__((unused)), NMConnection* connection, GError** error) { g_message("Getting SeasideVPN editor..."); unsigned int gtk_major = 3; void *handle = dlopen(NULL, RTLD_NOW); if (handle) { - unsigned int (*get_major_version)(void) = (unsigned int (*)(void)) dlsym(handle, "gtk_get_major_version"); - if (get_major_version) { - gtk_major = get_major_version(); + dll_function get_major_version_holder = { dlsym(handle, "gtk_get_major_version") }; + if (get_major_version_holder.pointer) { + gtk_major = get_major_version_holder.get_major_version(); } dlclose(handle); } else { @@ -67,18 +67,18 @@ static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface, NMConnection* connectio return NULL; } - NMVpnEditor *(*create_func)(NMConnection *, GError **) = (NMVpnEditor *(*)(NMConnection *, GError **)) dlsym(editor_handle, "create_seaside_editor"); - if (!create_func) { + dll_function create_seaside_editor_holder = { dlsym(editor_handle, "create_seaside_editor") }; + if (!create_seaside_editor_holder.pointer) { g_warning("Failed to resolve create_seaside_editor symbol: %s", dlerror()); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Failed to resolve create_seaside_editor symbol: %s", dlerror()); dlclose(editor_handle); return NULL; } - return create_func(connection, error); + return create_seaside_editor_holder.create_seaside_editor(connection, error); } -static NMConnection* import(NMVpnEditorPlugin* iface, const char* path, GError** error) { +static NMConnection* import(NMVpnEditorPlugin* iface __attribute__((unused)), const char* path, GError** error) { g_message("Importing SeasideVPN connection..."); NMConnection* connection = nm_simple_connection_new(); @@ -106,7 +106,7 @@ static NMConnection* import(NMVpnEditorPlugin* iface, const char* path, GError** return connection; } -static gboolean export (NMVpnEditorPlugin *iface, const char *path, NMConnection *connection, GError **error) { +static gboolean export (NMVpnEditorPlugin *iface __attribute__((unused)), const char *path, NMConnection *connection, GError **error) { g_message("Exporting SeasideVPN connection..."); NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); @@ -119,14 +119,14 @@ static gboolean export (NMVpnEditorPlugin *iface, const char *path, NMConnection if (!decoded || length == 0) return FALSE; - if (!g_file_set_contents(path, decoded, length, error)) + if (!g_file_set_contents(path, (gchar *)decoded, length, error)) return FALSE; g_free(decoded); return FALSE; } -static char *get_suggested_filename (NMVpnEditorPlugin *iface, NMConnection *connection) { +static char *get_suggested_filename (NMVpnEditorPlugin *iface __attribute__((unused)), NMConnection *connection) { g_message("Suggesting SeasideVPN connection file name..."); g_return_val_if_fail (connection != NULL, NULL); @@ -170,7 +170,7 @@ static void seaside_editor_plugin_class_init(SeasideEditorPluginClass* req_class g_object_class_override_property(object_class, PROP_SERVICE, NM_VPN_EDITOR_PLUGIN_SERVICE); } -static void seaside_editor_plugin_init(SeasideEditorPlugin* plugin) {} +static void seaside_editor_plugin_init(SeasideEditorPlugin* plugin __attribute__((unused))) {} static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* iface_class) { g_message("Constructing SeasideVPN plugin interface interface..."); diff --git a/viridian/barnacles/network-manager/editor/editor.h b/viridian/barnacles/network-manager/editor/editor.h index ec65d6f4..612c8d58 100644 --- a/viridian/barnacles/network-manager/editor/editor.h +++ b/viridian/barnacles/network-manager/editor/editor.h @@ -7,6 +7,8 @@ #include #include +#include + #include @@ -66,4 +68,8 @@ GType seaside_editor_get_type(void); #define NM_SEASIDE_PROTOCOL_DEFAULT "typhoon" +NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin*, NMConnection*, GError**); +NMVpnEditorPlugin* nm_vpn_editor_plugin_factory(GError**); + + #endif /* NM_SEASIDE_EDITOR_H */ diff --git a/viridian/barnacles/network-manager/editor/interface.h b/viridian/barnacles/network-manager/editor/interface.h index 7deff90c..624d4a45 100644 --- a/viridian/barnacles/network-manager/editor/interface.h +++ b/viridian/barnacles/network-manager/editor/interface.h @@ -22,10 +22,6 @@ typedef struct { GtkWidget *filechooser_widget; } SeasideEditorPrivate; -void stuff_changed_cb(GtkWidget* widget, gpointer user_data) { - g_signal_emit_by_name(SEASIDE_EDITOR(user_data), "changed"); -} - NMVpnEditor *create_seaside_editor(NMConnection *connection, GError **error); #endif /* IFACE_COMMON_H */ diff --git a/viridian/barnacles/network-manager/editor/interface_gtk3.c b/viridian/barnacles/network-manager/editor/interface_gtk3.c index 04da10bf..beaaaff4 100644 --- a/viridian/barnacles/network-manager/editor/interface_gtk3.c +++ b/viridian/barnacles/network-manager/editor/interface_gtk3.c @@ -8,7 +8,11 @@ static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class); G_DEFINE_TYPE_WITH_CODE(SeasideEditor, seaside_editor, G_TYPE_OBJECT, G_ADD_PRIVATE(SeasideEditor) G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR, seaside_editor_interface_init)) -static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { +static void stuff_changed_cb(gpointer user_data) { + g_signal_emit_by_name(SEASIDE_EDITOR(user_data), "changed"); +} + +static void choose_certificate_cb(GtkWidget *button __attribute__((unused)), gpointer user_data) { SeasideEditor *self = SEASIDE_EDITOR(user_data); SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); @@ -63,10 +67,10 @@ static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { g_free(contents); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); - stuff_changed_cb(NULL, self); + stuff_changed_cb(self); } -static void change_protocol_cb(GtkWidget *button, gpointer user_data) { +static void change_protocol_cb(GtkWidget *button __attribute__((unused)), gpointer user_data) { SeasideEditor *self = SEASIDE_EDITOR(user_data); SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); @@ -84,7 +88,7 @@ static void change_protocol_cb(GtkWidget *button, gpointer user_data) { else if (port_active) priv->protocol_name = g_strdup("port"); - stuff_changed_cb(NULL, self); + stuff_changed_cb(self); } static gboolean check_validity(SeasideEditor* self) { @@ -226,7 +230,7 @@ static void seaside_editor_class_init (SeasideEditorClass* req_class) { object_class->dispose = dispose; } -static void seaside_editor_init(SeasideEditor* plugin) {} +static void seaside_editor_init(SeasideEditor* plugin __attribute__((unused))) {} static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { iface_class->get_widget = get_widget; diff --git a/viridian/barnacles/network-manager/editor/interface_gtk4.c b/viridian/barnacles/network-manager/editor/interface_gtk4.c index e26a7a86..ddbcac8b 100644 --- a/viridian/barnacles/network-manager/editor/interface_gtk4.c +++ b/viridian/barnacles/network-manager/editor/interface_gtk4.c @@ -8,6 +8,10 @@ static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class); G_DEFINE_TYPE_WITH_CODE(SeasideEditor, seaside_editor, G_TYPE_OBJECT, G_ADD_PRIVATE(SeasideEditor) G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR, seaside_editor_interface_init)) +static void stuff_changed_cb(gpointer user_data) { + g_signal_emit_by_name(SEASIDE_EDITOR(user_data), "changed"); +} + typedef struct { GMainLoop *loop; GFile *file; @@ -26,7 +30,7 @@ static void on_file_dialog_done(GObject *source_object, GAsyncResult *res, gpoin g_main_loop_quit(data->loop); } -static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { +static void choose_certificate_cb(GtkWidget *button __attribute__((unused)), gpointer user_data) { SeasideEditor *self = SEASIDE_EDITOR(user_data); SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); @@ -94,10 +98,10 @@ static void choose_certificate_cb(GtkWidget *button, gpointer user_data) { g_free(raw_contents); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); - stuff_changed_cb(NULL, self); + stuff_changed_cb(self); } -static void change_protocol_cb(GtkWidget *button, gpointer user_data) { +static void change_protocol_cb(GtkWidget *button __attribute__((unused)), gpointer user_data) { SeasideEditor *self = SEASIDE_EDITOR(user_data); SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); @@ -115,7 +119,7 @@ static void change_protocol_cb(GtkWidget *button, gpointer user_data) { else if (port_active) priv->protocol_name = g_strdup("port"); - stuff_changed_cb(NULL, self); + stuff_changed_cb(self); } static gboolean check_validity(SeasideEditor* self) { @@ -257,7 +261,7 @@ static void seaside_editor_class_init (SeasideEditorClass* req_class) { object_class->dispose = dispose; } -static void seaside_editor_init(SeasideEditor* plugin) {} +static void seaside_editor_init(SeasideEditor* plugin __attribute__((unused))) {} static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { iface_class->get_widget = get_widget; diff --git a/viridian/barnacles/network-manager/include/common.h b/viridian/barnacles/network-manager/include/common.h new file mode 100644 index 00000000..62f59181 --- /dev/null +++ b/viridian/barnacles/network-manager/include/common.h @@ -0,0 +1,17 @@ +#include + +#include "seaside.h" + +typedef unsigned int (*get_major_version_fn)(void); +typedef NMVpnEditor* (*create_seaside_editor_fn)(NMConnection*, GError**); + +typedef bool (*vpn_start_fn)(const char*, uintptr_t, const char*, struct VPNConfig**, void**, void*, void (*)(void*, char*), char**); +typedef bool (*vpn_stop_fn)(void*, char**); + +typedef union { + void *pointer; + get_major_version_fn get_major_version; + create_seaside_editor_fn create_seaside_editor; + vpn_start_fn vpn_start; + vpn_stop_fn vpn_stop; +} dll_function; diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index 71f50251..d8b6d3ad 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -13,17 +13,15 @@ #include #include +#include "common.h" #include "plugin.h" -#include "../../../reef/shared_library/include/seaside.h" +#include "seaside.h" /* Shared library base names to try letting the loader find them */ #define LIB_BASENAME "libseaside.so" #define IP_TEMPLATE "%u.%u.%u.%u" -#define IP(x) ((uint8_t*) &x)[3], ((uint8_t*) &x)[2], ((uint8_t*) &x)[1], ((uint8_t*) &x)[0] - -typedef bool (*vpn_start_fn)(const char*, uintptr_t, const char*, struct VPNConfig**, void**, void*, void (*)(void*, char*), char**); -typedef bool (*vpn_stop_fn)(void*, char**); +#define IP(x) ((uint8_t*) &x)[3], ((uint8_t*) &x)[2], ((uint8_t*) &x)[1], ((uint8_t*) &x)[0] /* Private plugin state */ typedef struct { @@ -85,7 +83,6 @@ seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) if (priv->lib_handle) return TRUE; - /* Let the loader search soname */ priv->lib_handle = dlopen(LIB_BASENAME, RTLD_NOW | RTLD_LOCAL); if (!priv->lib_handle) { g_set_error (error, @@ -95,19 +92,23 @@ seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) return FALSE; } - /* Resolve symbols */ - priv->vpn_start = (vpn_start_fn) dlsym(priv->lib_handle, "vpn_start"); - priv->vpn_stop = (vpn_stop_fn) dlsym(priv->lib_handle, "vpn_stop"); + dll_function vpn_start_holder = { dlsym(priv->lib_handle, "vpn_start") }; + if (!vpn_start_holder.pointer) { + g_set_error (error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error reading libseaside symbol: vpn_start"); + dlclose(priv->lib_handle); + priv->lib_handle = NULL; + return FALSE; + } + priv->vpn_start = vpn_start_holder.vpn_start; - if (!priv->vpn_start || !priv->vpn_stop) { - g_set_error (error, - NM_VPN_PLUGIN_ERROR, - NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, - "Error reading libseaside symbols"); + dll_function vpn_stop_holder = { dlsym(priv->lib_handle, "vpn_stop") }; + if (!vpn_stop_holder.pointer) { + g_set_error (error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error reading libseaside symbol: vpn_stop"); dlclose(priv->lib_handle); priv->lib_handle = NULL; return FALSE; } + priv->vpn_stop = vpn_stop_holder.vpn_stop; return TRUE; } @@ -213,7 +214,7 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro g_debug("DBUS connect: Certificate parameter is a file name!"); certificate_data = (char *)g_strdup(certificate); } else { - certificate_data = (char *)g_base64_decode((const guchar *)certificate, &certificate_length); + certificate_data = (char *)g_base64_decode((const char *)certificate, &certificate_length); g_debug("DBUS connect: Certificate parameter is embedded data (%ld bytes)!", certificate_length); } @@ -275,19 +276,19 @@ real_disconnect(NMVpnServicePlugin *plugin, GError **error) } static gboolean -empty_need_secrets (NMVpnServicePlugin *plugin, - NMConnection *connection, - const char **setting_name, - GError **error) +empty_need_secrets (NMVpnServicePlugin *plugin __attribute__((unused)), + NMConnection *connection __attribute__((unused)), + const char **setting_name __attribute__((unused)), + GError **error __attribute__((unused))) { g_debug("DBUS need secrets: Skipped!"); return FALSE; } static gboolean -empty_new_secrets (NMVpnServicePlugin *base_plugin, - NMConnection *connection, - GError **error) +empty_new_secrets (NMVpnServicePlugin *base_plugin __attribute__((unused)), + NMConnection *connection __attribute__((unused)), + GError **error __attribute__((unused))) { g_debug("DBUS new secrets: Skipped!"); @@ -339,8 +340,7 @@ signal_handler (gpointer user_data) } /* Minimal main: instantiate plugin and run main loop */ -int main(int argc, char *argv[]) -{ +int main(int argc __attribute__((unused)), char *argv[] __attribute__((unused))) { g_debug("Starting SeasideVPN NM plugin..."); NMSeasidePlugin *plugin = nm_seaside_plugin_new(); if (!plugin) return EXIT_FAILURE; diff --git a/viridian/barnacles/network-manager/plugin/plugin.h b/viridian/barnacles/network-manager/plugin/plugin.h index c65b3e1b..f7a9358d 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.h +++ b/viridian/barnacles/network-manager/plugin/plugin.h @@ -5,9 +5,9 @@ #include #include -#define NM_DBUS_SERVICE_SEASIDE "org.freedesktop.NetworkManager.seasidevpn" -#define NM_DBUS_INTERFACE_SEASIDE "org.freedesktop.NetworkManager.seasidevpn" -#define NM_DBUS_PATH_SEASIDE "/org/freedesktop/NetworkManager/seasidevpn" +#define NM_DBUS_SERVICE_SEASIDE SEASIDE_PLUGIN_SERVICE +#define NM_DBUS_INTERFACE_SEASIDE SEASIDE_PLUGIN_SERVICE +#define NM_DBUS_PATH_SEASIDE "/org/freedesktop/NetworkManager/seasidevpn" #define NM_SEASIDE_KEY_CERTIFILE "certifile" #define NM_SEASIDE_KEY_CERTIFICATE "certificate" From c092e26602c46040754439d89753a13138b4c58b Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 8 Nov 2025 20:56:21 +0100 Subject: [PATCH 28/67] static analysis --- viridian/.clang-tidy | 13 ++++++ viridian/barnacles/network-manager/Makefile | 14 +++++-- .../network-manager/editor/auth_dialog.c | 34 ++++++++-------- .../barnacles/network-manager/editor/editor.c | 8 ++-- .../barnacles/network-manager/editor/editor.h | 20 +++++----- .../barnacles/network-manager/plugin/plugin.c | 40 ++++++++++--------- 6 files changed, 74 insertions(+), 55 deletions(-) create mode 100644 viridian/.clang-tidy diff --git a/viridian/.clang-tidy b/viridian/.clang-tidy new file mode 100644 index 00000000..8f44bdc7 --- /dev/null +++ b/viridian/.clang-tidy @@ -0,0 +1,13 @@ +Checks: > + clang-analyzer-*, + modernize-*, + performance-*, + readability-*, + bugprone-*, + + -readability-braces-around-statements, + -readability-isolate-declaration + +WarningsAsErrors: '*' +HeaderFilterRegex: '.*' +FormatStyle: file diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index 566975ab..16950a8a 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -79,6 +79,9 @@ EDITOR_PLUGIN_INCLUDES := -I$(SHARED_LIBRARY) -I$(NM_INCLUDE_DIR) CLANG_CONFIGURATION_FILE := $(VIRIDIAN_DIR)/.clang-tidy CLANG_FORMATTING_FILE := $(VIRIDIAN_DIR)/.clang-format +CLANG_STATIC_ANALYSIS_ARGS := --config-file=$(CLANG_CONFIGURATION_FILE) --quiet +CLANG_FORMATTING_ARGS := --Werror --sort-includes --style=file:$(CLANG_FORMATTING_FILE) **/*.c **/*.h + # Build accessories: @@ -109,24 +112,27 @@ $(NM_BUILD_DIR)/resources.gen.o: $(NM_BUILD_DIR)/resources.gen.c | create-build- $(NM_BUILD_DIR)/auth_dialog.o: $(NM_EDITOR_DIR)/auth_dialog.c | create-build-directory @ - # clang-tidy --config-file=$(CLANG_CONFIGURATION_FILE) $< -- $(GCC_FLAGS_LIBSECRET) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(GCC_FLAGS_LIBSECRET) gcc -fPIC -c $< -o $@ $(GCC_FLAGS_LIBSECRET) $(NM_BUILD_DIR)/editor.o: $(NM_EDITOR_DIR)/editor.c $(NM_EDITOR_DIR)/editor.h $(NM_INCLUDE_DIR)/common.h | create-build-directory @ - # clang-tidy --config-file=$(CLANG_CONFIGURATION_FILE) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) $(NM_BUILD_DIR)/interface_gtk3.o: $(NM_EDITOR_DIR)/interface_gtk3.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory @ + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) gcc -fPIC -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) $(NM_BUILD_DIR)/interface_gtk4.o: $(NM_EDITOR_DIR)/interface_gtk4.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory @ + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) gcc -fPIC -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) $(NM_BUILD_DIR)/plugin.o: $(NM_PLUGIN_DIR)/plugin.c $(NM_PLUGIN_DIR)/plugin.h $(SHARED_LIBRARY)/seaside.h $(NM_INCLUDE_DIR)/common.h | create-build-directory @ + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) @@ -213,12 +219,12 @@ endif lint: @ - clang-format --Werror --sort-includes --style=file:$(CLANG_FORMATTING_FILE) --dry-run **/*.c **/*.h + clang-format --dry-run $(CLANG_FORMATTING_ARGS) .PHONY: lint format: @ - clang-format --Werror --sort-includes --style=file:$(CLANG_FORMATTING_FILE) **/*.c **/*.h + clang-format $(CLANG_FORMATTING_ARGS) .PHONY: format diff --git a/viridian/barnacles/network-manager/editor/auth_dialog.c b/viridian/barnacles/network-manager/editor/auth_dialog.c index 16a14ece..7723e5d5 100644 --- a/viridian/barnacles/network-manager/editor/auth_dialog.c +++ b/viridian/barnacles/network-manager/editor/auth_dialog.c @@ -9,29 +9,29 @@ #include #include +static const size_t QUIT_STRING_SIZE = 10; +static const time_t QUIT_STRING_CHAR_DELAY = 10; +static const time_t QUIT_STRING_CHAR_TIMEOUT = 20; + static void wait_for_quit (void) { - GString *str; - char c; - ssize_t n; - time_t start; - - str = g_string_sized_new (10); - start = time (NULL); + GString *str = g_string_sized_new(QUIT_STRING_SIZE); + time_t start = time (NULL); do { errno = 0; - n = read (0, &c, 1); - if (n == 0 || (n < 0 && errno == EAGAIN)) - g_usleep (G_USEC_PER_SEC / 10); - else if (n == 1) { - g_string_append_c (str, c); - if (strstr (str->str, "QUIT") || (str->len > 10)) + char character; + ssize_t available = read (0, &character, 1); + if (available == 0 || (available < 0 && errno == EAGAIN)) + g_usleep (G_USEC_PER_SEC / QUIT_STRING_CHAR_DELAY); + else if (available == 1) { + g_string_append_c (str, character); + if (strstr (str->str, "QUIT") || (str->len > QUIT_STRING_SIZE)) break; } else break; - } while (time (NULL) < start + 20); + } while (time (NULL) < start + QUIT_STRING_CHAR_TIMEOUT); g_string_free (str, TRUE); } @@ -46,7 +46,7 @@ main (int argc, char *argv[]) GOptionEntry entries[] = { { "uuid", 'u', 0, G_OPTION_ARG_STRING, (void*) &vpn_uuid, "UUID of VPN connection", NULL }, { "name", 'n', 0, G_OPTION_ARG_STRING, (void*) &vpn_name, "Name of VPN connection", NULL }, - { NULL } + { 0 } }; context = g_option_context_new ("- seaside auth dialog"); @@ -56,11 +56,11 @@ main (int argc, char *argv[]) if (!nm_vpn_service_plugin_read_vpn_details (0, &data, &secrets)) { - fprintf (stderr, "Failed to read '%s' (%s) data and secrets from stdin.\n", vpn_name, vpn_uuid); + fputs("Failed to read VPN data and secrets from stdin.\n", stderr); return 1; } - fprintf(stdout, "\n\n"); + fputs("\n\n", stdout); fflush(stdout); wait_for_quit(); diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/barnacles/network-manager/editor/editor.c index 4ce1345b..4abdfc42 100644 --- a/viridian/barnacles/network-manager/editor/editor.c +++ b/viridian/barnacles/network-manager/editor/editor.c @@ -119,7 +119,7 @@ static gboolean export (NMVpnEditorPlugin *iface __attribute__((unused)), const if (!decoded || length == 0) return FALSE; - if (!g_file_set_contents(path, (gchar *)decoded, length, error)) + if (!g_file_set_contents(path, (gchar *)decoded, (gssize)length, error)) return FALSE; g_free(decoded); @@ -133,10 +133,10 @@ static char *get_suggested_filename (NMVpnEditorPlugin *iface __attribute__((unu NMSettingConnection *s_con = nm_connection_get_setting_connection (connection); g_return_val_if_fail (s_con != NULL, NULL); - const char *id = nm_setting_connection_get_id (s_con); - g_return_val_if_fail (id != NULL, NULL); + const char *connection_id = nm_setting_connection_get_id (s_con); + g_return_val_if_fail (connection_id != NULL, NULL); - return g_strdup_printf ("%s.sea", id); + return g_strdup_printf ("%s.sea", connection_id); } diff --git a/viridian/barnacles/network-manager/editor/editor.h b/viridian/barnacles/network-manager/editor/editor.h index 612c8d58..874c95a1 100644 --- a/viridian/barnacles/network-manager/editor/editor.h +++ b/viridian/barnacles/network-manager/editor/editor.h @@ -23,14 +23,14 @@ #define SEASIDE_IS_EDITOR_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SEASIDE_TYPE_EDITOR_PLUGIN)) #define SEASIDE_EDITOR_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), SEASIDE_TYPE_EDITOR_PLUGIN, SeasideEditorPluginClass)) -typedef struct _SeasideEditorPlugin SeasideEditorPlugin; -typedef struct _SeasideEditorPluginClass SeasideEditorPluginClass; +typedef struct SeasideEditorPluginActual SeasideEditorPlugin; +typedef struct SeasideEditorPluginClassActual SeasideEditorPluginClass; -struct _SeasideEditorPlugin { +struct SeasideEditorPluginActual { GObject parent; }; -struct _SeasideEditorPluginClass { +struct SeasideEditorPluginClassActual { GObjectClass parent; }; @@ -44,14 +44,14 @@ GType seaside_editor_plugin_get_type(void); #define SEASIDE_IS_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SEASIDE_TYPE_EDITOR)) #define SEASIDE_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), SEASIDE_TYPE_EDITOR, SeasideEditorClass)) -typedef struct _SeasideEditor SeasideEditor; -typedef struct _SeasideEditorClass SeasideEditorClass; +typedef struct SeasideEditorActual SeasideEditor; +typedef struct SeasideEditorClassActual SeasideEditorClass; -struct _SeasideEditor { +struct SeasideEditorActual { GObject parent; }; -struct _SeasideEditorClass { +struct SeasideEditorClassActual { GObjectClass parent; }; @@ -67,9 +67,7 @@ GType seaside_editor_get_type(void); #define NM_SEASIDE_PROTOCOL_DEFAULT "typhoon" - -NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin*, NMConnection*, GError**); -NMVpnEditorPlugin* nm_vpn_editor_plugin_factory(GError**); +NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin* /* editor_plugin */, NMConnection* /* connection */, GError** /* error */); #endif /* NM_SEASIDE_EDITOR_H */ diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index d8b6d3ad..99a321bf 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -1,5 +1,3 @@ -#define _GNU_SOURCE - #include #include #include @@ -21,7 +19,7 @@ #define LIB_BASENAME "libseaside.so" #define IP_TEMPLATE "%u.%u.%u.%u" -#define IP(x) ((uint8_t*) &x)[3], ((uint8_t*) &x)[2], ((uint8_t*) &x)[1], ((uint8_t*) &x)[0] +#define IP(x) ((uint8_t*) &(x))[3], ((uint8_t*) &(x))[2], ((uint8_t*) &(x))[1], ((uint8_t*) &(x))[0] /* Private plugin state */ typedef struct { @@ -45,22 +43,22 @@ typedef struct { static gboolean capture_error_idle(gpointer data) { g_debug("DBUS runtime: Starting synchronous error report..."); - CaptureErrorData *d = (CaptureErrorData *)data; + CaptureErrorData *ce_data = (CaptureErrorData *)data; - if (d->message) { + if (ce_data->message) { g_debug("DBUS runtime: Setting plugin failure..."); - nm_vpn_service_plugin_failure(d->plugin, NM_VPN_PLUGIN_FAILURE_CONNECT_FAILED); + nm_vpn_service_plugin_failure(ce_data->plugin, NM_VPN_PLUGIN_FAILURE_CONNECT_FAILED); g_debug("DBUS runtime: Requesting disconnect from NM..."); - nm_vpn_service_plugin_disconnect(d->plugin, NULL); + nm_vpn_service_plugin_disconnect(ce_data->plugin, NULL); - g_error("DBUS runtime: Error running SeasideVPN interface: %s", d->message); - free(d->message); + g_error("DBUS runtime: Error running SeasideVPN interface: %s", ce_data->message); + free(ce_data->message); } else g_debug("DBUS runtime: SeasideVPN interface exited cleanly!"); - g_free(d); + g_free(ce_data); g_debug("DBUS runtime: Error reported successfully!"); return G_SOURCE_REMOVE; } @@ -69,10 +67,10 @@ static void capture_error(void* plugin_ptr, char* error) { g_debug("DBUS runtime: Starting asynchronous error report..."); - CaptureErrorData *d = g_new(CaptureErrorData, 1); - d->plugin = (NMVpnServicePlugin *) plugin_ptr; - d->message = error; - g_idle_add(capture_error_idle, d); + CaptureErrorData *ce_data = g_new(CaptureErrorData, 1); + ce_data->plugin = (NMVpnServicePlugin *) plugin_ptr; + ce_data->message = error; + g_idle_add(capture_error_idle, ce_data); g_debug("DBUS runtime: Asynchronous report sent!"); } @@ -208,13 +206,14 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro g_warning("DBUS connect: Error extracting 'certificate' parameter"); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, "Error extracting 'certificate' parameter"); return FALSE; - } else g_debug("DBUS connect: Certificate parameter read: %s", certificate); + } + g_debug("DBUS connect: Certificate parameter read: %s", certificate); if (certifile) { g_debug("DBUS connect: Certificate parameter is a file name!"); certificate_data = (char *)g_strdup(certificate); } else { - certificate_data = (char *)g_base64_decode((const char *)certificate, &certificate_length); + certificate_data = (char *)g_base64_decode(certificate, &certificate_length); g_debug("DBUS connect: Certificate parameter is embedded data (%ld bytes)!", certificate_length); } @@ -222,12 +221,14 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro g_warning("DBUS connect: Error extracting 'protocol' parameter"); g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, "Error extracting 'protocol' parameter"); return FALSE; - } else g_debug("DBUS connect: Protocol parameter read: %s", protocol); + } + g_debug("DBUS connect: Protocol parameter read: %s", protocol); if (!seaside_load_library(priv, error)) { g_warning("DBUS connect: Error loading Seaside Reef DLL"); return FALSE; - } else g_debug("DBUS connect: Seaside Reef DLL loaded!"); + } + g_debug("DBUS connect: Seaside Reef DLL loaded!"); VPNConfig *cfg; char *err_string; @@ -237,7 +238,8 @@ real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **erro g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error starting viridian: %s", err_string); free(err_string); return FALSE; - } else g_debug("DBUS connect: Viridian started!"); + } + g_debug("DBUS connect: Viridian started!"); IdleConfigData *data = g_new(IdleConfigData, 1); data->plugin = plugin; From 898c714abe69c795a3eaab989f96f765d1ce26e0 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 8 Nov 2025 21:24:41 +0100 Subject: [PATCH 29/67] c formatted --- viridian/.clang-format | 13 + viridian/barnacles/network-manager/Makefile | 10 +- .../network-manager/editor/auth_dialog.c | 65 +- .../barnacles/network-manager/editor/editor.c | 93 ++- .../barnacles/network-manager/editor/editor.h | 9 +- .../network-manager/editor/interface.h | 24 +- .../network-manager/editor/interface_gtk3.c | 66 +-- .../network-manager/editor/interface_gtk4.c | 75 ++- .../network-manager/include/common.h | 17 +- .../barnacles/network-manager/plugin/plugin.c | 553 ++++++++---------- .../barnacles/network-manager/plugin/plugin.h | 29 +- 11 files changed, 443 insertions(+), 511 deletions(-) create mode 100644 viridian/.clang-format diff --git a/viridian/.clang-format b/viridian/.clang-format new file mode 100644 index 00000000..eaa7224f --- /dev/null +++ b/viridian/.clang-format @@ -0,0 +1,13 @@ +BasedOnStyle: WebKit + +UseTab: Always +IndentWidth: 4 +TabWidth: 4 + +ColumnLimit: 1024 +MaxEmptyLinesToKeep: 2 +SpaceAfterCStyleCast: true + +AllowShortFunctionsOnASingleLine: Empty +AllowShortIfStatementsOnASingleLine: AllIfsAndElse +BreakBeforeBraces: Attach diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index 16950a8a..dd75be95 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -122,13 +122,13 @@ $(NM_BUILD_DIR)/editor.o: $(NM_EDITOR_DIR)/editor.c $(NM_EDITOR_DIR)/editor.h $( $(NM_BUILD_DIR)/interface_gtk3.o: $(NM_EDITOR_DIR)/interface_gtk3.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) - gcc -fPIC -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) + gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) $(NM_BUILD_DIR)/interface_gtk4.o: $(NM_EDITOR_DIR)/interface_gtk4.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) - gcc -fPIC -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) + gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) $(NM_BUILD_DIR)/plugin.o: $(NM_PLUGIN_DIR)/plugin.c $(NM_PLUGIN_DIR)/plugin.h $(SHARED_LIBRARY)/seaside.h $(NM_INCLUDE_DIR)/common.h | create-build-directory @ @@ -224,7 +224,7 @@ lint: format: @ - clang-format $(CLANG_FORMATTING_ARGS) + clang-format -i $(CLANG_FORMATTING_ARGS) .PHONY: format diff --git a/viridian/barnacles/network-manager/editor/auth_dialog.c b/viridian/barnacles/network-manager/editor/auth_dialog.c index 7723e5d5..82984e71 100644 --- a/viridian/barnacles/network-manager/editor/auth_dialog.c +++ b/viridian/barnacles/network-manager/editor/auth_dialog.c @@ -1,7 +1,7 @@ -#include -#include -#include #include +#include +#include +#include #define SECRET_API_SUBJECT_TO_CHANGE #include @@ -14,59 +14,44 @@ static const time_t QUIT_STRING_CHAR_DELAY = 10; static const time_t QUIT_STRING_CHAR_TIMEOUT = 20; -static void -wait_for_quit (void) -{ - GString *str = g_string_sized_new(QUIT_STRING_SIZE); - time_t start = time (NULL); +static void wait_for_quit(void) { + GString* str = g_string_sized_new(QUIT_STRING_SIZE); + time_t start = time(NULL); do { errno = 0; char character; - ssize_t available = read (0, &character, 1); - if (available == 0 || (available < 0 && errno == EAGAIN)) - g_usleep (G_USEC_PER_SEC / QUIT_STRING_CHAR_DELAY); + ssize_t available = read(0, &character, 1); + if (available == 0 || (available < 0 && errno == EAGAIN)) g_usleep(G_USEC_PER_SEC / QUIT_STRING_CHAR_DELAY); else if (available == 1) { - g_string_append_c (str, character); - if (strstr (str->str, "QUIT") || (str->len > QUIT_STRING_SIZE)) - break; - } else - break; - } while (time (NULL) < start + QUIT_STRING_CHAR_TIMEOUT); - g_string_free (str, TRUE); + g_string_append_c(str, character); + if (strstr(str->str, "QUIT") || (str->len > QUIT_STRING_SIZE)) break; + } else break; + } while (time(NULL) < start + QUIT_STRING_CHAR_TIMEOUT); + g_string_free(str, TRUE); } - -int -main (int argc, char *argv[]) -{ - char *vpn_name = NULL, *vpn_uuid = NULL; +int main(int argc, char* argv[]) { + char *vpn_name = NULL, *vpn_uuid = NULL; GHashTable *data = NULL, *secrets = NULL; - GOptionContext *context; - GOptionEntry entries[] = { - { "uuid", 'u', 0, G_OPTION_ARG_STRING, (void*) &vpn_uuid, "UUID of VPN connection", NULL }, - { "name", 'n', 0, G_OPTION_ARG_STRING, (void*) &vpn_name, "Name of VPN connection", NULL }, - { 0 } - }; - - context = g_option_context_new ("- seaside auth dialog"); - g_option_context_add_main_entries (context, entries, NULL); - g_option_context_parse (context, &argc, &argv, NULL); - g_option_context_free (context); + GOptionContext* context; + GOptionEntry entries[] = { { "uuid", 'u', 0, G_OPTION_ARG_STRING, (void*) &vpn_uuid, "UUID of VPN connection", NULL }, { "name", 'n', 0, G_OPTION_ARG_STRING, (void*) &vpn_name, "Name of VPN connection", NULL }, { 0 } }; + context = g_option_context_new("- seaside auth dialog"); + g_option_context_add_main_entries(context, entries, NULL); + g_option_context_parse(context, &argc, &argv, NULL); + g_option_context_free(context); - if (!nm_vpn_service_plugin_read_vpn_details (0, &data, &secrets)) { + if (!nm_vpn_service_plugin_read_vpn_details(0, &data, &secrets)) { fputs("Failed to read VPN data and secrets from stdin.\n", stderr); return 1; } fputs("\n\n", stdout); - fflush(stdout); + fflush(stdout); wait_for_quit(); - if (data) - g_hash_table_unref (data); - if (secrets) - g_hash_table_unref (secrets); + if (data) g_hash_table_unref(data); + if (secrets) g_hash_table_unref(secrets); return 0; } diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/barnacles/network-manager/editor/editor.c index 4abdfc42..9dc7347c 100644 --- a/viridian/barnacles/network-manager/editor/editor.c +++ b/viridian/barnacles/network-manager/editor/editor.c @@ -5,12 +5,7 @@ // PLUGIN: -enum { - PROP_0, - PROP_NAME, - PROP_DESC, - PROP_SERVICE -}; +enum { PROP_0, PROP_NAME, PROP_DESC, PROP_SERVICE }; static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* iface_class); @@ -26,15 +21,14 @@ typedef enum { #define NM_SEASIDE_IMPORT_EXPORT_ERROR nm_seaside_import_export_error_quark() -__attribute__((unused)) -static GQuark nm_seaside_import_export_error_quark(void) { +__attribute__((unused)) static GQuark nm_seaside_import_export_error_quark(void) { static GQuark quark = 0; if (G_UNLIKELY(quark == 0)) quark = g_quark_from_static_string("nm-seaside-import-export-error-quark"); return quark; } -static guint32 get_capabilities (NMVpnEditorPlugin* iface __attribute__((unused))) { - g_message("Checking SeasideVPN capabilities..."); +static guint32 get_capabilities(NMVpnEditorPlugin* iface __attribute__((unused))) { + g_message("Checking SeasideVPN capabilities..."); return NM_VPN_EDITOR_PLUGIN_CAPABILITY_NONE; } @@ -42,7 +36,7 @@ static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface __attribute__((unused)), g_message("Getting SeasideVPN editor..."); unsigned int gtk_major = 3; - void *handle = dlopen(NULL, RTLD_NOW); + void* handle = dlopen(NULL, RTLD_NOW); if (handle) { dll_function get_major_version_holder = { dlsym(handle, "gtk_get_major_version") }; if (get_major_version_holder.pointer) { @@ -53,23 +47,23 @@ static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface __attribute__((unused)), g_warning("Failed to open process handle for symbol lookup: %s", dlerror()); } - const char *libname; + const char* libname; if (gtk_major >= 4) { libname = EDITOR_INTERFACE_PATH "-gtk4.so"; } else { libname = EDITOR_INTERFACE_PATH "-gtk3.so"; } - void *editor_handle = dlopen(libname, RTLD_LAZY); + void* editor_handle = dlopen(libname, RTLD_LAZY); if (!editor_handle) { - g_warning("Failed to open interface library: %s: %s", libname, dlerror()); + g_warning("Failed to open interface library: %s: %s", libname, dlerror()); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Failed to load editor library %s: %s", libname, dlerror()); return NULL; } dll_function create_seaside_editor_holder = { dlsym(editor_handle, "create_seaside_editor") }; if (!create_seaside_editor_holder.pointer) { - g_warning("Failed to resolve create_seaside_editor symbol: %s", dlerror()); + g_warning("Failed to resolve create_seaside_editor symbol: %s", dlerror()); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Failed to resolve create_seaside_editor symbol: %s", dlerror()); dlclose(editor_handle); return NULL; @@ -93,69 +87,64 @@ static NMConnection* import(NMVpnEditorPlugin* iface __attribute__((unused)), co nm_connection_add_setting(connection, NM_SETTING(s_ip4)); gsize length = 0; - gchar *contents = NULL; - if (!g_file_get_contents(path, &contents, &length, error)) - return NULL; + gchar* contents = NULL; + if (!g_file_get_contents(path, &contents, &length, error)) return NULL; - gchar *encoded = g_base64_encode((const guchar *)contents, length); - nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, encoded); - g_free(encoded); - g_free(contents); + gchar* encoded = g_base64_encode((const guchar*) contents, length); + nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, encoded); + g_free(encoded); + g_free(contents); nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL, NM_SEASIDE_PROTOCOL_DEFAULT); return connection; } -static gboolean export (NMVpnEditorPlugin *iface __attribute__((unused)), const char *path, NMConnection *connection, GError **error) { +static gboolean export(NMVpnEditorPlugin* iface __attribute__((unused)), const char* path, NMConnection* connection, GError** error) { g_message("Exporting SeasideVPN connection..."); NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); - if (!cert_value) - return FALSE; + if (!cert_value) return FALSE; gsize length = 0; - guchar *decoded = g_base64_decode(cert_value, &length); - if (!decoded || length == 0) - return FALSE; + guchar* decoded = g_base64_decode(cert_value, &length); + if (!decoded || length == 0) return FALSE; - if (!g_file_set_contents(path, (gchar *)decoded, (gssize)length, error)) - return FALSE; + if (!g_file_set_contents(path, (gchar*) decoded, (gssize) length, error)) return FALSE; g_free(decoded); return FALSE; } -static char *get_suggested_filename (NMVpnEditorPlugin *iface __attribute__((unused)), NMConnection *connection) { +static char* get_suggested_filename(NMVpnEditorPlugin* iface __attribute__((unused)), NMConnection* connection) { g_message("Suggesting SeasideVPN connection file name..."); - g_return_val_if_fail (connection != NULL, NULL); + g_return_val_if_fail(connection != NULL, NULL); - NMSettingConnection *s_con = nm_connection_get_setting_connection (connection); - g_return_val_if_fail (s_con != NULL, NULL); + NMSettingConnection* s_con = nm_connection_get_setting_connection(connection); + g_return_val_if_fail(s_con != NULL, NULL); - const char *connection_id = nm_setting_connection_get_id (s_con); - g_return_val_if_fail (connection_id != NULL, NULL); + const char* connection_id = nm_setting_connection_get_id(s_con); + g_return_val_if_fail(connection_id != NULL, NULL); - return g_strdup_printf ("%s.sea", connection_id); + return g_strdup_printf("%s.sea", connection_id); } - static void get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec) { g_message("Getting SeasideVPN connection property %d...", prop_id); switch (prop_id) { - case PROP_NAME: - g_value_set_string(value, SEASIDE_PLUGIN_NAME); - break; - case PROP_DESC: - g_value_set_string(value, SEASIDE_PLUGIN_DESC); - break; - case PROP_SERVICE: - g_value_set_string(value, SEASIDE_PLUGIN_SERVICE); - break; - default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); - break; + case PROP_NAME: + g_value_set_string(value, SEASIDE_PLUGIN_NAME); + break; + case PROP_DESC: + g_value_set_string(value, SEASIDE_PLUGIN_DESC); + break; + case PROP_SERVICE: + g_value_set_string(value, SEASIDE_PLUGIN_SERVICE); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec); + break; } } @@ -170,7 +159,7 @@ static void seaside_editor_plugin_class_init(SeasideEditorPluginClass* req_class g_object_class_override_property(object_class, PROP_SERVICE, NM_VPN_EDITOR_PLUGIN_SERVICE); } -static void seaside_editor_plugin_init(SeasideEditorPlugin* plugin __attribute__((unused))) {} +static void seaside_editor_plugin_init(SeasideEditorPlugin* plugin __attribute__((unused))) { } static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* iface_class) { g_message("Constructing SeasideVPN plugin interface interface..."); @@ -182,7 +171,7 @@ static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* ifa iface_class->get_suggested_filename = get_suggested_filename; } -G_MODULE_EXPORT NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin *editor_plugin, NMConnection* connection, GError** error) { +G_MODULE_EXPORT NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin* editor_plugin, NMConnection* connection, GError** error) { g_message("SeasideVPN editor factory called..."); if (error) g_return_val_if_fail(*error == NULL, NULL); return get_editor(NM_VPN_EDITOR_PLUGIN(editor_plugin), connection, error); diff --git a/viridian/barnacles/network-manager/editor/editor.h b/viridian/barnacles/network-manager/editor/editor.h index 874c95a1..b2483246 100644 --- a/viridian/barnacles/network-manager/editor/editor.h +++ b/viridian/barnacles/network-manager/editor/editor.h @@ -1,9 +1,9 @@ #ifndef NM_SEASIDE_EDITOR_H #define NM_SEASIDE_EDITOR_H -#include #include #include +#include #include #include @@ -11,7 +11,6 @@ #include - #define SEASIDE_EDITOR_PLUGIN_ERROR NM_CONNECTION_ERROR #define SEASIDE_EDITOR_PLUGIN_ERROR_INVALID_PROPERTY NM_CONNECTION_ERROR_INVALID_PROPERTY @@ -61,13 +60,9 @@ GType seaside_editor_get_type(void); #define SEASIDE_PLUGIN_NAME "SeasideVPN" #define SEASIDE_PLUGIN_DESC "An obscure P2P network PPTP VPN distributed system" -#define NM_SEASIDE_KEY_CERTIFILE "certifile" -#define NM_SEASIDE_KEY_CERTIFICATE "certificate" -#define NM_SEASIDE_KEY_PROTOCOL "protocol" - #define NM_SEASIDE_PROTOCOL_DEFAULT "typhoon" NMVpnEditor* nm_vpn_editor_factory_seaside(NMVpnEditorPlugin* /* editor_plugin */, NMConnection* /* connection */, GError** /* error */); -#endif /* NM_SEASIDE_EDITOR_H */ +#endif /* NM_SEASIDE_EDITOR_H */ diff --git a/viridian/barnacles/network-manager/editor/interface.h b/viridian/barnacles/network-manager/editor/interface.h index 624d4a45..59c8275b 100644 --- a/viridian/barnacles/network-manager/editor/interface.h +++ b/viridian/barnacles/network-manager/editor/interface.h @@ -1,27 +1,29 @@ #ifndef IFACE_COMMON_H #define IFACE_COMMON_H -#include #include #include +#include -#include #include +#include #include "editor.h" + typedef struct { - GtkWidget *widget; - GtkSizeGroup *group; + GtkWidget* widget; + GtkSizeGroup* group; gboolean window_added; - char *certificate_filedata; - char *protocol_name; - GtkWidget *label_selected_certificate; - GtkWidget *radio_typhoon; - GtkWidget *radio_port; - GtkWidget *filechooser_widget; + char* certificate_filedata; + char* protocol_name; + GtkWidget* label_selected_certificate; + GtkWidget* radio_typhoon; + GtkWidget* radio_port; + GtkWidget* filechooser_widget; } SeasideEditorPrivate; -NMVpnEditor *create_seaside_editor(NMConnection *connection, GError **error); +NMVpnEditor* create_seaside_editor(NMConnection* connection, GError** error); + #endif /* IFACE_COMMON_H */ diff --git a/viridian/barnacles/network-manager/editor/interface_gtk3.c b/viridian/barnacles/network-manager/editor/interface_gtk3.c index beaaaff4..ae5bd619 100644 --- a/viridian/barnacles/network-manager/editor/interface_gtk3.c +++ b/viridian/barnacles/network-manager/editor/interface_gtk3.c @@ -1,5 +1,6 @@ #include +#include "common.h" #include "interface.h" // UI WIDGET: @@ -12,23 +13,18 @@ static void stuff_changed_cb(gpointer user_data) { g_signal_emit_by_name(SEASIDE_EDITOR(user_data), "changed"); } -static void choose_certificate_cb(GtkWidget *button __attribute__((unused)), gpointer user_data) { - SeasideEditor *self = SEASIDE_EDITOR(user_data); - SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); +static void choose_certificate_cb(GtkWidget* button __attribute__((unused)), gpointer user_data) { + SeasideEditor* self = SEASIDE_EDITOR(user_data); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); - GtkWidget *dialog = gtk_file_chooser_dialog_new("Select Seaside Certificate", - NULL, - GTK_FILE_CHOOSER_ACTION_OPEN, - "_Cancel", GTK_RESPONSE_CANCEL, - "_Open", GTK_RESPONSE_ACCEPT, - NULL); + GtkWidget* dialog = gtk_file_chooser_dialog_new("Select Seaside Certificate", NULL, GTK_FILE_CHOOSER_ACTION_OPEN, "_Cancel", GTK_RESPONSE_CANCEL, "_Open", GTK_RESPONSE_ACCEPT, NULL); - GtkFileFilter *filter_cert = gtk_file_filter_new(); + GtkFileFilter* filter_cert = gtk_file_filter_new(); gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); gtk_file_filter_add_pattern(filter_cert, "*.sea"); gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog), filter_cert); - GtkFileFilter *filter_all = gtk_file_filter_new(); + GtkFileFilter* filter_all = gtk_file_filter_new(); gtk_file_filter_set_name(filter_all, "All Files"); gtk_file_filter_add_pattern(filter_all, "*"); gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog), filter_all); @@ -40,39 +36,39 @@ static void choose_certificate_cb(GtkWidget *button __attribute__((unused)), gpo return; } - char *filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); + char* filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)); g_debug("Choosing certificate: Updated SeasideVPN certificate to: %s", filename); gtk_widget_destroy(dialog); gsize length = 0; - gchar *contents = NULL; - if (!g_file_get_contents(filename, &contents, &length, NULL)) { + gchar* contents = NULL; + if (!g_file_get_contents(filename, &contents, &length, NULL)) { g_debug("Choosing certificate: Reading SeasideVPN certificate file contents failed!"); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: reading error!"); return; } g_free(filename); - gchar *encoded = g_base64_encode((const guchar *)contents, length); + gchar* encoded = g_base64_encode((const guchar*) contents, length); if (!encoded) { g_debug("Choosing certificate: Error encoding contents of the SeasideVPN certificate file !"); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: embedding error!"); - g_free(contents); + g_free(contents); return; } g_free(priv->certificate_filedata); priv->certificate_filedata = encoded; - g_debug("Choosing certificate: New SeasideVPN certificate file embedded value (%ld bytes) is set to: %s", length, encoded); + g_debug("Choosing certificate: New SeasideVPN certificate file embedded value (%ld bytes) is set to: %s", length, encoded); - g_free(contents); + g_free(contents); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); stuff_changed_cb(self); } -static void change_protocol_cb(GtkWidget *button __attribute__((unused)), gpointer user_data) { - SeasideEditor *self = SEASIDE_EDITOR(user_data); - SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); +static void change_protocol_cb(GtkWidget* button __attribute__((unused)), gpointer user_data) { + SeasideEditor* self = SEASIDE_EDITOR(user_data); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); gboolean typhoon_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon)); gboolean port_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->radio_port)); @@ -83,16 +79,14 @@ static void change_protocol_cb(GtkWidget *button __attribute__((unused)), gpoint } g_free(priv->protocol_name); - if (typhoon_active) - priv->protocol_name = g_strdup("typhoon"); - else if (port_active) - priv->protocol_name = g_strdup("port"); + if (typhoon_active) priv->protocol_name = g_strdup("typhoon"); + else if (port_active) priv->protocol_name = g_strdup("port"); stuff_changed_cb(self); } static gboolean check_validity(SeasideEditor* self) { - SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); if (!priv->certificate_filedata) g_debug("Validating connection: Certificate file data is missing!"); if (!priv->protocol_name) g_debug("Validating connection: Certificate protocol name is missing!"); return priv->certificate_filedata != NULL && priv->protocol_name != NULL; @@ -102,7 +96,7 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); - GtkBuilder *builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog_gtk3.ui"); + GtkBuilder* builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog_gtk3.ui"); if (!builder) { g_warning("Initialising plugin: Error loading SeasideVPN editor interface UI!"); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error loading SeasideVPN editor interface UI!"); @@ -134,17 +128,13 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection if (s_vpn) { const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); priv->certificate_filedata = g_strdup(cert_value); - if (cert_value) - gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file embedded!"); - else - gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file not selected!"); + if (cert_value) gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file embedded!"); + else gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file not selected!"); const char* proto_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); if (proto_value) { - if (g_strcmp0(proto_value, "typhoon") == 0) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon), TRUE); - else if (g_strcmp0(proto_value, "port") == 0) - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_port), TRUE); + if (g_strcmp0(proto_value, "typhoon") == 0) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_typhoon), TRUE); + else if (g_strcmp0(proto_value, "port") == 0) gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->radio_port), TRUE); else { g_warning("Initialising plugin: Error checking 'protocol' value of SeasideVPN connection settings: %s!", proto_value); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error checking 'protocol' value of SeasideVPN connection settings!"); @@ -225,18 +215,18 @@ static void dispose(GObject* object) { G_OBJECT_CLASS(seaside_editor_parent_class)->dispose(object); } -static void seaside_editor_class_init (SeasideEditorClass* req_class) { +static void seaside_editor_class_init(SeasideEditorClass* req_class) { GObjectClass* object_class = G_OBJECT_CLASS(req_class); object_class->dispose = dispose; } -static void seaside_editor_init(SeasideEditor* plugin __attribute__((unused))) {} +static void seaside_editor_init(SeasideEditor* plugin __attribute__((unused))) { } static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { iface_class->get_widget = get_widget; iface_class->update_connection = update_connection; } -G_MODULE_EXPORT NMVpnEditor *create_seaside_editor(NMConnection *connection, GError **error) { +G_MODULE_EXPORT NMVpnEditor* create_seaside_editor(NMConnection* connection, GError** error) { return nm_vpn_editor_interface_new(connection, error); } diff --git a/viridian/barnacles/network-manager/editor/interface_gtk4.c b/viridian/barnacles/network-manager/editor/interface_gtk4.c index ddbcac8b..5b589520 100644 --- a/viridian/barnacles/network-manager/editor/interface_gtk4.c +++ b/viridian/barnacles/network-manager/editor/interface_gtk4.c @@ -1,5 +1,6 @@ #include +#include "common.h" #include "interface.h" // UI WIDGET: @@ -13,13 +14,13 @@ static void stuff_changed_cb(gpointer user_data) { } typedef struct { - GMainLoop *loop; - GFile *file; + GMainLoop* loop; + GFile* file; } DialogData; -static void on_file_dialog_done(GObject *source_object, GAsyncResult *res, gpointer user_data) { - DialogData *data = (DialogData *)user_data; - GError *error = NULL; +static void on_file_dialog_done(GObject* source_object, GAsyncResult* res, gpointer user_data) { + DialogData* data = (DialogData*) user_data; + GError* error = NULL; data->file = gtk_file_dialog_open_finish(GTK_FILE_DIALOG(source_object), res, &error); if (error) { @@ -30,24 +31,24 @@ static void on_file_dialog_done(GObject *source_object, GAsyncResult *res, gpoin g_main_loop_quit(data->loop); } -static void choose_certificate_cb(GtkWidget *button __attribute__((unused)), gpointer user_data) { - SeasideEditor *self = SEASIDE_EDITOR(user_data); - SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); +static void choose_certificate_cb(GtkWidget* button __attribute__((unused)), gpointer user_data) { + SeasideEditor* self = SEASIDE_EDITOR(user_data); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); - GtkFileDialog *dialog = gtk_file_dialog_new(); + GtkFileDialog* dialog = gtk_file_dialog_new(); gtk_file_dialog_set_title(dialog, "Select Seaside Certificate"); gtk_file_dialog_set_modal(dialog, TRUE); gtk_file_dialog_set_accept_label(dialog, "_Open"); - GListStore *filters = g_list_store_new(GTK_TYPE_FILE_FILTER); + GListStore* filters = g_list_store_new(GTK_TYPE_FILE_FILTER); - GtkFileFilter *filter_cert = gtk_file_filter_new(); + GtkFileFilter* filter_cert = gtk_file_filter_new(); gtk_file_filter_set_name(filter_cert, "Seaside Certificate Files (*.sea)"); gtk_file_filter_add_pattern(filter_cert, "*.sea"); g_list_store_append(filters, filter_cert); g_object_unref(filter_cert); - GtkFileFilter *filter_all = gtk_file_filter_new(); + GtkFileFilter* filter_all = gtk_file_filter_new(); gtk_file_filter_set_name(filter_all, "All Files"); gtk_file_filter_add_pattern(filter_all, "*"); g_list_store_append(filters, filter_all); @@ -69,12 +70,12 @@ static void choose_certificate_cb(GtkWidget *button __attribute__((unused)), gpo return; } - char *filename = g_file_get_path(data.file); + char* filename = g_file_get_path(data.file); g_debug("Choosing certificate: Updated SeasideVPN certificate to: %s", filename); g_free(filename); - GBytes *contents = g_file_load_bytes(data.file, NULL, NULL, NULL); - if (!contents) { + GBytes* contents = g_file_load_bytes(data.file, NULL, NULL, NULL); + if (!contents) { g_debug("Choosing certificate: Reading SeasideVPN certificate file contents failed!"); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: reading error!"); return; @@ -84,11 +85,11 @@ static void choose_certificate_cb(GtkWidget *button __attribute__((unused)), gpo gsize length = 0; gpointer raw_contents = g_bytes_unref_to_data(contents, &length); - gchar *encoded = g_base64_encode((const guchar *)raw_contents, length); + gchar* encoded = g_base64_encode((const guchar*) raw_contents, length); if (!encoded) { g_debug("Choosing certificate: Error encoding contents of the SeasideVPN certificate file !"); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate not changed: embedding error!"); - g_free(raw_contents); + g_free(raw_contents); return; } @@ -101,9 +102,9 @@ static void choose_certificate_cb(GtkWidget *button __attribute__((unused)), gpo stuff_changed_cb(self); } -static void change_protocol_cb(GtkWidget *button __attribute__((unused)), gpointer user_data) { - SeasideEditor *self = SEASIDE_EDITOR(user_data); - SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); +static void change_protocol_cb(GtkWidget* button __attribute__((unused)), gpointer user_data) { + SeasideEditor* self = SEASIDE_EDITOR(user_data); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); gboolean typhoon_active = gtk_check_button_get_active(GTK_CHECK_BUTTON(priv->radio_typhoon)); gboolean port_active = gtk_check_button_get_active(GTK_CHECK_BUTTON(priv->radio_port)); @@ -114,26 +115,24 @@ static void change_protocol_cb(GtkWidget *button __attribute__((unused)), gpoint } g_free(priv->protocol_name); - if (typhoon_active) - priv->protocol_name = g_strdup("typhoon"); - else if (port_active) - priv->protocol_name = g_strdup("port"); + if (typhoon_active) priv->protocol_name = g_strdup("typhoon"); + else if (port_active) priv->protocol_name = g_strdup("port"); stuff_changed_cb(self); } static gboolean check_validity(SeasideEditor* self) { - SeasideEditorPrivate *priv = seaside_editor_get_instance_private(self); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); if (!priv->certificate_filedata) g_debug("Validating connection: Certificate file data is missing!"); if (!priv->protocol_name) g_debug("Validating connection: Certificate protocol name is missing!"); - return priv->certificate_filedata != NULL && priv->protocol_name != NULL; + return priv->certificate_filedata != NULL && priv->protocol_name != NULL; } static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection, GError** error) { SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); - GtkBuilder *builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog_gtk4.ui"); + GtkBuilder* builder = gtk_builder_new_from_resource("/org/freedesktop/network-manager-seasidevpn/dialog_gtk4.ui"); if (!builder) { g_warning("Initialising plugin: Error loading SeasideVPN editor interface UI!"); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error loading SeasideVPN editor interface UI!"); @@ -165,17 +164,13 @@ static gboolean init_editor_plugin(SeasideEditor* self, NMConnection* connection if (s_vpn) { const char* cert_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); priv->certificate_filedata = g_strdup(cert_value); - if (cert_value) - gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file embedded!"); - else - gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file not selected!"); + if (cert_value) gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file embedded!"); + else gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file not selected!"); const char* proto_value = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); if (proto_value) { - if (g_strcmp0(proto_value, "typhoon") == 0) - gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_typhoon), TRUE); - else if (g_strcmp0(proto_value, "port") == 0) - gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_port), TRUE); + if (g_strcmp0(proto_value, "typhoon") == 0) gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_typhoon), TRUE); + else if (g_strcmp0(proto_value, "port") == 0) gtk_check_button_set_active(GTK_CHECK_BUTTON(priv->radio_port), TRUE); else { g_warning("Initialising plugin: Error checking 'protocol' value of SeasideVPN connection settings: %s!", proto_value); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Error checking 'protocol' value of SeasideVPN connection settings!"); @@ -205,8 +200,8 @@ static GObject* get_widget(NMVpnEditor* iface) { } static gboolean update_connection(NMVpnEditor* iface, NMConnection* connection, GError** error) { - SeasideEditor* self = SEASIDE_EDITOR(iface); - SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); + SeasideEditor* self = SEASIDE_EDITOR(iface); + SeasideEditorPrivate* priv = seaside_editor_get_instance_private(self); if (!check_validity(self)) { g_debug("Updating connection: Aborting because validation failed!"); @@ -256,18 +251,18 @@ static void dispose(GObject* object) { G_OBJECT_CLASS(seaside_editor_parent_class)->dispose(object); } -static void seaside_editor_class_init (SeasideEditorClass* req_class) { +static void seaside_editor_class_init(SeasideEditorClass* req_class) { GObjectClass* object_class = G_OBJECT_CLASS(req_class); object_class->dispose = dispose; } -static void seaside_editor_init(SeasideEditor* plugin __attribute__((unused))) {} +static void seaside_editor_init(SeasideEditor* plugin __attribute__((unused))) { } static void seaside_editor_interface_init(NMVpnEditorInterface* iface_class) { iface_class->get_widget = get_widget; iface_class->update_connection = update_connection; } -G_MODULE_EXPORT NMVpnEditor *create_seaside_editor(NMConnection *connection, GError **error) { +G_MODULE_EXPORT NMVpnEditor* create_seaside_editor(NMConnection* connection, GError** error) { return nm_vpn_editor_interface_new(connection, error); } diff --git a/viridian/barnacles/network-manager/include/common.h b/viridian/barnacles/network-manager/include/common.h index 62f59181..b284fbf1 100644 --- a/viridian/barnacles/network-manager/include/common.h +++ b/viridian/barnacles/network-manager/include/common.h @@ -1,7 +1,15 @@ +#ifndef NM_SEASIDE_COMMON_H +#define NM_SEASIDE_COMMON_H + #include #include "seaside.h" + +#define NM_SEASIDE_KEY_CERTIFILE "certifile" +#define NM_SEASIDE_KEY_CERTIFICATE "certificate" +#define NM_SEASIDE_KEY_PROTOCOL "protocol" + typedef unsigned int (*get_major_version_fn)(void); typedef NMVpnEditor* (*create_seaside_editor_fn)(NMConnection*, GError**); @@ -9,9 +17,12 @@ typedef bool (*vpn_start_fn)(const char*, uintptr_t, const char*, struct VPNConf typedef bool (*vpn_stop_fn)(void*, char**); typedef union { - void *pointer; + void* pointer; get_major_version_fn get_major_version; create_seaside_editor_fn create_seaside_editor; - vpn_start_fn vpn_start; - vpn_stop_fn vpn_stop; + vpn_start_fn vpn_start; + vpn_stop_fn vpn_stop; } dll_function; + + +#endif /* NM_SEASIDE_COMMON_H */ diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/barnacles/network-manager/plugin/plugin.c index 99a321bf..f8dfbfc0 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.c +++ b/viridian/barnacles/network-manager/plugin/plugin.c @@ -1,362 +1,317 @@ -#include -#include -#include -#include +#include #include #include -#include +#include #include +#include +#include +#include -#include -#include #include +#include +#include #include "common.h" #include "plugin.h" #include "seaside.h" -/* Shared library base names to try letting the loader find them */ #define LIB_BASENAME "libseaside.so" #define IP_TEMPLATE "%u.%u.%u.%u" #define IP(x) ((uint8_t*) &(x))[3], ((uint8_t*) &(x))[2], ((uint8_t*) &(x))[1], ((uint8_t*) &(x))[0] -/* Private plugin state */ + typedef struct { - void *lib_handle; - void *coordinator; - vpn_start_fn vpn_start; - vpn_stop_fn vpn_stop; + void* lib_handle; + void* coordinator; + vpn_start_fn vpn_start; + vpn_stop_fn vpn_stop; } NMSeasidePluginPrivate; G_DEFINE_TYPE_WITH_PRIVATE(NMSeasidePlugin, nm_seaside_plugin, NM_TYPE_VPN_SERVICE_PLUGIN) typedef struct { - NMVpnServicePlugin* plugin; - VPNConfig* cfg; + NMVpnServicePlugin* plugin; + VPNConfig* cfg; } IdleConfigData; typedef struct { - NMVpnServicePlugin *plugin; - char *message; + NMVpnServicePlugin* plugin; + char* message; } CaptureErrorData; static gboolean capture_error_idle(gpointer data) { - g_debug("DBUS runtime: Starting synchronous error report..."); - CaptureErrorData *ce_data = (CaptureErrorData *)data; + g_debug("DBUS runtime: Starting synchronous error report..."); + CaptureErrorData* ce_data = (CaptureErrorData*) data; - if (ce_data->message) { - g_debug("DBUS runtime: Setting plugin failure..."); - nm_vpn_service_plugin_failure(ce_data->plugin, NM_VPN_PLUGIN_FAILURE_CONNECT_FAILED); + if (ce_data->message) { + g_debug("DBUS runtime: Setting plugin failure..."); + nm_vpn_service_plugin_failure(ce_data->plugin, NM_VPN_PLUGIN_FAILURE_CONNECT_FAILED); - g_debug("DBUS runtime: Requesting disconnect from NM..."); - nm_vpn_service_plugin_disconnect(ce_data->plugin, NULL); + g_debug("DBUS runtime: Requesting disconnect from NM..."); + nm_vpn_service_plugin_disconnect(ce_data->plugin, NULL); - g_error("DBUS runtime: Error running SeasideVPN interface: %s", ce_data->message); - free(ce_data->message); + g_error("DBUS runtime: Error running SeasideVPN interface: %s", ce_data->message); + free(ce_data->message); - } else - g_debug("DBUS runtime: SeasideVPN interface exited cleanly!"); + } else g_debug("DBUS runtime: SeasideVPN interface exited cleanly!"); - g_free(ce_data); - g_debug("DBUS runtime: Error reported successfully!"); - return G_SOURCE_REMOVE; + g_free(ce_data); + g_debug("DBUS runtime: Error reported successfully!"); + return G_SOURCE_REMOVE; } -static void -capture_error(void* plugin_ptr, char* error) -{ - g_debug("DBUS runtime: Starting asynchronous error report..."); - CaptureErrorData *ce_data = g_new(CaptureErrorData, 1); - ce_data->plugin = (NMVpnServicePlugin *) plugin_ptr; - ce_data->message = error; - g_idle_add(capture_error_idle, ce_data); - g_debug("DBUS runtime: Asynchronous report sent!"); +static void capture_error(void* plugin_ptr, char* error) { + g_debug("DBUS runtime: Starting asynchronous error report..."); + CaptureErrorData* ce_data = g_new(CaptureErrorData, 1); + ce_data->plugin = (NMVpnServicePlugin*) plugin_ptr; + ce_data->message = error; + g_idle_add(capture_error_idle, ce_data); + g_debug("DBUS runtime: Asynchronous report sent!"); } -/* Try to dlopen letting the system search for the library; fall back to explicit paths. */ -static gboolean -seaside_load_library(NMSeasidePluginPrivate *priv, GError **error) -{ - if (priv->lib_handle) - return TRUE; - - priv->lib_handle = dlopen(LIB_BASENAME, RTLD_NOW | RTLD_LOCAL); - if (!priv->lib_handle) { - g_set_error (error, - NM_VPN_PLUGIN_ERROR, - NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, - "Error loading libseaside: %s", dlerror()); - return FALSE; - } - - dll_function vpn_start_holder = { dlsym(priv->lib_handle, "vpn_start") }; - if (!vpn_start_holder.pointer) { - g_set_error (error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error reading libseaside symbol: vpn_start"); - dlclose(priv->lib_handle); - priv->lib_handle = NULL; - return FALSE; - } - priv->vpn_start = vpn_start_holder.vpn_start; - - dll_function vpn_stop_holder = { dlsym(priv->lib_handle, "vpn_stop") }; - if (!vpn_stop_holder.pointer) { - g_set_error (error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error reading libseaside symbol: vpn_stop"); - dlclose(priv->lib_handle); - priv->lib_handle = NULL; - return FALSE; - } - priv->vpn_stop = vpn_stop_holder.vpn_stop; - - return TRUE; +static gboolean seaside_load_library(NMSeasidePluginPrivate* priv, GError** error) { + if (priv->lib_handle) return TRUE; + + priv->lib_handle = dlopen(LIB_BASENAME, RTLD_NOW | RTLD_LOCAL); + if (!priv->lib_handle) { + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error loading libseaside: %s", dlerror()); + return FALSE; + } + + dll_function vpn_start_holder = { dlsym(priv->lib_handle, "vpn_start") }; + if (!vpn_start_holder.pointer) { + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error reading libseaside symbol: vpn_start"); + dlclose(priv->lib_handle); + priv->lib_handle = NULL; + return FALSE; + } + priv->vpn_start = vpn_start_holder.vpn_start; + + dll_function vpn_stop_holder = { dlsym(priv->lib_handle, "vpn_stop") }; + if (!vpn_stop_holder.pointer) { + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error reading libseaside symbol: vpn_stop"); + dlclose(priv->lib_handle); + priv->lib_handle = NULL; + return FALSE; + } + priv->vpn_stop = vpn_stop_holder.vpn_stop; + + return TRUE; } -/* Build and send NM IPv4 config from VPNConfig */ -static gboolean -seaside_set_vpnconfig_idle(gpointer user_data) -{ - g_debug("DBUS config: Starting asynchronous configuration setting..."); - IdleConfigData *data = (IdleConfigData *)user_data; - - GVariantBuilder gen_builder; - g_debug("DBUS config: Initializing general configuration..."); - g_variant_builder_init(&gen_builder, G_VARIANT_TYPE_VARDICT); - - if (data->cfg->tunnel_name && data->cfg->tunnel_name[0]) { - g_debug("DBUS config: Setting tunnel name to: %s...", data->cfg->tunnel_name); - g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_TUNDEV, g_variant_new_string(data->cfg->tunnel_name)); - } - - if (data->cfg->tunnel_mtu) { - g_debug("DBUS config: Setting tunnel MTU to: %u...", data->cfg->tunnel_mtu); - g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_MTU, g_variant_new_uint32(data->cfg->tunnel_mtu)); - } - - if (data->cfg->remote_address) { - g_debug("DBUS config: Setting tunnel remote gateway to: " IP_TEMPLATE "...", IP(data->cfg->remote_address)); - g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_EXT_GATEWAY, g_variant_new_uint32(g_htonl(data->cfg->remote_address))); - } - - g_debug("DBUS config: Setting IPv4 configuration to allowed..."); +static gboolean seaside_set_vpnconfig_idle(gpointer user_data) { + g_debug("DBUS config: Starting asynchronous configuration setting..."); + IdleConfigData* data = (IdleConfigData*) user_data; + + GVariantBuilder gen_builder; + g_debug("DBUS config: Initializing general configuration..."); + g_variant_builder_init(&gen_builder, G_VARIANT_TYPE_VARDICT); + + if (data->cfg->tunnel_name && data->cfg->tunnel_name[0]) { + g_debug("DBUS config: Setting tunnel name to: %s...", data->cfg->tunnel_name); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_TUNDEV, g_variant_new_string(data->cfg->tunnel_name)); + } + + if (data->cfg->tunnel_mtu) { + g_debug("DBUS config: Setting tunnel MTU to: %u...", data->cfg->tunnel_mtu); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_MTU, g_variant_new_uint32(data->cfg->tunnel_mtu)); + } + + if (data->cfg->remote_address) { + g_debug("DBUS config: Setting tunnel remote gateway to: " IP_TEMPLATE "...", IP(data->cfg->remote_address)); + g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_EXT_GATEWAY, g_variant_new_uint32(g_htonl(data->cfg->remote_address))); + } + + g_debug("DBUS config: Setting IPv4 configuration to allowed..."); g_variant_builder_add(&gen_builder, "{sv}", NM_VPN_PLUGIN_CONFIG_HAS_IP4, g_variant_new_boolean(TRUE)); - g_debug("DBUS config: Sending general configuration..."); - nm_vpn_service_plugin_set_config(data->plugin, g_variant_builder_end(&gen_builder)); - - GVariantBuilder ipv4_builder; - g_debug("DBUS config: Initializing IPv4 configuration..."); - g_variant_builder_init(&ipv4_builder, G_VARIANT_TYPE_VARDICT); - - if (data->cfg->tunnel_gateway) { - g_debug("DBUS config: Setting tunnel internal gateway to: " IP_TEMPLATE "...", IP(data->cfg->tunnel_gateway)); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_INT_GATEWAY, g_variant_new_uint32(g_htonl(data->cfg->tunnel_gateway))); - } - - if (data->cfg->tunnel_address) { - g_debug("DBUS config: Setting tunnel address to: " IP_TEMPLATE "...", IP(data->cfg->tunnel_address)); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, g_variant_new_uint32(g_htonl(data->cfg->tunnel_address))); - } - - if (data->cfg->tunnel_prefix) { - g_debug("DBUS config: Setting tunnel prefix to: %u...", data->cfg->tunnel_prefix); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, g_variant_new_uint32(data->cfg->tunnel_prefix)); - } - - if (data->cfg->dns_address) { - g_debug("DBUS config: Setting tunnel DNS address to: " IP_TEMPLATE "...", IP(data->cfg->dns_address)); - GVariantBuilder dns_builder; - g_variant_builder_init(&dns_builder, G_VARIANT_TYPE("au")); - g_variant_builder_add(&dns_builder, "u", g_htonl(data->cfg->dns_address)); - g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, g_variant_builder_end(&dns_builder)); - } - - g_debug("DBUS config: Sending IPv4 configuration..."); - nm_vpn_service_plugin_set_ip4_config(data->plugin, g_variant_builder_end(&ipv4_builder)); - - g_free(data->cfg); - g_free(data); - g_debug("DBUS config: Configuration sent!"); - return G_SOURCE_REMOVE; + g_debug("DBUS config: Sending general configuration..."); + nm_vpn_service_plugin_set_config(data->plugin, g_variant_builder_end(&gen_builder)); + + GVariantBuilder ipv4_builder; + g_debug("DBUS config: Initializing IPv4 configuration..."); + g_variant_builder_init(&ipv4_builder, G_VARIANT_TYPE_VARDICT); + + if (data->cfg->tunnel_gateway) { + g_debug("DBUS config: Setting tunnel internal gateway to: " IP_TEMPLATE "...", IP(data->cfg->tunnel_gateway)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_INT_GATEWAY, g_variant_new_uint32(g_htonl(data->cfg->tunnel_gateway))); + } + + if (data->cfg->tunnel_address) { + g_debug("DBUS config: Setting tunnel address to: " IP_TEMPLATE "...", IP(data->cfg->tunnel_address)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_ADDRESS, g_variant_new_uint32(g_htonl(data->cfg->tunnel_address))); + } + + if (data->cfg->tunnel_prefix) { + g_debug("DBUS config: Setting tunnel prefix to: %u...", data->cfg->tunnel_prefix); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_PREFIX, g_variant_new_uint32(data->cfg->tunnel_prefix)); + } + + if (data->cfg->dns_address) { + g_debug("DBUS config: Setting tunnel DNS address to: " IP_TEMPLATE "...", IP(data->cfg->dns_address)); + GVariantBuilder dns_builder; + g_variant_builder_init(&dns_builder, G_VARIANT_TYPE("au")); + g_variant_builder_add(&dns_builder, "u", g_htonl(data->cfg->dns_address)); + g_variant_builder_add(&ipv4_builder, "{sv}", NM_VPN_PLUGIN_IP4_CONFIG_DNS, g_variant_builder_end(&dns_builder)); + } + + g_debug("DBUS config: Sending IPv4 configuration..."); + nm_vpn_service_plugin_set_ip4_config(data->plugin, g_variant_builder_end(&ipv4_builder)); + + g_free(data->cfg); + g_free(data); + g_debug("DBUS config: Configuration sent!"); + return G_SOURCE_REMOVE; } -/* real_connect: invoked by NM when starting a VPN session */ -static gboolean -real_connect(NMVpnServicePlugin *plugin, NMConnection *connection, GError **error) -{ - g_debug("DBUS connect: Starting..."); - NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); - NMSettingVpn *s_vpn = nm_connection_get_setting_vpn(connection); - - if (!s_vpn) { - g_warning("DBUS connect: Error extracting settings"); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_INVALID_CONNECTION, - "Error extracting settings"); - return FALSE; - } - - g_debug("DBUS connect: Reading configuration data..."); - const char *certifile = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFILE); - const char *certificate = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); - const char *protocol = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); - - gsize certificate_length = 0; - char * certificate_data = NULL; - - if (!certificate) { - g_warning("DBUS connect: Error extracting 'certificate' parameter"); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, "Error extracting 'certificate' parameter"); - return FALSE; - } - g_debug("DBUS connect: Certificate parameter read: %s", certificate); - - if (certifile) { - g_debug("DBUS connect: Certificate parameter is a file name!"); - certificate_data = (char *)g_strdup(certificate); - } else { - certificate_data = (char *)g_base64_decode(certificate, &certificate_length); - g_debug("DBUS connect: Certificate parameter is embedded data (%ld bytes)!", certificate_length); - } - - if (!protocol) { - g_warning("DBUS connect: Error extracting 'protocol' parameter"); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, "Error extracting 'protocol' parameter"); - return FALSE; - } - g_debug("DBUS connect: Protocol parameter read: %s", protocol); - - if (!seaside_load_library(priv, error)) { - g_warning("DBUS connect: Error loading Seaside Reef DLL"); - return FALSE; - } - g_debug("DBUS connect: Seaside Reef DLL loaded!"); - - VPNConfig *cfg; - char *err_string; - g_debug("DBUS connect: Starting viridian..."); - if (!priv->vpn_start(certificate_data, certificate_length, protocol, &cfg, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { - g_warning("DBUS connect: Error starting viridian: %s", err_string); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error starting viridian: %s", err_string); - free(err_string); - return FALSE; - } - g_debug("DBUS connect: Viridian started!"); - - IdleConfigData *data = g_new(IdleConfigData, 1); - data->plugin = plugin; - data->cfg = cfg; - g_debug("DBUS connect: Scheduling configuration setting..."); - g_idle_add(seaside_set_vpnconfig_idle, data); - - g_debug("DBUS connect: Success!"); - g_free(certificate_data); - return TRUE; +static gboolean real_connect(NMVpnServicePlugin* plugin, NMConnection* connection, GError** error) { + g_debug("DBUS connect: Starting..."); + NMSeasidePluginPrivate* priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); + NMSettingVpn* s_vpn = nm_connection_get_setting_vpn(connection); + + if (!s_vpn) { + g_warning("DBUS connect: Error extracting settings"); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_INVALID_CONNECTION, "Error extracting settings"); + return FALSE; + } + + g_debug("DBUS connect: Reading configuration data..."); + const char* certifile = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFILE); + const char* certificate = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE); + const char* protocol = nm_setting_vpn_get_data_item(s_vpn, NM_SEASIDE_KEY_PROTOCOL); + + gsize certificate_length = 0; + char* certificate_data = NULL; + + if (!certificate) { + g_warning("DBUS connect: Error extracting 'certificate' parameter"); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, "Error extracting 'certificate' parameter"); + return FALSE; + } + g_debug("DBUS connect: Certificate parameter read: %s", certificate); + + if (certifile) { + g_debug("DBUS connect: Certificate parameter is a file name!"); + certificate_data = (char*) g_strdup(certificate); + } else { + certificate_data = (char*) g_base64_decode(certificate, &certificate_length); + g_debug("DBUS connect: Certificate parameter is embedded data (%ld bytes)!", certificate_length); + } + + if (!protocol) { + g_warning("DBUS connect: Error extracting 'protocol' parameter"); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_BAD_ARGUMENTS, "Error extracting 'protocol' parameter"); + return FALSE; + } + g_debug("DBUS connect: Protocol parameter read: %s", protocol); + + if (!seaside_load_library(priv, error)) { + g_warning("DBUS connect: Error loading Seaside Reef DLL"); + return FALSE; + } + g_debug("DBUS connect: Seaside Reef DLL loaded!"); + + VPNConfig* cfg; + char* err_string; + g_debug("DBUS connect: Starting viridian..."); + if (!priv->vpn_start(certificate_data, certificate_length, protocol, &cfg, &priv->coordinator, (void*) plugin, capture_error, &err_string)) { + g_warning("DBUS connect: Error starting viridian: %s", err_string); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_LAUNCH_FAILED, "Error starting viridian: %s", err_string); + free(err_string); + return FALSE; + } + g_debug("DBUS connect: Viridian started!"); + + IdleConfigData* data = g_new(IdleConfigData, 1); + data->plugin = plugin; + data->cfg = cfg; + g_debug("DBUS connect: Scheduling configuration setting..."); + g_idle_add(seaside_set_vpnconfig_idle, data); + + g_debug("DBUS connect: Success!"); + g_free(certificate_data); + return TRUE; } -/* real_disconnect: invoked by NM when stopping the VPN session */ -static gboolean -real_disconnect(NMVpnServicePlugin *plugin, GError **error) -{ - g_debug("DBUS disconnect: Starting..."); - NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); - - if (priv->coordinator && priv->vpn_stop) { - char *err_string; - - g_debug("DBUS disconnect: Stopping SeasideVPN interface..."); - if (!priv->vpn_stop(priv->coordinator, &err_string)) { - g_warning("DBUS disconnect: Error stopping SeasideVPN interface: %s", err_string); - g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_FAILED, "Error stopping SeasideVPN interface: %s", err_string); - free(err_string); - } else g_debug("DBUS disconnect: SeasideVPN interface stopped successfully!"); - - priv->coordinator = NULL; - } else g_debug("DBUS disconnect: SeasideVPN interface was never run!"); - - nm_vpn_service_plugin_disconnect(plugin, NULL); - g_debug("DBUS disconnect: Success!"); - return TRUE; -} +static gboolean real_disconnect(NMVpnServicePlugin* plugin, GError** error) { + g_debug("DBUS disconnect: Starting..."); + NMSeasidePluginPrivate* priv = nm_seaside_plugin_get_instance_private(NM_SEASIDE_PLUGIN(plugin)); + + if (priv->coordinator && priv->vpn_stop) { + char* err_string; -static gboolean -empty_need_secrets (NMVpnServicePlugin *plugin __attribute__((unused)), - NMConnection *connection __attribute__((unused)), - const char **setting_name __attribute__((unused)), - GError **error __attribute__((unused))) -{ - g_debug("DBUS need secrets: Skipped!"); - return FALSE; + g_debug("DBUS disconnect: Stopping SeasideVPN interface..."); + if (!priv->vpn_stop(priv->coordinator, &err_string)) { + g_warning("DBUS disconnect: Error stopping SeasideVPN interface: %s", err_string); + g_set_error(error, NM_VPN_PLUGIN_ERROR, NM_VPN_PLUGIN_ERROR_FAILED, "Error stopping SeasideVPN interface: %s", err_string); + free(err_string); + } else g_debug("DBUS disconnect: SeasideVPN interface stopped successfully!"); + + priv->coordinator = NULL; + } else g_debug("DBUS disconnect: SeasideVPN interface was never run!"); + + nm_vpn_service_plugin_disconnect(plugin, NULL); + g_debug("DBUS disconnect: Success!"); + return TRUE; } -static gboolean -empty_new_secrets (NMVpnServicePlugin *base_plugin __attribute__((unused)), - NMConnection *connection __attribute__((unused)), - GError **error __attribute__((unused))) +static gboolean empty_need_secrets(NMVpnServicePlugin* plugin __attribute__((unused)), NMConnection* connection __attribute__((unused)), const char** setting_name __attribute__((unused)), GError** error __attribute__((unused))) { + g_debug("DBUS need secrets: Skipped!"); + return FALSE; +} -{ - g_debug("DBUS new secrets: Skipped!"); - return TRUE; +static gboolean empty_new_secrets(NMVpnServicePlugin* base_plugin __attribute__((unused)), NMConnection* connection __attribute__((unused)), GError** error __attribute__((unused))) { + g_debug("DBUS new secrets: Skipped!"); + return TRUE; } -/* GObject init/class functions */ -static void -nm_seaside_plugin_init(NMSeasidePlugin *plugin) -{ - NMSeasidePluginPrivate *priv = nm_seaside_plugin_get_instance_private(plugin); - priv->lib_handle = NULL; - priv->coordinator = NULL; - priv->vpn_start = NULL; - priv->vpn_stop = NULL; +static void nm_seaside_plugin_init(NMSeasidePlugin* plugin) { + NMSeasidePluginPrivate* priv = nm_seaside_plugin_get_instance_private(plugin); + priv->lib_handle = NULL; + priv->coordinator = NULL; + priv->vpn_start = NULL; + priv->vpn_stop = NULL; } -static void -nm_seaside_plugin_class_init(NMSeasidePluginClass *klass) -{ - NMVpnServicePluginClass *parent = NM_VPN_SERVICE_PLUGIN_CLASS(klass); - parent->connect = real_connect; - parent->need_secrets = empty_need_secrets; - parent->disconnect = real_disconnect; - parent->new_secrets = empty_new_secrets; +static void nm_seaside_plugin_class_init(NMSeasidePluginClass* klass) { + NMVpnServicePluginClass* parent = NM_VPN_SERVICE_PLUGIN_CLASS(klass); + parent->connect = real_connect; + parent->need_secrets = empty_need_secrets; + parent->disconnect = real_disconnect; + parent->new_secrets = empty_new_secrets; } -/* Factory to create a plugin instance and register D-Bus service name */ -NMSeasidePlugin * -nm_seaside_plugin_new(void) -{ - GError *error = NULL; - NMSeasidePlugin *plugin = g_initable_new(NM_TYPE_SEASIDE_PLUGIN, NULL, &error, - NM_VPN_SERVICE_PLUGIN_DBUS_SERVICE_NAME, - NM_DBUS_SERVICE_SEASIDE, - NULL); - if (!plugin) { - g_warning("Error creating SeasideVPN NM plugin: %s", error ? error->message : "unknown"); - g_clear_error(&error); - } - return plugin; +NMSeasidePlugin* nm_seaside_plugin_new(void) { + GError* error = NULL; + NMSeasidePlugin* plugin = g_initable_new(NM_TYPE_SEASIDE_PLUGIN, NULL, &error, NM_VPN_SERVICE_PLUGIN_DBUS_SERVICE_NAME, NM_DBUS_SERVICE_SEASIDE, NULL); + if (!plugin) { + g_warning("Error creating SeasideVPN NM plugin: %s", error ? error->message : "unknown"); + g_clear_error(&error); + } + return plugin; } -static gboolean -signal_handler (gpointer user_data) -{ - g_main_loop_quit (user_data); +static gboolean signal_handler(gpointer user_data) { + g_main_loop_quit(user_data); return G_SOURCE_REMOVE; } -/* Minimal main: instantiate plugin and run main loop */ -int main(int argc __attribute__((unused)), char *argv[] __attribute__((unused))) { - g_debug("Starting SeasideVPN NM plugin..."); - NMSeasidePlugin *plugin = nm_seaside_plugin_new(); - if (!plugin) return EXIT_FAILURE; +int main(int argc __attribute__((unused)), char* argv[] __attribute__((unused))) { + g_debug("Starting SeasideVPN NM plugin..."); + NMSeasidePlugin* plugin = nm_seaside_plugin_new(); + if (!plugin) return EXIT_FAILURE; - g_debug("Starting SeasideVPN NM plugin main loop..."); - GMainLoop *loop = g_main_loop_new(NULL, FALSE); - g_signal_connect(plugin, "quit", G_CALLBACK(g_main_loop_quit), loop); + g_debug("Starting SeasideVPN NM plugin main loop..."); + GMainLoop* loop = g_main_loop_new(NULL, FALSE); + g_signal_connect(plugin, "quit", G_CALLBACK(g_main_loop_quit), loop); - g_unix_signal_add (SIGTERM, signal_handler, loop); - g_unix_signal_add (SIGINT, signal_handler, loop); - g_main_loop_run(loop); + g_unix_signal_add(SIGTERM, signal_handler, loop); + g_unix_signal_add(SIGINT, signal_handler, loop); + g_main_loop_run(loop); - g_debug("SeasideVPN NM plugin main loop stopped!"); - g_main_loop_unref(loop); - g_object_unref(plugin); - return EXIT_SUCCESS; + g_debug("SeasideVPN NM plugin main loop stopped!"); + g_main_loop_unref(loop); + g_object_unref(plugin); + return EXIT_SUCCESS; } diff --git a/viridian/barnacles/network-manager/plugin/plugin.h b/viridian/barnacles/network-manager/plugin/plugin.h index f7a9358d..b42bca4f 100644 --- a/viridian/barnacles/network-manager/plugin/plugin.h +++ b/viridian/barnacles/network-manager/plugin/plugin.h @@ -1,35 +1,32 @@ #ifndef NM_SEASIDE_PLUGIN_H #define NM_SEASIDE_PLUGIN_H -#include #include +#include #include + #define NM_DBUS_SERVICE_SEASIDE SEASIDE_PLUGIN_SERVICE #define NM_DBUS_INTERFACE_SEASIDE SEASIDE_PLUGIN_SERVICE #define NM_DBUS_PATH_SEASIDE "/org/freedesktop/NetworkManager/seasidevpn" -#define NM_SEASIDE_KEY_CERTIFILE "certifile" -#define NM_SEASIDE_KEY_CERTIFICATE "certificate" -#define NM_SEASIDE_KEY_PROTOCOL "protocol" - -/* Type macros */ -#define NM_TYPE_SEASIDE_PLUGIN (nm_seaside_plugin_get_type ()) -#define NM_SEASIDE_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePlugin)) -#define NM_SEASIDE_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePluginClass)) -#define NM_IS_SEASIDE_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NM_TYPE_SEASIDE_PLUGIN)) -#define NM_IS_SEASIDE_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NM_TYPE_SEASIDE_PLUGIN)) -#define NM_SEASIDE_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePluginClass)) +#define NM_TYPE_SEASIDE_PLUGIN (nm_seaside_plugin_get_type()) +#define NM_SEASIDE_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePlugin)) +#define NM_SEASIDE_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePluginClass)) +#define NM_IS_SEASIDE_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), NM_TYPE_SEASIDE_PLUGIN)) +#define NM_IS_SEASIDE_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), NM_TYPE_SEASIDE_PLUGIN)) +#define NM_SEASIDE_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), NM_TYPE_SEASIDE_PLUGIN, NMSeasidePluginClass)) typedef struct { - NMVpnServicePlugin parent; + NMVpnServicePlugin parent; } NMSeasidePlugin; typedef struct { - NMVpnServicePluginClass parent; + NMVpnServicePluginClass parent; } NMSeasidePluginClass; -GType nm_seaside_plugin_get_type (void); -NMSeasidePlugin *nm_seaside_plugin_new (void); +GType nm_seaside_plugin_get_type(void); +NMSeasidePlugin* nm_seaside_plugin_new(void); + #endif /* NM_SEASIDE_PLUGIN_H */ From bade9ff9bc63f7acfff6b10279157b14dc6fc3fb Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 8 Nov 2025 21:41:57 +0100 Subject: [PATCH 30/67] format --- viridian/barnacles/network-manager/Makefile | 11 ++++++----- viridian/reef/Makefile | 2 -- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/barnacles/network-manager/Makefile index dd75be95..078e4d25 100644 --- a/viridian/barnacles/network-manager/Makefile +++ b/viridian/barnacles/network-manager/Makefile @@ -79,6 +79,7 @@ EDITOR_PLUGIN_INCLUDES := -I$(SHARED_LIBRARY) -I$(NM_INCLUDE_DIR) CLANG_CONFIGURATION_FILE := $(VIRIDIAN_DIR)/.clang-tidy CLANG_FORMATTING_FILE := $(VIRIDIAN_DIR)/.clang-format +CLANG_COMPILER_ARGS := -fno-caret-diagnostics CLANG_STATIC_ANALYSIS_ARGS := --config-file=$(CLANG_CONFIGURATION_FILE) --quiet CLANG_FORMATTING_ARGS := --Werror --sort-includes --style=file:$(CLANG_FORMATTING_FILE) **/*.c **/*.h @@ -112,27 +113,27 @@ $(NM_BUILD_DIR)/resources.gen.o: $(NM_BUILD_DIR)/resources.gen.c | create-build- $(NM_BUILD_DIR)/auth_dialog.o: $(NM_EDITOR_DIR)/auth_dialog.c | create-build-directory @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(GCC_FLAGS_LIBSECRET) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(GCC_FLAGS_LIBSECRET) $(CLANG_COMPILER_ARGS) gcc -fPIC -c $< -o $@ $(GCC_FLAGS_LIBSECRET) $(NM_BUILD_DIR)/editor.o: $(NM_EDITOR_DIR)/editor.c $(NM_EDITOR_DIR)/editor.h $(NM_INCLUDE_DIR)/common.h | create-build-directory @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) $(CLANG_COMPILER_ARGS) gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) $(NM_BUILD_DIR)/interface_gtk3.o: $(NM_EDITOR_DIR)/interface_gtk3.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) $(CLANG_COMPILER_ARGS) gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) $(NM_BUILD_DIR)/interface_gtk4.o: $(NM_EDITOR_DIR)/interface_gtk4.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) $(CLANG_COMPILER_ARGS) gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) $(NM_BUILD_DIR)/plugin.o: $(NM_PLUGIN_DIR)/plugin.c $(NM_PLUGIN_DIR)/plugin.h $(SHARED_LIBRARY)/seaside.h $(NM_INCLUDE_DIR)/common.h | create-build-directory @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) + clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) $(CLANG_COMPILER_ARGS) gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) diff --git a/viridian/reef/Makefile b/viridian/reef/Makefile index 1d0d2d7c..2fd8fa26 100644 --- a/viridian/reef/Makefile +++ b/viridian/reef/Makefile @@ -8,8 +8,6 @@ SHELL := /bin/bash BUILD_TYPE := debug BINARY_PATH := target/$(BUILD_TYPE) - - help: @ # Print available make target information echo -e "help" From 64776aae7ec520a0a92b41790b87cece52933185 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 8 Nov 2025 21:44:20 +0100 Subject: [PATCH 31/67] rustfmt --- .github/workflows/lint.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 54e916c2..8cc5b361 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -96,6 +96,7 @@ jobs: with: toolchain: "1.89.0" rust-src-dir: viridian/reef + components: rustfmt - name: Lint Viridian Reef ๐Ÿงช working-directory: viridian/reef From ef596dcbc9762611d85ee8b144bfdcbf04b812dd Mon Sep 17 00:00:00 2001 From: pseusys Date: Mon, 17 Nov 2025 23:54:16 +0100 Subject: [PATCH 32/67] fixed make and collapsed reef --- viridian/barnacles/README.md | 0 viridian/reef/Makefile | 9 +- viridian/reef/README.md | 23 +- viridian/reef/common_library/Cargo.toml | 2 - .../reef/common_library/lib/tunnel/windows.rs | 374 +------------ .../nm_plugin}/Makefile | 0 .../nm_plugin}/README.md | 0 .../nm_plugin}/configuration/descriptor.ini | 0 .../nm_plugin}/configuration/service.conf | 3 +- .../nm_plugin}/editor/auth_dialog.c | 0 .../nm_plugin}/editor/dialog_gtk3.ui | 0 .../nm_plugin}/editor/dialog_gtk4.ui | 0 .../nm_plugin}/editor/editor.c | 0 .../nm_plugin}/editor/editor.h | 0 .../nm_plugin}/editor/gresource.xml | 0 .../nm_plugin}/editor/interface.h | 0 .../nm_plugin}/editor/interface_gtk3.c | 0 .../nm_plugin}/editor/interface_gtk4.c | 0 .../nm_plugin}/include/common.h | 0 .../nm_plugin}/plugin/plugin.c | 0 .../nm_plugin}/plugin/plugin.h | 0 viridian/reef/shared_library/Cargo.toml | 2 - .../reef/shared_library/lib/tunnel/linux.rs | 21 +- .../reef/shared_library/lib/tunnel/mod.rs | 20 +- .../reef/shared_library/lib/tunnel/windows.rs | 510 +----------------- .../reef/standalone_executable/Cargo.toml | 4 + .../standalone_executable/src/tunnel/linux.rs | 2 +- .../src/tunnel/windows.rs | 166 +----- 28 files changed, 88 insertions(+), 1048 deletions(-) delete mode 100644 viridian/barnacles/README.md rename viridian/{barnacles/network-manager => reef/nm_plugin}/Makefile (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/README.md (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/configuration/descriptor.ini (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/configuration/service.conf (85%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/auth_dialog.c (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/dialog_gtk3.ui (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/dialog_gtk4.ui (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/editor.c (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/editor.h (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/gresource.xml (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/interface.h (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/interface_gtk3.c (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/editor/interface_gtk4.c (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/include/common.h (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/plugin/plugin.c (100%) rename viridian/{barnacles/network-manager => reef/nm_plugin}/plugin/plugin.h (100%) diff --git a/viridian/barnacles/README.md b/viridian/barnacles/README.md deleted file mode 100644 index e69de29b..00000000 diff --git a/viridian/reef/Makefile b/viridian/reef/Makefile index 2fd8fa26..b7b1fcd9 100644 --- a/viridian/reef/Makefile +++ b/viridian/reef/Makefile @@ -18,7 +18,8 @@ help: # Building and dependency management: WINDIVERT_VERSION := 2.2.2 -WINDIVERT_PATH := windivert-bin +WINDIVERT_PATH_REL := windivert-bin +WINDIVERT_PATH := $(shell realpath $(WINDIVERT_PATH_REL)) WINDIVERT_TEMP := windivert-source WINDIVERT_SOURCE := WinDivert-$(WINDIVERT_VERSION)-A @@ -47,19 +48,19 @@ ifeq ($(OS),Windows_NT) curl -sSL -o $(WINDIVERT_SOURCE).zip $(WINDIVERT_URL) mkdir -p $(WINDIVERT_TEMP) unzip -q -o $(WINDIVERT_SOURCE).zip -d $(WINDIVERT_TEMP) - mkdir -p $(WINDIVERT_PATH) + mkdir -p $(WINDIVERT_PATH_REL) mv $(WINDIVERT_TEMP)/$(WINDIVERT_SOURCE)/$(WINDIVERT_ARCH)/* $(WINDIVERT_PATH)/ rm -rf $(WINDIVERT_TEMP) echo "All standalone dependencies ready!" endif .PHONY: dependencies -runtime: +runtime: dependencies @ # Move standalone dependencies next to the executable ifeq ($(OS),Windows_NT) echo "Copying dependencies next to the executable..." mkdir -p $(BINARY_PATH) - cp $(WINDIVERT_PATH)/*.dll $(WINDIVERT_PATH)/*.sys $(BINARY_PATH) + cp $(WINDIVERT_PATH_REL)/*.sys $(BINARY_PATH) echo "All standalone dependencies in place!" endif .PHONY: runtime diff --git a/viridian/reef/README.md b/viridian/reef/README.md index 2f33f9b4..4d5cbe5f 100644 --- a/viridian/reef/README.md +++ b/viridian/reef/README.md @@ -2,14 +2,19 @@ > Current version: **"0.0.4"** +## Shared Library + +> Target platforms: _linux_, _windows_, _macOS_, _android_, _iOS_ + +## Standalone Executable + Reef is a standalone cross-platform VPN client, written in rust. It specifically does not integrate with any built-in VPN interfaces or network connection managers. Moreover, it contains a common Seaside library, that can be used on other platforms, combined with some platform-specific code. -> Target platforms of executable: _linux_, _windows_ -> Target platforms of library: _linux_, _windows_, _macOS_, _android_, _iOS_ +> Target platforms: _linux_, _windows_ -## Implementation details +### Implementation details Viridian reef client consists of the following parts: @@ -28,7 +33,7 @@ They can also optionally either wrap the reef library into another object, confo > NB! All the tests and executables were only build for Intel/AMD x64 architecture. > There is no ARM executable primarily because there are [no ARM artifacts](https://github.com/basil00/WinDivert/issues/379) for WinDivert. -## General idea +### General idea The basic idea behind viridian reef app is the following: @@ -43,7 +48,7 @@ The basic idea behind viridian reef app is the following: 7. Stop and clean all the worker tasks. 8. Restore system network settings (if backed up). -### System integration +#### System integration The most system-dependant part of reef is its **VPN head**, while the rest are mostly written in platform-independent manner. @@ -58,7 +63,7 @@ Same for the packet injection, `WinDivert` handles that. On the other platforms, it is _impossible_ to create a VPN client that would not be integrated with any system interfaces, so that is out of scope of reef client, that is meant to be standalone. -### System diagram +#### System diagram ```mermaid flowchart TB @@ -76,13 +81,13 @@ flowchart TB internet(((Internet))) --> whirlpool[(Whirlpool)] ``` -## Use and run +### Use and run Take care before you use the standalone reef app. It is mostly intended to be used with servers, virtual machines and other non-user oriented devices. Still, if you have chosen to thread this path, here are some hints (but still, prepare to experiment and explore it on your own). -### Linux +#### Linux > Depends on: `nftables`, `iproute2` @@ -105,7 +110,7 @@ iptables -t mangle -I INPUT 1 -i -j MARK --set-mark And don't forget enabling IPv4 packet forwarding by running: `echo 1 > /proc/sys/net/ipv4/ip_forward`. -### Windows +#### Windows > Depends on: `WinDivert`, `WMI`, `IP Helper` diff --git a/viridian/reef/common_library/Cargo.toml b/viridian/reef/common_library/Cargo.toml index 0aa29178..e628b79b 100644 --- a/viridian/reef/common_library/Cargo.toml +++ b/viridian/reef/common_library/Cargo.toml @@ -33,9 +33,7 @@ rtnetlink = "^0.18.0" tun = { version = "^0.8.3", features = ["async"] } [target.'cfg(target_os = "windows")'.dependencies] -etherparse = "^0.19.0" serde = "^1.0.219" -windivert = "^0.6.0" windows = { version = "^0.61.3", features = ["Win32_Foundation", "Win32_NetworkManagement_IpHelper", "Win32_Networking_WinSock", "Win32_NetworkManagement_Ndis"] } wmi = "^0.17.2" diff --git a/viridian/reef/common_library/lib/tunnel/windows.rs b/viridian/reef/common_library/lib/tunnel/windows.rs index a33e15e5..c38bd5e1 100644 --- a/viridian/reef/common_library/lib/tunnel/windows.rs +++ b/viridian/reef/common_library/lib/tunnel/windows.rs @@ -1,43 +1,22 @@ -use std::borrow::Cow; use std::collections::{HashMap, HashSet}; -use std::marker::PhantomData; -use std::mem::{align_of, replace}; +use std::mem::align_of; use std::net::{AddrParseError, Ipv4Addr}; -use std::num::ParseIntError; -use std::slice::{from_raw_parts, from_raw_parts_mut}; -use std::sync::Arc; - use cached::proc_macro::cached; -use etherparse::icmpv4::DestUnreachableHeader; -use etherparse::{Icmpv4Header, Icmpv4Type, IpNumber, Ipv4Header, Ipv4HeaderSlice}; use ipnet::Ipv4Net; -use log::{debug, error, info}; use serde::Deserialize; use simple_error::{bail, SimpleError}; -use tokio::sync::watch::{channel, Receiver, Sender}; -use tokio::sync::RwLock; -use tokio::task::JoinHandle; -use windivert::address::WinDivertAddress; -use windivert::layer::NetworkLayer; -use windivert::packet::WinDivertPacket; -use windivert::prelude::{WinDivertFlags, WinDivertShutdownMode}; -use windivert::{CloseAction, WinDivert}; use windows::Win32::Foundation::{ERROR_BUFFER_OVERFLOW, ERROR_SUCCESS, WIN32_ERROR}; use windows::Win32::NetworkManagement::IpHelper::{GetAdaptersAddresses, GetBestRoute, GAA_FLAG_INCLUDE_PREFIX, IP_ADAPTER_ADDRESSES_LH, IP_ADAPTER_UNICAST_ADDRESS_LH, MIB_IPFORWARDROW}; use windows::Win32::Networking::WinSock::{AF_INET, SOCKADDR_IN}; use wmi::{COMLibrary, WMIConnection}; use crate::bytes::get_buffer; -use crate::tunnel::Tunnelling; -use crate::{run_coroutine_in_thread, run_coroutine_sync, DynResult}; +use crate::DynResult; const ZERO_IP_ADDRESS: Ipv4Addr = Ipv4Addr::new(0, 0, 0, 0); -const DEFAULT_SUBINTERFACE_INDEX: u32 = 0; -const FRAGMENT_BYTES: usize = 8; -const FRAGMENT_TTL: u8 = 64; #[cached(size = 1024, result = true)] -fn get_default_interface_by_remote_address(destination_ip: Ipv4Addr) -> DynResult { +pub fn get_default_interface_by_remote_address(destination_ip: Ipv4Addr) -> DynResult { let dest_ip = u32::from(destination_ip).to_be(); let src_ip = u32::from(ZERO_IP_ADDRESS).to_be(); @@ -51,33 +30,33 @@ fn get_default_interface_by_remote_address(destination_ip: Ipv4Addr) -> DynResul } } -async unsafe fn get_default_interface DynResult>>(processor: P) -> DynResult> { +pub async fn get_default_interface DynResult>>(processor: P) -> DynResult> { let mut buffer_size: u32 = 0; - let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, None, &mut buffer_size); + let result = unsafe { GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, None, &mut buffer_size) }; if WIN32_ERROR(result) != ERROR_BUFFER_OVERFLOW { bail!("Empty call to 'GetAdaptersAddresses' resulted with error {result}!"); } let buffer = get_buffer(Some(buffer_size as usize + align_of::() - 1)).await; let mut buffer_slice = buffer.slice_mut(); - let (_, buffer_aligned, _) = buffer_slice.align_to_mut::(); + let (_, buffer_aligned, _) = unsafe { buffer_slice.align_to_mut::() }; let adapter_addresses = buffer_aligned.as_mut_ptr() as *mut IP_ADAPTER_ADDRESSES_LH; - let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, Some(adapter_addresses), &mut buffer_size); + let result = unsafe { GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, Some(adapter_addresses), &mut buffer_size) }; if WIN32_ERROR(result) != ERROR_SUCCESS { bail!("Call to 'GetAdaptersAddresses' resulted with error {result}!"); } let mut current_adapter = adapter_addresses; while !current_adapter.is_null() { - let adapter = *current_adapter; + let adapter = unsafe { *current_adapter }; let mut unicast_ptr = adapter.FirstUnicastAddress; while !unicast_ptr.is_null() { match processor(unicast_ptr, &adapter)? { Some(res) => return Ok(Some(res)), - None => unicast_ptr = (*unicast_ptr).Next, + None => unicast_ptr = unsafe { (*unicast_ptr).Next }, }; } @@ -87,7 +66,7 @@ async unsafe fn get_default_interface DynResult { +pub async fn get_default_interface_by_local_address(local_ip: Ipv4Addr) -> DynResult { unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, local_ip: Ipv4Addr) -> DynResult> { let sockaddr = *(*unicast).Address.lpSockaddr; if sockaddr.sa_family == AF_INET { @@ -100,14 +79,14 @@ async unsafe fn get_default_interface_by_local_address(local_ip: Ipv4Addr) -> Dy Ok(None) } - match get_default_interface(|u, a| process_interface(u, a, local_ip)).await { + match unsafe { get_default_interface(|u, a| process_interface(u, a, local_ip)) }.await { Ok(Some(res)) => Ok(res), Ok(None) => bail!("No interfaces with IP address {local_ip}!"), Err(err) => bail!("Error processing interface addresses: {err}!"), } } -async unsafe fn get_interface_details(interface_index: u32) -> DynResult<(Ipv4Net, u32)> { +pub async fn get_interface_details(interface_index: u32) -> DynResult<(Ipv4Net, u32)> { unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, interface_index: u32) -> DynResult> { let sockaddr = *(*unicast).Address.lpSockaddr; if sockaddr.sa_family == AF_INET && adapter.Anonymous1.Anonymous.IfIndex == interface_index { @@ -119,7 +98,7 @@ async unsafe fn get_interface_details(interface_index: u32) -> DynResult<(Ipv4Ne Ok(None) } - match get_default_interface(|u, a| process_interface(u, a, interface_index)).await { + match unsafe { get_default_interface(|u, a| process_interface(u, a, interface_index)) }.await { Ok(Some(res)) => Ok(res), Ok(None) => bail!("No IP addresses found for interface with index {interface_index}!"), Err(err) => bail!("Error processing interface addresses: {err}!"), @@ -163,7 +142,7 @@ pub fn set_dns_addresses(interface_indexes: HashSet, dns_address: Option>) -> DynResult<()> { +pub fn reset_dns_addresses(dns_data: &HashMap>) -> DynResult<()> { let com_con = COMLibrary::new()?; let wmi_con = WMIConnection::new(com_con.into())?; @@ -176,328 +155,3 @@ fn reset_dns_addresses(dns_data: &HashMap>) -> DynResult<()> { } Ok(()) } - -#[derive(Clone, Copy)] -struct SendPtr { - ptr: T, - len: usize, - _marker: PhantomData, -} - -impl SendPtr { - fn len(&self) -> usize { - self.len - } -} - -unsafe impl Send for SendPtr {} -unsafe impl Sync for SendPtr {} - -type MutSendPtr = SendPtr<*mut u8>; -type ConstSendPtr = SendPtr<*const u8>; - -impl MutSendPtr { - fn new(buf: &mut [u8]) -> Self { - let ptr = buf.as_mut_ptr(); - Self { ptr, len: buf.len(), _marker: PhantomData } - } - - fn recreate(&self) -> &mut [u8] { - unsafe { from_raw_parts_mut(self.ptr, self.len) } - } -} - -impl ConstSendPtr { - fn new(buf: &[u8]) -> Self { - let ptr = buf.as_ptr(); - Self { ptr, len: buf.len(), _marker: PhantomData } - } - - fn recreate(&self) -> &[u8] { - unsafe { from_raw_parts(self.ptr, self.len) } - } -} - -struct TunnelTransport { - sender: Sender>, - receiver: Receiver>, -} - -type LocalTunnelTransport = TunnelTransport, usize>; -type RemoteTunnelTransport = TunnelTransport>; - -type LocalMutTunnelTransport = LocalTunnelTransport<*mut u8>; -type LocalConstTunnelTransport = LocalTunnelTransport<*const u8>; -type RemoteMutTunnelTransport = RemoteTunnelTransport<*mut u8>; -type RemoteConstTunnelTransport = RemoteTunnelTransport<*const u8>; - -impl TunnelTransport { - fn new(sender: Sender>, receiver: Receiver>) -> Self { - Self { sender, receiver } - } - - async fn send_internal(&mut self, data: Option) -> DynResult<()> { - if let Err(err) = self.sender.send(data) { - bail!("Error sending packet to queue: {err}"); - } - Ok(()) - } - - async fn send(&mut self, data: S) -> DynResult<()> { - self.send_internal(Some(data)).await - } - - async fn receive(&mut self) -> DynResult { - self.receiver.changed().await?; - let borrowed = self.receiver.borrow(); - match *borrowed { - Some(res) => Ok(res), - None => bail!("Tunnel queue was closed!"), - } - } - - async fn close(&mut self) -> DynResult<()> { - self.send_internal(None).await - } -} - -trait PacketExchangeProcess { - async fn build_icmp_frag_needed_packet<'a>(&self, original_ip_packet: &WinDivertPacket<'a, NetworkLayer>, mtu: u16) -> DynResult>; - async fn packet_receive_loop(&self, queue: RemoteConstTunnelTransport) -> DynResult<()>; - async fn packet_send_loop(&self, mtu: usize, queue: RemoteMutTunnelTransport) -> DynResult<()>; -} - -impl PacketExchangeProcess for Arc> { - async fn build_icmp_frag_needed_packet<'a>(&self, original_packet: &WinDivertPacket<'a, NetworkLayer>, mtu: u16) -> DynResult> { - let original_ip_header = Ipv4HeaderSlice::from_slice(&original_packet.data)?; - let payload_length = original_ip_header.payload_len()? as usize; - - if payload_length < FRAGMENT_BYTES { - bail!("Insufficient payload length: {payload_length} bytes!"); - } - - let mut icmp_header = Icmpv4Header::new(Icmpv4Type::DestinationUnreachable(DestUnreachableHeader::FragmentationNeeded { next_hop_mtu: mtu })); - let icmp_payload = &original_packet.data[..original_ip_header.slice().len() + FRAGMENT_BYTES]; - icmp_header.update_checksum(icmp_payload); - - let mut ip_header = Ipv4Header::new((icmp_header.header_len() + icmp_payload.len()) as u16, FRAGMENT_TTL, IpNumber::ICMP, original_ip_header.destination(), original_ip_header.source())?; - ip_header.header_checksum = ip_header.calc_header_checksum(); - - let buffer = get_buffer(None).await; - buffer.append(&ip_header.to_bytes()); - buffer.append(&icmp_header.to_bytes()); - buffer.append(icmp_payload); - - let mut address = unsafe { WinDivertAddress::::new() }; - address.set_interface_index(original_packet.address.interface_index()); - address.set_subinterface_index(original_packet.address.subinterface_index()); - address.set_outbound(true); - Ok(WinDivertPacket { address, data: Cow::Owned(buffer.into()) }) - } - - async fn packet_receive_loop(&self, mut queue: RemoteConstTunnelTransport) -> DynResult<()> { - loop { - let value = queue.receive().await?; - let raw_packet = value.recreate(); - debug!("Captured a remote packet, length: {}", value.len()); - let interface_index = match Ipv4HeaderSlice::from_slice(raw_packet) { - Ok(res) => match get_default_interface_by_remote_address(res.source_addr()) { - Ok(res) => res, - Err(err) => { - debug!("Error calculating interface index for packet: {err}"); - continue; - } - }, - Err(err) => { - debug!("Error parsing packet header: {err}"); - continue; - } - }; - let mut address = unsafe { WinDivertAddress::::new() }; - address.set_interface_index(interface_index); - address.set_subinterface_index(DEFAULT_SUBINTERFACE_INDEX); - address.set_outbound(false); - let packet = WinDivertPacket { address, data: Cow::Borrowed(raw_packet) }; - match self.send(&packet) { - Ok(res) => { - debug!("Inserting remote packet into a tunnel (interface {interface_index}), length: {res}"); - queue.send(res as usize).await?; - } - Err(err) => bail!("Closing receive loop: {err}!"), - }; - } - } - - async fn packet_send_loop(&self, mtu: usize, mut queue: RemoteMutTunnelTransport) -> DynResult<()> { - 'outer: loop { - let value = queue.receive().await?; - 'inner: loop { - let packet = match self.recv(Some(value.recreate())) { - Ok(res) => { - debug!("Captured a local packet, length: {}", res.data.len()); - res - } - Err(err) => bail!("Closing send loop: {err}!"), - }; - let packet_length = packet.data.len(); - if packet_length > mtu { - debug!("Packet too long: {packet_length} bytes!"); - match self.build_icmp_frag_needed_packet(&packet, mtu as u16).await { - Ok(res) => { - debug!("Sending fragmentation request, length: {}", res.data.len()); - self.send(&res)?; - } - Err(err) => debug!("Error constructing 'fragmentation needed' packet: {err}"), - }; - continue 'inner; - } else { - debug!("Inserting local packet into a tunnel, length: {packet_length}"); - queue.send(packet_length).await?; - continue 'outer; - } - } - } - } -} - -async fn enable_routing(seaside_address: Ipv4Addr, default_index: u32, default_network: Ipv4Net, divert_priority: i16, default_mtu: u32, receive_queue: RemoteConstTunnelTransport, send_queue: RemoteMutTunnelTransport, dns_addresses: Vec, capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>) -> DynResult<(Arc>, JoinHandle>, JoinHandle>)> { - let exempt_ports_filter = if let Some((lowest, highest)) = exempt_ports { format!("tcp? (tcp.SrcPort < {} or tcp.SrcPort > {}): (udp.SrcPort < {} or udp.SrcPort > {})", lowest, highest, lowest, highest) } else { String::from("true") }; - - let mut exempt_range_filter = exempt_ranges.iter().map(|i| format!("(ip.DstAddr < {} or ip.DstAddr > {})", i.network(), i.broadcast())).collect::>().join(" and "); - if exempt_range_filter.is_empty() { - exempt_range_filter = String::from("true"); - } - - let capture_ports_filter = if let Some((lowest, highest)) = capture_ports { format!("(tcp.SrcPort >= {} and tcp.SrcPort <= {}) or (udp.SrcPort >= {} and udp.SrcPort <= {})", lowest, highest, lowest, highest) } else { String::from("false") }; - - let mut capture_range_filter = capture_ranges.iter().map(|i| format!("(ip.DstAddr >= {} and ip.DstAddr <= {})", i.network(), i.broadcast())).collect::>().join(" or "); - if capture_range_filter.is_empty() { - capture_range_filter = String::from("false"); - } - - let mut capture_networks_result = Vec::new(); - for iface in capture_iface { - let net_idx = iface.parse().map_err(|e| Box::new(e))?; - let (network, _) = unsafe { get_interface_details(net_idx).await }?; - let filter = format!("((ifIdx == {iface}) and (ip.DstAddr < {} or ip.DstAddr > {}))", network.network(), network.broadcast()); - capture_networks_result.push(filter); - } - let mut capture_iface_filter = capture_networks_result.join(" or "); - if capture_iface_filter.is_empty() { - capture_iface_filter = String::from("false"); - } - - let dns_filter = dns_addresses.iter().map(|i| format!("ip.DstAddr != {i}")).collect::>().join(" and "); - let caerulean_filter = format!("(ifIdx != {default_index}) or (ip.SrcAddr != {}) or (ip.DstAddr != {})", default_network.addr(), seaside_address); - - let filter = format!("ip and outbound and (({exempt_ports_filter}) and ({exempt_range_filter})) and (({capture_ports_filter}) or {capture_range_filter} or {capture_iface_filter}) and ({dns_filter}) and ({caerulean_filter})"); - debug!("WinDivert filter will be used: '{filter}'"); - let divert = WinDivert::network(filter, divert_priority, WinDivertFlags::new())?; - - let divert_arc = Arc::new(divert); - let receive_divert_clone = divert_arc.clone(); - let send_divert_clone = divert_arc.clone(); - let receive_handle = run_coroutine_in_thread!(receive_divert_clone.packet_receive_loop(receive_queue)); - let send_handle = run_coroutine_in_thread!(send_divert_clone.packet_send_loop(default_mtu as usize, send_queue)); - Ok((divert_arc, receive_handle, send_handle)) -} - -pub struct TunnelInternal { - pub default_address: Ipv4Addr, - divert: Arc>, - send_queue: RwLock, - receive_queue: RwLock, - send_handle: Option>>, - receive_handle: Option>>, - dns_data: HashMap>, -} - -impl TunnelInternal { - pub async fn new(seaside_address: Ipv4Addr, _: &str, _: Ipv4Net, svr_index: u8, dns: Option, mut capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>, local_address: Option) -> DynResult { - debug!("Checking system default network properties..."); - let default_interface = if let Some(address) = local_address { unsafe { get_default_interface_by_local_address(address).await }? } else { get_default_interface_by_remote_address(seaside_address)? }; - let (default_network, default_mtu) = unsafe { get_interface_details(default_interface).await }?; - debug!("Default network properties received: network {default_network}, MTU {default_mtu}"); - let default_address = default_network.addr(); - - if capture_iface.is_empty() && capture_ranges.is_empty() && capture_ports.is_none() { - debug!("The default interface added to capture: {default_interface}"); - capture_iface.insert(default_interface.to_string()); - } - - debug!("Setting DNS address to {dns:?}..."); - let interfaces: Result, ParseIntError> = capture_iface.iter().map(|s| s.parse()).collect(); - let (dns_addresses, dns_data) = set_dns_addresses(HashSet::from_iter(interfaces?), dns)?; - debug!("The DNS server for interfaces were set to: {dns_addresses:?}"); - - debug!("Setting up routing..."); - let (remote_send_sender, local_send_receiver) = channel(None); - let (local_send_sender, remote_send_receiver) = channel(None); - let remote_send_queue = RemoteMutTunnelTransport::new(remote_send_sender, remote_send_receiver); - let local_send_queue = RwLock::new(LocalMutTunnelTransport::new(local_send_sender, local_send_receiver)); - let (remote_receive_sender, local_receive_receiver) = channel(None); - let (local_receive_sender, remote_receive_receiver) = channel(None); - let remote_receive_queue = RemoteConstTunnelTransport::new(remote_receive_sender, remote_receive_receiver); - let local_receive_queue = RwLock::new(LocalConstTunnelTransport::new(local_receive_sender, local_receive_receiver)); - let (divert, receive_handle, send_handle) = enable_routing(seaside_address, default_interface, default_network, svr_index as i16, default_mtu, remote_receive_queue, remote_send_queue, dns_addresses, capture_iface, capture_ranges, exempt_ranges, capture_ports, exempt_ports).await?; - - debug!("Creating tunnel object..."); - Ok(Self { default_address, divert, send_queue: local_send_queue, receive_queue: local_receive_queue, send_handle: Some(send_handle), receive_handle: Some(receive_handle), dns_data }) - } -} - -impl Tunnelling for TunnelInternal { - async fn recv(&self, buf: &mut [u8]) -> DynResult { - let pointer = MutSendPtr::new(buf); - let mut writer = self.send_queue.write().await; - writer.send(pointer).await?; - writer.receive().await - } - - async fn send(&self, buf: &[u8]) -> DynResult { - let pointer = ConstSendPtr::new(buf); - let mut writer = self.receive_queue.write().await; - writer.send(pointer).await?; - writer.receive().await - } -} - -impl Drop for TunnelInternal { - #[allow(unused_must_use)] - fn drop(&mut self) { - run_coroutine_sync!(async { - // TODO: change once https://github.com/Rubensei/windivert-rust/issues/14 is resolved. - debug!("Retrieving routing handle..."); - let divert = unsafe { &mut *(Arc::as_ptr(&self.divert) as *mut WinDivert) }; - - debug!("Resetting routing..."); - divert.shutdown(WinDivertShutdownMode::Both).inspect_err(|e| error!("Error shutting down WinDivert: {e}")); - divert.close(CloseAction::Nothing).inspect_err(|e| error!("Error closing WinDivert: {e}")); - - debug!("Closing routing queue (receive)..."); - let mut receive_queue_writer = self.receive_queue.write().await; - receive_queue_writer.close().await.inspect_err(|e| info!("Error closing receive tunnel queue: {e}")); - - debug!("Closing routing queue (send)..."); - let mut send_queue_writer = self.send_queue.write().await; - send_queue_writer.close().await.inspect_err(|e| info!("Error closing send tunnel queue: {e}")); - - debug!("Waiting for handle thread (receive)..."); - let receive_handle = replace(&mut self.receive_handle, None); - if let Some(thread) = receive_handle { - let result = thread.await.expect("WinDivert receive thread termination error!"); - result.inspect_err(|e| info!("WinDivert receive thread terminated with: {e}")); - } - - debug!("Waiting for handle thread (send)..."); - let send_handle = replace(&mut self.send_handle, None); - if let Some(thread) = send_handle { - let result = thread.await.expect("WinDivert send thread termination error!"); - result.inspect_err(|e| info!("WinDivert send thread terminated with: {e}")); - } - - debug!("Reverting DNS servers..."); - reset_dns_addresses(&self.dns_data).inspect_err(|e| error!("Error resetting DNS addresses: {e}")); - }); - } -} diff --git a/viridian/barnacles/network-manager/Makefile b/viridian/reef/nm_plugin/Makefile similarity index 100% rename from viridian/barnacles/network-manager/Makefile rename to viridian/reef/nm_plugin/Makefile diff --git a/viridian/barnacles/network-manager/README.md b/viridian/reef/nm_plugin/README.md similarity index 100% rename from viridian/barnacles/network-manager/README.md rename to viridian/reef/nm_plugin/README.md diff --git a/viridian/barnacles/network-manager/configuration/descriptor.ini b/viridian/reef/nm_plugin/configuration/descriptor.ini similarity index 100% rename from viridian/barnacles/network-manager/configuration/descriptor.ini rename to viridian/reef/nm_plugin/configuration/descriptor.ini diff --git a/viridian/barnacles/network-manager/configuration/service.conf b/viridian/reef/nm_plugin/configuration/service.conf similarity index 85% rename from viridian/barnacles/network-manager/configuration/service.conf rename to viridian/reef/nm_plugin/configuration/service.conf index 8b79e69d..890a6dbe 100644 --- a/viridian/barnacles/network-manager/configuration/service.conf +++ b/viridian/reef/nm_plugin/configuration/service.conf @@ -1,5 +1,4 @@ - + diff --git a/viridian/barnacles/network-manager/editor/auth_dialog.c b/viridian/reef/nm_plugin/editor/auth_dialog.c similarity index 100% rename from viridian/barnacles/network-manager/editor/auth_dialog.c rename to viridian/reef/nm_plugin/editor/auth_dialog.c diff --git a/viridian/barnacles/network-manager/editor/dialog_gtk3.ui b/viridian/reef/nm_plugin/editor/dialog_gtk3.ui similarity index 100% rename from viridian/barnacles/network-manager/editor/dialog_gtk3.ui rename to viridian/reef/nm_plugin/editor/dialog_gtk3.ui diff --git a/viridian/barnacles/network-manager/editor/dialog_gtk4.ui b/viridian/reef/nm_plugin/editor/dialog_gtk4.ui similarity index 100% rename from viridian/barnacles/network-manager/editor/dialog_gtk4.ui rename to viridian/reef/nm_plugin/editor/dialog_gtk4.ui diff --git a/viridian/barnacles/network-manager/editor/editor.c b/viridian/reef/nm_plugin/editor/editor.c similarity index 100% rename from viridian/barnacles/network-manager/editor/editor.c rename to viridian/reef/nm_plugin/editor/editor.c diff --git a/viridian/barnacles/network-manager/editor/editor.h b/viridian/reef/nm_plugin/editor/editor.h similarity index 100% rename from viridian/barnacles/network-manager/editor/editor.h rename to viridian/reef/nm_plugin/editor/editor.h diff --git a/viridian/barnacles/network-manager/editor/gresource.xml b/viridian/reef/nm_plugin/editor/gresource.xml similarity index 100% rename from viridian/barnacles/network-manager/editor/gresource.xml rename to viridian/reef/nm_plugin/editor/gresource.xml diff --git a/viridian/barnacles/network-manager/editor/interface.h b/viridian/reef/nm_plugin/editor/interface.h similarity index 100% rename from viridian/barnacles/network-manager/editor/interface.h rename to viridian/reef/nm_plugin/editor/interface.h diff --git a/viridian/barnacles/network-manager/editor/interface_gtk3.c b/viridian/reef/nm_plugin/editor/interface_gtk3.c similarity index 100% rename from viridian/barnacles/network-manager/editor/interface_gtk3.c rename to viridian/reef/nm_plugin/editor/interface_gtk3.c diff --git a/viridian/barnacles/network-manager/editor/interface_gtk4.c b/viridian/reef/nm_plugin/editor/interface_gtk4.c similarity index 100% rename from viridian/barnacles/network-manager/editor/interface_gtk4.c rename to viridian/reef/nm_plugin/editor/interface_gtk4.c diff --git a/viridian/barnacles/network-manager/include/common.h b/viridian/reef/nm_plugin/include/common.h similarity index 100% rename from viridian/barnacles/network-manager/include/common.h rename to viridian/reef/nm_plugin/include/common.h diff --git a/viridian/barnacles/network-manager/plugin/plugin.c b/viridian/reef/nm_plugin/plugin/plugin.c similarity index 100% rename from viridian/barnacles/network-manager/plugin/plugin.c rename to viridian/reef/nm_plugin/plugin/plugin.c diff --git a/viridian/barnacles/network-manager/plugin/plugin.h b/viridian/reef/nm_plugin/plugin/plugin.h similarity index 100% rename from viridian/barnacles/network-manager/plugin/plugin.h rename to viridian/reef/nm_plugin/plugin/plugin.h diff --git a/viridian/reef/shared_library/Cargo.toml b/viridian/reef/shared_library/Cargo.toml index 0617c4f4..239b9ca4 100644 --- a/viridian/reef/shared_library/Cargo.toml +++ b/viridian/reef/shared_library/Cargo.toml @@ -18,8 +18,6 @@ prost = "^0.14.1" regex = "^1.11.1" simple-error = "^0.3.1" tokio = { version = "^1.47.1", features = ["full"] } - -[target.'cfg(target_os = "linux")'.dependencies] tun = { version = "^0.8.3", features = ["async"] } [build-dependencies] diff --git a/viridian/reef/shared_library/lib/tunnel/linux.rs b/viridian/reef/shared_library/lib/tunnel/linux.rs index e8df1f8d..71f85717 100644 --- a/viridian/reef/shared_library/lib/tunnel/linux.rs +++ b/viridian/reef/shared_library/lib/tunnel/linux.rs @@ -2,17 +2,12 @@ use std::net::Ipv4Addr; use ipnet::Ipv4Net; use log::debug; + use reeflib::tunnel::{create_tunnel, get_default_interface_by_remote_address}; -use tun::AsyncDevice; -use crate::tunnel::Tunnelling; +use crate::tunnel::{Tunnelling, TunnelInternal}; use crate::DynResult; -pub struct TunnelInternal { - pub default_address: Ipv4Addr, - pub tunnel_device: AsyncDevice, -} - impl TunnelInternal { pub async fn new(seaside_address: Ipv4Addr, tunnel_name: &str, tunnel_network: Ipv4Net) -> DynResult { debug!("Checking system default network properties..."); @@ -21,18 +16,6 @@ impl TunnelInternal { debug!("Creating tunnel device: address {}, netmask {}...", tunnel_network.addr(), tunnel_network.netmask()); let tunnel_device = create_tunnel(tunnel_name, tunnel_network.addr(), tunnel_network.netmask(), default_mtu as u16)?; - - debug!("Creating tunnel handle..."); Ok(Self { default_address, tunnel_device }) } } - -impl Tunnelling for TunnelInternal { - async fn recv(&self, buf: &mut [u8]) -> DynResult { - Ok(self.tunnel_device.recv(buf).await?) - } - - async fn send(&self, buf: &[u8]) -> DynResult { - Ok(self.tunnel_device.send(buf).await?) - } -} diff --git a/viridian/reef/shared_library/lib/tunnel/mod.rs b/viridian/reef/shared_library/lib/tunnel/mod.rs index e76b1ed9..36e3936e 100644 --- a/viridian/reef/shared_library/lib/tunnel/mod.rs +++ b/viridian/reef/shared_library/lib/tunnel/mod.rs @@ -2,25 +2,37 @@ use std::{net::Ipv4Addr, sync::Arc}; use ipnet::Ipv4Net; use simple_error::bail; +use tun::AsyncDevice; use reeflib::bytes::{get_buffer, ByteBuffer}; use reeflib::{DynResult, Reader, Writer}; #[cfg(target_os = "linux")] mod linux; -#[cfg(target_os = "linux")] -use linux::*; #[cfg(target_os = "windows")] mod windows; -#[cfg(target_os = "windows")] -use windows::*; + +pub struct TunnelInternal { + pub default_address: Ipv4Addr, + pub tunnel_device: AsyncDevice, +} trait Tunnelling { async fn recv(&self, buf: &mut [u8]) -> DynResult; async fn send(&self, buf: &[u8]) -> DynResult; } +impl Tunnelling for TunnelInternal { + async fn recv(&self, buf: &mut [u8]) -> DynResult { + Ok(self.tunnel_device.recv(buf).await?) + } + + async fn send(&self, buf: &[u8]) -> DynResult { + Ok(self.tunnel_device.send(buf).await?) + } +} + #[derive(Clone)] pub struct Tunnel { pub tunnel: Arc, diff --git a/viridian/reef/shared_library/lib/tunnel/windows.rs b/viridian/reef/shared_library/lib/tunnel/windows.rs index a33e15e5..812b2b6a 100644 --- a/viridian/reef/shared_library/lib/tunnel/windows.rs +++ b/viridian/reef/shared_library/lib/tunnel/windows.rs @@ -1,503 +1,35 @@ -use std::borrow::Cow; -use std::collections::{HashMap, HashSet}; -use std::marker::PhantomData; -use std::mem::{align_of, replace}; -use std::net::{AddrParseError, Ipv4Addr}; -use std::num::ParseIntError; -use std::slice::{from_raw_parts, from_raw_parts_mut}; -use std::sync::Arc; +use std::net::Ipv4Addr; -use cached::proc_macro::cached; -use etherparse::icmpv4::DestUnreachableHeader; -use etherparse::{Icmpv4Header, Icmpv4Type, IpNumber, Ipv4Header, Ipv4HeaderSlice}; use ipnet::Ipv4Net; -use log::{debug, error, info}; -use serde::Deserialize; -use simple_error::{bail, SimpleError}; -use tokio::sync::watch::{channel, Receiver, Sender}; -use tokio::sync::RwLock; -use tokio::task::JoinHandle; -use windivert::address::WinDivertAddress; -use windivert::layer::NetworkLayer; -use windivert::packet::WinDivertPacket; -use windivert::prelude::{WinDivertFlags, WinDivertShutdownMode}; -use windivert::{CloseAction, WinDivert}; -use windows::Win32::Foundation::{ERROR_BUFFER_OVERFLOW, ERROR_SUCCESS, WIN32_ERROR}; -use windows::Win32::NetworkManagement::IpHelper::{GetAdaptersAddresses, GetBestRoute, GAA_FLAG_INCLUDE_PREFIX, IP_ADAPTER_ADDRESSES_LH, IP_ADAPTER_UNICAST_ADDRESS_LH, MIB_IPFORWARDROW}; -use windows::Win32::Networking::WinSock::{AF_INET, SOCKADDR_IN}; -use wmi::{COMLibrary, WMIConnection}; +use log::debug; +use simple_error::bail; -use crate::bytes::get_buffer; -use crate::tunnel::Tunnelling; -use crate::{run_coroutine_in_thread, run_coroutine_sync, DynResult}; +use reeflib::tunnel::{get_default_interface_by_remote_address, get_interface_details}; +use tun::{AsyncDevice, Configuration, create_as_async}; -const ZERO_IP_ADDRESS: Ipv4Addr = Ipv4Addr::new(0, 0, 0, 0); -const DEFAULT_SUBINTERFACE_INDEX: u32 = 0; -const FRAGMENT_BYTES: usize = 8; -const FRAGMENT_TTL: u8 = 64; +use crate::tunnel::TunnelInternal; +use crate::DynResult; -#[cached(size = 1024, result = true)] -fn get_default_interface_by_remote_address(destination_ip: Ipv4Addr) -> DynResult { - let dest_ip = u32::from(destination_ip).to_be(); - let src_ip = u32::from(ZERO_IP_ADDRESS).to_be(); - - let mut route: MIB_IPFORWARDROW = MIB_IPFORWARDROW::default(); - let result = unsafe { GetBestRoute(dest_ip, Some(src_ip), &mut route) }; - - if WIN32_ERROR(result) == ERROR_SUCCESS { - Ok(route.dwForwardIfIndex) - } else { - bail!("Default route for ip {destination_ip} failed with error {}!", result) - } -} - -async unsafe fn get_default_interface DynResult>>(processor: P) -> DynResult> { - let mut buffer_size: u32 = 0; - - let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, None, &mut buffer_size); - if WIN32_ERROR(result) != ERROR_BUFFER_OVERFLOW { - bail!("Empty call to 'GetAdaptersAddresses' resulted with error {result}!"); - } - - let buffer = get_buffer(Some(buffer_size as usize + align_of::() - 1)).await; - let mut buffer_slice = buffer.slice_mut(); - let (_, buffer_aligned, _) = buffer_slice.align_to_mut::(); - let adapter_addresses = buffer_aligned.as_mut_ptr() as *mut IP_ADAPTER_ADDRESSES_LH; - - let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, Some(adapter_addresses), &mut buffer_size); - if WIN32_ERROR(result) != ERROR_SUCCESS { - bail!("Call to 'GetAdaptersAddresses' resulted with error {result}!"); - } - - let mut current_adapter = adapter_addresses; - while !current_adapter.is_null() { - let adapter = *current_adapter; - let mut unicast_ptr = adapter.FirstUnicastAddress; - - while !unicast_ptr.is_null() { - match processor(unicast_ptr, &adapter)? { - Some(res) => return Ok(Some(res)), - None => unicast_ptr = (*unicast_ptr).Next, - }; - } - - current_adapter = adapter.Next; - } - - Ok(None) -} - -async unsafe fn get_default_interface_by_local_address(local_ip: Ipv4Addr) -> DynResult { - unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, local_ip: Ipv4Addr) -> DynResult> { - let sockaddr = *(*unicast).Address.lpSockaddr; - if sockaddr.sa_family == AF_INET { - let sockaddr_in = *((*unicast).Address.lpSockaddr as *const SOCKADDR_IN); - let addr = Ipv4Addr::from(u32::from_be(sockaddr_in.sin_addr.S_un.S_addr)); - if addr == local_ip { - return Ok(Some(adapter.Anonymous1.Anonymous.IfIndex)); - } - } - Ok(None) - } - - match get_default_interface(|u, a| process_interface(u, a, local_ip)).await { - Ok(Some(res)) => Ok(res), - Ok(None) => bail!("No interfaces with IP address {local_ip}!"), - Err(err) => bail!("Error processing interface addresses: {err}!"), - } -} - -async unsafe fn get_interface_details(interface_index: u32) -> DynResult<(Ipv4Net, u32)> { - unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, interface_index: u32) -> DynResult> { - let sockaddr = *(*unicast).Address.lpSockaddr; - if sockaddr.sa_family == AF_INET && adapter.Anonymous1.Anonymous.IfIndex == interface_index { - let sockaddr_in = *((*unicast).Address.lpSockaddr as *const SOCKADDR_IN); - let ip_addr = Ipv4Addr::from(u32::from_be(sockaddr_in.sin_addr.S_un.S_addr)); - let prefix_len = (*unicast).OnLinkPrefixLength; - return Ok(Some((Ipv4Net::new(ip_addr, prefix_len)?, adapter.Mtu))); - } - Ok(None) - } - - match get_default_interface(|u, a| process_interface(u, a, interface_index)).await { - Ok(Some(res)) => Ok(res), - Ok(None) => bail!("No IP addresses found for interface with index {interface_index}!"), - Err(err) => bail!("Error processing interface addresses: {err}!"), - } -} - -#[derive(Deserialize, Debug, Clone)] -#[serde(rename_all = "PascalCase")] -struct AdapterConfig { - index: u32, - ip_enabled: bool, - dns_server_search_order: Vec, -} - -pub fn set_dns_addresses(interface_indexes: HashSet, dns_address: Option) -> DynResult<(Vec, HashMap>)> { - let com_con = COMLibrary::new()?; - let wmi_con = WMIConnection::new(com_con.into())?; - let adapters: Vec = wmi_con.raw_query("SELECT Index, IPEnabled, DNSServerSearchOrder FROM Win32_NetworkAdapterConfiguration")?; - let active_adapters: Vec = adapters.into_iter().filter(|a| a.ip_enabled && interface_indexes.contains(&a.index)).collect(); - - let mut dns_data = HashMap::new(); - let mut dns_servers = HashSet::new(); - - if let Some(address) = dns_address { - dns_servers.insert(address); - for adapter in active_adapters { - dns_data.insert(adapter.index, adapter.dns_server_search_order.clone()); - let in_params_getter = wmi_con.get_object("Win32_NetworkAdapterConfiguration")?.get_method("SetDNSServerSearchOrder")?; - let in_params = in_params_getter.ok_or_else(|| SimpleError::new("IWebMClassWrapper is None!"))?.spawn_instance()?; - in_params.put_property("Index", adapter.index)?; - in_params.put_property("DNSServerSearchOrder", vec![address.to_string()])?; - wmi_con.exec_method("Win32_NetworkAdapterConfiguration", "SetDNSServerSearchOrder", Some(&in_params))?; - } - } else { - for adapter in active_adapters { - dns_data.insert(adapter.index, adapter.dns_server_search_order.clone()); - let order_addr: Result, AddrParseError> = adapter.dns_server_search_order.iter().map(|a| a.parse()).collect(); - dns_servers.extend(order_addr?); - } - } - Ok((Vec::from_iter(dns_servers), dns_data)) -} - -fn reset_dns_addresses(dns_data: &HashMap>) -> DynResult<()> { - let com_con = COMLibrary::new()?; - let wmi_con = WMIConnection::new(com_con.into())?; - - for (iface, search_order) in dns_data { - let in_params_getter = wmi_con.get_object("Win32_NetworkAdapterConfiguration")?.get_method("SetDNSServerSearchOrder")?; - let in_params = in_params_getter.ok_or_else(|| SimpleError::new("IWebMClassWrapper is None!"))?.spawn_instance()?; - in_params.put_property("Index", iface.clone())?; - in_params.put_property("DNSServerSearchOrder", search_order.clone())?; - wmi_con.exec_method("Win32_NetworkAdapterConfiguration", "SetDNSServerSearchOrder", Some(&in_params))?; - } - Ok(()) -} - -#[derive(Clone, Copy)] -struct SendPtr { - ptr: T, - len: usize, - _marker: PhantomData, -} - -impl SendPtr { - fn len(&self) -> usize { - self.len - } -} - -unsafe impl Send for SendPtr {} -unsafe impl Sync for SendPtr {} - -type MutSendPtr = SendPtr<*mut u8>; -type ConstSendPtr = SendPtr<*const u8>; - -impl MutSendPtr { - fn new(buf: &mut [u8]) -> Self { - let ptr = buf.as_mut_ptr(); - Self { ptr, len: buf.len(), _marker: PhantomData } - } - - fn recreate(&self) -> &mut [u8] { - unsafe { from_raw_parts_mut(self.ptr, self.len) } - } -} - -impl ConstSendPtr { - fn new(buf: &[u8]) -> Self { - let ptr = buf.as_ptr(); - Self { ptr, len: buf.len(), _marker: PhantomData } - } - - fn recreate(&self) -> &[u8] { - unsafe { from_raw_parts(self.ptr, self.len) } - } -} - -struct TunnelTransport { - sender: Sender>, - receiver: Receiver>, -} - -type LocalTunnelTransport = TunnelTransport, usize>; -type RemoteTunnelTransport = TunnelTransport>; - -type LocalMutTunnelTransport = LocalTunnelTransport<*mut u8>; -type LocalConstTunnelTransport = LocalTunnelTransport<*const u8>; -type RemoteMutTunnelTransport = RemoteTunnelTransport<*mut u8>; -type RemoteConstTunnelTransport = RemoteTunnelTransport<*const u8>; - -impl TunnelTransport { - fn new(sender: Sender>, receiver: Receiver>) -> Self { - Self { sender, receiver } - } - - async fn send_internal(&mut self, data: Option) -> DynResult<()> { - if let Err(err) = self.sender.send(data) { - bail!("Error sending packet to queue: {err}"); - } - Ok(()) - } - - async fn send(&mut self, data: S) -> DynResult<()> { - self.send_internal(Some(data)).await - } - - async fn receive(&mut self) -> DynResult { - self.receiver.changed().await?; - let borrowed = self.receiver.borrow(); - match *borrowed { - Some(res) => Ok(res), - None => bail!("Tunnel queue was closed!"), - } - } - - async fn close(&mut self) -> DynResult<()> { - self.send_internal(None).await - } -} - -trait PacketExchangeProcess { - async fn build_icmp_frag_needed_packet<'a>(&self, original_ip_packet: &WinDivertPacket<'a, NetworkLayer>, mtu: u16) -> DynResult>; - async fn packet_receive_loop(&self, queue: RemoteConstTunnelTransport) -> DynResult<()>; - async fn packet_send_loop(&self, mtu: usize, queue: RemoteMutTunnelTransport) -> DynResult<()>; -} - -impl PacketExchangeProcess for Arc> { - async fn build_icmp_frag_needed_packet<'a>(&self, original_packet: &WinDivertPacket<'a, NetworkLayer>, mtu: u16) -> DynResult> { - let original_ip_header = Ipv4HeaderSlice::from_slice(&original_packet.data)?; - let payload_length = original_ip_header.payload_len()? as usize; - - if payload_length < FRAGMENT_BYTES { - bail!("Insufficient payload length: {payload_length} bytes!"); - } - - let mut icmp_header = Icmpv4Header::new(Icmpv4Type::DestinationUnreachable(DestUnreachableHeader::FragmentationNeeded { next_hop_mtu: mtu })); - let icmp_payload = &original_packet.data[..original_ip_header.slice().len() + FRAGMENT_BYTES]; - icmp_header.update_checksum(icmp_payload); - - let mut ip_header = Ipv4Header::new((icmp_header.header_len() + icmp_payload.len()) as u16, FRAGMENT_TTL, IpNumber::ICMP, original_ip_header.destination(), original_ip_header.source())?; - ip_header.header_checksum = ip_header.calc_header_checksum(); - - let buffer = get_buffer(None).await; - buffer.append(&ip_header.to_bytes()); - buffer.append(&icmp_header.to_bytes()); - buffer.append(icmp_payload); - - let mut address = unsafe { WinDivertAddress::::new() }; - address.set_interface_index(original_packet.address.interface_index()); - address.set_subinterface_index(original_packet.address.subinterface_index()); - address.set_outbound(true); - Ok(WinDivertPacket { address, data: Cow::Owned(buffer.into()) }) - } - - async fn packet_receive_loop(&self, mut queue: RemoteConstTunnelTransport) -> DynResult<()> { - loop { - let value = queue.receive().await?; - let raw_packet = value.recreate(); - debug!("Captured a remote packet, length: {}", value.len()); - let interface_index = match Ipv4HeaderSlice::from_slice(raw_packet) { - Ok(res) => match get_default_interface_by_remote_address(res.source_addr()) { - Ok(res) => res, - Err(err) => { - debug!("Error calculating interface index for packet: {err}"); - continue; - } - }, - Err(err) => { - debug!("Error parsing packet header: {err}"); - continue; - } - }; - let mut address = unsafe { WinDivertAddress::::new() }; - address.set_interface_index(interface_index); - address.set_subinterface_index(DEFAULT_SUBINTERFACE_INDEX); - address.set_outbound(false); - let packet = WinDivertPacket { address, data: Cow::Borrowed(raw_packet) }; - match self.send(&packet) { - Ok(res) => { - debug!("Inserting remote packet into a tunnel (interface {interface_index}), length: {res}"); - queue.send(res as usize).await?; - } - Err(err) => bail!("Closing receive loop: {err}!"), - }; - } - } - - async fn packet_send_loop(&self, mtu: usize, mut queue: RemoteMutTunnelTransport) -> DynResult<()> { - 'outer: loop { - let value = queue.receive().await?; - 'inner: loop { - let packet = match self.recv(Some(value.recreate())) { - Ok(res) => { - debug!("Captured a local packet, length: {}", res.data.len()); - res - } - Err(err) => bail!("Closing send loop: {err}!"), - }; - let packet_length = packet.data.len(); - if packet_length > mtu { - debug!("Packet too long: {packet_length} bytes!"); - match self.build_icmp_frag_needed_packet(&packet, mtu as u16).await { - Ok(res) => { - debug!("Sending fragmentation request, length: {}", res.data.len()); - self.send(&res)?; - } - Err(err) => debug!("Error constructing 'fragmentation needed' packet: {err}"), - }; - continue 'inner; - } else { - debug!("Inserting local packet into a tunnel, length: {packet_length}"); - queue.send(packet_length).await?; - continue 'outer; - } - } - } - } -} - -async fn enable_routing(seaside_address: Ipv4Addr, default_index: u32, default_network: Ipv4Net, divert_priority: i16, default_mtu: u32, receive_queue: RemoteConstTunnelTransport, send_queue: RemoteMutTunnelTransport, dns_addresses: Vec, capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>) -> DynResult<(Arc>, JoinHandle>, JoinHandle>)> { - let exempt_ports_filter = if let Some((lowest, highest)) = exempt_ports { format!("tcp? (tcp.SrcPort < {} or tcp.SrcPort > {}): (udp.SrcPort < {} or udp.SrcPort > {})", lowest, highest, lowest, highest) } else { String::from("true") }; - - let mut exempt_range_filter = exempt_ranges.iter().map(|i| format!("(ip.DstAddr < {} or ip.DstAddr > {})", i.network(), i.broadcast())).collect::>().join(" and "); - if exempt_range_filter.is_empty() { - exempt_range_filter = String::from("true"); - } - - let capture_ports_filter = if let Some((lowest, highest)) = capture_ports { format!("(tcp.SrcPort >= {} and tcp.SrcPort <= {}) or (udp.SrcPort >= {} and udp.SrcPort <= {})", lowest, highest, lowest, highest) } else { String::from("false") }; - - let mut capture_range_filter = capture_ranges.iter().map(|i| format!("(ip.DstAddr >= {} and ip.DstAddr <= {})", i.network(), i.broadcast())).collect::>().join(" or "); - if capture_range_filter.is_empty() { - capture_range_filter = String::from("false"); - } - - let mut capture_networks_result = Vec::new(); - for iface in capture_iface { - let net_idx = iface.parse().map_err(|e| Box::new(e))?; - let (network, _) = unsafe { get_interface_details(net_idx).await }?; - let filter = format!("((ifIdx == {iface}) and (ip.DstAddr < {} or ip.DstAddr > {}))", network.network(), network.broadcast()); - capture_networks_result.push(filter); - } - let mut capture_iface_filter = capture_networks_result.join(" or "); - if capture_iface_filter.is_empty() { - capture_iface_filter = String::from("false"); - } - - let dns_filter = dns_addresses.iter().map(|i| format!("ip.DstAddr != {i}")).collect::>().join(" and "); - let caerulean_filter = format!("(ifIdx != {default_index}) or (ip.SrcAddr != {}) or (ip.DstAddr != {})", default_network.addr(), seaside_address); - - let filter = format!("ip and outbound and (({exempt_ports_filter}) and ({exempt_range_filter})) and (({capture_ports_filter}) or {capture_range_filter} or {capture_iface_filter}) and ({dns_filter}) and ({caerulean_filter})"); - debug!("WinDivert filter will be used: '{filter}'"); - let divert = WinDivert::network(filter, divert_priority, WinDivertFlags::new())?; - - let divert_arc = Arc::new(divert); - let receive_divert_clone = divert_arc.clone(); - let send_divert_clone = divert_arc.clone(); - let receive_handle = run_coroutine_in_thread!(receive_divert_clone.packet_receive_loop(receive_queue)); - let send_handle = run_coroutine_in_thread!(send_divert_clone.packet_send_loop(default_mtu as usize, send_queue)); - Ok((divert_arc, receive_handle, send_handle)) -} - -pub struct TunnelInternal { - pub default_address: Ipv4Addr, - divert: Arc>, - send_queue: RwLock, - receive_queue: RwLock, - send_handle: Option>>, - receive_handle: Option>>, - dns_data: HashMap>, +pub fn create_tunnel(name: &str, address: Ipv4Addr, netmask: Ipv4Addr, mtu: u16) -> DynResult { + let mut config = Configuration::default(); + config.address(address).netmask(netmask).tun_name(name).mtu(mtu).up(); + let tunnel = match create_as_async(&config) { + Ok(device) => Ok(device), + Err(err) => bail!("Error creating tunnel: {err}"), + }; + tunnel } impl TunnelInternal { - pub async fn new(seaside_address: Ipv4Addr, _: &str, _: Ipv4Net, svr_index: u8, dns: Option, mut capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>, local_address: Option) -> DynResult { + pub async fn new(seaside_address: Ipv4Addr, tunnel_name: &str, tunnel_network: Ipv4Net) -> DynResult { debug!("Checking system default network properties..."); - let default_interface = if let Some(address) = local_address { unsafe { get_default_interface_by_local_address(address).await }? } else { get_default_interface_by_remote_address(seaside_address)? }; - let (default_network, default_mtu) = unsafe { get_interface_details(default_interface).await }?; + let default_interface = get_default_interface_by_remote_address(seaside_address)?; + let (default_network, default_mtu) = get_interface_details(default_interface).await?; debug!("Default network properties received: network {default_network}, MTU {default_mtu}"); let default_address = default_network.addr(); - if capture_iface.is_empty() && capture_ranges.is_empty() && capture_ports.is_none() { - debug!("The default interface added to capture: {default_interface}"); - capture_iface.insert(default_interface.to_string()); - } - - debug!("Setting DNS address to {dns:?}..."); - let interfaces: Result, ParseIntError> = capture_iface.iter().map(|s| s.parse()).collect(); - let (dns_addresses, dns_data) = set_dns_addresses(HashSet::from_iter(interfaces?), dns)?; - debug!("The DNS server for interfaces were set to: {dns_addresses:?}"); - - debug!("Setting up routing..."); - let (remote_send_sender, local_send_receiver) = channel(None); - let (local_send_sender, remote_send_receiver) = channel(None); - let remote_send_queue = RemoteMutTunnelTransport::new(remote_send_sender, remote_send_receiver); - let local_send_queue = RwLock::new(LocalMutTunnelTransport::new(local_send_sender, local_send_receiver)); - let (remote_receive_sender, local_receive_receiver) = channel(None); - let (local_receive_sender, remote_receive_receiver) = channel(None); - let remote_receive_queue = RemoteConstTunnelTransport::new(remote_receive_sender, remote_receive_receiver); - let local_receive_queue = RwLock::new(LocalConstTunnelTransport::new(local_receive_sender, local_receive_receiver)); - let (divert, receive_handle, send_handle) = enable_routing(seaside_address, default_interface, default_network, svr_index as i16, default_mtu, remote_receive_queue, remote_send_queue, dns_addresses, capture_iface, capture_ranges, exempt_ranges, capture_ports, exempt_ports).await?; - - debug!("Creating tunnel object..."); - Ok(Self { default_address, divert, send_queue: local_send_queue, receive_queue: local_receive_queue, send_handle: Some(send_handle), receive_handle: Some(receive_handle), dns_data }) - } -} - -impl Tunnelling for TunnelInternal { - async fn recv(&self, buf: &mut [u8]) -> DynResult { - let pointer = MutSendPtr::new(buf); - let mut writer = self.send_queue.write().await; - writer.send(pointer).await?; - writer.receive().await - } - - async fn send(&self, buf: &[u8]) -> DynResult { - let pointer = ConstSendPtr::new(buf); - let mut writer = self.receive_queue.write().await; - writer.send(pointer).await?; - writer.receive().await - } -} - -impl Drop for TunnelInternal { - #[allow(unused_must_use)] - fn drop(&mut self) { - run_coroutine_sync!(async { - // TODO: change once https://github.com/Rubensei/windivert-rust/issues/14 is resolved. - debug!("Retrieving routing handle..."); - let divert = unsafe { &mut *(Arc::as_ptr(&self.divert) as *mut WinDivert) }; - - debug!("Resetting routing..."); - divert.shutdown(WinDivertShutdownMode::Both).inspect_err(|e| error!("Error shutting down WinDivert: {e}")); - divert.close(CloseAction::Nothing).inspect_err(|e| error!("Error closing WinDivert: {e}")); - - debug!("Closing routing queue (receive)..."); - let mut receive_queue_writer = self.receive_queue.write().await; - receive_queue_writer.close().await.inspect_err(|e| info!("Error closing receive tunnel queue: {e}")); - - debug!("Closing routing queue (send)..."); - let mut send_queue_writer = self.send_queue.write().await; - send_queue_writer.close().await.inspect_err(|e| info!("Error closing send tunnel queue: {e}")); - - debug!("Waiting for handle thread (receive)..."); - let receive_handle = replace(&mut self.receive_handle, None); - if let Some(thread) = receive_handle { - let result = thread.await.expect("WinDivert receive thread termination error!"); - result.inspect_err(|e| info!("WinDivert receive thread terminated with: {e}")); - } - - debug!("Waiting for handle thread (send)..."); - let send_handle = replace(&mut self.send_handle, None); - if let Some(thread) = send_handle { - let result = thread.await.expect("WinDivert send thread termination error!"); - result.inspect_err(|e| info!("WinDivert send thread terminated with: {e}")); - } - - debug!("Reverting DNS servers..."); - reset_dns_addresses(&self.dns_data).inspect_err(|e| error!("Error resetting DNS addresses: {e}")); - }); + debug!("Creating tunnel device: address {}, netmask {}...", tunnel_network.addr(), tunnel_network.netmask()); + let tunnel_device = create_tunnel(tunnel_name, tunnel_network.addr(), tunnel_network.netmask(), default_mtu as u16)?; + Ok(Self { default_address, tunnel_device }) } } diff --git a/viridian/reef/standalone_executable/Cargo.toml b/viridian/reef/standalone_executable/Cargo.toml index 4ae83209..a919eb92 100644 --- a/viridian/reef/standalone_executable/Cargo.toml +++ b/viridian/reef/standalone_executable/Cargo.toml @@ -26,6 +26,10 @@ nftables = "^0.6.3" rtnetlink = "^0.18.0" tun = { version = "^0.8.3", features = ["async"] } +[target.'cfg(target_os = "windows")'.dependencies] +etherparse = "^0.19.0" +windivert = "^0.6.0" + [dev-dependencies] reef-common = { path = "../common_library", features = ["test"] } reef-test = { path = "../test_library" } diff --git a/viridian/reef/standalone_executable/src/tunnel/linux.rs b/viridian/reef/standalone_executable/src/tunnel/linux.rs index 24e4ee48..cc06a9ca 100644 --- a/viridian/reef/standalone_executable/src/tunnel/linux.rs +++ b/viridian/reef/standalone_executable/src/tunnel/linux.rs @@ -17,7 +17,6 @@ use nftables::helper::apply_ruleset; use nftables::schema::{Chain, NfListObject, Rule, Table}; use nftables::stmt::{Mangle, Match, Operator, Statement}; use nftables::types::{NfChainType, NfFamily, NfHook}; -use reeflib::utils::parse_env; use rtnetlink::packet_route::route::RouteMessage; use rtnetlink::packet_route::rule::{RuleAction, RuleMessage}; use rtnetlink::packet_route::AddressFamily; @@ -27,6 +26,7 @@ use tun::AsyncDevice; use reeflib::tunnel::{create_tunnel, get_address_device, get_default_interface_by_local_address, get_default_interface_by_remote_address, get_device_address_and_cidr, get_handle}; use reeflib::{run_coroutine_sync, DynResult}; +use reeflib::utils::parse_env; use crate::tunnel::Tunnelling; diff --git a/viridian/reef/standalone_executable/src/tunnel/windows.rs b/viridian/reef/standalone_executable/src/tunnel/windows.rs index a33e15e5..db2eafea 100644 --- a/viridian/reef/standalone_executable/src/tunnel/windows.rs +++ b/viridian/reef/standalone_executable/src/tunnel/windows.rs @@ -1,19 +1,17 @@ use std::borrow::Cow; use std::collections::{HashMap, HashSet}; use std::marker::PhantomData; -use std::mem::{align_of, replace}; -use std::net::{AddrParseError, Ipv4Addr}; +use std::mem::replace; +use std::net::Ipv4Addr; use std::num::ParseIntError; use std::slice::{from_raw_parts, from_raw_parts_mut}; use std::sync::Arc; -use cached::proc_macro::cached; use etherparse::icmpv4::DestUnreachableHeader; use etherparse::{Icmpv4Header, Icmpv4Type, IpNumber, Ipv4Header, Ipv4HeaderSlice}; use ipnet::Ipv4Net; use log::{debug, error, info}; -use serde::Deserialize; -use simple_error::{bail, SimpleError}; +use simple_error::bail; use tokio::sync::watch::{channel, Receiver, Sender}; use tokio::sync::RwLock; use tokio::task::JoinHandle; @@ -22,161 +20,17 @@ use windivert::layer::NetworkLayer; use windivert::packet::WinDivertPacket; use windivert::prelude::{WinDivertFlags, WinDivertShutdownMode}; use windivert::{CloseAction, WinDivert}; -use windows::Win32::Foundation::{ERROR_BUFFER_OVERFLOW, ERROR_SUCCESS, WIN32_ERROR}; -use windows::Win32::NetworkManagement::IpHelper::{GetAdaptersAddresses, GetBestRoute, GAA_FLAG_INCLUDE_PREFIX, IP_ADAPTER_ADDRESSES_LH, IP_ADAPTER_UNICAST_ADDRESS_LH, MIB_IPFORWARDROW}; -use windows::Win32::Networking::WinSock::{AF_INET, SOCKADDR_IN}; -use wmi::{COMLibrary, WMIConnection}; -use crate::bytes::get_buffer; +use reeflib::bytes::get_buffer; +use reeflib::tunnel::{get_default_interface_by_local_address, get_default_interface_by_remote_address, get_interface_details, reset_dns_addresses, set_dns_addresses}; +use reeflib::{run_coroutine_in_thread, run_coroutine_sync, DynResult}; + use crate::tunnel::Tunnelling; -use crate::{run_coroutine_in_thread, run_coroutine_sync, DynResult}; -const ZERO_IP_ADDRESS: Ipv4Addr = Ipv4Addr::new(0, 0, 0, 0); const DEFAULT_SUBINTERFACE_INDEX: u32 = 0; const FRAGMENT_BYTES: usize = 8; const FRAGMENT_TTL: u8 = 64; -#[cached(size = 1024, result = true)] -fn get_default_interface_by_remote_address(destination_ip: Ipv4Addr) -> DynResult { - let dest_ip = u32::from(destination_ip).to_be(); - let src_ip = u32::from(ZERO_IP_ADDRESS).to_be(); - - let mut route: MIB_IPFORWARDROW = MIB_IPFORWARDROW::default(); - let result = unsafe { GetBestRoute(dest_ip, Some(src_ip), &mut route) }; - - if WIN32_ERROR(result) == ERROR_SUCCESS { - Ok(route.dwForwardIfIndex) - } else { - bail!("Default route for ip {destination_ip} failed with error {}!", result) - } -} - -async unsafe fn get_default_interface DynResult>>(processor: P) -> DynResult> { - let mut buffer_size: u32 = 0; - - let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, None, &mut buffer_size); - if WIN32_ERROR(result) != ERROR_BUFFER_OVERFLOW { - bail!("Empty call to 'GetAdaptersAddresses' resulted with error {result}!"); - } - - let buffer = get_buffer(Some(buffer_size as usize + align_of::() - 1)).await; - let mut buffer_slice = buffer.slice_mut(); - let (_, buffer_aligned, _) = buffer_slice.align_to_mut::(); - let adapter_addresses = buffer_aligned.as_mut_ptr() as *mut IP_ADAPTER_ADDRESSES_LH; - - let result = GetAdaptersAddresses(AF_INET.0 as u32, GAA_FLAG_INCLUDE_PREFIX, None, Some(adapter_addresses), &mut buffer_size); - if WIN32_ERROR(result) != ERROR_SUCCESS { - bail!("Call to 'GetAdaptersAddresses' resulted with error {result}!"); - } - - let mut current_adapter = adapter_addresses; - while !current_adapter.is_null() { - let adapter = *current_adapter; - let mut unicast_ptr = adapter.FirstUnicastAddress; - - while !unicast_ptr.is_null() { - match processor(unicast_ptr, &adapter)? { - Some(res) => return Ok(Some(res)), - None => unicast_ptr = (*unicast_ptr).Next, - }; - } - - current_adapter = adapter.Next; - } - - Ok(None) -} - -async unsafe fn get_default_interface_by_local_address(local_ip: Ipv4Addr) -> DynResult { - unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, local_ip: Ipv4Addr) -> DynResult> { - let sockaddr = *(*unicast).Address.lpSockaddr; - if sockaddr.sa_family == AF_INET { - let sockaddr_in = *((*unicast).Address.lpSockaddr as *const SOCKADDR_IN); - let addr = Ipv4Addr::from(u32::from_be(sockaddr_in.sin_addr.S_un.S_addr)); - if addr == local_ip { - return Ok(Some(adapter.Anonymous1.Anonymous.IfIndex)); - } - } - Ok(None) - } - - match get_default_interface(|u, a| process_interface(u, a, local_ip)).await { - Ok(Some(res)) => Ok(res), - Ok(None) => bail!("No interfaces with IP address {local_ip}!"), - Err(err) => bail!("Error processing interface addresses: {err}!"), - } -} - -async unsafe fn get_interface_details(interface_index: u32) -> DynResult<(Ipv4Net, u32)> { - unsafe fn process_interface(unicast: *mut IP_ADAPTER_UNICAST_ADDRESS_LH, adapter: &IP_ADAPTER_ADDRESSES_LH, interface_index: u32) -> DynResult> { - let sockaddr = *(*unicast).Address.lpSockaddr; - if sockaddr.sa_family == AF_INET && adapter.Anonymous1.Anonymous.IfIndex == interface_index { - let sockaddr_in = *((*unicast).Address.lpSockaddr as *const SOCKADDR_IN); - let ip_addr = Ipv4Addr::from(u32::from_be(sockaddr_in.sin_addr.S_un.S_addr)); - let prefix_len = (*unicast).OnLinkPrefixLength; - return Ok(Some((Ipv4Net::new(ip_addr, prefix_len)?, adapter.Mtu))); - } - Ok(None) - } - - match get_default_interface(|u, a| process_interface(u, a, interface_index)).await { - Ok(Some(res)) => Ok(res), - Ok(None) => bail!("No IP addresses found for interface with index {interface_index}!"), - Err(err) => bail!("Error processing interface addresses: {err}!"), - } -} - -#[derive(Deserialize, Debug, Clone)] -#[serde(rename_all = "PascalCase")] -struct AdapterConfig { - index: u32, - ip_enabled: bool, - dns_server_search_order: Vec, -} - -pub fn set_dns_addresses(interface_indexes: HashSet, dns_address: Option) -> DynResult<(Vec, HashMap>)> { - let com_con = COMLibrary::new()?; - let wmi_con = WMIConnection::new(com_con.into())?; - let adapters: Vec = wmi_con.raw_query("SELECT Index, IPEnabled, DNSServerSearchOrder FROM Win32_NetworkAdapterConfiguration")?; - let active_adapters: Vec = adapters.into_iter().filter(|a| a.ip_enabled && interface_indexes.contains(&a.index)).collect(); - - let mut dns_data = HashMap::new(); - let mut dns_servers = HashSet::new(); - - if let Some(address) = dns_address { - dns_servers.insert(address); - for adapter in active_adapters { - dns_data.insert(adapter.index, adapter.dns_server_search_order.clone()); - let in_params_getter = wmi_con.get_object("Win32_NetworkAdapterConfiguration")?.get_method("SetDNSServerSearchOrder")?; - let in_params = in_params_getter.ok_or_else(|| SimpleError::new("IWebMClassWrapper is None!"))?.spawn_instance()?; - in_params.put_property("Index", adapter.index)?; - in_params.put_property("DNSServerSearchOrder", vec![address.to_string()])?; - wmi_con.exec_method("Win32_NetworkAdapterConfiguration", "SetDNSServerSearchOrder", Some(&in_params))?; - } - } else { - for adapter in active_adapters { - dns_data.insert(adapter.index, adapter.dns_server_search_order.clone()); - let order_addr: Result, AddrParseError> = adapter.dns_server_search_order.iter().map(|a| a.parse()).collect(); - dns_servers.extend(order_addr?); - } - } - Ok((Vec::from_iter(dns_servers), dns_data)) -} - -fn reset_dns_addresses(dns_data: &HashMap>) -> DynResult<()> { - let com_con = COMLibrary::new()?; - let wmi_con = WMIConnection::new(com_con.into())?; - - for (iface, search_order) in dns_data { - let in_params_getter = wmi_con.get_object("Win32_NetworkAdapterConfiguration")?.get_method("SetDNSServerSearchOrder")?; - let in_params = in_params_getter.ok_or_else(|| SimpleError::new("IWebMClassWrapper is None!"))?.spawn_instance()?; - in_params.put_property("Index", iface.clone())?; - in_params.put_property("DNSServerSearchOrder", search_order.clone())?; - wmi_con.exec_method("Win32_NetworkAdapterConfiguration", "SetDNSServerSearchOrder", Some(&in_params))?; - } - Ok(()) -} - #[derive(Clone, Copy)] struct SendPtr { ptr: T, @@ -378,7 +232,7 @@ async fn enable_routing(seaside_address: Ipv4Addr, default_index: u32, default_n let mut capture_networks_result = Vec::new(); for iface in capture_iface { let net_idx = iface.parse().map_err(|e| Box::new(e))?; - let (network, _) = unsafe { get_interface_details(net_idx).await }?; + let (network, _) = get_interface_details(net_idx).await?; let filter = format!("((ifIdx == {iface}) and (ip.DstAddr < {} or ip.DstAddr > {}))", network.network(), network.broadcast()); capture_networks_result.push(filter); } @@ -415,8 +269,8 @@ pub struct TunnelInternal { impl TunnelInternal { pub async fn new(seaside_address: Ipv4Addr, _: &str, _: Ipv4Net, svr_index: u8, dns: Option, mut capture_iface: HashSet, capture_ranges: HashSet, exempt_ranges: HashSet, capture_ports: Option<(u16, u16)>, exempt_ports: Option<(u16, u16)>, local_address: Option) -> DynResult { debug!("Checking system default network properties..."); - let default_interface = if let Some(address) = local_address { unsafe { get_default_interface_by_local_address(address).await }? } else { get_default_interface_by_remote_address(seaside_address)? }; - let (default_network, default_mtu) = unsafe { get_interface_details(default_interface).await }?; + let default_interface = if let Some(address) = local_address { get_default_interface_by_local_address(address).await? } else { get_default_interface_by_remote_address(seaside_address)? }; + let (default_network, default_mtu) = get_interface_details(default_interface).await?; debug!("Default network properties received: network {default_network}, MTU {default_mtu}"); let default_address = default_network.addr(); From 09a350d7ce503ce47da0a050a992f8ed36a137a4 Mon Sep 17 00:00:00 2001 From: pseusys Date: Tue, 18 Nov 2025 00:06:59 +0100 Subject: [PATCH 33/67] dependencies added --- viridian/reef/nm_plugin/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/viridian/reef/nm_plugin/README.md b/viridian/reef/nm_plugin/README.md index 7ed6e04d..c1e71756 100644 --- a/viridian/reef/nm_plugin/README.md +++ b/viridian/reef/nm_plugin/README.md @@ -1 +1 @@ -> `build-essential libsecret-1-dev libglib2.0-dev libgtk-3-dev libglib2.0-dev-bin libnm-dev pkg-config` +> `build-essential libsecret-1-dev libglib2.0-dev libgtk-3-dev libgtk-4-dev libglib2.0-dev-bin libnm-dev pkg-config` From 355ae8957fc431ff8966063f2c5908715c23461e Mon Sep 17 00:00:00 2001 From: pseusys Date: Mon, 24 Nov 2025 01:42:27 +0100 Subject: [PATCH 34/67] makefiles and dependencies --- .gitignore | 3 + viridian/reef/Makefile | 106 ++++++------------ viridian/reef/shared_library/Makefile | 110 +++++++++++++++++++ viridian/reef/standalone_executable/Makefile | 106 ++++++++++++++++++ 4 files changed, 252 insertions(+), 73 deletions(-) create mode 100644 viridian/reef/shared_library/Makefile create mode 100644 viridian/reef/standalone_executable/Makefile diff --git a/.gitignore b/.gitignore index 59fed1b7..d8ab3162 100644 --- a/.gitignore +++ b/.gitignore @@ -89,6 +89,9 @@ viridian/reef/certificates/ viridian/reef/WinDivert-*.zip viridian/reef/windivert-bin/ viridian/reef/windivert-source/ +viridian/reef/wintun-*.zip +viridian/reef/wintun-bin/ +viridian/reef/wintun-source/ diff --git a/viridian/reef/Makefile b/viridian/reef/Makefile index b7b1fcd9..63ed5370 100644 --- a/viridian/reef/Makefile +++ b/viridian/reef/Makefile @@ -15,91 +15,42 @@ help: -# Building and dependency management: - -WINDIVERT_VERSION := 2.2.2 -WINDIVERT_PATH_REL := windivert-bin -WINDIVERT_PATH := $(shell realpath $(WINDIVERT_PATH_REL)) - -WINDIVERT_TEMP := windivert-source -WINDIVERT_SOURCE := WinDivert-$(WINDIVERT_VERSION)-A -WINDIVERT_URL := https://github.com/basil00/WinDivert/releases/download/v$(WINDIVERT_VERSION)/$(WINDIVERT_SOURCE).zip - - -UNAME_M := $(shell uname -m) - -ifeq ($(UNAME_M),x86_64) - WINDIVERT_ARCH := x64 -else ifeq ($(UNAME_M),i686) - WINDIVERT_ARCH := x32 -else ifeq ($(UNAME_M),aarch64) - WINDIVERT_ARCH := x64 -else ifeq ($(UNAME_M),armv7l) - WINDIVERT_ARCH := x32 -else - $(error Unsupported uname architecture: $(UNAME_M)) -endif - - -dependencies: - @ # Download and unpack standalone dependencies -ifeq ($(OS),Windows_NT) - echo "Downloading WinDivert library version $(WINDIVERT_VERSION)..." - curl -sSL -o $(WINDIVERT_SOURCE).zip $(WINDIVERT_URL) - mkdir -p $(WINDIVERT_TEMP) - unzip -q -o $(WINDIVERT_SOURCE).zip -d $(WINDIVERT_TEMP) - mkdir -p $(WINDIVERT_PATH_REL) - mv $(WINDIVERT_TEMP)/$(WINDIVERT_SOURCE)/$(WINDIVERT_ARCH)/* $(WINDIVERT_PATH)/ - rm -rf $(WINDIVERT_TEMP) - echo "All standalone dependencies ready!" -endif -.PHONY: dependencies - -runtime: dependencies - @ # Move standalone dependencies next to the executable -ifeq ($(OS),Windows_NT) - echo "Copying dependencies next to the executable..." - mkdir -p $(BINARY_PATH) - cp $(WINDIVERT_PATH_REL)/*.sys $(BINARY_PATH) - echo "All standalone dependencies in place!" -endif -.PHONY: runtime - -build: dependencies - @ # Build standalone reef locally TODO: add feature strict, checking warnings, docs, removing debug info -ifeq ($(BUILD_TYPE),release) - cargo build --release --bin seaside_standalone -else - cargo build --bin seaside_standalone -endif -.PHONY: build +ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) +SHARED_LIBRARY_DIR := $(ROOT_DIR)/shared_library +STANDALONE_EXECUTABLE_DIR := $(ROOT_DIR)/standalone_executable + -run: build runtime - @ # Run standalone reef locally - cargo run --bin seaside_standalone -.PHONY: run +# Building different artifacts: +build-shared-library: + @ # Build shared reef library TODO: add feature strict, checking warnings, docs, removing debug info + $(MAKE) -C $(SHARED_LIBRARY_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build +.PHONY: build-shared-library -build-lib: - @ # Build standalone reef locally TODO: add feature strict, checking warnings, docs, removing debug info -ifeq ($(BUILD_TYPE),release) - cargo build --release --lib -else - cargo build --lib -endif -.PHONY: build-lib +build-standalone-executable: + @ # Build standalone reef executable TODO: add feature strict, checking warnings, docs, removing debug info + $(MAKE) -C $(STANDALONE_EXECUTABLE_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build +.PHONY: build-shared-library +build: build-shared-library build-standalone-executable: +.PHONY: build -# Testing and code quality: +# Testing: + +# TODO: also test nm plugin in Docker??? test: @ # Run tests inside of the testing docker container docker build -f Dockerfile --target tester -t seaside-reef-test ../.. docker run --privileged --rm --name seaside-reef-test --sysctl net.ipv6.conf.all.disable_ipv6=1 --entrypoint cargo seaside-reef-test test --workspace -- --nocapture --show-output .PHONY: test + + +# Code quality: + lint: build @ # Perform format check of all the rust code cargo fmt --all -- --check @@ -109,10 +60,19 @@ lint: build # Artifact cleaning: -clean: +clean-shared-library: + @ # clean shared reef library + $(MAKE) -C $(SHARED_LIBRARY_DIR) -s --no-print-directory clean +.PHONY: build-shared-library + +clean-standalone-executable: + @ # Clean standalone reef executable + $(MAKE) -C $(STANDALONE_EXECUTABLE_DIR) -s --no-print-directory clean +.PHONY: build-shared-library + +clean: clean-shared-library clean-standalone-executable @ # Clean all the artifacts for any targets cargo clean rm -f Cargo.lock - rm -rf shared_library/include docker rmi -f seaside-reef-test .PHONY: clean diff --git a/viridian/reef/shared_library/Makefile b/viridian/reef/shared_library/Makefile new file mode 100644 index 00000000..5a26a4de --- /dev/null +++ b/viridian/reef/shared_library/Makefile @@ -0,0 +1,110 @@ +.ONESHELL: +.EXPORT_ALL_VARIABLES: +.DEFAULT_GOAL := help + +SHELL := /bin/bash +.SHELLFLAGS := -c -e + +BUILD_TYPE := debug + +ROOT_DIR := $(shell realpath "$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))/../") +BINARY_PATH := $(ROOT_DIR)/target/$(BUILD_TYPE) + +help: + @ # Print available make target information + echo -e "help" +.PHONY: help + + + +# Find appropriate package and system configuration: + +WINTUN_VERSION := 0.14.1 +WINTUN_ARCHIVE := wintun-$(WINTUN_VERSION) + +WINTUN_PATH := $(ROOT_DIR)/wintun-bin +WINTUN_TEMP := $(ROOT_DIR)/wintun-source +WINTUN_SOURCE := $(ROOT_DIR)/$(WINTUN_ARCHIVE) +WINTUN_URL := https://www.wintun.net/builds/$(WINTUN_ARCHIVE).zip + + +UNAME_M := $(shell uname -m) + +ifeq ($(UNAME_M),x86_64) + WINTUN_ARCH := amd64 +else ifeq ($(UNAME_M),i386) + WINTUN_ARCH = amd +else ifeq ($(UNAME_M),i686) + WINTUN_ARCH = amd +else ifeq ($(UNAME_M),aarch64) + WINTUN_ARCH = arm64 +else ifneq (,$(filter armv7l armv6l armhf armv7% armv6%,$(UNAME_M))) + WINTUN_ARCH = arm +else + $(error Unsupported uname architecture: $(UNAME_M)) +endif + + + +# Download dependencies: + +ifeq ($(OS),Windows_NT) + +$(WINTUN_SOURCE).zip: + @ # Download library dependencies + echo "Downloading WinTun library version $(WINTUN_VERSION)..." + curl -sSL -o $@ $(WINTUN_URL) + +$(WINTUN_TEMP): $(WINTUN_SOURCE).zip + @ # Unpack library dependencies + echo "Unpacking WinTun library..." + mkdir -p $@ + unzip -q -o $< -d $@ + +$(WINTUN_PATH): $(WINTUN_TEMP) + @ # Extract library dependencies + echo "Extracting WinTun library..." + mkdir -p $@ + cp $ Date: Tue, 25 Nov 2025 04:54:15 +0100 Subject: [PATCH 35/67] meson build --- .gitignore | 5 +- bump-version.sh | 3 + viridian/reef/nm_plugin/Dockerfile | 4 + viridian/reef/nm_plugin/Makefile | 195 ++---------------- .../{configuration => conf}/descriptor.ini | 0 .../{configuration => conf}/service.conf | 0 viridian/reef/nm_plugin/meson.build | 141 +++++++++++++ .../nm_plugin/{editor => res}/dialog_gtk3.ui | 0 .../nm_plugin/{editor => res}/dialog_gtk4.ui | 0 .../nm_plugin/{editor => res}/gresource.xml | 0 .../nm_plugin/{editor => src}/auth_dialog.c | 0 .../reef/nm_plugin/{include => src}/common.h | 0 .../reef/nm_plugin/{editor => src}/editor.c | 0 .../reef/nm_plugin/{editor => src}/editor.h | 0 .../nm_plugin/{editor => src}/interface.h | 0 .../{editor => src}/interface_gtk3.c | 0 .../{editor => src}/interface_gtk4.c | 0 .../reef/nm_plugin/{plugin => src}/plugin.c | 0 .../reef/nm_plugin/{plugin => src}/plugin.h | 0 19 files changed, 174 insertions(+), 174 deletions(-) create mode 100644 viridian/reef/nm_plugin/Dockerfile rename viridian/reef/nm_plugin/{configuration => conf}/descriptor.ini (100%) rename viridian/reef/nm_plugin/{configuration => conf}/service.conf (100%) create mode 100644 viridian/reef/nm_plugin/meson.build rename viridian/reef/nm_plugin/{editor => res}/dialog_gtk3.ui (100%) rename viridian/reef/nm_plugin/{editor => res}/dialog_gtk4.ui (100%) rename viridian/reef/nm_plugin/{editor => res}/gresource.xml (100%) rename viridian/reef/nm_plugin/{editor => src}/auth_dialog.c (100%) rename viridian/reef/nm_plugin/{include => src}/common.h (100%) rename viridian/reef/nm_plugin/{editor => src}/editor.c (100%) rename viridian/reef/nm_plugin/{editor => src}/editor.h (100%) rename viridian/reef/nm_plugin/{editor => src}/interface.h (100%) rename viridian/reef/nm_plugin/{editor => src}/interface_gtk3.c (100%) rename viridian/reef/nm_plugin/{editor => src}/interface_gtk4.c (100%) rename viridian/reef/nm_plugin/{plugin => src}/plugin.c (100%) rename viridian/reef/nm_plugin/{plugin => src}/plugin.h (100%) diff --git a/.gitignore b/.gitignore index d8ab3162..b1abdf68 100644 --- a/.gitignore +++ b/.gitignore @@ -98,4 +98,7 @@ viridian/reef/wintun-source/ # C and C++: ## Binary build: -viridian/barnacles/network-manager/build +viridian/reef/nm_plugin/build + +## Configuration files: +viridian/reef/nm_plugin/.clang-* diff --git a/bump-version.sh b/bump-version.sh index 87d9c21a..a2a756ee 100644 --- a/bump-version.sh +++ b/bump-version.sh @@ -32,6 +32,8 @@ VERSIONED_FILES=( "viridian/algae/sources/version.py" \ "viridian/algae/setup/whirlpool.py" \ "viridian/reef/common_library/Cargo.toml" \ + "viridian/reef/nm_plugin/conanfile.py" \ + "viridian/reef/nm_plugin/meson.build" \ "viridian/reef/shared_library/Cargo.toml" \ "viridian/reef/standalone_executable/Cargo.toml" \ "viridian/reef/test_library/Cargo.toml" \ @@ -69,4 +71,5 @@ done for file in "${VERSIONED_FILES[@]}" ; do sed -i -e "s/\"$CURRENT_VERSION\"/\"$NEW_VERSION\"/g" "$file" + sed -i -e "s/\'$CURRENT_VERSION\'/\'$NEW_VERSION\'/g" "$file" done diff --git a/viridian/reef/nm_plugin/Dockerfile b/viridian/reef/nm_plugin/Dockerfile new file mode 100644 index 00000000..bdcba879 --- /dev/null +++ b/viridian/reef/nm_plugin/Dockerfile @@ -0,0 +1,4 @@ +FROM registry.freedesktop.org/networkmanager/networkmanager/fedora/42:tag-c1c23df75dda AS builder + + +ENTRYPOINT [ "sh" ] diff --git a/viridian/reef/nm_plugin/Makefile b/viridian/reef/nm_plugin/Makefile index 078e4d25..19bb4ed2 100644 --- a/viridian/reef/nm_plugin/Makefile +++ b/viridian/reef/nm_plugin/Makefile @@ -6,7 +6,8 @@ SHELL := /bin/bash .SHELLFLAGS := -c -e BUILD_TYPE := debug -RUNNING_IN_DOCKER := false + +VIRIDIAN_DIR := $(shell realpath "$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))/../../") help: @ # Print available make target information @@ -15,175 +16,27 @@ help: -# Compilation flags: - -GCC_COMPILATION_FLAGS_BASE := -ifeq ($(BUILD_TYPE),debug) - GCC_COMPILATION_FLAGS_BASE := $(GCC_COMPILATION_FLAGS_BASE) -Og -endif -GCC_COMPILATION_FLAGS := $(GCC_COMPILATION_FLAGS_BASE) -Wall -Wextra -Wpedantic -Wshadow -Wpointer-arith -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wformat=2 -Werror - -RAW_GCC_FLAGS_GLIB := $(shell pkg-config --cflags --libs glib-2.0) -GCC_FLAGS_GLIB := $(GCC_COMPILATION_FLAGS_BASE) $(RAW_GCC_FLAGS_GLIB:-I%=-isystem %) - -RAW_GCC_FLAGS_LIBNM := $(shell pkg-config --cflags --libs libnm) -GCC_FLAGS_LIBNM := $(GCC_COMPILATION_FLAGS) $(RAW_GCC_FLAGS_LIBNM:-I%=-isystem %) - -RAW_GCC_FLAGS_GTK3 := $(shell pkg-config --cflags --libs libnm gtk+-3.0) -GCC_FLAGS_GTK3 := $(GCC_COMPILATION_FLAGS) $(RAW_GCC_FLAGS_GTK3:-I%=-isystem %) - -RAW_GCC_FLAGS_GTK4 := $(shell pkg-config --cflags --libs libnm gtk4) -GCC_FLAGS_GTK4 := $(GCC_COMPILATION_FLAGS) $(RAW_GCC_FLAGS_GTK4:-I%=-isystem %) - -RAW_GCC_FLAGS_LIBSECRET := $(shell pkg-config --cflags --libs libnm libsecret-1) -GCC_FLAGS_LIBSECRET := $(GCC_COMPILATION_FLAGS) $(RAW_GCC_FLAGS_LIBSECRET:-I%=-isystem %) - - - -# Building and setting up system: - -BUILD_ARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) - -PLUGIN_NAME := seasidevpn -SERVICE_NAME := org.freedesktop.NetworkManager.$(PLUGIN_NAME) - -LIB_DIR := /usr/lib/NetworkManager/VPN -BIN_DIR := /usr/lib/$(BUILD_ARCH) -PLUGIN_DIR := $(BIN_DIR)/NetworkManager -SERVICE_DIR := /usr/libexec -NM_DBUS_DIR := /usr/share/dbus-1/system.d -PLUGIN_INTERFACE_BASE := $(PLUGIN_DIR)/libnm-vpn-editor-$(PLUGIN_NAME) - -VIRIDIAN_DIR := ../.. -REEF_DIR := $(VIRIDIAN_DIR)/reef -NM_CONFIGURATION_DIR := configuration -NM_INCLUDE_DIR := include -NM_PLUGIN_DIR := plugin -NM_EDITOR_DIR := editor -NM_BUILD_DIR := build -NM_BIN_DIR := $(REEF_DIR)/target/$(BUILD_TYPE) -SHARED_LIBRARY := $(REEF_DIR)/shared_library/include - -INSTALL_BIN := $(BIN_DIR)/libseaside.so -INSTALL_PLUGIN := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-service -INSTALL_NAME := $(LIB_DIR)/nm-$(PLUGIN_NAME)-service.name -INSTALL_CONF := $(NM_DBUS_DIR)/nm-$(PLUGIN_NAME)-service.conf -INSTALL_EDITOR := $(PLUGIN_DIR)/libnm-vpn-plugin-$(PLUGIN_NAME).so -INSTALL_INTERFACE_GTK3 := $(PLUGIN_INTERFACE_BASE)-gtk3.so -INSTALL_INTERFACE_GTK4 := $(PLUGIN_INTERFACE_BASE)-gtk4.so -INSTALL_DIALOG := $(SERVICE_DIR)/nm-$(PLUGIN_NAME)-auth-dialog - -EXTRA_FLAGS := -DSEASIDE_PLUGIN_SERVICE="\"$(SERVICE_NAME)\"" -DEDITOR_INTERFACE_PATH="\"$(PLUGIN_INTERFACE_BASE)\"" -EDITOR_PLUGIN_INCLUDES := -I$(SHARED_LIBRARY) -I$(NM_INCLUDE_DIR) - -CLANG_CONFIGURATION_FILE := $(VIRIDIAN_DIR)/.clang-tidy -CLANG_FORMATTING_FILE := $(VIRIDIAN_DIR)/.clang-format - -CLANG_COMPILER_ARGS := -fno-caret-diagnostics -CLANG_STATIC_ANALYSIS_ARGS := --config-file=$(CLANG_CONFIGURATION_FILE) --quiet -CLANG_FORMATTING_ARGS := --Werror --sort-includes --style=file:$(CLANG_FORMATTING_FILE) **/*.c **/*.h - - - -# Build accessories: - -create-build-directory: - @ # Ensure build directory exists - mkdir -p $(NM_BUILD_DIR) -.PHONY: create-build-directory - -$(SHARED_LIBRARY)/seaside.h: - @ # Compile rust shared library - $(MAKE) -C $(REEF_DIR) -s --no-print-directory build-lib - -$(NM_INCLUDE_DIR)/common.h: $(SHARED_LIBRARY)/seaside.h - @ # The common header depends on the rust shared library - -$(NM_BUILD_DIR)/resources.gen.c: $(NM_EDITOR_DIR)/gresource.xml | create-build-directory - @ # Generate GLib resources source file - glib-compile-resources $< --sourcedir=$(NM_EDITOR_DIR) --target=$@ --generate-source - - - -# Compile C wrappers: - -$(NM_BUILD_DIR)/resources.gen.o: $(NM_BUILD_DIR)/resources.gen.c | create-build-directory - @ - gcc -c $< -o $@ $(GCC_FLAGS_GLIB) - -$(NM_BUILD_DIR)/auth_dialog.o: $(NM_EDITOR_DIR)/auth_dialog.c | create-build-directory - @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(GCC_FLAGS_LIBSECRET) $(CLANG_COMPILER_ARGS) - gcc -fPIC -c $< -o $@ $(GCC_FLAGS_LIBSECRET) - -$(NM_BUILD_DIR)/editor.o: $(NM_EDITOR_DIR)/editor.c $(NM_EDITOR_DIR)/editor.h $(NM_INCLUDE_DIR)/common.h | create-build-directory - @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) $(CLANG_COMPILER_ARGS) - gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) - -$(NM_BUILD_DIR)/interface_gtk3.o: $(NM_EDITOR_DIR)/interface_gtk3.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory - @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) $(CLANG_COMPILER_ARGS) - gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK3) - -$(NM_BUILD_DIR)/interface_gtk4.o: $(NM_EDITOR_DIR)/interface_gtk4.c $(NM_EDITOR_DIR)/interface.h $(NM_EDITOR_DIR)/editor.h | create-build-directory - @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) $(CLANG_COMPILER_ARGS) - gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_GTK4) - -$(NM_BUILD_DIR)/plugin.o: $(NM_PLUGIN_DIR)/plugin.c $(NM_PLUGIN_DIR)/plugin.h $(SHARED_LIBRARY)/seaside.h $(NM_INCLUDE_DIR)/common.h | create-build-directory - @ - clang-tidy $(CLANG_STATIC_ANALYSIS_ARGS) $< -- $(EDITOR_PLUGIN_INCLUDES) $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) $(CLANG_COMPILER_ARGS) - gcc -fPIC $(EDITOR_PLUGIN_INCLUDES) -c $< -o $@ $(EXTRA_FLAGS) $(GCC_FLAGS_LIBNM) - +# Build: +.clang-%: + cp $(VIRIDIAN_DIR)/$@ $@ -# Link C wrappers: - -$(NM_BUILD_DIR)/auth_dialog: $(NM_BUILD_DIR)/auth_dialog.o - @ - gcc $^ -o $@ $(GCC_FLAGS_LIBSECRET) - -$(NM_BUILD_DIR)/editor.so: $(NM_BUILD_DIR)/editor.o - @ - gcc -shared $^ -o $@ $(GCC_FLAGS_LIBNM) - -$(NM_BUILD_DIR)/interface-gtk3.so: $(NM_BUILD_DIR)/interface_gtk3.o $(NM_BUILD_DIR)/resources.gen.o - @ - gcc -shared $^ -o $@ $(GCC_FLAGS_GTK3) - -$(NM_BUILD_DIR)/interface-gtk4.so: $(NM_BUILD_DIR)/interface_gtk4.o $(NM_BUILD_DIR)/resources.gen.o - @ - gcc -shared $^ -o $@ $(GCC_FLAGS_GTK4) - -$(NM_BUILD_DIR)/plugin: $(NM_BUILD_DIR)/plugin.o - @ - gcc $^ -o $@ $(GCC_FLAGS_LIBNM) +build: .clang-format .clang-tidy + @ # Build network manager reef plugin + meson setup --clearcache --reconfigure build + meson compile -C build -# Build everything: +# Lint and format: -editor-build: $(NM_BUILD_DIR)/auth_dialog $(NM_BUILD_DIR)/editor.so $(NM_BUILD_DIR)/interface-gtk3.so $(NM_BUILD_DIR)/interface-gtk4.so - @ -.PHONY: editor-build +lint: build + ninja -C build clang-format +.PHONY: lint -plugin-build: $(NM_BUILD_DIR)/plugin - @ -.PHONY: plugin-build - -config-build: create-build-directory - @ # Build network manager reef configuration - sed "s|SEASIDE-PLUGIN-NAME|$(PLUGIN_NAME)|" $(NM_CONFIGURATION_DIR)/descriptor.ini > $(NM_BUILD_DIR)/descriptor.ini.gen - sed -i "s|DBUS-SERVICE-NAME|$(SERVICE_NAME)|" $(NM_BUILD_DIR)/descriptor.ini.gen - sed -i "s|PATH-TO-SEASIDEVPN-PLUGIN|$(INSTALL_PLUGIN)|" $(NM_BUILD_DIR)/descriptor.ini.gen - sed -i "s|PATH-TO-SEASIDEVPN-EDITOR|$(INSTALL_EDITOR)|" $(NM_BUILD_DIR)/descriptor.ini.gen - sed -i "s|SEASIDE-AUTH-DIALOG|$(INSTALL_DIALOG)|" $(NM_BUILD_DIR)/descriptor.ini.gen -.PHONY: config-build - -build: editor-build plugin-build config-build - @ # Build network manager reef plugin -.PHONY: build +tidy: build + ninja -C build clang-tidy +.PHONY: tidy @@ -216,17 +69,13 @@ endif -# Lint C sources: +# Test: -lint: - @ - clang-format --dry-run $(CLANG_FORMATTING_ARGS) -.PHONY: lint - -format: - @ - clang-format -i $(CLANG_FORMATTING_ARGS) -.PHONY: format +test: + docker pull registry.freedesktop.org/networkmanager/networkmanager/fedora/42:tag-c1c23df75dda + docker build -f Dockerfile --target builder -t seaside-reef-nm-plugin-test .. + docker run -it --privileged --rm --name seaside-reef-nm-plugin-test --sysctl net.ipv6.conf.all.disable_ipv6=1 seaside-reef-nm-plugin-test +.PHONY: test diff --git a/viridian/reef/nm_plugin/configuration/descriptor.ini b/viridian/reef/nm_plugin/conf/descriptor.ini similarity index 100% rename from viridian/reef/nm_plugin/configuration/descriptor.ini rename to viridian/reef/nm_plugin/conf/descriptor.ini diff --git a/viridian/reef/nm_plugin/configuration/service.conf b/viridian/reef/nm_plugin/conf/service.conf similarity index 100% rename from viridian/reef/nm_plugin/configuration/service.conf rename to viridian/reef/nm_plugin/conf/service.conf diff --git a/viridian/reef/nm_plugin/meson.build b/viridian/reef/nm_plugin/meson.build new file mode 100644 index 00000000..7c5f5c49 --- /dev/null +++ b/viridian/reef/nm_plugin/meson.build @@ -0,0 +1,141 @@ +project('nm-seasidevpn-plugin', 'c', version : '0.0.4', default_options : ['warning_level=everything', 'werror=false', 'buildtype=debug']) + +fs = import('fs') +gnome = import('gnome') + +cc = meson.get_compiler('c') +pkgconfig = find_program('pkg-config') +clang_format = find_program('clang-format') +clang_tidy = find_program('clang-tidy') + +plugin_name = 'seasidevpn' +service_name = 'org.freedesktop.NetworkManager.' + plugin_name + +viridian_dir = '../..' +reef_dir = viridian_dir / 'reef' +shared_library_dir = reef_dir / 'shared_library' / 'include' +seaside_h_path = shared_library_dir / 'seaside.h' + +if not fs.exists(seaside_h_path) + error('seaside.h header is missing. Ensure it is present before building.') +endif + +base_flags = [] +if get_option('buildtype') == 'debug' + base_flags += '-Og' +endif + +add_project_arguments(base_flags, language : 'c') + +glib_dep = dependency('glib-2.0', include_type: 'system') +libnm_dep = dependency('libnm', include_type: 'system') +gtk3_dep = dependency('gtk+-3.0', include_type: 'system') +gtk4_dep = dependency('gtk4', include_type: 'system') +libsecret_dep = dependency('libsecret-1', include_type: 'system') + +libnm_deps = [glib_dep, libnm_dep] +gtk3_deps = [glib_dep, libnm_dep, gtk3_dep] +gtk4_deps = [glib_dep, libnm_dep, gtk4_dep] +libsecret_deps = [libnm_dep, libsecret_dep] + +nm_inc = include_directories('src') +shared_lib_inc = include_directories(shared_library_dir) +editor_plugin_includes = [shared_lib_inc, nm_inc] + +nm_libdir = get_option('libdir') / 'NetworkManager' +plugin_interface_base = get_option('prefix') / nm_libdir / 'libnm-vpn-editor-@0@'.format(plugin_name) + +extra_flags = [ + '-DSEASIDE_PLUGIN_SERVICE="@0@"'.format(service_name), + '-DEDITOR_INTERFACE_PATH="@0@"'.format(plugin_interface_base) +] + + +# Compile resources: + +gresources = gnome.compile_resources( + 'resources', + 'res/gresource.xml', + source_dir : 'res', + c_name : 'resources' +) + + +# Compile auth-dialog executable: + +auth_dialog = executable('nm-@0@-auth-dialog'.format(plugin_name), + 'src/auth_dialog.c', + dependencies : libsecret_deps, + install : true, + install_dir : get_option('libexecdir') +) + +editor = shared_library('nm-vpn-plugin-@0@'.format(plugin_name), + 'src/editor.c', + include_directories : editor_plugin_includes, + dependencies : libnm_deps, + c_args : extra_flags, + install : true, + install_dir : nm_libdir +) + +interface_gtk3 = shared_library('nm-vpn-editor-@0@-gtk3'.format(plugin_name), + ['src/interface_gtk3.c', gresources], + include_directories : editor_plugin_includes, + dependencies : gtk3_deps, + c_args : extra_flags, + install : true, + install_dir : nm_libdir +) + +interface_gtk4 = shared_library('nm-vpn-editor-@0@-gtk4'.format(plugin_name), + ['src/interface_gtk4.c', gresources], + include_directories : editor_plugin_includes, + dependencies : gtk4_deps, + c_args : extra_flags, + install : true, + install_dir : nm_libdir +) + +plugin = executable('nm-@0@-service'.format(plugin_name), + 'src/plugin.c', + include_directories : editor_plugin_includes, + dependencies : libnm_deps, + c_args : extra_flags, + install : true, + install_dir : get_option('libexecdir') +) + +libseaside_path = reef_dir / 'target' / get_option('buildtype') / 'libseaside.so' +if fs.exists(libseaside_path) + install_data(libseaside_path, + install_dir : get_option('libdir') + ) +else + warning('libseaside.so not found; skipping installation. Ensure it is built separately if needed.') +endif + +conf_data = configuration_data() +conf_data.set('SEASIDE-PLUGIN-NAME', plugin_name) +conf_data.set('DBUS-SERVICE-NAME', service_name) +conf_data.set('PATH-TO-SEASIDEVPN-PLUGIN', get_option('prefix') / get_option('libexecdir') / 'nm-@0@-service'.format(plugin_name)) +conf_data.set('PATH-TO-SEASIDEVPN-EDITOR', get_option('prefix') / nm_libdir / 'libnm-vpn-plugin-@0@.so'.format(plugin_name)) +conf_data.set('SEASIDE-AUTH-DIALOG', get_option('prefix') / get_option('libexecdir') / 'nm-@0@-auth-dialog'.format(plugin_name)) + +configure_file( + input : 'conf/descriptor.ini', + output : 'nm-@0@-service.name'.format(plugin_name), + configuration : conf_data, + install : true, + install_dir : get_option('prefix') / 'lib' / 'NetworkManager' / 'VPN' +) + +install_data('conf/service.conf', + install_dir : get_option('datadir') / 'dbus-1' / 'system.d', + rename : 'nm-@0@-service.conf'.format(plugin_name) +) + +run_target('package', + command : ['meson', 'dist', '--formats', 'gztar'], + depends : [auth_dialog, editor, interface_gtk3, interface_gtk4, plugin] +) diff --git a/viridian/reef/nm_plugin/editor/dialog_gtk3.ui b/viridian/reef/nm_plugin/res/dialog_gtk3.ui similarity index 100% rename from viridian/reef/nm_plugin/editor/dialog_gtk3.ui rename to viridian/reef/nm_plugin/res/dialog_gtk3.ui diff --git a/viridian/reef/nm_plugin/editor/dialog_gtk4.ui b/viridian/reef/nm_plugin/res/dialog_gtk4.ui similarity index 100% rename from viridian/reef/nm_plugin/editor/dialog_gtk4.ui rename to viridian/reef/nm_plugin/res/dialog_gtk4.ui diff --git a/viridian/reef/nm_plugin/editor/gresource.xml b/viridian/reef/nm_plugin/res/gresource.xml similarity index 100% rename from viridian/reef/nm_plugin/editor/gresource.xml rename to viridian/reef/nm_plugin/res/gresource.xml diff --git a/viridian/reef/nm_plugin/editor/auth_dialog.c b/viridian/reef/nm_plugin/src/auth_dialog.c similarity index 100% rename from viridian/reef/nm_plugin/editor/auth_dialog.c rename to viridian/reef/nm_plugin/src/auth_dialog.c diff --git a/viridian/reef/nm_plugin/include/common.h b/viridian/reef/nm_plugin/src/common.h similarity index 100% rename from viridian/reef/nm_plugin/include/common.h rename to viridian/reef/nm_plugin/src/common.h diff --git a/viridian/reef/nm_plugin/editor/editor.c b/viridian/reef/nm_plugin/src/editor.c similarity index 100% rename from viridian/reef/nm_plugin/editor/editor.c rename to viridian/reef/nm_plugin/src/editor.c diff --git a/viridian/reef/nm_plugin/editor/editor.h b/viridian/reef/nm_plugin/src/editor.h similarity index 100% rename from viridian/reef/nm_plugin/editor/editor.h rename to viridian/reef/nm_plugin/src/editor.h diff --git a/viridian/reef/nm_plugin/editor/interface.h b/viridian/reef/nm_plugin/src/interface.h similarity index 100% rename from viridian/reef/nm_plugin/editor/interface.h rename to viridian/reef/nm_plugin/src/interface.h diff --git a/viridian/reef/nm_plugin/editor/interface_gtk3.c b/viridian/reef/nm_plugin/src/interface_gtk3.c similarity index 100% rename from viridian/reef/nm_plugin/editor/interface_gtk3.c rename to viridian/reef/nm_plugin/src/interface_gtk3.c diff --git a/viridian/reef/nm_plugin/editor/interface_gtk4.c b/viridian/reef/nm_plugin/src/interface_gtk4.c similarity index 100% rename from viridian/reef/nm_plugin/editor/interface_gtk4.c rename to viridian/reef/nm_plugin/src/interface_gtk4.c diff --git a/viridian/reef/nm_plugin/plugin/plugin.c b/viridian/reef/nm_plugin/src/plugin.c similarity index 100% rename from viridian/reef/nm_plugin/plugin/plugin.c rename to viridian/reef/nm_plugin/src/plugin.c diff --git a/viridian/reef/nm_plugin/plugin/plugin.h b/viridian/reef/nm_plugin/src/plugin.h similarity index 100% rename from viridian/reef/nm_plugin/plugin/plugin.h rename to viridian/reef/nm_plugin/src/plugin.h From 4512e8674a7248f920a642ba7e039b406c28af43 Mon Sep 17 00:00:00 2001 From: pseusys Date: Tue, 25 Nov 2025 05:14:37 +0100 Subject: [PATCH 36/67] updated definitions --- viridian/reef/nm_plugin/Makefile | 4 ++++ viridian/reef/nm_plugin/meson.build | 27 ++++++++++++++------------- 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/viridian/reef/nm_plugin/Makefile b/viridian/reef/nm_plugin/Makefile index 19bb4ed2..902e4f5e 100644 --- a/viridian/reef/nm_plugin/Makefile +++ b/viridian/reef/nm_plugin/Makefile @@ -38,6 +38,10 @@ tidy: build ninja -C build clang-tidy .PHONY: tidy +format: build + ninja -C build clang-tidy-fix +.PHONY: format + # Install and run the artifacts: diff --git a/viridian/reef/nm_plugin/meson.build b/viridian/reef/nm_plugin/meson.build index 7c5f5c49..cbddff31 100644 --- a/viridian/reef/nm_plugin/meson.build +++ b/viridian/reef/nm_plugin/meson.build @@ -20,7 +20,7 @@ if not fs.exists(seaside_h_path) error('seaside.h header is missing. Ensure it is present before building.') endif -base_flags = [] +base_flags = ['-Wno-padded', '-Wno-c++-compat'] if get_option('buildtype') == 'debug' base_flags += '-Og' endif @@ -33,11 +33,6 @@ gtk3_dep = dependency('gtk+-3.0', include_type: 'system') gtk4_dep = dependency('gtk4', include_type: 'system') libsecret_dep = dependency('libsecret-1', include_type: 'system') -libnm_deps = [glib_dep, libnm_dep] -gtk3_deps = [glib_dep, libnm_dep, gtk3_dep] -gtk4_deps = [glib_dep, libnm_dep, gtk4_dep] -libsecret_deps = [libnm_dep, libsecret_dep] - nm_inc = include_directories('src') shared_lib_inc = include_directories(shared_library_dir) editor_plugin_includes = [shared_lib_inc, nm_inc] @@ -60,12 +55,18 @@ gresources = gnome.compile_resources( c_name : 'resources' ) +greslib = static_library( + 'gresources', + gresources, + override_options : ['warning_level=0'] +) + # Compile auth-dialog executable: auth_dialog = executable('nm-@0@-auth-dialog'.format(plugin_name), 'src/auth_dialog.c', - dependencies : libsecret_deps, + dependencies : [libnm_dep, libsecret_dep], install : true, install_dir : get_option('libexecdir') ) @@ -73,25 +74,25 @@ auth_dialog = executable('nm-@0@-auth-dialog'.format(plugin_name), editor = shared_library('nm-vpn-plugin-@0@'.format(plugin_name), 'src/editor.c', include_directories : editor_plugin_includes, - dependencies : libnm_deps, + dependencies : [glib_dep, libnm_dep], c_args : extra_flags, install : true, install_dir : nm_libdir ) interface_gtk3 = shared_library('nm-vpn-editor-@0@-gtk3'.format(plugin_name), - ['src/interface_gtk3.c', gresources], + 'src/interface_gtk3.c', include_directories : editor_plugin_includes, - dependencies : gtk3_deps, + dependencies : [glib_dep, libnm_dep, gtk3_dep, greslib], c_args : extra_flags, install : true, install_dir : nm_libdir ) interface_gtk4 = shared_library('nm-vpn-editor-@0@-gtk4'.format(plugin_name), - ['src/interface_gtk4.c', gresources], + 'src/interface_gtk4.c', include_directories : editor_plugin_includes, - dependencies : gtk4_deps, + dependencies : [glib_dep, libnm_dep, gtk4_dep, greslib], c_args : extra_flags, install : true, install_dir : nm_libdir @@ -100,7 +101,7 @@ interface_gtk4 = shared_library('nm-vpn-editor-@0@-gtk4'.format(plugin_name), plugin = executable('nm-@0@-service'.format(plugin_name), 'src/plugin.c', include_directories : editor_plugin_includes, - dependencies : libnm_deps, + dependencies : [glib_dep, libnm_dep], c_args : extra_flags, install : true, install_dir : get_option('libexecdir') From c44581a429d77b83d4d592c2d8dd8b649d69ea28 Mon Sep 17 00:00:00 2001 From: pseusys Date: Thu, 27 Nov 2025 03:49:17 +0100 Subject: [PATCH 37/67] build with meson --- .gitignore | 6 +- viridian/reef/Makefile | 4 +- viridian/reef/nm_plugin/.clang-format | 1 + viridian/reef/nm_plugin/.clang-tidy | 4 + viridian/reef/nm_plugin/Makefile | 63 ++++++------ viridian/reef/nm_plugin/meson.build | 100 +++++++++++-------- viridian/reef/nm_plugin/src/auth_dialog.c | 8 +- viridian/reef/nm_plugin/src/common.h | 7 +- viridian/reef/nm_plugin/src/editor.c | 16 +-- viridian/reef/nm_plugin/src/interface_gtk3.c | 2 +- viridian/reef/nm_plugin/src/interface_gtk4.c | 2 +- viridian/reef/nm_plugin/src/plugin.c | 6 +- viridian/reef/shared_library/cbindgen.toml | 4 + viridian/reef/shared_library/lib/mod.rs | 23 ++++- 14 files changed, 148 insertions(+), 98 deletions(-) create mode 100644 viridian/reef/nm_plugin/.clang-format create mode 100644 viridian/reef/nm_plugin/.clang-tidy diff --git a/.gitignore b/.gitignore index b1abdf68..8f9f7652 100644 --- a/.gitignore +++ b/.gitignore @@ -98,7 +98,5 @@ viridian/reef/wintun-source/ # C and C++: ## Binary build: -viridian/reef/nm_plugin/build - -## Configuration files: -viridian/reef/nm_plugin/.clang-* +viridian/reef/nm_plugin/.build +viridian/reef/nm_plugin/dist diff --git a/viridian/reef/Makefile b/viridian/reef/Makefile index 63ed5370..a2c7198d 100644 --- a/viridian/reef/Makefile +++ b/viridian/reef/Makefile @@ -31,9 +31,9 @@ build-shared-library: build-standalone-executable: @ # Build standalone reef executable TODO: add feature strict, checking warnings, docs, removing debug info $(MAKE) -C $(STANDALONE_EXECUTABLE_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build -.PHONY: build-shared-library +.PHONY: build-standalone-executable -build: build-shared-library build-standalone-executable: +build: build-shared-library build-standalone-executable .PHONY: build diff --git a/viridian/reef/nm_plugin/.clang-format b/viridian/reef/nm_plugin/.clang-format new file mode 100644 index 00000000..0be56514 --- /dev/null +++ b/viridian/reef/nm_plugin/.clang-format @@ -0,0 +1 @@ +BasedOnStyle: InheritParentConfig diff --git a/viridian/reef/nm_plugin/.clang-tidy b/viridian/reef/nm_plugin/.clang-tidy new file mode 100644 index 00000000..7ccaaa38 --- /dev/null +++ b/viridian/reef/nm_plugin/.clang-tidy @@ -0,0 +1,4 @@ +Checks: > + -clang-diagnostic-unused-macros + +InheritParentConfig: true diff --git a/viridian/reef/nm_plugin/Makefile b/viridian/reef/nm_plugin/Makefile index 902e4f5e..64aba44d 100644 --- a/viridian/reef/nm_plugin/Makefile +++ b/viridian/reef/nm_plugin/Makefile @@ -6,8 +6,11 @@ SHELL := /bin/bash .SHELLFLAGS := -c -e BUILD_TYPE := debug +RUNNING_IN_DOCKER := false +SERVICE_INSTALL_DIR := /usr/libexec VIRIDIAN_DIR := $(shell realpath "$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))/../../") +DISTRIBUTION_DIR := $(VIRIDIAN_DIR)/reef/nm_plugin/dist help: @ # Print available make target information @@ -18,44 +21,37 @@ help: # Build: -.clang-%: - cp $(VIRIDIAN_DIR)/$@ $@ +.build: + meson setup --clearcache --reconfigure $@ + cp $(VIRIDIAN_DIR)/reef/shared_library/include/seaside.h $@/seaside.h -build: .clang-format .clang-tidy +build: .build @ # Build network manager reef plugin - meson setup --clearcache --reconfigure build - meson compile -C build + ninja -C $< --quiet +.PHONY: build # Lint and format: -lint: build - ninja -C build clang-format -.PHONY: lint - -tidy: build - ninja -C build clang-tidy +tidy: .build + # @ # Lint C code with clang-tidy + export CLANG_TIDY_OPTIONS="-checks=*,-clang-diagnostic-unused-macros" + ninja -C $< clang-tidy --quiet .PHONY: tidy -format: build - ninja -C build clang-tidy-fix -.PHONY: format +lint: .build tidy + # @ # Lint C code with clang-format + ninja -C $< clang-format --quiet +.PHONY: lint # Install and run the artifacts: -install: build +install: .build @ # Install network manager reef plugin - sudo install -D -m 755 $(NM_BUILD_DIR)/plugin $(INSTALL_PLUGIN) - sudo install -D -m 644 $(NM_BUILD_DIR)/descriptor.ini.gen $(INSTALL_NAME) - sudo install -D -m 644 $(NM_CONFIGURATION_DIR)/service.conf $(INSTALL_CONF) - sudo install -D -m 644 $(NM_BUILD_DIR)/editor.so $(INSTALL_EDITOR) - sudo install -D -m 644 $(NM_BUILD_DIR)/interface-gtk3.so $(INSTALL_INTERFACE_GTK3) - sudo install -D -m 644 $(NM_BUILD_DIR)/interface-gtk4.so $(INSTALL_INTERFACE_GTK4) - sudo install -D -m 755 $(NM_BUILD_DIR)/auth_dialog $(INSTALL_DIALOG) - sudo install -D -m 644 $(NM_BIN_DIR)/libseaside.so $(INSTALL_BIN) + sudo ninja -C $< install ifneq ($(RUNNING_IN_DOCKER),true) sudo systemctl restart NetworkManager endif @@ -63,19 +59,28 @@ endif run: install @ - cd $(SERVICE_DIR) ifeq ($(BUILD_TYPE),debug) - sudo -E G_MESSAGES_DEBUG=all ./nm-$(PLUGIN_NAME)-service + sudo -E G_MESSAGES_DEBUG=all $(SERVICE_INSTALL_DIR)/nm-$(PLUGIN_NAME)-service else - sudo ./nm-$(PLUGIN_NAME)-service + sudo $(SERVICE_INSTALL_DIR)/nm-$(PLUGIN_NAME)-service endif -.PHONY: install +.PHONY: run + + + +# Package the artifacts: + +package: .build + export DESTDIR=$(DISTRIBUTION_DIR) + ninja install -C $< install --quiet +.PHONY: package # Test: test: + @ # TODO: run tests in Docker!!! docker pull registry.freedesktop.org/networkmanager/networkmanager/fedora/42:tag-c1c23df75dda docker build -f Dockerfile --target builder -t seaside-reef-nm-plugin-test .. docker run -it --privileged --rm --name seaside-reef-nm-plugin-test --sysctl net.ipv6.conf.all.disable_ipv6=1 seaside-reef-nm-plugin-test @@ -86,7 +91,7 @@ test: # Artifact cleaning: clean: - @ # Clean network manager plugin build artifacts - rm -rf $(NM_BUILD_DIR) + @ # Clean network manager plugin build artifacts, TODO: delete installed artifacts!!! + rm -rf .build dist sudo rm -f $(INSTALL_PLUGIN) $(INSTALL_NAME) $(INSTALL_CONF) $(INSTALL_EDITOR) $(INSTALL_INTERFACE_GTK3) $(INSTALL_INTERFACE_GTK4) $(INSTALL_DIALOG) $(INSTALL_BIN) .PHONY: clean diff --git a/viridian/reef/nm_plugin/meson.build b/viridian/reef/nm_plugin/meson.build index cbddff31..afa8a47a 100644 --- a/viridian/reef/nm_plugin/meson.build +++ b/viridian/reef/nm_plugin/meson.build @@ -1,4 +1,4 @@ -project('nm-seasidevpn-plugin', 'c', version : '0.0.4', default_options : ['warning_level=everything', 'werror=false', 'buildtype=debug']) +project('nm-seasidevpn-plugin', 'c', version : '0.0.4', default_options : ['prefix=/usr', 'warning_level=everything', 'werror=false', 'buildtype=debug']) fs = import('fs') gnome = import('gnome') @@ -8,17 +8,14 @@ pkgconfig = find_program('pkg-config') clang_format = find_program('clang-format') clang_tidy = find_program('clang-tidy') -plugin_name = 'seasidevpn' -service_name = 'org.freedesktop.NetworkManager.' + plugin_name +glib_dep = dependency('glib-2.0', include_type: 'system') +libnm_dep = dependency('libnm', include_type: 'system') +gtk3_dep = dependency('gtk+-3.0', include_type: 'system') +gtk4_dep = dependency('gtk4', include_type: 'system') +libsecret_dep = dependency('libsecret-1', include_type: 'system') -viridian_dir = '../..' -reef_dir = viridian_dir / 'reef' -shared_library_dir = reef_dir / 'shared_library' / 'include' -seaside_h_path = shared_library_dir / 'seaside.h' -if not fs.exists(seaside_h_path) - error('seaside.h header is missing. Ensure it is present before building.') -endif +# Prepare C building flags: base_flags = ['-Wno-padded', '-Wno-c++-compat'] if get_option('buildtype') == 'debug' @@ -27,15 +24,11 @@ endif add_project_arguments(base_flags, language : 'c') -glib_dep = dependency('glib-2.0', include_type: 'system') -libnm_dep = dependency('libnm', include_type: 'system') -gtk3_dep = dependency('gtk+-3.0', include_type: 'system') -gtk4_dep = dependency('gtk4', include_type: 'system') -libsecret_dep = dependency('libsecret-1', include_type: 'system') -nm_inc = include_directories('src') -shared_lib_inc = include_directories(shared_library_dir) -editor_plugin_includes = [shared_lib_inc, nm_inc] +# Prepare code definitions, names and paths: + +plugin_name = 'seasidevpn' +service_name = 'org.freedesktop.NetworkManager.' + plugin_name nm_libdir = get_option('libdir') / 'NetworkManager' plugin_interface_base = get_option('prefix') / nm_libdir / 'libnm-vpn-editor-@0@'.format(plugin_name) @@ -46,7 +39,7 @@ extra_flags = [ ] -# Compile resources: +# Compile and create static library for resources: gresources = gnome.compile_resources( 'resources', @@ -58,6 +51,7 @@ gresources = gnome.compile_resources( greslib = static_library( 'gresources', gresources, + dependencies : [glib_dep], override_options : ['warning_level=0'] ) @@ -68,54 +62,80 @@ auth_dialog = executable('nm-@0@-auth-dialog'.format(plugin_name), 'src/auth_dialog.c', dependencies : [libnm_dep, libsecret_dep], install : true, - install_dir : get_option('libexecdir') + install_dir : get_option('libexecdir'), + install_mode : 'rwxr-xr-x' ) + +# Compile editor shared library: + editor = shared_library('nm-vpn-plugin-@0@'.format(plugin_name), 'src/editor.c', - include_directories : editor_plugin_includes, + include_directories : include_directories('src'), dependencies : [glib_dep, libnm_dep], c_args : extra_flags, install : true, - install_dir : nm_libdir + install_dir : nm_libdir, + install_mode : 'rw-r--r--' ) + +# Compile editor GUI for GTK3 shared library: + interface_gtk3 = shared_library('nm-vpn-editor-@0@-gtk3'.format(plugin_name), 'src/interface_gtk3.c', - include_directories : editor_plugin_includes, - dependencies : [glib_dep, libnm_dep, gtk3_dep, greslib], + include_directories : include_directories('src'), + dependencies : [glib_dep, libnm_dep, gtk3_dep], + link_with : [greslib], c_args : extra_flags, install : true, - install_dir : nm_libdir + install_dir : nm_libdir, + install_mode : 'rw-r--r--' ) + +# Compile editor GUI for GTK4 shared library: + interface_gtk4 = shared_library('nm-vpn-editor-@0@-gtk4'.format(plugin_name), 'src/interface_gtk4.c', - include_directories : editor_plugin_includes, - dependencies : [glib_dep, libnm_dep, gtk4_dep, greslib], + include_directories : include_directories('src'), + dependencies : [glib_dep, libnm_dep, gtk4_dep], + link_with : [greslib], c_args : extra_flags, install : true, - install_dir : nm_libdir + install_dir : nm_libdir, + install_mode : 'rw-r--r--' ) + +# Compile DBUS plugin executable: + plugin = executable('nm-@0@-service'.format(plugin_name), 'src/plugin.c', - include_directories : editor_plugin_includes, + include_directories : include_directories('src'), dependencies : [glib_dep, libnm_dep], c_args : extra_flags, install : true, - install_dir : get_option('libexecdir') + install_dir : get_option('libexecdir'), + install_mode : 'rwxr-xr-x' ) -libseaside_path = reef_dir / 'target' / get_option('buildtype') / 'libseaside.so' + +# Prepare base reef shared library for installation: + +libseaside_path = '..' / '..' / 'reef' / 'target' / get_option('buildtype') / 'libseaside.so' if fs.exists(libseaside_path) install_data(libseaside_path, - install_dir : get_option('libdir') + install_dir : get_option('libdir'), + install_mode : 'rw-r--r--' ) else - warning('libseaside.so not found; skipping installation. Ensure it is built separately if needed.') + error('Reef shared library "libseaside.so" not found!') endif + +# Prepare service descriptor file for installation: + conf_data = configuration_data() conf_data.set('SEASIDE-PLUGIN-NAME', plugin_name) conf_data.set('DBUS-SERVICE-NAME', service_name) @@ -128,15 +148,15 @@ configure_file( output : 'nm-@0@-service.name'.format(plugin_name), configuration : conf_data, install : true, - install_dir : get_option('prefix') / 'lib' / 'NetworkManager' / 'VPN' + install_dir : get_option('prefix') / 'lib' / 'NetworkManager' / 'VPN', + install_mode : 'rw-r--r--' ) + +# Prepare service configuration file for installation: + install_data('conf/service.conf', install_dir : get_option('datadir') / 'dbus-1' / 'system.d', - rename : 'nm-@0@-service.conf'.format(plugin_name) -) - -run_target('package', - command : ['meson', 'dist', '--formats', 'gztar'], - depends : [auth_dialog, editor, interface_gtk3, interface_gtk4, plugin] + rename : 'nm-@0@-service.conf'.format(plugin_name), + install_mode : 'rw-r--r--' ) diff --git a/viridian/reef/nm_plugin/src/auth_dialog.c b/viridian/reef/nm_plugin/src/auth_dialog.c index 82984e71..8850502f 100644 --- a/viridian/reef/nm_plugin/src/auth_dialog.c +++ b/viridian/reef/nm_plugin/src/auth_dialog.c @@ -10,13 +10,13 @@ #include static const size_t QUIT_STRING_SIZE = 10; -static const time_t QUIT_STRING_CHAR_DELAY = 10; -static const time_t QUIT_STRING_CHAR_TIMEOUT = 20; +static const size_t QUIT_STRING_CHAR_DELAY = 10; +static const size_t QUIT_STRING_CHAR_TIMEOUT = 20; static void wait_for_quit(void) { GString* str = g_string_sized_new(QUIT_STRING_SIZE); - time_t start = time(NULL); + size_t start = (size_t) time(NULL); do { errno = 0; char character; @@ -26,7 +26,7 @@ static void wait_for_quit(void) { g_string_append_c(str, character); if (strstr(str->str, "QUIT") || (str->len > QUIT_STRING_SIZE)) break; } else break; - } while (time(NULL) < start + QUIT_STRING_CHAR_TIMEOUT); + } while ((size_t) time(NULL) < start + QUIT_STRING_CHAR_TIMEOUT); g_string_free(str, TRUE); } diff --git a/viridian/reef/nm_plugin/src/common.h b/viridian/reef/nm_plugin/src/common.h index b284fbf1..71cbd745 100644 --- a/viridian/reef/nm_plugin/src/common.h +++ b/viridian/reef/nm_plugin/src/common.h @@ -13,15 +13,12 @@ typedef unsigned int (*get_major_version_fn)(void); typedef NMVpnEditor* (*create_seaside_editor_fn)(NMConnection*, GError**); -typedef bool (*vpn_start_fn)(const char*, uintptr_t, const char*, struct VPNConfig**, void**, void*, void (*)(void*, char*), char**); -typedef bool (*vpn_stop_fn)(void*, char**); - typedef union { void* pointer; get_major_version_fn get_major_version; create_seaside_editor_fn create_seaside_editor; - vpn_start_fn vpn_start; - vpn_stop_fn vpn_stop; + VpnStartType vpn_start; + VpnStopType vpn_stop; } dll_function; diff --git a/viridian/reef/nm_plugin/src/editor.c b/viridian/reef/nm_plugin/src/editor.c index 9dc7347c..0aba2ba7 100644 --- a/viridian/reef/nm_plugin/src/editor.c +++ b/viridian/reef/nm_plugin/src/editor.c @@ -11,11 +11,7 @@ static void seaside_editor_plugin_interface_init(NMVpnEditorPluginInterface* ifa G_DEFINE_TYPE_EXTENDED(SeasideEditorPlugin, seaside_editor_plugin, G_TYPE_OBJECT, 0, G_IMPLEMENT_INTERFACE(NM_TYPE_VPN_EDITOR_PLUGIN, seaside_editor_plugin_interface_init)) -typedef enum { - NM_SEASIDE_IMPORT_EXPORT_ERROR_UNKNOWN = 0, - NM_SEASIDE_IMPORT_EXPORT_ERROR_NOT_SEASIDE, - NM_SEASIDE_IMPORT_EXPORT_ERROR_BAD_DATA, -} NMSeasideImportError; +typedef enum { NM_SEASIDE_IMPORT_EXPORT_ERROR_UNKNOWN = 0, NM_SEASIDE_IMPORT_EXPORT_ERROR_NOT_READABLE } NMSeasideImportError; // CODE: @@ -56,7 +52,7 @@ static NMVpnEditor* get_editor(NMVpnEditorPlugin* iface __attribute__((unused)), void* editor_handle = dlopen(libname, RTLD_LAZY); if (!editor_handle) { - g_warning("Failed to open interface library: %s: %s", libname, dlerror()); + g_warning("Failed to open interface library: %s: %s", libname, dlerror()); g_set_error(error, SEASIDE_EDITOR_PLUGIN_ERROR, 0, "Failed to load editor library %s: %s", libname, dlerror()); return NULL; } @@ -88,7 +84,11 @@ static NMConnection* import(NMVpnEditorPlugin* iface __attribute__((unused)), co gsize length = 0; gchar* contents = NULL; - if (!g_file_get_contents(path, &contents, &length, error)) return NULL; + if (!g_file_get_contents(path, &contents, &length, error)) { + g_warning("Failed to open import file: %s", path); + g_set_error(error, NM_SEASIDE_IMPORT_EXPORT_ERROR, NM_SEASIDE_IMPORT_EXPORT_ERROR_NOT_READABLE, "Failed to open import file: %s", path); + return NULL; + } gchar* encoded = g_base64_encode((const guchar*) contents, length); nm_setting_vpn_add_data_item(s_vpn, NM_SEASIDE_KEY_CERTIFICATE, encoded); @@ -130,7 +130,7 @@ static char* get_suggested_filename(NMVpnEditorPlugin* iface __attribute__((unus } static void get_property(GObject* object, guint prop_id, GValue* value, GParamSpec* pspec) { - g_message("Getting SeasideVPN connection property %d...", prop_id); + g_message("Getting SeasideVPN connection property %u...", prop_id); switch (prop_id) { case PROP_NAME: diff --git a/viridian/reef/nm_plugin/src/interface_gtk3.c b/viridian/reef/nm_plugin/src/interface_gtk3.c index ae5bd619..10e34926 100644 --- a/viridian/reef/nm_plugin/src/interface_gtk3.c +++ b/viridian/reef/nm_plugin/src/interface_gtk3.c @@ -59,7 +59,7 @@ static void choose_certificate_cb(GtkWidget* button __attribute__((unused)), gpo g_free(priv->certificate_filedata); priv->certificate_filedata = encoded; - g_debug("Choosing certificate: New SeasideVPN certificate file embedded value (%ld bytes) is set to: %s", length, encoded); + g_debug("Choosing certificate: New SeasideVPN certificate file embedded value (%lu bytes) is set to: %s", length, encoded); g_free(contents); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); diff --git a/viridian/reef/nm_plugin/src/interface_gtk4.c b/viridian/reef/nm_plugin/src/interface_gtk4.c index 5b589520..1bf293eb 100644 --- a/viridian/reef/nm_plugin/src/interface_gtk4.c +++ b/viridian/reef/nm_plugin/src/interface_gtk4.c @@ -95,7 +95,7 @@ static void choose_certificate_cb(GtkWidget* button __attribute__((unused)), gpo g_free(priv->certificate_filedata); priv->certificate_filedata = encoded; - g_debug("Choosing certificate: New SeasideVPN certificate file embedded value (%ld bytes) is set to: %s", length, encoded); + g_debug("Choosing certificate: New SeasideVPN certificate file embedded value (%lu bytes) is set to: %s", length, encoded); g_free(raw_contents); gtk_label_set_text(GTK_LABEL(priv->label_selected_certificate), "Certificate file updated!"); diff --git a/viridian/reef/nm_plugin/src/plugin.c b/viridian/reef/nm_plugin/src/plugin.c index f8dfbfc0..7d808f04 100644 --- a/viridian/reef/nm_plugin/src/plugin.c +++ b/viridian/reef/nm_plugin/src/plugin.c @@ -24,8 +24,8 @@ typedef struct { void* lib_handle; void* coordinator; - vpn_start_fn vpn_start; - vpn_stop_fn vpn_stop; + VpnStartType vpn_start; + VpnStopType vpn_stop; } NMSeasidePluginPrivate; G_DEFINE_TYPE_WITH_PRIVATE(NMSeasidePlugin, nm_seaside_plugin, NM_TYPE_VPN_SERVICE_PLUGIN) @@ -196,7 +196,7 @@ static gboolean real_connect(NMVpnServicePlugin* plugin, NMConnection* connectio certificate_data = (char*) g_strdup(certificate); } else { certificate_data = (char*) g_base64_decode(certificate, &certificate_length); - g_debug("DBUS connect: Certificate parameter is embedded data (%ld bytes)!", certificate_length); + g_debug("DBUS connect: Certificate parameter is embedded data (%lu bytes)!", certificate_length); } if (!protocol) { diff --git a/viridian/reef/shared_library/cbindgen.toml b/viridian/reef/shared_library/cbindgen.toml index 1568e5b1..f706427b 100644 --- a/viridian/reef/shared_library/cbindgen.toml +++ b/viridian/reef/shared_library/cbindgen.toml @@ -4,3 +4,7 @@ include_guard = "SEASIDE_H" cpp_compat = true line_length = 256 + +[export] +# TODO: remove once the issue is resolved: https://github.com/mozilla/cbindgen/issues/1122 +include = ["ErrorCallbackType", "VpnStartType", "VpnStopType"] diff --git a/viridian/reef/shared_library/lib/mod.rs b/viridian/reef/shared_library/lib/mod.rs index acf4a6ce..4181f1d3 100644 --- a/viridian/reef/shared_library/lib/mod.rs +++ b/viridian/reef/shared_library/lib/mod.rs @@ -19,6 +19,8 @@ use crate::viridian::Viridian; mod tunnel; mod viridian; +// Types: + /// cbindgen:ignore struct RawPtr(*mut c_void); @@ -41,6 +43,8 @@ pub struct VPNConfig { dns_address: u32 } +// Macros: + macro_rules! error_to_string { ($result:expr) => {{ let sanitized = $result.chars().map(|c| if c == '\0' { '?' } else { c }).collect::(); @@ -55,8 +59,16 @@ macro_rules! return_error { }}; } +// VPN start function: + +/// cbindgen:export.include +pub type ErrorCallbackType = extern "C" fn(*mut c_void, *mut c_char) -> c_void; + +/// cbindgen:export.include +pub type VpnStartType = extern "C" fn(*const c_char, usize, *const c_char, *mut *mut VPNConfig, *mut *mut c_void, *mut c_void, ErrorCallbackType, *mut *mut c_char) -> bool; + #[no_mangle] -pub extern "C" fn vpn_start(certificate: *const c_char, cert_data_length: usize, protocol: *const c_char, config: *mut *mut VPNConfig, coordinator_ptr: *mut *mut c_void, plugin_ptr: *mut c_void, error_callback: extern "C" fn(*mut c_void, *mut c_char) -> c_void, error: *mut *mut c_char) -> bool { +pub extern "C" fn vpn_start(certificate: *const c_char, cert_data_length: usize, protocol: *const c_char, config: *mut *mut VPNConfig, coordinator_ptr: *mut *mut c_void, plugin_ptr: *mut c_void, error_callback: ErrorCallbackType, error: *mut *mut c_char) -> bool { let protocol = match unsafe { CStr::from_ptr(protocol) }.to_str() { Ok(proto_str) => match ProtocolType::from_str(proto_str) { Ok(res) => res, @@ -134,6 +146,13 @@ pub extern "C" fn vpn_start(certificate: *const c_char, cert_data_length: usize, true } +const _: VpnStartType = vpn_start; + +// VPN stop function: + +/// cbindgen:export.include +pub type VpnStopType = extern "C" fn(*mut c_void, *mut *mut c_char) -> bool; + #[no_mangle] pub extern "C" fn vpn_stop(coordinator_ptr: *mut c_void, error: *mut *mut c_char) -> bool { let coordinator = unsafe { Box::from_raw(coordinator_ptr as *mut Coordinator) }; @@ -150,3 +169,5 @@ pub extern "C" fn vpn_stop(coordinator_ptr: *mut c_void, error: *mut *mut c_char return result; } + +const _: VpnStopType = vpn_stop; From 7463caf85d2c020bc2b99ac30603a738a8bbcd02 Mon Sep 17 00:00:00 2001 From: pseusys Date: Thu, 27 Nov 2025 04:00:55 +0100 Subject: [PATCH 38/67] all build updated --- viridian/reef/Makefile | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/viridian/reef/Makefile b/viridian/reef/Makefile index a2c7198d..197ca524 100644 --- a/viridian/reef/Makefile +++ b/viridian/reef/Makefile @@ -19,10 +19,21 @@ ROOT_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) SHARED_LIBRARY_DIR := $(ROOT_DIR)/shared_library STANDALONE_EXECUTABLE_DIR := $(ROOT_DIR)/standalone_executable +ifeq ($(OS),Windows_NT) + PLATFORM_PLUGIN_DIR := $(ROOT_DIR)/... +else + PLATFORM_PLUGIN_DIR := $(ROOT_DIR)/nm_plugin +endif + # Building different artifacts: +build-platform-plugin: + @ # Build platform-specific VPN plugin + $(MAKE) -C $(PLATFORM_PLUGIN_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build +.PHONY: build-platform-plugin + build-shared-library: @ # Build shared reef library TODO: add feature strict, checking warnings, docs, removing debug info $(MAKE) -C $(SHARED_LIBRARY_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build @@ -33,7 +44,7 @@ build-standalone-executable: $(MAKE) -C $(STANDALONE_EXECUTABLE_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build .PHONY: build-standalone-executable -build: build-shared-library build-standalone-executable +build: build-platform-plugin build-shared-library build-standalone-executable .PHONY: build @@ -60,8 +71,13 @@ lint: build # Artifact cleaning: +clean-platform-plugin: + @ # Clean platform-specific plugin + $(MAKE) -C $(PLATFORM_PLUGIN_DIR) -s --no-print-directory clean +.PHONY: clean-platform-plugin + clean-shared-library: - @ # clean shared reef library + @ # Clean shared reef library $(MAKE) -C $(SHARED_LIBRARY_DIR) -s --no-print-directory clean .PHONY: build-shared-library @@ -70,7 +86,7 @@ clean-standalone-executable: $(MAKE) -C $(STANDALONE_EXECUTABLE_DIR) -s --no-print-directory clean .PHONY: build-shared-library -clean: clean-shared-library clean-standalone-executable +clean: clean-platform-plugin clean-shared-library clean-standalone-executable @ # Clean all the artifacts for any targets cargo clean rm -f Cargo.lock From 5a33ab9a5676808e587344c6857067a27efe5d28 Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 28 Nov 2025 02:06:44 +0100 Subject: [PATCH 39/67] testing in a container --- .gitignore | 6 +++++ viridian/reef/nm_plugin/Dockerfile | 4 --- viridian/reef/nm_plugin/Makefile | 26 ++++++++++++++------ viridian/reef/nm_plugin/conf/descriptor.ini | 10 ++++---- viridian/reef/nm_plugin/meson.build | 10 ++++---- viridian/reef/nm_plugin/nm_container_test.sh | 16 ++++++++++++ 6 files changed, 51 insertions(+), 21 deletions(-) delete mode 100644 viridian/reef/nm_plugin/Dockerfile create mode 100644 viridian/reef/nm_plugin/nm_container_test.sh diff --git a/.gitignore b/.gitignore index 8f9f7652..b578e122 100644 --- a/.gitignore +++ b/.gitignore @@ -100,3 +100,9 @@ viridian/reef/wintun-source/ ## Binary build: viridian/reef/nm_plugin/.build viridian/reef/nm_plugin/dist + + + +# Miscellaneous: + +viridian/reef/nm_plugin/NetworkManager diff --git a/viridian/reef/nm_plugin/Dockerfile b/viridian/reef/nm_plugin/Dockerfile deleted file mode 100644 index bdcba879..00000000 --- a/viridian/reef/nm_plugin/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -FROM registry.freedesktop.org/networkmanager/networkmanager/fedora/42:tag-c1c23df75dda AS builder - - -ENTRYPOINT [ "sh" ] diff --git a/viridian/reef/nm_plugin/Makefile b/viridian/reef/nm_plugin/Makefile index 64aba44d..0176339d 100644 --- a/viridian/reef/nm_plugin/Makefile +++ b/viridian/reef/nm_plugin/Makefile @@ -8,9 +8,12 @@ SHELL := /bin/bash BUILD_TYPE := debug RUNNING_IN_DOCKER := false SERVICE_INSTALL_DIR := /usr/libexec +DISTRIBUTION_DIR := dist VIRIDIAN_DIR := $(shell realpath "$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))/../../") -DISTRIBUTION_DIR := $(VIRIDIAN_DIR)/reef/nm_plugin/dist +CURRENT_DIR := $(VIRIDIAN_DIR)/reef/nm_plugin + +TEST_COMMAND := "bash ../nm_container_test.sh true" help: @ # Print available make target information @@ -71,7 +74,7 @@ endif # Package the artifacts: package: .build - export DESTDIR=$(DISTRIBUTION_DIR) + export DESTDIR=$(CURRENT_DIR)/$(DISTRIBUTION_DIR) ninja install -C $< install --quiet .PHONY: package @@ -79,11 +82,20 @@ package: .build # Test: -test: - @ # TODO: run tests in Docker!!! - docker pull registry.freedesktop.org/networkmanager/networkmanager/fedora/42:tag-c1c23df75dda - docker build -f Dockerfile --target builder -t seaside-reef-nm-plugin-test .. - docker run -it --privileged --rm --name seaside-reef-nm-plugin-test --sysctl net.ipv6.conf.all.disable_ipv6=1 seaside-reef-nm-plugin-test +NetworkManager: + git clone https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git + +prepare-image: NetworkManager package + ln -sfn $(CURRENT_DIR)/$(DISTRIBUTION_DIR) $(CURRENT_DIR)/$ Date: Fri, 28 Nov 2025 02:55:48 +0100 Subject: [PATCH 40/67] run test in actions --- .github/actions/setup-server/action.yml | 17 ++--- .../setup-server/configure_viridian_test.mjs | 38 +++++++---- .github/workflows/build.yml | 4 +- .github/workflows/test.yml | 64 +++++++++++++++---- viridian/reef/Makefile | 10 +-- 5 files changed, 93 insertions(+), 40 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index eae8b788..2031018f 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -6,16 +6,17 @@ inputs: description: The IP address that will be used for testing required: true default: example.com - lower_port: + container-engine: + description: Container engine that will be used for running VPN server + default: docker + lower-port: description: The minimum source port number that will be used for testing - required: true - default: 44443 - higher_port: + higher-port: description: The maximum source port number that will be used for testing - required: true - default: 44445 test-command: description: Test command for no VPN access test + test-runner: + description: Shell wrapper that would be used for containerized test command execution outputs: connection-certificate: @@ -77,7 +78,7 @@ runs: env: SUDO: ${{ runner.os == 'Linux' && 'sudo -E env "PATH=$PATH"' || '' }} run: | - SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs -l ${{ inputs.lower_port }} -h ${{ inputs.higher_port }} -t ${{ steps.resolve-target.outputs.target-ip }} -s) + SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ inputs.test-runner && '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s) echo "server-ip=${SERVER_IP}" >> $GITHUB_OUTPUT - name: Get Connection Certificate @@ -97,5 +98,5 @@ runs: if: ${{ inputs.test-command }} shell: bash env: - RUNNER: ${{ runner.os == 'Linux' && 'bash -c' || 'powershell -Command' }} + RUNNER: ${{ inputs.test-runner || runner.os == 'Linux' && 'bash -c' || 'powershell -Command' }} run: ${{ env.RUNNER }} "${{ inputs.test-command }}" && exit 1 || true diff --git a/.github/actions/setup-server/configure_viridian_test.mjs b/.github/actions/setup-server/configure_viridian_test.mjs index cb5e9f42..06d1c315 100644 --- a/.github/actions/setup-server/configure_viridian_test.mjs +++ b/.github/actions/setup-server/configure_viridian_test.mjs @@ -122,6 +122,10 @@ function parseArguments() { type: "string", short: "t" }, + engine: { + type: "string", + short: "e" + }, lower_port: { type: "string", short: "l" @@ -130,6 +134,11 @@ function parseArguments() { type: "string", short: "h" }, + containerized: { + type: "boolean", + short: "c", + default: false + }, help: { type: "boolean", short: "h", @@ -183,15 +192,18 @@ function getOutputConnection(unreachable) { * @param {string} unreachableNetwork network that will become unreachable (directly). * @param {string | null} name the given name for the unreachable IP and network. */ -function setupRouting(unreachable, lower_port, higher_port, iface, address, silent) { +function setupRouting(unreachable, whirlpool_ip, containerized, lower_port, higher_port, iface, address, silent) { print(`Disabling access to ${unreachable} address...`, silent); - runCommandForSystem( - `iptables -t mangle -A POSTROUTING -o ${iface} -s ${address} -d ${unreachable} -p tcp --sport ${lower_port}:${higher_port} -j DROP`, - `Start-Process -FilePath "${convertPathToWindows(process.env.WINDIVERT_PATH)}\\\\netfilter" -ArgumentList '"ip and outbound and (ifIdx == ${iface}) and ((tcp.SrcPort >= ${lower_port}) and (tcp.SrcPort <= ${higher_port})) and (ip.SrcAddr == ${address}) and (ip.DstAddr == ${unreachable})" 16' -NoNewWindow`, - undefined, - {}, - "ignore" - ); + if (!containerized) + runCommandForSystem( + `iptables -t mangle -A POSTROUTING -o ${iface} -s ${address} -d ${unreachable} -p tcp --sport ${lower_port}:${higher_port} -j DROP`, + `Start-Process -FilePath "${convertPathToWindows(process.env.WINDIVERT_PATH)}\\\\netfilter" -ArgumentList '"ip and outbound and (ifIdx == ${iface}) and ((tcp.SrcPort >= ${lower_port}) and (tcp.SrcPort <= ${higher_port})) and (ip.SrcAddr == ${address}) and (ip.DstAddr == ${unreachable})" 16' -NoNewWindow`, + undefined, + {}, + "ignore" + ); + else + runCommand(`iptables -A FORWARD -o ${iface} ! -s ${whirlpool_ip} -d ${unreachable} -p tcp -j DROP`); print(`Accessing ${unreachable} is no longer possible!`, silent); } @@ -200,16 +212,16 @@ function setupRouting(unreachable, lower_port, higher_port, iface, address, sile * Wait for some time to check if it started successfully and throw an error if it did. * @param {string} path Docker Compose standalone project file path. */ -async function launchWhirlpool(whirlpool, silent) { +async function launchWhirlpool(engine, whirlpool, silent) { print("Preparing whirlpool executable...", silent); - runCommandForSystem(`docker compose -f ${DOCKER_COMPOSE_PATH} build ${DOCKER_COMPOSE_CONTAINER}`, `poetry poe -C ${VIRIDIAN_ALGAE_ROOT} bundle`, undefined, { + runCommandForSystem(`${engine} compose -f ${DOCKER_COMPOSE_PATH} build ${DOCKER_COMPOSE_CONTAINER}`, `poetry poe -C ${VIRIDIAN_ALGAE_ROOT} bundle`, undefined, { SEASIDE_HOST_ADDRESS: whirlpool }); print("Generating certificates...", silent); runCommandForSystem(`true`, `poetry -C ${VIRIDIAN_ALGAE_ROOT} run python3 ${INSTALLER_PATH} --just-certs ${whirlpool}`, undefined); print("Spawning whirlpool process...", silent); runCommandForSystem( - `docker compose -f ${DOCKER_COMPOSE_PATH} up --detach ${DOCKER_COMPOSE_CONTAINER}`, + `${engine} compose -f ${DOCKER_COMPOSE_PATH} up --detach ${DOCKER_COMPOSE_CONTAINER}`, `wsl -u root python3 ${convertPathToWSL(INSTALLER_PATH)} -o -a back whirlpool -l "${convertPathToWSL(CAERULEAN_WHIRLPOOL_ROOT)}" -r compile -k "${process.env.SEASIDE_SERVER_KEY}" -a ${whirlpool} -e ${whirlpool} -i ${process.env.SEASIDE_API_PORT} --certificates-path ${convertPathToWSL(SERVER_CERTIFICATES)} --log-level DEBUG`, undefined, { @@ -226,6 +238,6 @@ async function launchWhirlpool(whirlpool, silent) { const args = parseArguments(); const whirlpoolIP = getWhirlpoolIP(args.silent); const { iface, address } = getOutputConnection(args.target); -await launchWhirlpool(whirlpoolIP, args.silent); -setupRouting(args.target, args.lower_port, args.higher_port, iface, address, args.silent); +await launchWhirlpool(args.engine, whirlpoolIP, args.silent); +setupRouting(args.target, whirlpoolIP, args.containerized, args.lower_port, args.higher_port, iface, address, args.silent); print(whirlpoolIP, !args.silent); diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 93db7ac6..4b6325cf 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -86,7 +86,7 @@ jobs: LINKING_FLAGS: -w -s GOARCH: ${{ matrix.arch }} CC: ${{ matrix.arch == 'amd64' && 'x86_64-linux-gnu-gcc' || 'aarch64-linux-gnu-gcc' }} - EXEC_NAME: ${{ format('caerulean_whirlpool_executable_{0}', matrix.arch) }} + EXEC_NAME: caerulean_whirlpool_executable_${{ matrix.arch }} run: make build EXEC_NAME=${{ env.EXEC_NAME }}.run - name: Create Artifact Name From Branch Name ๐ŸŒฑ @@ -154,7 +154,7 @@ jobs: working-directory: viridian/reef env: EXEC_SRC: ${{ matrix.os == 'linux' && 'seaside_standalone' || 'seaside_standalone.exe' }} - EXEC_STEM: ${{ format('viridian_reef_executable_{0}_{1}', matrix.os, matrix.arch) }} + EXEC_STEM: viridian_reef_executable_${{ matrix.os }}_${{ matrix.arch }} EXEC_EXT: ${{ matrix.os == 'linux' && 'run' || 'exe' }} run: mv target/${{ env.TARGET }}/release/${{ env.EXEC_SRC }} target/${{ env.EXEC_STEM }}.${{ env.EXEC_EXT }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index d09369f7..3027c3ca 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -61,8 +61,8 @@ jobs: uses: ./.github/actions/setup-server with: target: ${{ env.TARGET_ADDRESS }} - lower_port: ${{ env.TARGET_LOWER_PORT }} - higher_port: ${{ env.TARGET_HIGHER_PORT }} + lower-port: ${{ env.TARGET_LOWER_PORT }} + higher-port: ${{ env.TARGET_HIGHER_PORT }} test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - name: Test Viridian Algae PORT (standalone) ๐Ÿงช @@ -74,8 +74,8 @@ jobs: run: sudo -E env "PATH=$PATH" poetry poe client -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports "${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }}" -c "${{ env.TEST_COMMAND }} --local-port 44445" viridian-reef-test: - name: Test Viridian Reef - runs-on: ${{ format('{0}-latest', matrix.os) }} + name: Test Viridian Reef Standalone Executable + runs-on: ${{ matrix.os }}-latest env: TARGET_ADDRESS: 1.1.1.1 TARGET_LOWER_PORT: 44442 @@ -101,12 +101,6 @@ jobs: rust-src-dir: viridian/reef override: true - - name: Download Dependencies ๐Ÿ”ฎ - if: runner.os == 'Windows' - working-directory: viridian/reef - shell: bash - run: make dependencies runtime - - name: Test Viridian Reef (unit) ๐Ÿงช working-directory: viridian/reef run: ${{ env.SUDO }} cargo test --workspace -- --nocapture --show-output @@ -116,8 +110,8 @@ jobs: uses: ./.github/actions/setup-server with: target: ${{ env.TARGET_ADDRESS }} - lower_port: ${{ env.TARGET_LOWER_PORT }} - higher_port: ${{ env.TARGET_HIGHER_PORT }} + lower-port: ${{ env.TARGET_LOWER_PORT }} + higher-port: ${{ env.TARGET_HIGHER_PORT }} test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - name: Test Viridian Reef PORT (integration) ๐Ÿงช @@ -128,6 +122,52 @@ jobs: working-directory: viridian/reef run: ${{ env.SUDO }} cargo run --bin seaside_standalone -- -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44445" + viridian-reef-platform-plugin-test: + name: Test Viridian Reef Platform Plugin + runs-on: ${{ matrix.os }}-latest + env: + TARGET_ADDRESS: 1.1.1.1 + TEST_COMMAND: ${{ matrix.os == 'ubuntu' && 'curl' || '& curl.exe' }} -v -I --fail --max-time 15 https://1.1.1.1 + strategy: + fail-fast: false + matrix: + include: + - os: ubuntu + dir: nm_plugin + + steps: + - name: Checkout ๐Ÿ›Ž๏ธ + uses: actions/checkout@v4 + + - name: Setup Rust ๐Ÿฆ€ + uses: actions-rust-lang/setup-rust-toolchain@v1 + with: + toolchain: "1.89.0" + target: ${{ matrix.os == 'ubuntu' && 'x86_64-unknown-linux-gnu' || 'x86_64-pc-windows-msvc' }} + rust-src-dir: viridian/reef + override: true + + - name: Setup VPN Server ๐Ÿ–ด + id: setup-test-server + uses: ./.github/actions/setup-server + with: + target: ${{ env.TARGET_ADDRESS }} + container-engine: podman + test-command: ${{ env.TEST_COMMAND }} --local-port 44443 + test-runner: make -C viridian/reef/${{ matrix.dir }} -s --no-print-directory TEST_COMMAND="bash -c" test + + - name: Test Viridian Reef PORT ๐Ÿงช + working-directory: viridian/reef/${{ matrix.dir }} + env: + TEST_VAR: bash ../nm_container_test.sh -m port -f "${{ steps.setup-test-server.outputs.connection-certificate }}" -c ${{ env.TEST_COMMAND }}" + run: make -s --no-print-directory TEST_COMMAND="${{ env.TEST_VAR }}" test + + - name: Test Viridian Reef TYPHOON ๐Ÿงช + working-directory: viridian/reef/${{ matrix.dir }} + env: + TEST_VAR: bash ../nm_container_test.sh -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" -c ${{ env.TEST_COMMAND }}" + run: make -s --no-print-directory TEST_COMMAND="${{ env.TEST_VAR }}" test + caerulean-whirlpool-test: name: Test Caerulean Whirlpool runs-on: ubuntu-latest diff --git a/viridian/reef/Makefile b/viridian/reef/Makefile index 197ca524..0ebe2c43 100644 --- a/viridian/reef/Makefile +++ b/viridian/reef/Makefile @@ -29,16 +29,16 @@ endif # Building different artifacts: -build-platform-plugin: - @ # Build platform-specific VPN plugin - $(MAKE) -C $(PLATFORM_PLUGIN_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build -.PHONY: build-platform-plugin - build-shared-library: @ # Build shared reef library TODO: add feature strict, checking warnings, docs, removing debug info $(MAKE) -C $(SHARED_LIBRARY_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build .PHONY: build-shared-library +build-platform-plugin: build-shared-library + @ # Build platform-specific VPN plugin + $(MAKE) -C $(PLATFORM_PLUGIN_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build +.PHONY: build-platform-plugin + build-standalone-executable: @ # Build standalone reef executable TODO: add feature strict, checking warnings, docs, removing debug info $(MAKE) -C $(STANDALONE_EXECUTABLE_DIR) -s --no-print-directory BUILD_TYPE=$(BUILD_TYPE) build From b3dfeef84dcb4d886e86683016c8a184951ec205 Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 28 Nov 2025 23:41:13 +0100 Subject: [PATCH 41/67] podman update --- .github/actions/setup-server/action.yml | 5 +++++ .github/workflows/build.yml | 6 ------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 2031018f..671e7f22 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -34,6 +34,11 @@ runs: distribution: Ubuntu-24.04 set-as-default: true + - name: Setup Podman + if: runner.os == 'Linux' && inputs.container-engine == 'podman' + shell: bash + run: sudo apt-get update && sudo apt-get -y install podman + - name: Install NodeJS uses: actions/setup-node@v4.1.0 with: diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4b6325cf..85fa97dd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -134,12 +134,6 @@ jobs: rust-src-dir: viridian/reef override: true - - name: Download Dependencies ๐Ÿ”ฎ - if: runner.os == 'Windows' - working-directory: viridian/reef - shell: bash - run: make dependencies - - name: Build Viridian Reef ๐Ÿ—๏ธ uses: actions-rs/cargo@v1 env: From f1e859cede9a1fa3ba1b7dcbe0250e41fb1df117 Mon Sep 17 00:00:00 2001 From: pseusys Date: Fri, 28 Nov 2025 23:49:47 +0100 Subject: [PATCH 42/67] apt -> brew --- .github/actions/setup-server/action.yml | 2 +- .github/workflows/lint.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 671e7f22..d028a29d 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -37,7 +37,7 @@ runs: - name: Setup Podman if: runner.os == 'Linux' && inputs.container-engine == 'podman' shell: bash - run: sudo apt-get update && sudo apt-get -y install podman + run: brew install podman - name: Install NodeJS uses: actions/setup-node@v4.1.0 diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 8cc5b361..b1be619d 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -41,7 +41,7 @@ jobs: uses: actions/checkout@v4 - name: Install Dependencies ๐Ÿ”ฎ - run: sudo apt-get install -y shellcheck + run: brew install shellcheck - name: Lint Scripts ๐Ÿงช run: make lint-scripts From db1f984abffea2ff474e552fa5768e8c600c8b18 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 00:12:44 +0100 Subject: [PATCH 43/67] brew path fix --- .github/actions/setup-server/action.yml | 3 ++- .github/workflows/build.yml | 4 ++-- .github/workflows/lint.yml | 1 + 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index d028a29d..a4f10685 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -36,8 +36,9 @@ runs: - name: Setup Podman if: runner.os == 'Linux' && inputs.container-engine == 'podman' + working-directory: /home/linuxbrew/.linuxbrew/bin shell: bash - run: brew install podman + run: brew install podman podman-compose - name: Install NodeJS uses: actions/setup-node@v4.1.0 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c6d74c56..f9936255 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -71,8 +71,8 @@ jobs: uses: actions/checkout@v4 - name: Setup GCC ๐Ÿƒ - working-directory: caerulean/whirlpool - run: sudo apt-get install -y build-essential + working-directory: /home/linuxbrew/.linuxbrew/bin + run: brew install gcc - name: Setup Go 1.23 ๐Ÿฆซ uses: actions/setup-go@v5 diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index b1be619d..79af1fc7 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -41,6 +41,7 @@ jobs: uses: actions/checkout@v4 - name: Install Dependencies ๐Ÿ”ฎ + working-directory: /home/linuxbrew/.linuxbrew/bin run: brew install shellcheck - name: Lint Scripts ๐Ÿงช From 1946dd2bda2c43229e280defcfa28e5f8c72a491 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 00:16:48 +0100 Subject: [PATCH 44/67] brew local executable --- .github/actions/setup-server/action.yml | 2 +- .github/workflows/build.yml | 2 +- .github/workflows/lint.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index a4f10685..3803615d 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -38,7 +38,7 @@ runs: if: runner.os == 'Linux' && inputs.container-engine == 'podman' working-directory: /home/linuxbrew/.linuxbrew/bin shell: bash - run: brew install podman podman-compose + run: ./brew install podman podman-compose - name: Install NodeJS uses: actions/setup-node@v4.1.0 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f9936255..93737948 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -72,7 +72,7 @@ jobs: - name: Setup GCC ๐Ÿƒ working-directory: /home/linuxbrew/.linuxbrew/bin - run: brew install gcc + run: ./brew install gcc - name: Setup Go 1.23 ๐Ÿฆซ uses: actions/setup-go@v5 diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 79af1fc7..ee87d3bb 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -42,7 +42,7 @@ jobs: - name: Install Dependencies ๐Ÿ”ฎ working-directory: /home/linuxbrew/.linuxbrew/bin - run: brew install shellcheck + run: ./brew install shellcheck - name: Lint Scripts ๐Ÿงช run: make lint-scripts From 7c942fcfb46b5abe348ee29ef1f3cb081dfa5ca7 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 00:20:28 +0100 Subject: [PATCH 45/67] let's be real: gcc will be there --- .github/workflows/build.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 93737948..4b673208 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -70,10 +70,6 @@ jobs: - name: Checkout ๐Ÿ›Ž๏ธ uses: actions/checkout@v4 - - name: Setup GCC ๐Ÿƒ - working-directory: /home/linuxbrew/.linuxbrew/bin - run: ./brew install gcc - - name: Setup Go 1.23 ๐Ÿฆซ uses: actions/setup-go@v5 with: From 5f371335adc285dcd4ab71381cf2dcbcf3e78788 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 00:39:21 +0100 Subject: [PATCH 46/67] podman-compatible --- .github/actions/setup-server/action.yml | 6 ------ .github/workflows/build.yml | 4 ++++ .github/workflows/lint.yml | 6 ++---- caerulean/whirlpool/Dockerfile | 2 +- viridian/algae/docker/Dockerfile.algae | 2 +- viridian/algae/docker/Dockerfile.echo | 2 +- viridian/reef/Dockerfile | 2 +- 7 files changed, 10 insertions(+), 14 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 3803615d..2031018f 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -34,12 +34,6 @@ runs: distribution: Ubuntu-24.04 set-as-default: true - - name: Setup Podman - if: runner.os == 'Linux' && inputs.container-engine == 'podman' - working-directory: /home/linuxbrew/.linuxbrew/bin - shell: bash - run: ./brew install podman podman-compose - - name: Install NodeJS uses: actions/setup-node@v4.1.0 with: diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4b673208..93737948 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -70,6 +70,10 @@ jobs: - name: Checkout ๐Ÿ›Ž๏ธ uses: actions/checkout@v4 + - name: Setup GCC ๐Ÿƒ + working-directory: /home/linuxbrew/.linuxbrew/bin + run: ./brew install gcc + - name: Setup Go 1.23 ๐Ÿฆซ uses: actions/setup-go@v5 with: diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index ee87d3bb..e32d7ce8 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -41,8 +41,7 @@ jobs: uses: actions/checkout@v4 - name: Install Dependencies ๐Ÿ”ฎ - working-directory: /home/linuxbrew/.linuxbrew/bin - run: ./brew install shellcheck + run: sudo apt-get install -y shellcheck - name: Lint Scripts ๐Ÿงช run: make lint-scripts @@ -95,9 +94,8 @@ jobs: - name: Setup Rust ๐Ÿฆ€ uses: actions-rust-lang/setup-rust-toolchain@v1 with: - toolchain: "1.89.0" + toolchain: stable rust-src-dir: viridian/reef - components: rustfmt - name: Lint Viridian Reef ๐Ÿงช working-directory: viridian/reef diff --git a/caerulean/whirlpool/Dockerfile b/caerulean/whirlpool/Dockerfile index 68eabe26..76b7f70a 100644 --- a/caerulean/whirlpool/Dockerfile +++ b/caerulean/whirlpool/Dockerfile @@ -62,7 +62,7 @@ EXPOSE $SEASIDE_API_PORT/tcp ENTRYPOINT ["./whirlpool.run"] # Establish healthcheck: netstat on seaside port. -HEALTHCHECK --interval=1m --timeout=1s --retries=3 --start-period=10s --start-interval=3s CMD netstat -tulpn | grep -q ":$SEASIDE_API_PORT" +HEALTHCHECK --interval=5s --timeout=1s --retries=3 --start-period=17s CMD netstat -tulpn | grep -q ":$SEASIDE_API_PORT" FROM default AS default-certified diff --git a/viridian/algae/docker/Dockerfile.algae b/viridian/algae/docker/Dockerfile.algae index 50feff3b..3ff51eb5 100644 --- a/viridian/algae/docker/Dockerfile.algae +++ b/viridian/algae/docker/Dockerfile.algae @@ -55,7 +55,7 @@ ENV VPN_COMMAND="python3 -m sources.automation.simple_client -c \"\$TEST_COMMAND ENTRYPOINT ["sh", "-c", "eval \"$VPN_COMMAND\""] # Healthcheck checks VPN is running, essentially making the target unhealthy -HEALTHCHECK --interval=1m --timeout=1s --retries=3 --start-period=10s --start-interval=3s CMD ls /sys/class/net | grep $SEASIDE_TUNNEL_NAME +HEALTHCHECK --interval=5s --timeout=1s --retries=3 --start-period=17s CMD ls /sys/class/net | grep $SEASIDE_TUNNEL_NAME FROM default AS default-routed diff --git a/viridian/algae/docker/Dockerfile.echo b/viridian/algae/docker/Dockerfile.echo index 9f810e8b..25647ef9 100644 --- a/viridian/algae/docker/Dockerfile.echo +++ b/viridian/algae/docker/Dockerfile.echo @@ -14,7 +14,7 @@ ENV ECHO_PORT=5000 COPY viridian/algae/docker/echo_server.py ./ ENTRYPOINT ["python3", "echo_server.py"] -HEALTHCHECK --interval=1m --timeout=1s --retries=3 --start-period=10s --start-interval=3s CMD netstat -tulpn | grep -q ":$ECHO_PORT" +HEALTHCHECK --interval=5s --timeout=1s --retries=3 --start-period=17s CMD netstat -tulpn | grep -q ":$ECHO_PORT" FROM default AS default-routed diff --git a/viridian/reef/Dockerfile b/viridian/reef/Dockerfile index 6c5059fe..97fe3e4c 100644 --- a/viridian/reef/Dockerfile +++ b/viridian/reef/Dockerfile @@ -62,4 +62,4 @@ ENV TEST_COMMAND="pytest --log-cli-level=INFO tests/test_local.py" ENV RUN_COMMAND="./seaside_exe -a \$SEASIDE_ADDRESS -c \$SEASIDE_API_PORT -k ... -t ... -p \$SEASIDE_PAYLOAD_VIRIDIAN -e \"\$TEST_COMMAND\"" ENTRYPOINT ["sh", "-c", "ip route replace default via \"$ARG_NETWORK_GATEWAY\" && eval \"$RUN_COMMAND\""] -HEALTHCHECK --interval=1m --timeout=1s --retries=3 --start-period=10s --start-interval=3s CMD ls /sys/class/net | grep tun0 +HEALTHCHECK --interval=5s --timeout=1s --retries=3 --start-period=17s CMD ls /sys/class/net | grep tun0 From b17ae58649a61386851fedb1759d68d6ee54fd21 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 00:48:14 +0100 Subject: [PATCH 47/67] podman setup --- .github/actions/setup-server/action.yml | 5 +++++ .github/workflows/build.yml | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 2031018f..c3a8808f 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -34,6 +34,11 @@ runs: distribution: Ubuntu-24.04 set-as-default: true + - name: Setup Podman + if: runner.os == 'Linux' && inputs.container-engine == 'podman' + shell: bash + run: sudo apt-get install podman-compose + - name: Install NodeJS uses: actions/setup-node@v4.1.0 with: diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 93737948..8901134f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -71,8 +71,8 @@ jobs: uses: actions/checkout@v4 - name: Setup GCC ๐Ÿƒ - working-directory: /home/linuxbrew/.linuxbrew/bin - run: ./brew install gcc + working-directory: caerulean/whirlpool + run: sudo apt-get install -y build-essential - name: Setup Go 1.23 ๐Ÿฆซ uses: actions/setup-go@v5 @@ -143,7 +143,7 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} WINDIVERT_PATH: ${{ github.workspace }}/viridian/reef/windivert-bin - run: cargo build --release --bin seaside_standalone + run: make build build-standalone-executable - name: Rename Executable ๐Ÿ“› working-directory: viridian/reef From f47a0b562540e7504a0cff2ad1c4029455960dcf Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 00:52:35 +0100 Subject: [PATCH 48/67] ip addr log --- .github/actions/setup-server/action.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index c3a8808f..4f4d88bd 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -37,7 +37,9 @@ runs: - name: Setup Podman if: runner.os == 'Linux' && inputs.container-engine == 'podman' shell: bash - run: sudo apt-get install podman-compose + run: | + sudo apt-get install podman-compose + ip addr - name: Install NodeJS uses: actions/setup-node@v4.1.0 From e417f2cdf3a289c482f4e89bbb64f42872e99dc0 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 01:04:46 +0100 Subject: [PATCH 49/67] changed network --- .github/actions/setup-server/action.yml | 4 +--- .github/actions/setup-server/compose.yml | 6 +++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 4f4d88bd..c3a8808f 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -37,9 +37,7 @@ runs: - name: Setup Podman if: runner.os == 'Linux' && inputs.container-engine == 'podman' shell: bash - run: | - sudo apt-get install podman-compose - ip addr + run: sudo apt-get install podman-compose - name: Install NodeJS uses: actions/setup-node@v4.1.0 diff --git a/.github/actions/setup-server/compose.yml b/.github/actions/setup-server/compose.yml index 41ad3a1d..dfc41fb3 100644 --- a/.github/actions/setup-server/compose.yml +++ b/.github/actions/setup-server/compose.yml @@ -11,12 +11,12 @@ services: SEASIDE_ADDRESS: ${SEASIDE_HOST_ADDRESS} networks: sea-net: - ipv4_address: 10.1.0.87 + ipv4_address: 10.11.0.87 networks: sea-net: ipam: config: - - subnet: 10.1.0.0/24 - gateway: 10.1.0.1 + - subnet: 10.11.0.0/24 + gateway: 10.11.0.1 From 29e600c9c51c35860f7d91ef939f7de0f9b9ad9b Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 01:10:37 +0100 Subject: [PATCH 50/67] meson install --- .github/workflows/test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3027c3ca..9463ffdc 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -147,6 +147,9 @@ jobs: rust-src-dir: viridian/reef override: true + - name: Install Dependencies ๐Ÿ”ฎ + run: apt-get install meson + - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server uses: ./.github/actions/setup-server From d6110ca6bd50df345efff21930cb8ede49d800e8 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 01:13:38 +0100 Subject: [PATCH 51/67] sudo --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 9463ffdc..fb07cd25 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -148,7 +148,7 @@ jobs: override: true - name: Install Dependencies ๐Ÿ”ฎ - run: apt-get install meson + run: sudo apt-get install meson - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server From 63ddfb04dd145248aac016b2aa80b8b71be268c4 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 01:20:48 +0100 Subject: [PATCH 52/67] dependencies --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fb07cd25..1b225631 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -148,7 +148,7 @@ jobs: override: true - name: Install Dependencies ๐Ÿ”ฎ - run: sudo apt-get install meson + run: sudo apt-get install build-essential meson pkg-config libglib2.0-dev libgtk-3-dev libgtk-4-dev libnm-dev libsecret-1-dev - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server From 4abeaef5ee68a53ed9c7a8de780229bc082f673b Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 01:24:08 +0100 Subject: [PATCH 53/67] update first! --- .github/actions/setup-server/action.yml | 4 +++- .github/workflows/build.yml | 4 +++- .github/workflows/lint.yml | 4 +++- .github/workflows/test.yml | 4 +++- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index c3a8808f..cadd7348 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -37,7 +37,9 @@ runs: - name: Setup Podman if: runner.os == 'Linux' && inputs.container-engine == 'podman' shell: bash - run: sudo apt-get install podman-compose + run: | + sudo apt-get update + sudo apt-get install podman-compose - name: Install NodeJS uses: actions/setup-node@v4.1.0 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8901134f..e1624f10 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -72,7 +72,9 @@ jobs: - name: Setup GCC ๐Ÿƒ working-directory: caerulean/whirlpool - run: sudo apt-get install -y build-essential + run: | + sudo apt-get update + sudo apt-get install -y build-essential - name: Setup Go 1.23 ๐Ÿฆซ uses: actions/setup-go@v5 diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index e32d7ce8..1c66ba48 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -41,7 +41,9 @@ jobs: uses: actions/checkout@v4 - name: Install Dependencies ๐Ÿ”ฎ - run: sudo apt-get install -y shellcheck + run: | + sudo apt-get update + sudo apt-get install -y shellcheck - name: Lint Scripts ๐Ÿงช run: make lint-scripts diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1b225631..f643e51e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -148,7 +148,9 @@ jobs: override: true - name: Install Dependencies ๐Ÿ”ฎ - run: sudo apt-get install build-essential meson pkg-config libglib2.0-dev libgtk-3-dev libgtk-4-dev libnm-dev libsecret-1-dev + run: | + sudo apt-get update + sudo apt-get install build-essential meson pkg-config libglib2.0-dev libgtk-3-dev libgtk-4-dev libnm-dev libsecret-1-dev - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server From 606269d900f32dfbbbc182f4b5cdfe12a963ec3f Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 01:30:40 +0100 Subject: [PATCH 54/67] pre-build nm plugin --- .github/workflows/test.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f643e51e..cd22dc0b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -152,6 +152,10 @@ jobs: sudo apt-get update sudo apt-get install build-essential meson pkg-config libglib2.0-dev libgtk-3-dev libgtk-4-dev libnm-dev libsecret-1-dev + - name: Build NetworkManager Plugin ๐Ÿ—๏ธ + working-directory: viridian/reef + run: make build build-platform-plugin + - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server uses: ./.github/actions/setup-server From c998cae69c445b29d2e39af5054641a118474201 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 01:34:32 +0100 Subject: [PATCH 55/67] linux tunneling removed --- viridian/reef/shared_library/lib/tunnel/linux.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/viridian/reef/shared_library/lib/tunnel/linux.rs b/viridian/reef/shared_library/lib/tunnel/linux.rs index 71f85717..be5e502d 100644 --- a/viridian/reef/shared_library/lib/tunnel/linux.rs +++ b/viridian/reef/shared_library/lib/tunnel/linux.rs @@ -5,7 +5,7 @@ use log::debug; use reeflib::tunnel::{create_tunnel, get_default_interface_by_remote_address}; -use crate::tunnel::{Tunnelling, TunnelInternal}; +use crate::tunnel::TunnelInternal; use crate::DynResult; impl TunnelInternal { From c913f03a604afac82a82fec713b466ae55f3ce60 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 02:38:41 +0100 Subject: [PATCH 56/67] plugin action --- .github/workflows/build.yml | 2 +- .github/workflows/test.yml | 24 +++++++++++++----------- viridian/reef/nm_plugin/Makefile | 2 +- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e1624f10..cfdaecd2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -145,7 +145,7 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} WINDIVERT_PATH: ${{ github.workspace }}/viridian/reef/windivert-bin - run: make build build-standalone-executable + run: make build-standalone-executable - name: Rename Executable ๐Ÿ“› working-directory: viridian/reef diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index cd22dc0b..eac8a946 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -122,18 +122,16 @@ jobs: working-directory: viridian/reef run: ${{ env.SUDO }} cargo run --bin seaside_standalone -- -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" --capture-ports ${{ env.TARGET_LOWER_PORT }}-${{ env.TARGET_HIGHER_PORT }} -c "${{ env.TEST_COMMAND }} --local-port 44445" - viridian-reef-platform-plugin-test: - name: Test Viridian Reef Platform Plugin - runs-on: ${{ matrix.os }}-latest + viridian-reef-nm-plugin-test: + name: Test Viridian Reef NetworkManager Plugin + runs-on: ubuntu-latest env: TARGET_ADDRESS: 1.1.1.1 - TEST_COMMAND: ${{ matrix.os == 'ubuntu' && 'curl' || '& curl.exe' }} -v -I --fail --max-time 15 https://1.1.1.1 + TEST_COMMAND: ubuntu -v -I --fail --max-time 15 https://1.1.1.1 strategy: fail-fast: false matrix: - include: - - os: ubuntu - dir: nm_plugin + os: [ubuntu] steps: - name: Checkout ๐Ÿ›Ž๏ธ @@ -154,7 +152,11 @@ jobs: - name: Build NetworkManager Plugin ๐Ÿ—๏ธ working-directory: viridian/reef - run: make build build-platform-plugin + run: make build-platform-plugin + + - name: Build NetworkManager Runner Image ๐Ÿ–ผ๏ธ + working-directory: viridian/reef/nm_plugin + run: make prepare-image - name: Setup VPN Server ๐Ÿ–ด id: setup-test-server @@ -163,16 +165,16 @@ jobs: target: ${{ env.TARGET_ADDRESS }} container-engine: podman test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - test-runner: make -C viridian/reef/${{ matrix.dir }} -s --no-print-directory TEST_COMMAND="bash -c" test + test-runner: make -C viridian/reef/nm_plugin -s --no-print-directory TEST_COMMAND="bash -c" test - name: Test Viridian Reef PORT ๐Ÿงช - working-directory: viridian/reef/${{ matrix.dir }} + working-directory: viridian/reef/nm_plugin env: TEST_VAR: bash ../nm_container_test.sh -m port -f "${{ steps.setup-test-server.outputs.connection-certificate }}" -c ${{ env.TEST_COMMAND }}" run: make -s --no-print-directory TEST_COMMAND="${{ env.TEST_VAR }}" test - name: Test Viridian Reef TYPHOON ๐Ÿงช - working-directory: viridian/reef/${{ matrix.dir }} + working-directory: viridian/reef/nm_plugin env: TEST_VAR: bash ../nm_container_test.sh -m typhoon -f "${{ steps.setup-test-server.outputs.connection-certificate }}" -c ${{ env.TEST_COMMAND }}" run: make -s --no-print-directory TEST_COMMAND="${{ env.TEST_VAR }}" test diff --git a/viridian/reef/nm_plugin/Makefile b/viridian/reef/nm_plugin/Makefile index 0176339d..5ba1b987 100644 --- a/viridian/reef/nm_plugin/Makefile +++ b/viridian/reef/nm_plugin/Makefile @@ -94,7 +94,7 @@ prepare-image: NetworkManager package test: prepare-image @ # $(SHELL) ./NetworkManager/tools/nm-in-container run - $(SHELL) ./NetworkManager/tools/nm-in-container exec --stop -- eval "$(TEST_COMMAND)" + $(SHELL) ./NetworkManager/tools/nm-in-container exec --stop -- bash -c "$(TEST_COMMAND)" $(SHELL) ./NetworkManager/tools/nm-in-container reset .PHONY: test From 8e9c83a5dd816340c7f3597dcb57ac58c7ace85c Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 06:36:36 +0100 Subject: [PATCH 57/67] re-runner --- .github/actions/setup-server/action.yml | 5 ++--- .github/workflows/test.yml | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index cadd7348..c9e67466 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -17,6 +17,7 @@ inputs: description: Test command for no VPN access test test-runner: description: Shell wrapper that would be used for containerized test command execution + default: ${{ runner.os == 'Linux' && 'bash -c "{0}"' || 'powershell -Command "{0}"' }} outputs: connection-certificate: @@ -104,6 +105,4 @@ runs: - name: Test Echo Server Access (no VPN) if: ${{ inputs.test-command }} shell: bash - env: - RUNNER: ${{ inputs.test-runner || runner.os == 'Linux' && 'bash -c' || 'powershell -Command' }} - run: ${{ env.RUNNER }} "${{ inputs.test-command }}" && exit 1 || true + run: ${{ format(inputs.test-runner, inputs.test-command }} && exit 1 || true diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index eac8a946..7a821d42 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -127,7 +127,7 @@ jobs: runs-on: ubuntu-latest env: TARGET_ADDRESS: 1.1.1.1 - TEST_COMMAND: ubuntu -v -I --fail --max-time 15 https://1.1.1.1 + TEST_COMMAND: curl -v -I --fail --max-time 15 https://1.1.1.1 strategy: fail-fast: false matrix: @@ -165,7 +165,7 @@ jobs: target: ${{ env.TARGET_ADDRESS }} container-engine: podman test-command: ${{ env.TEST_COMMAND }} --local-port 44443 - test-runner: make -C viridian/reef/nm_plugin -s --no-print-directory TEST_COMMAND="bash -c" test + test-runner: make -C viridian/reef/nm_plugin -s --no-print-directory TEST_COMMAND="bash -c \"{0}\"" test - name: Test Viridian Reef PORT ๐Ÿงช working-directory: viridian/reef/nm_plugin From 0a018ebb9bd7eef4f5715f2023fe33016eb4e119 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 06:38:40 +0100 Subject: [PATCH 58/67] format function --- .github/actions/setup-server/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index c9e67466..1fcdce79 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -105,4 +105,4 @@ runs: - name: Test Echo Server Access (no VPN) if: ${{ inputs.test-command }} shell: bash - run: ${{ format(inputs.test-runner, inputs.test-command }} && exit 1 || true + run: ${{ format(inputs.test-runner, inputs.test-command) }} && exit 1 || true From e73452bbfe56868aa0b401f72e975e8db11c86d0 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 06:54:17 +0100 Subject: [PATCH 59/67] host conf --- .github/actions/setup-server/action.yml | 5 ++++- .github/workflows/test.yml | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 1fcdce79..a4d6a326 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -9,6 +9,9 @@ inputs: container-engine: description: Container engine that will be used for running VPN server default: docker + configure-host: + description: Configure host itself rather than a container or a VM (child device) + default: true lower-port: description: The minimum source port number that will be used for testing higher-port: @@ -86,7 +89,7 @@ runs: env: SUDO: ${{ runner.os == 'Linux' && 'sudo -E env "PATH=$PATH"' || '' }} run: | - SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ inputs.test-runner && '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s) + SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ !inputs.configure-host && '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s) echo "server-ip=${SERVER_IP}" >> $GITHUB_OUTPUT - name: Get Connection Certificate diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7a821d42..38a39c9f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -164,7 +164,8 @@ jobs: with: target: ${{ env.TARGET_ADDRESS }} container-engine: podman - test-command: ${{ env.TEST_COMMAND }} --local-port 44443 + configure-host: false + test-command: ${{ env.TEST_COMMAND }} test-runner: make -C viridian/reef/nm_plugin -s --no-print-directory TEST_COMMAND="bash -c \"{0}\"" test - name: Test Viridian Reef PORT ๐Ÿงช From ed11d39c630f19da7c963933d078551d4aecebbe Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 07:08:49 +0100 Subject: [PATCH 60/67] arguments extracted --- .github/actions/setup-server/action.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index a4d6a326..61c8e631 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -88,8 +88,9 @@ runs: shell: bash env: SUDO: ${{ runner.os == 'Linux' && 'sudo -E env "PATH=$PATH"' || '' }} + ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ inputs.configure-host && ' ' || '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s run: | - SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ !inputs.configure-host && '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s) + SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ env.ARGUMENTS }}) echo "server-ip=${SERVER_IP}" >> $GITHUB_OUTPUT - name: Get Connection Certificate From faea5a05f15e825ed78cc0f033fe1ccc9b735e39 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 07:28:09 +0100 Subject: [PATCH 61/67] subs --- .github/actions/setup-server/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 61c8e631..f2310c7f 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -88,7 +88,7 @@ runs: shell: bash env: SUDO: ${{ runner.os == 'Linux' && 'sudo -E env "PATH=$PATH"' || '' }} - ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ inputs.configure-host && ' ' || '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s + ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ !inputs.configure-host && '-c' || '' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s run: | SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ env.ARGUMENTS }}) echo "server-ip=${SERVER_IP}" >> $GITHUB_OUTPUT From 8a8ddacf15a17e3040bd4d3fc4dd94493c491133 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 07:41:13 +0100 Subject: [PATCH 62/67] clean bool --- .github/actions/setup-server/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index f2310c7f..5d9e944b 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -88,7 +88,7 @@ runs: shell: bash env: SUDO: ${{ runner.os == 'Linux' && 'sudo -E env "PATH=$PATH"' || '' }} - ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ !inputs.configure-host && '-c' || '' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s + ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ !inputs.configure-host && '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s run: | SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ env.ARGUMENTS }}) echo "server-ip=${SERVER_IP}" >> $GITHUB_OUTPUT From 0b31cb4dfc78a5f21b0a632853ac199b60993e79 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 07:44:16 +0100 Subject: [PATCH 63/67] explicit false --- .github/actions/setup-server/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 5d9e944b..fbb73baa 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -88,7 +88,7 @@ runs: shell: bash env: SUDO: ${{ runner.os == 'Linux' && 'sudo -E env "PATH=$PATH"' || '' }} - ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ !inputs.configure-host && '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s + ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ inputs.configure-host == false && '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s run: | SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ env.ARGUMENTS }}) echo "server-ip=${SERVER_IP}" >> $GITHUB_OUTPUT From d3bf28577bd0638a36b963fe5a36faa35005ab34 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 07:46:35 +0100 Subject: [PATCH 64/67] or empty str --- .github/actions/setup-server/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index fbb73baa..f2310c7f 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -88,7 +88,7 @@ runs: shell: bash env: SUDO: ${{ runner.os == 'Linux' && 'sudo -E env "PATH=$PATH"' || '' }} - ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ inputs.configure-host == false && '-c' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s + ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ !inputs.configure-host && '-c' || '' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s run: | SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ env.ARGUMENTS }}) echo "server-ip=${SERVER_IP}" >> $GITHUB_OUTPUT From aa3daeac3c60c55a8be7a96a2e204f8c6bb3b83a Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 17:22:56 +0100 Subject: [PATCH 65/67] firewall mode reset --- .github/actions/setup-server/action.yml | 8 +++---- .../setup-server/configure_viridian_test.mjs | 21 ++++++++++++------- .github/workflows/test.yml | 2 +- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index f2310c7f..479f031b 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -9,9 +9,9 @@ inputs: container-engine: description: Container engine that will be used for running VPN server default: docker - configure-host: - description: Configure host itself rather than a container or a VM (child device) - default: true + firewall-mode: + description: The way how access to the target will be limited ('host' for host machine, 'container' for containers) + default: host lower-port: description: The minimum source port number that will be used for testing higher-port: @@ -88,7 +88,7 @@ runs: shell: bash env: SUDO: ${{ runner.os == 'Linux' && 'sudo -E env "PATH=$PATH"' || '' }} - ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} ${{ !inputs.configure-host && '-c' || '' }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s + ARGUMENTS: ${{ inputs.lower-port && format('-l {0}', inputs.lower-port) }} ${{ inputs.higher-port && format('-h {0}', inputs.higher-port) }} -f ${{ inputs.firewall-mode }} -t ${{ steps.resolve-target.outputs.target-ip }} -e ${{ inputs.container-engine }} -s run: | SERVER_IP=$(${{ env.SUDO }} node actions/setup-server/configure_viridian_test.mjs ${{ env.ARGUMENTS }}) echo "server-ip=${SERVER_IP}" >> $GITHUB_OUTPUT diff --git a/.github/actions/setup-server/configure_viridian_test.mjs b/.github/actions/setup-server/configure_viridian_test.mjs index 06d1c315..42862824 100644 --- a/.github/actions/setup-server/configure_viridian_test.mjs +++ b/.github/actions/setup-server/configure_viridian_test.mjs @@ -11,6 +11,9 @@ import { sleep } from "../../scripts/script_utils.mjs"; const BLUE = "\x1b[34m"; const RESET = "\x1b[0m"; +const FIREWALL_MODE_HOST = "host"; +const FIREWALL_MODE_CONTAINER = "container"; + // Timeout for Docker compose to initialize (and stop completely in case of an error). const DOCKER_COMPOSE_TIMEOUT = 45; // Echo server network for VPN access. @@ -134,10 +137,10 @@ function parseArguments() { type: "string", short: "h" }, - containerized: { - type: "boolean", - short: "c", - default: false + firewall: { + type: "string", + short: "f", + default: "host" }, help: { type: "boolean", @@ -192,9 +195,9 @@ function getOutputConnection(unreachable) { * @param {string} unreachableNetwork network that will become unreachable (directly). * @param {string | null} name the given name for the unreachable IP and network. */ -function setupRouting(unreachable, whirlpool_ip, containerized, lower_port, higher_port, iface, address, silent) { +function setupRouting(unreachable, whirlpool_ip, firewall, lower_port, higher_port, iface, address, silent) { print(`Disabling access to ${unreachable} address...`, silent); - if (!containerized) + if (firewall == FIREWALL_MODE_HOST) runCommandForSystem( `iptables -t mangle -A POSTROUTING -o ${iface} -s ${address} -d ${unreachable} -p tcp --sport ${lower_port}:${higher_port} -j DROP`, `Start-Process -FilePath "${convertPathToWindows(process.env.WINDIVERT_PATH)}\\\\netfilter" -ArgumentList '"ip and outbound and (ifIdx == ${iface}) and ((tcp.SrcPort >= ${lower_port}) and (tcp.SrcPort <= ${higher_port})) and (ip.SrcAddr == ${address}) and (ip.DstAddr == ${unreachable})" 16' -NoNewWindow`, @@ -202,8 +205,10 @@ function setupRouting(unreachable, whirlpool_ip, containerized, lower_port, high {}, "ignore" ); - else + else if (firewall == FIREWALL_MODE_CONTAINER) runCommand(`iptables -A FORWARD -o ${iface} ! -s ${whirlpool_ip} -d ${unreachable} -p tcp -j DROP`); + else + throw Error(`Unknown firewall mode: ${firewall}!`); print(`Accessing ${unreachable} is no longer possible!`, silent); } @@ -239,5 +244,5 @@ const args = parseArguments(); const whirlpoolIP = getWhirlpoolIP(args.silent); const { iface, address } = getOutputConnection(args.target); await launchWhirlpool(args.engine, whirlpoolIP, args.silent); -setupRouting(args.target, whirlpoolIP, args.containerized, args.lower_port, args.higher_port, iface, address, args.silent); +setupRouting(args.target, whirlpoolIP, args.firewall, args.lower_port, args.higher_port, iface, address, args.silent); print(whirlpoolIP, !args.silent); diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 38a39c9f..55f21b61 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -164,7 +164,7 @@ jobs: with: target: ${{ env.TARGET_ADDRESS }} container-engine: podman - configure-host: false + firewall-mode: container test-command: ${{ env.TEST_COMMAND }} test-runner: make -C viridian/reef/nm_plugin -s --no-print-directory TEST_COMMAND="bash -c \"{0}\"" test From 9f0fa12b2085fd9f96766b81be5ba118e3ff7f89 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 17:33:17 +0100 Subject: [PATCH 66/67] curl args --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 55f21b61..5c35ec5c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -127,7 +127,7 @@ jobs: runs-on: ubuntu-latest env: TARGET_ADDRESS: 1.1.1.1 - TEST_COMMAND: curl -v -I --fail --max-time 15 https://1.1.1.1 + TEST_COMMAND: curl --help strategy: fail-fast: false matrix: From 3a85bcc90c9bbbae813591bda667c705bfebbf31 Mon Sep 17 00:00:00 2001 From: pseusys Date: Sat, 29 Nov 2025 20:08:20 +0100 Subject: [PATCH 67/67] test command changed --- .github/actions/setup-server/action.yml | 12 +++++++----- .github/workflows/test.yml | 9 ++++----- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/actions/setup-server/action.yml b/.github/actions/setup-server/action.yml index 479f031b..e6ff32a6 100644 --- a/.github/actions/setup-server/action.yml +++ b/.github/actions/setup-server/action.yml @@ -16,11 +16,13 @@ inputs: description: The minimum source port number that will be used for testing higher-port: description: The maximum source port number that will be used for testing - test-command: - description: Test command for no VPN access test test-runner: - description: Shell wrapper that would be used for containerized test command execution + description: Shell wrapper that would be used for running 'test-args' default: ${{ runner.os == 'Linux' && 'bash -c "{0}"' || 'powershell -Command "{0}"' }} + test-args: + description: Test command for no VPN access test, will be executed in 'test-runner' + test-command: + description: Test command for no VPN access test, will be executed as it is outputs: connection-certificate: @@ -107,6 +109,6 @@ runs: echo "connection-certificate=${CONNECTION_CERTIFICATE_FILE}" >> $GITHUB_OUTPUT - name: Test Echo Server Access (no VPN) - if: ${{ inputs.test-command }} + if: ${{ inputs.test-command || inputs.test-args }} shell: bash - run: ${{ format(inputs.test-runner, inputs.test-command) }} && exit 1 || true + run: ${{ inputs.test-command || format(inputs.test-runner, inputs.test-args) }} && exit 1 || true diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5c35ec5c..afa8bc77 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -63,7 +63,7 @@ jobs: target: ${{ env.TARGET_ADDRESS }} lower-port: ${{ env.TARGET_LOWER_PORT }} higher-port: ${{ env.TARGET_HIGHER_PORT }} - test-command: ${{ env.TEST_COMMAND }} --local-port 44443 + test-args: ${{ env.TEST_COMMAND }} --local-port 44443 - name: Test Viridian Algae PORT (standalone) ๐Ÿงช working-directory: viridian/algae @@ -112,7 +112,7 @@ jobs: target: ${{ env.TARGET_ADDRESS }} lower-port: ${{ env.TARGET_LOWER_PORT }} higher-port: ${{ env.TARGET_HIGHER_PORT }} - test-command: ${{ env.TEST_COMMAND }} --local-port 44443 + test-args: ${{ env.TEST_COMMAND }} --local-port 44443 - name: Test Viridian Reef PORT (integration) ๐Ÿงช working-directory: viridian/reef @@ -127,7 +127,7 @@ jobs: runs-on: ubuntu-latest env: TARGET_ADDRESS: 1.1.1.1 - TEST_COMMAND: curl --help + TEST_COMMAND: curl -v -I --fail --max-time 15 https://1.1.1.1 strategy: fail-fast: false matrix: @@ -165,8 +165,7 @@ jobs: target: ${{ env.TARGET_ADDRESS }} container-engine: podman firewall-mode: container - test-command: ${{ env.TEST_COMMAND }} - test-runner: make -C viridian/reef/nm_plugin -s --no-print-directory TEST_COMMAND="bash -c \"{0}\"" test + test-command: make -C viridian/reef/nm_plugin -s --no-print-directory TEST_COMMAND="${{ env.TEST_COMMAND }}" test - name: Test Viridian Reef PORT ๐Ÿงช working-directory: viridian/reef/nm_plugin