diff --git a/cbox-tree.d/usr/share/cryptobox/templates/config_form.cs b/cbox-tree.d/usr/share/cryptobox/templates/config_form.cs
index f774282..6ba3682 100644
--- a/cbox-tree.d/usr/share/cryptobox/templates/config_form.cs
+++ b/cbox-tree.d/usr/share/cryptobox/templates/config_form.cs
@@ -5,8 +5,8 @@
enctype="application/x-www-form-urlencoded">
-
-
+
+
diff --git a/cbox-tree.d/usr/share/cryptobox/templates/init_form.cs b/cbox-tree.d/usr/share/cryptobox/templates/init_form.cs
index 3eb3ebd..e363b7f 100644
--- a/cbox-tree.d/usr/share/cryptobox/templates/init_form.cs
+++ b/cbox-tree.d/usr/share/cryptobox/templates/init_form.cs
@@ -5,14 +5,13 @@
-
-
-
+
+
+
-
diff --git a/cbox-tree.d/var/www/cgi-bin/cryptobox.pl b/cbox-tree.d/var/www/cgi-bin/cryptobox.pl
index 3a521d3..d92a88f 100755
--- a/cbox-tree.d/var/www/cgi-bin/cryptobox.pl
+++ b/cbox-tree.d/var/www/cgi-bin/cryptobox.pl
@@ -391,8 +391,8 @@ if ( ! &check_ssl()) {
}
#################### init_do ########################
} elsif ($action eq 'init_do') {
- my $admin_pw = &get_admin_pw;
- if ($admin_pw ne '' && $admin_pw ne $query->param('admin_password')) {
+ my $current_admin_pw = &get_admin_pw;
+ if ($current_admin_pw ne '' && $current_admin_pw ne $query->param('current_admin_password')) {
$pagedata->setValue('Data.Warning', 'WrongAdminPassword');
$pagedata->setValue('Data.Action', 'init_form');
} elsif ($query->param('admin_password') ne $query->param('admin_password2')) {
@@ -435,8 +435,8 @@ if ( ! &check_ssl()) {
$pagedata->setValue('Data.Warning', 'NotInitialized');
$pagedata->setValue('Data.Action', 'init_form');
} else {
- my $admin_pw = &get_admin_pw;
- if ( $admin_pw ne '' && $admin_pw ne $query->param('admin_password')) {
+ my $current_admin_pw = &get_admin_pw;
+ if ($current_admin_pw ne '' && $current_admin_pw ne $query->param('current_admin_password')) {
$pagedata->setValue('Data.Warning', 'WrongAdminPassword');
$pagedata->setValue('Data.Action', 'config_form');
} elsif ( ! &validate_language($query->param('language'))) {
diff --git a/logo/evil_stick.svg b/logo/evil_stick.svg
index 12d1586..adb361e 100644
--- a/logo/evil_stick.svg
+++ b/logo/evil_stick.svg
@@ -667,6 +667,16 @@
xlink:href="#path20797"
y="0.0000000"
x="0.0000000" />
+
-
diff --git a/logo/evil_stick2.png b/logo/evil_stick2.png
new file mode 100644
index 0000000..a7a48a9
Binary files /dev/null and b/logo/evil_stick2.png differ
diff --git a/logo/evil_stick2.svg b/logo/evil_stick2.svg
new file mode 100644
index 0000000..4153b9b
--- /dev/null
+++ b/logo/evil_stick2.svg
@@ -0,0 +1,820 @@
+
+
+
diff --git a/scripts/validate.sh b/scripts/validate.sh
index f193d85..ff1d3e0 100755
--- a/scripts/validate.sh
+++ b/scripts/validate.sh
@@ -119,9 +119,6 @@ case "$ACTION" in
do echo -n "Validating $a ..."
"$0" check "$a"
echo
- echo -n "Waiting 20 seconds ..."
- sleep 20
- echo
done
;;
* )
diff --git a/validation/test-cases/4-admin_pw/010-init_different_admin_pw/description b/validation/test-cases/4-admin_pw/010-init_different_admin_pw/description
new file mode 100644
index 0000000..f18f3a2
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/010-init_different_admin_pw/description
@@ -0,0 +1 @@
+try initializing with different admin passwords
diff --git a/validation/test-cases/4-admin_pw/010-init_different_admin_pw/input.curl b/validation/test-cases/4-admin_pw/010-init_different_admin_pw/input.curl
new file mode 100644
index 0000000..72327b2
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/010-init_different_admin_pw/input.curl
@@ -0,0 +1,7 @@
+url https://_HOST_IP_DEFAULT_/cryptobox
+data action=init_do
+data password=hallo
+data password2=hallo
+data admin_password=root
+data admin_password2=rootA
+data confirm=ja%2C%20loesche%20alle%20Daten%21
diff --git a/validation/test-cases/4-admin_pw/010-init_different_admin_pw/output b/validation/test-cases/4-admin_pw/010-init_different_admin_pw/output
new file mode 100644
index 0000000..fd263a9
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/010-init_different_admin_pw/output
@@ -0,0 +1,7 @@
+Data.Config.IP=_HOST_IP_DEFAULT_
+Data.Config.Language=de
+Data.Config.TimeOut=30
+Data.Status.Config=1
+Data.Status.InitRunning=0
+Data.Status.IP=_HOST_IP_DEFAULT_
+Data.Status.Mounted=0
diff --git a/validation/test-cases/4-admin_pw/020-init_with_admin_pw/delay b/validation/test-cases/4-admin_pw/020-init_with_admin_pw/delay
new file mode 100644
index 0000000..d61f00d
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/020-init_with_admin_pw/delay
@@ -0,0 +1 @@
+90
diff --git a/validation/test-cases/4-admin_pw/020-init_with_admin_pw/description b/validation/test-cases/4-admin_pw/020-init_with_admin_pw/description
new file mode 100644
index 0000000..0e382f0
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/020-init_with_admin_pw/description
@@ -0,0 +1 @@
+initialize the box with admin password
diff --git a/validation/test-cases/4-admin_pw/020-init_with_admin_pw/input.curl b/validation/test-cases/4-admin_pw/020-init_with_admin_pw/input.curl
new file mode 100644
index 0000000..43c12eb
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/020-init_with_admin_pw/input.curl
@@ -0,0 +1,7 @@
+url https://_HOST_IP_DEFAULT_/cryptobox
+data action=init_do
+data password=hallo
+data password2=hallo
+data admin_password=root
+data admin_password2=root
+data confirm=ja%2C%20loesche%20alle%20Daten%21
diff --git a/validation/test-cases/4-admin_pw/020-init_with_admin_pw/output b/validation/test-cases/4-admin_pw/020-init_with_admin_pw/output
new file mode 100644
index 0000000..fd263a9
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/020-init_with_admin_pw/output
@@ -0,0 +1,7 @@
+Data.Config.IP=_HOST_IP_DEFAULT_
+Data.Config.Language=de
+Data.Config.TimeOut=30
+Data.Status.Config=1
+Data.Status.InitRunning=0
+Data.Status.IP=_HOST_IP_DEFAULT_
+Data.Status.Mounted=0
diff --git a/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/description b/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/description
new file mode 100644
index 0000000..5672ab6
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/description
@@ -0,0 +1 @@
+try to configure with wrong admin password
diff --git a/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/input.curl b/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/input.curl
new file mode 100644
index 0000000..a73291c
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/input.curl
@@ -0,0 +1,7 @@
+url https://_HOST_IP_DEFAULT_/cryptobox
+data action=config_do
+data language=de
+data timeout=5
+data ip=_HOST_IP_DEFAULT_
+data current_admin_password=rootA
+data confirm=ja%2C%20loesche%20alle%20Daten%21
diff --git a/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/output b/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/output
new file mode 100644
index 0000000..0f5b016
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/050-config_wrong_admin_pw/output
@@ -0,0 +1,7 @@
+Data.Config.IP=_HOST_IP_DEFAULT_
+Data.Config.Language=de
+Data.Config.TimeOut=30
+Data.Status.Config=1
+Data.Status.InitRunning=1
+Data.Status.IP=_HOST_IP_DEFAULT_
+Data.Status.Mounted=0
diff --git a/validation/test-cases/4-admin_pw/060-config_right_admin_pw/delay b/validation/test-cases/4-admin_pw/060-config_right_admin_pw/delay
new file mode 100644
index 0000000..d61f00d
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/060-config_right_admin_pw/delay
@@ -0,0 +1 @@
+90
diff --git a/validation/test-cases/4-admin_pw/060-config_right_admin_pw/description b/validation/test-cases/4-admin_pw/060-config_right_admin_pw/description
new file mode 100644
index 0000000..6a971d8
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/060-config_right_admin_pw/description
@@ -0,0 +1 @@
+configure with right admin password
diff --git a/validation/test-cases/4-admin_pw/060-config_right_admin_pw/input.curl b/validation/test-cases/4-admin_pw/060-config_right_admin_pw/input.curl
new file mode 100644
index 0000000..f9ae159
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/060-config_right_admin_pw/input.curl
@@ -0,0 +1,6 @@
+url https://_HOST_IP_DEFAULT_/cryptobox
+data action=config_do
+data language=de
+data timeout=5
+data ip=_HOST_IP_DEFAULT_
+data current_admin_password=root
diff --git a/validation/test-cases/4-admin_pw/060-config_right_admin_pw/output b/validation/test-cases/4-admin_pw/060-config_right_admin_pw/output
new file mode 100644
index 0000000..6104992
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/060-config_right_admin_pw/output
@@ -0,0 +1,7 @@
+Data.Config.IP=_HOST_IP_DEFAULT_
+Data.Config.Language=de
+Data.Config.TimeOut=5
+Data.Status.Config=1
+Data.Status.InitRunning=1
+Data.Status.IP=_HOST_IP_DEFAULT_
+Data.Status.Mounted=0
diff --git a/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/description b/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/description
new file mode 100644
index 0000000..648fe5e
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/description
@@ -0,0 +1 @@
+initialize the box with wrong admin password
diff --git a/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/input.curl b/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/input.curl
new file mode 100644
index 0000000..2bdadbd
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/input.curl
@@ -0,0 +1,8 @@
+url https://_HOST_IP_DEFAULT_/cryptobox
+data action=init_do
+data password=hallo
+data password2=hallo
+data current_admin_password=rootA
+data admin_password=root
+data admin_password2=root
+data confirm=ja%2C%20loesche%20alle%20Daten%21
diff --git a/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/output b/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/output
new file mode 100644
index 0000000..0f5b016
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/070-init_wrong_admin_pw/output
@@ -0,0 +1,7 @@
+Data.Config.IP=_HOST_IP_DEFAULT_
+Data.Config.Language=de
+Data.Config.TimeOut=30
+Data.Status.Config=1
+Data.Status.InitRunning=1
+Data.Status.IP=_HOST_IP_DEFAULT_
+Data.Status.Mounted=0
diff --git a/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/description b/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/description
new file mode 100644
index 0000000..9ada3d1
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/description
@@ -0,0 +1 @@
+remove admin password
diff --git a/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/input.curl b/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/input.curl
new file mode 100644
index 0000000..f5b4f03
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/input.curl
@@ -0,0 +1,6 @@
+url https://_HOST_IP_DEFAULT_/cryptobox
+data action=init_do
+data password=hallo
+data password2=hallo
+data current_admin_password=root
+data confirm=ja%2C%20loesche%20alle%20Daten%21
diff --git a/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/output b/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/output
new file mode 100644
index 0000000..0f5b016
--- /dev/null
+++ b/validation/test-cases/4-admin_pw/200-init_remove_admin_pw/output
@@ -0,0 +1,7 @@
+Data.Config.IP=_HOST_IP_DEFAULT_
+Data.Config.Language=de
+Data.Config.TimeOut=30
+Data.Status.Config=1
+Data.Status.InitRunning=1
+Data.Status.IP=_HOST_IP_DEFAULT_
+Data.Status.Mounted=0
diff --git a/validation/test-cases/README b/validation/test-cases/README
index c903f98..7391dd9 100644
--- a/validation/test-cases/README
+++ b/validation/test-cases/README
@@ -5,3 +5,4 @@ the validate-script requires the following directory structure:
- description - a short description of the setup
- input.curl - options for the request via curl
- output - the expected status output for this request (it is send as html comment)
+ - delay - [optional] may contain a delay after this test case in seconds