4 1.0.4 released 2013-07-17
8 - When secret key was not explicitly set, it was not being used
9 by the csrf_hash() function. Thanks sparticvs for reporting.
13 - The default 'CSRF check failed' page now offers a handy 'Try
14 again' button, which resubmits the form.
18 - The fix for 1.0.3 inadvertantly turned off XMLHttpRequest
19 overloading for all browsers; it has now been fixed to only
22 1.0.3 released 2012-01-31
26 - Internet Explorer 8 adds support for XMLHttpRequest.prototype,
27 but this support is broken for method overloading. We
28 explicitly disable JavaScript overloading for Internet Explorer.
29 Thanks Kelly Lu for reporting. <lubird@gmail.com>
31 - A global declaration was omitted, resulting in a variable
32 not being properly introduced in PHP 5.3. Thanks Whitney Beck for
33 reporting. <whitney.a.beck@gmail.com>
35 1.0.2 released 2009-03-08
39 - Due to a typo, csrf-magic accidentally treated the secret key
40 as always present. This means that there was a possible CSRF
41 attack against users without any cookies. No attacks in the
42 wild were known at the time of this release. Thanks Jakub
45 1.0.1 released 2008-11-02
49 - Support for composite tokens; this also fixes a bug with using
50 IP-based tokens for users with cookies disabled.
52 - Native support cookie tokens; use csrf_conf('cookie', $name) to
53 specify the name of a cookie that the CSRF token should be
54 placed in. This is useful if you have a Squid cache, and need
55 to configure it to ignore this token.
57 - Tips/tricks section in README.txt.
59 - There is now a two hour expiration time on all tokens. This
60 can be modified using csrf_conf('expires', $seconds).
62 - ClickJacking protection using an iframe breaker. Disable with
63 csrf_conf('frame-breaker', false).
67 - CsrfMagic.send() incorrectly submitted GET requests twice,
68 once without the magic token and once with the token. Reported
69 by Kelly Lu <lubird@gmail.com>.