summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjvoisin2020-12-31 16:04:34 +0100
committerjvoisin2020-12-31 16:04:34 +0100
commitc8ba12081260ea71d693b84ca5afbd163732c9fc (patch)
tree79d6a8bc00d7371aee79d362d68aca5fadbfa586
parent22793562313fd7efaeaa663d405357bbb788da5f (diff)
Add two tests for cookies encryption on php8
-rw-r--r--src/tests/cookies_php8/config/config_encrypted_cookies.ini3
-rw-r--r--src/tests/cookies_php8/encrypt_cookies4.phpt31
-rw-r--r--src/tests/cookies_php8/setcookie.phpt37
3 files changed, 71 insertions, 0 deletions
diff --git a/src/tests/cookies_php8/config/config_encrypted_cookies.ini b/src/tests/cookies_php8/config/config_encrypted_cookies.ini
new file mode 100644
index 0000000..4b50440
--- /dev/null
+++ b/src/tests/cookies_php8/config/config_encrypted_cookies.ini
@@ -0,0 +1,3 @@
1sp.global.secret_key("abcdef").cookie_env_var("REMOTE_ADDR");
2sp.cookie.name("super_cookie").encrypt();
3sp.auto_cookie_secure.enable();
diff --git a/src/tests/cookies_php8/encrypt_cookies4.phpt b/src/tests/cookies_php8/encrypt_cookies4.phpt
new file mode 100644
index 0000000..8b51838
--- /dev/null
+++ b/src/tests/cookies_php8/encrypt_cookies4.phpt
@@ -0,0 +1,31 @@
1--TEST--
2Cookie encryption in ipv6
3--SKIPIF--
4<?php if (!extension_loaded("snuffleupagus")) print "skip"; ?>
5<?php if (PHP_VERSION_ID < 80000) print "skip"; ?>
6--INI--
7sp.configuration_file={PWD}/config/config_encrypted_cookies.ini
8--COOKIE--
9--ENV--
10return <<<EOF
11REMOTE_ADDR=2001:0db8:0000:0000:0000:fe00:0042:8329
12HTTP_USER_AGENT=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/59.0.3071.109 Chrome/59.0.3071.109 Safari/537.36
13HTTPS=1
14EOF;
15--FILE--
16<?php
17setcookie("super_cookie", "super_value");
18setcookie("awful_cookie", "awful_value");
19setcookie("nice_cookie", "nice_value", 1, "1", "1", true, true);
20$ret = setcookie("", "Cookie with no name", 1, "1", "1", true, true);
21if ($ret == TRUE) {
22 echo "fail :/";
23}
24var_dump($_COOKIE);
25?>
26--EXPECTF--
27Fatal error: Uncaught ValueError: setcookie(): Argument #1 ($name) cannot be empty in %s/tests/cookies_php8/encrypt_cookies4.php:5
28Stack trace:
29#0 %s/tests/cookies_php8/encrypt_cookies4.php(5): setcookie('', 'Cookie with no ...', 1, '1', '1', true, true)
30#1 {main}
31 thrown in %s/tests/cookies_php8/encrypt_cookies4.php on line 5
diff --git a/src/tests/cookies_php8/setcookie.phpt b/src/tests/cookies_php8/setcookie.phpt
new file mode 100644
index 0000000..67f1f50
--- /dev/null
+++ b/src/tests/cookies_php8/setcookie.phpt
@@ -0,0 +1,37 @@
1--TEST--
2Set cookies.
3--SKIPIF--
4<?php if (!extension_loaded("snuffleupagus")) print "skip"; ?>
5<?php if (PHP_VERSION_ID < 80000) print "skip"; ?>
6--INI--
7sp.configuration_file={PWD}/config/config_encrypted_cookies.ini
8--COOKIE--
9--ENV--
10return <<<EOF
11REMOTE_ADDR=127.0.0.1
12HTTP_USER_AGENT=Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/59.0.3071.109 Chrome/59.0.3071.109 Safari/537.36
13HTTPS=1
14EOF;
15--FILE--
16<?php
17setcookie("name");
18setcookie("super_cookie");
19setcookie("name", "value");
20setcookie("name", "value1", 1);
21setcookie("name", "value2", 0);
22setcookie("name", "value", 1, "/super/path");
23setcookie("name", "value", 1, "/super/path", "super_domain");
24setcookie("name", "value", 1, "/super/path", "super_domain1", true);
25setcookie("name", "value", 1, "/super/path", "super_domain2", false);
26setcookie("name", "value", 1, "/super/path", "super_domain1", true, true);
27setcookie("name", "value", 1, "/super/path", "super_domain2", true, false);
28setcookie("name", "value", 1, "/super/path", "super_domain2", true, false, 1337);
29setcookie();
30echo '1337';
31?>
32--EXPECTF--
33Fatal error: Uncaught ArgumentCountError: setcookie() expects at most 7 arguments, 8 given in %s/tests/cookies_php8/setcookie.php:13
34Stack trace:
35#0 %s/tests/cookies_php8/setcookie.php(13): setcookie('name', 'value', 1, '/super/path', 'super_domain2', true, false, 1337)
36#1 {main}
37 thrown in %s/tests/cookies_php8/setcookie.php on line 13