4 1.0.5 released 2014-07-24
8 - In some server environments, IP address was not being detected
9 properly. Thanks Bianka Martinovic for reporting.
13 - Hashing now uses an HMAC to prevent length extension attacks.
17 - New option 'disable' which allows you to conditionally disable
18 the CSRF protection. Requested by Justin Carlson.
20 1.0.4 released 2013-07-17
24 - When secret key was not explicitly set, it was not being used
25 by the csrf_hash() function. Thanks sparticvs for reporting.
29 - The default 'CSRF check failed' page now offers a handy 'Try
30 again' button, which resubmits the form.
34 - The fix for 1.0.3 inadvertantly turned off XMLHttpRequest
35 overloading for all browsers; it has now been fixed to only
38 1.0.3 released 2012-01-31
42 - Internet Explorer 8 adds support for XMLHttpRequest.prototype,
43 but this support is broken for method overloading. We
44 explicitly disable JavaScript overloading for Internet Explorer.
45 Thanks Kelly Lu for reporting. <lubird@gmail.com>
47 - A global declaration was omitted, resulting in a variable
48 not being properly introduced in PHP 5.3. Thanks Whitney Beck for
49 reporting. <whitney.a.beck@gmail.com>
51 1.0.2 released 2009-03-08
55 - Due to a typo, csrf-magic accidentally treated the secret key
56 as always present. This means that there was a possible CSRF
57 attack against users without any cookies. No attacks in the
58 wild were known at the time of this release. Thanks Jakub
61 1.0.1 released 2008-11-02
65 - Support for composite tokens; this also fixes a bug with using
66 IP-based tokens for users with cookies disabled.
68 - Native support cookie tokens; use csrf_conf('cookie', $name) to
69 specify the name of a cookie that the CSRF token should be
70 placed in. This is useful if you have a Squid cache, and need
71 to configure it to ignore this token.
73 - Tips/tricks section in README.txt.
75 - There is now a two hour expiration time on all tokens. This
76 can be modified using csrf_conf('expires', $seconds).
78 - ClickJacking protection using an iframe breaker. Disable with
79 csrf_conf('frame-breaker', false).
83 - CsrfMagic.send() incorrectly submitted GET requests twice,
84 once without the magic token and once with the token. Reported
85 by Kelly Lu <lubird@gmail.com>.