diff options
author | Sebastian Lackner | 2017-11-19 13:30:04 +0100 |
---|---|---|
committer | rfjakob | 2017-11-21 23:37:06 +0100 |
commit | f3c777d5eaa682d878c638192311e52f9c204294 (patch) | |
tree | dc3fcf616371479abec93ab93688f9e2937e7d9d /internal/configfile/config_test.go | |
parent | 1b0426bcb23a1850f3a03619a15413281dc733e3 (diff) |
main: Add '-devrandom' commandline option
Allows to use /dev/random for generating the master key instead of the
default Go implementation. When the kernel random generator has been
properly initialized both are considered equally secure, however:
* Versions of Go prior to 1.9 just fall back to /dev/urandom if the
getrandom() syscall would be blocking (Go Bug #19274)
* Kernel versions prior to 3.17 do not support getrandom(), and there
is no check if the random generator has been properly initialized
before reading from /dev/urandom
This is especially useful for embedded hardware with low-entroy. Please
note that generation of the master key might block indefinitely if the
kernel cannot harvest enough entropy.
Diffstat (limited to 'internal/configfile/config_test.go')
-rw-r--r-- | internal/configfile/config_test.go | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/internal/configfile/config_test.go b/internal/configfile/config_test.go index dc796ea..b984a37 100644 --- a/internal/configfile/config_test.go +++ b/internal/configfile/config_test.go @@ -60,7 +60,7 @@ func TestLoadV2StrangeFeature(t *testing.T) { } func TestCreateConfDefault(t *testing.T) { - err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", false) + err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", false, false) if err != nil { t.Fatal(err) } @@ -80,8 +80,15 @@ func TestCreateConfDefault(t *testing.T) { } } +func TestCreateConfDevRandom(t *testing.T) { + err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", false, true) + if err != nil { + t.Fatal(err) + } +} + func TestCreateConfPlaintextnames(t *testing.T) { - err := CreateConfFile("config_test/tmp.conf", "test", true, 10, "test", false) + err := CreateConfFile("config_test/tmp.conf", "test", true, 10, "test", false, false) if err != nil { t.Fatal(err) } @@ -102,7 +109,7 @@ func TestCreateConfPlaintextnames(t *testing.T) { // Reverse mode uses AESSIV func TestCreateConfFileAESSIV(t *testing.T) { - err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", true) + err := CreateConfFile("config_test/tmp.conf", "test", false, 10, "test", true, false) if err != nil { t.Fatal(err) } |