From 39edea830bb21153140194fd947c3615730792b8 Mon Sep 17 00:00:00 2001
From: Pea Nut <peanut2@systemli.org>
Date: Fri, 14 Jun 2024 09:38:26 +0200
Subject: [PATCH] Improve error handlig and logging when writing CA file to
 disk

---
 pkg/vpn/bitmask.go | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/pkg/vpn/bitmask.go b/pkg/vpn/bitmask.go
index 7fd32d4c..4a56b2f2 100644
--- a/pkg/vpn/bitmask.go
+++ b/pkg/vpn/bitmask.go
@@ -109,6 +109,15 @@ func Init() (*Bitmask, error) {
 		provider:         "",
 	}
 
+	err = ioutil.WriteFile(b.getTempCaCertPath(), config.CaCert, 0600)
+	if err != nil {
+		return nil, err
+	}
+
+	log.Debug().
+		Str("caCertPath", b.getTempCaCertPath()).
+		Msg("Sucessfully wrote OpenVPN CA certificate (hardcoded in the binary, not coming from API)")
+
 	// FIXME multiprovider: need to pass provider name early on
 	// XXX we want to block on these, but they can timeout if we're blocked.
 	b.checkForMOTD()
@@ -128,7 +137,6 @@ func Init() (*Bitmask, error) {
 			}
 	*/
 
-	err = ioutil.WriteFile(b.getTempCaCertPath(), config.CaCert, 0600)
 	go b.fetchGateways()
 	go b.openvpnManagement()
 
-- 
GitLab