From 91a8f753c6bb895cd7b1eddce783a74a29b47f14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20W=C3=A4ckerlin?= Date: Sat, 10 Oct 2015 15:00:06 +0000 Subject: [PATCH] new for loop successfull tested --- examples/SwissSign_Silver_CA_-_G2.pem | 33 --------------------------- examples/ca.pem | 25 ++++++++++++++++++++ examples/client.key | 18 +++++++++++++++ examples/client.pem | 20 ++++++++++++++++ examples/makefile.am | 9 +++++--- examples/test-commands.wt | 28 +++++++++++++++++++++-- src/commands.hxx | 4 +++- 7 files changed, 98 insertions(+), 39 deletions(-) delete mode 100644 examples/SwissSign_Silver_CA_-_G2.pem create mode 100644 examples/ca.pem create mode 100644 examples/client.key create mode 100644 examples/client.pem diff --git a/examples/SwissSign_Silver_CA_-_G2.pem b/examples/SwissSign_Silver_CA_-_G2.pem deleted file mode 100644 index 67a172c..0000000 --- a/examples/SwissSign_Silver_CA_-_G2.pem +++ /dev/null @@ -1,33 +0,0 @@ ------BEGIN CERTIFICATE----- -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 ------END CERTIFICATE----- diff --git a/examples/ca.pem b/examples/ca.pem new file mode 100644 index 0000000..9268f87 --- /dev/null +++ b/examples/ca.pem @@ -0,0 +1,25 @@ +-----BEGIN CERTIFICATE----- +MIIEMTCCAxmgAwIBAgIJAPE0R7DheN2SMA0GCSqGSIb3DQEBCwUAMIGuMQswCQYD +VQQGEwJDSDESMBAGA1UECAwJWsODwrxyaWNoMRMwEQYDVQQHDApXaW50ZXJ0aHVy +MSgwJgYDVQQKDB9odHRwczovL2Rldi5tYXJjLndhZWNrZXJsaW4ub3JnMSgwJgYD +VQQDDB9odHRwczovL2Rldi5tYXJjLndhZWNrZXJsaW4ub3JnMSIwIAYJKoZIhvcN +AQkBFhNtYXJjQHdhZWNrZXJsaW4ub3JnMB4XDTE1MTAxMDE0MTMyM1oXDTE1MTEw +OTE0MTMyM1owga4xCzAJBgNVBAYTAkNIMRIwEAYDVQQIDAlaw4PCvHJpY2gxEzAR +BgNVBAcMCldpbnRlcnRodXIxKDAmBgNVBAoMH2h0dHBzOi8vZGV2Lm1hcmMud2Fl +Y2tlcmxpbi5vcmcxKDAmBgNVBAMMH2h0dHBzOi8vZGV2Lm1hcmMud2FlY2tlcmxp +bi5vcmcxIjAgBgkqhkiG9w0BCQEWE21hcmNAd2FlY2tlcmxpbi5vcmcwggEiMA0G +CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI7jMSFLEkPOo6Y6X9tNAmgmoAUvYk +9eFb6Ujvk9hcZFriLNPsHXBiMNP78OxDUSAbip5CxEWa3F6i+GbBV+oiPrdIv1GG +W0jfKTQHMlEPdSc4mREickN/LMiZ/RA9/Z1ZSNxfNkV3tNr7nFbvRZx9wj1EMwOD +ynsuT06QZ/1H9LLU00EbeoE7VS/Ef/kE0YvQcZFbMu7hdMunQQ6Q3mXu1+hs5M9j +4ZnYUpvevpQGdCA1ekBXAxX0ekY1nTQ2iwzX/xWJK86JdMZOUj+BtidOrz+SVgCB +faPVDRERpj7HKJeQfkHz/KAdjsFY2Zc54sbIGKKG5MZ6dUDoeXhxi2EfAgMBAAGj +UDBOMB0GA1UdDgQWBBT5zUd7OzoG3GHY8EyZ3AbYU9pHxTAfBgNVHSMEGDAWgBT5 +zUd7OzoG3GHY8EyZ3AbYU9pHxTAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBCwUA +A4IBAQCFTKmX9bSALBUogsuMtda+tjYzbc0re9kisTTziUBVzs/N38GFzC8NIq35 +hD81we/CvqpF9SVV0vGraW+83T618gW8bGbLQaCkyd4tqglSJechKKVSCAEJ5NlV +LW+ci/+Ge2MYISipJej3JwXq4Dy2YSUNKTi+NGuuZ1XOuTSBbiKBV1cdIrXvT8CV +YgcKG1yDEbHvoqOIorH3DYtINrHF7HdsL6QdWBwlTHIJQScyLpmKBWuwTnSwLGPQ +o1Klb+ZghSQx2bmAtjNLowGyEjeYNDusr800wESWIaV5DruNU2uNISbP9O7jhQVJ +Mc5hQ+EcggMkg86dY6EFzp4ydpHq +-----END CERTIFICATE----- diff --git a/examples/client.key b/examples/client.key new file mode 100644 index 0000000..3050e63 --- /dev/null +++ b/examples/client.key @@ -0,0 +1,18 @@ +-----BEGIN RSA PRIVATE KEY----- +Proc-Type: 4,ENCRYPTED +DEK-Info: DES-EDE3-CBC,C98071015089F702 + +XwT94ie6eL0eUr/1HqIcEOYnhn79TCSKMBTnQgjW4Am6jVZ9AUJw3EJbeC3hiA86 ++T14C4FIhhNxC6yzmDHjVMWAb1bKJqYHKwktE5e0dPV4u3WRSma/w15TtXriP+Nt +YEQnMkjRrS1BmI0uLoGLtNgnTq/IdICPIKcYCUFPu1F0kbx6+ZRJfkLwYN+b3Xe7 +iRpXo/mk3P+FDVdY80K+MsERcewWlD6FB0APLSKDtc/BHht8no63Cozn/ogwkJmI +rFlA1svhQ2Evtu5IYSHxBbVjzBfAnwJjqGuE97YRE/ATbbu699WCjoT2Py4JD/08 +PJPIcLo+usdfPvz9mpLxnnI4FOq3KcJlPUzg+VfQZ6foPRlr3nnTLgGLda4UQDTf +ElKIBczLvw9HMT/iEng5dfeLuxENZ4XmMCTjkqXq8kexc9el8oqtObTNs0bbhyAs +35f91CYzSTOsCT0CWMbkk6tAwtbWJPmaEGFtaixiyYCdDVR8W01wyYdmyMLoTLFG +NHmZGiTJcvgZkf2XA/qX1SDonCoWqJ457PsZtdLgti5fFnqEqfkjt1eltceODl3p +JvfPJvt/ZAVJPxqcp2uHqZ3TGmiKirWvd4iwKMjMSvAQVMimJ2/Y30PR+QhzuJY/ +A5vpLfqDXHm3nRgy7yrNe7FYXvCjzNbVTFZ96oh1c4wy88RG0xxbcl+lUcNRCX9C +sqeOpTJu1g4SUUzop+pGEXtwIpnSsPTsZ6LPDRq6LI4kkUMltwXoxfWu7hbr/nS7 +GBru8hZRF3mx2yRqqYiZnMQR/lZAG5AThkeKFbsSWOEoOCAQnnzX6A== +-----END RSA PRIVATE KEY----- diff --git a/examples/client.pem b/examples/client.pem new file mode 100644 index 0000000..807066a --- /dev/null +++ b/examples/client.pem @@ -0,0 +1,20 @@ +-----BEGIN CERTIFICATE----- +MIIDQDCCAigCAQMwDQYJKoZIhvcNAQELBQAwga4xCzAJBgNVBAYTAkNIMRIwEAYD +VQQIDAlaw4PCvHJpY2gxEzARBgNVBAcMCldpbnRlcnRodXIxKDAmBgNVBAoMH2h0 +dHBzOi8vZGV2Lm1hcmMud2FlY2tlcmxpbi5vcmcxKDAmBgNVBAMMH2h0dHBzOi8v +ZGV2Lm1hcmMud2FlY2tlcmxpbi5vcmcxIjAgBgkqhkiG9w0BCQEWE21hcmNAd2Fl +Y2tlcmxpbi5vcmcwHhcNMTUxMDEwMTQxODE5WhcNMTUxMTA5MTQxODE5WjCBoDEL +MAkGA1UEBhMCQ0gxEjAQBgNVBAgMCVrDg8K8cmljaDETMBEGA1UEBwwKV2ludGVy +dGh1cjEoMCYGA1UECgwfaHR0cHM6Ly9kZXYubWFyYy53YWVja2VybGluLm9yZzEa +MBgGA1UEAwwRTWFyYyBXw4PCpGNrZXJsaW4xIjAgBgkqhkiG9w0BCQEWE21hcmNA +d2FlY2tlcmxpbi5vcmcwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALGZ1nGC +RHEStwua0bD04ImB19LwG1IyqG9tEXOgmtFZzit8xsfzcovMQv26yCgtlxiSSalP +HFfvZ7K3AIdT5JmoImzQv4RHMCYKTFjMTLdkAzHt2KOTQ7lpH3pueV0szLYYAlPB +Y13yN1C+NEK4gB3EqDSOv5PH4VBcujRK+gwrAgMBAAEwDQYJKoZIhvcNAQELBQAD +ggEBALRENDQLg2shfXSW4xG/oPad4XaFMLeynS9pQgX2+uHUYdb4m1c/fhCv9mXl +Y5Cj0zgFcO5ugvE91OiYog+9AZ/W/LAvD883IeQkUW2VVHXP1uKt4a2Ru1WQj6vV +79WEvQj5YaX9PP2pgRzeTXnASYrk3apfcx2D6ZZDICzpQLVaWQWyXXe43KG8JvvS +uuCOw7f1fuAZfa6LyKeisUBf0tX1Ow8NeYJqJ12Vuesk+E7Tw98oUEffnps7rOnA +eJilOOEcQYmjTdO2RfUVGRBoWIDeyivsMU3p0lNuQrjZaxewUjmIt+n/ZYFYd7yr +EjI+25K++7QCVDGKT/X4Rddoc3o= +-----END CERTIFICATE----- diff --git a/examples/makefile.am b/examples/makefile.am index e3d79a9..984469c 100644 --- a/examples/makefile.am +++ b/examples/makefile.am @@ -15,7 +15,10 @@ TEST_EXTENSIONS = .wt WT_LOG_COMPILER = ${top_builddir}/src/webrunner AM_WT_LOG_FLAGS = -x test-output.xml -p ${srcdir} -EXTRA_DIST = ${TESTS} SwissSign_Silver_CA_-_G2.pem +EXTRA_DIST = ${TESTS} ca.pem client.pem client.key -CLEANFILES = test-output.xml attachments -MAINTAINERCLEANFILES = makefile.in attachments +maintainer-clean-local: + -rm -r attachments + +CLEANFILES = test-output.xml +MAINTAINERCLEANFILES = makefile.in diff --git a/examples/test-commands.wt b/examples/test-commands.wt index 9bb2e5f..9fb79b9 100644 --- a/examples/test-commands.wt +++ b/examples/test-commands.wt @@ -6,7 +6,7 @@ testcase Test Certificate Load # Load a SwissSign root certificate, so that it is accepted in the # following tests. Normally this is only necessary if you use # self-signed certificates, that are unknown by qt. -ca-certificate SwissSign_Silver_CA_-_G2.pem +ca-certificate ca.pem testcase Test Variable Definition # set a variable to a value @@ -62,4 +62,28 @@ clicktype javascript testcase Test Load Client Certificate # define a client certificate to authenticate to a server -#client-certificate certfile.pem keyfile.pem mypassword +client-certificate client.pem client.key password + +testcase Test For Loop +# test the for loop feature +# first run with a gven list +execute bash + echo -n "test:" > testfile +for VAR -> 1, 2, 3, 4 + execute bash + echo -n "-VAR;">> testfile +set RESULT + execute bash + cat testfile + rm testfile +check RESULT = test:-1;-2;-3;-4; +# then run with a given global value +set VAR = 5, 6, 7, 8, 9 +for VAR + execute bash + echo -n "-VAR;">> testfile +set RESULT + execute bash + cat testfile + rm testfile +check RESULT = -5;-6;-7;-8;-9; diff --git a/src/commands.hxx b/src/commands.hxx index db2a146..2f43697 100644 --- a/src/commands.hxx +++ b/src/commands.hxx @@ -178,6 +178,7 @@ class Command: public QObject { return commands; } QStringList commaSeparatedList(QString value) { + value=value.trimmed(); if (!value.size()) return QStringList(); switch (value.size()>1&&value.at(0)==value.at(value.size()-1) ?value.at(0).toLatin1():'\0') { @@ -1830,7 +1831,8 @@ class ClientCertificate: public Command { if (cert.isNull()) throw NotACertificate(filename); sslConfig.setLocalCertificate(cert); filename = script->replacevars(_keyfile); - QFile keyfile(filename); + QFile keyfile(script->path()+filename); + if (!keyfile.exists()) keyfile.setFileName(filename); if (!keyfile.exists() || !keyfile.open(QIODevice::ReadOnly)) throw FileNotFound(filename); keyfile.open(QIODevice::ReadOnly);