aboutsummaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-09-18 14:51:39 -0600
committerJason A. Donenfeld <Jason@zx2c4.com>2019-09-23 15:29:18 +0200
commit66de239481b97164087b4e27ff295ec97d93c079 (patch)
tree430ef7b2e8695030b4a1a574d5759501cb89a0e0 /conf
parentglobal: use SECURITY_DESCRIPTOR apis from x/sys/windows (diff)
downloadwireguard-windows-66de239481b97164087b4e27ff295ec97d93c079.tar.xz
wireguard-windows-66de239481b97164087b4e27ff295ec97d93c079.zip
conf: do not create config folder and migrate if preset
Diffstat (limited to 'conf')
-rw-r--r--conf/migration_windows.go4
-rw-r--r--conf/path_windows.go2
-rw-r--r--conf/store.go4
3 files changed, 9 insertions, 1 deletions
diff --git a/conf/migration_windows.go b/conf/migration_windows.go
index d8d349f5..fb12eaf0 100644
--- a/conf/migration_windows.go
+++ b/conf/migration_windows.go
@@ -14,6 +14,10 @@ import (
)
func maybeMigrate(c string) {
+ if disableAutoMigration {
+ return
+ }
+
vol := filepath.VolumeName(c)
withoutVol := strings.TrimPrefix(c, vol)
oldRoot := filepath.Join(vol, "\\windows.old")
diff --git a/conf/path_windows.go b/conf/path_windows.go
index 2997114e..a53968c5 100644
--- a/conf/path_windows.go
+++ b/conf/path_windows.go
@@ -14,6 +14,7 @@ import (
var cachedConfigFileDir string
var cachedRootDir string
+var disableAutoMigration bool
func tunnelConfigurationsDirectory() (string, error) {
if cachedConfigFileDir != "" {
@@ -38,6 +39,7 @@ func tunnelConfigurationsDirectory() (string, error) {
// consumers of our libraries who might want to do strange things.
func PresetRootDirectory(root string) {
cachedRootDir = root
+ disableAutoMigration = true
}
func RootDirectory() (string, error) {
diff --git a/conf/store.go b/conf/store.go
index 504a0d01..21bd3a22 100644
--- a/conf/store.go
+++ b/conf/store.go
@@ -129,7 +129,9 @@ func LoadFromName(name string) (*Config, error) {
}
func LoadFromPath(path string) (*Config, error) {
- tunnelConfigurationsDirectory() // Provoke migrations, if needed.
+ if !disableAutoMigration {
+ tunnelConfigurationsDirectory() // Provoke migrations, if needed.
+ }
name, err := NameFromPath(path)
if err != nil {