History log of /plugin/captcha/action.php (Results 1 – 25 of 29)
Revision Date Author Comments
# 194d3386 22-Jan-2026 Andreas Gohr <gohr@cosmocode.de>

Move IpCounter to date-based tmpdir storage with daily cleanup

IpCounter files were stored in the cache directory without cleanup,
causing inode exhaustion on busy sites. Files are now stored in
tmp

Move IpCounter to date-based tmpdir storage with daily cleanup

IpCounter files were stored in the cache directory without cleanup,
causing inode exhaustion on busy sites. Files are now stored in
tmpdir/captcha/ip/Y-m-d/ with automatic daily cleanup via indexer.

Also reorganizes FileCookie to tmpdir/captcha/cookie/Y-m-d/ for
consistency and moves timeout config loading into IpCounter constructor.

fixes #146

show more ...


# 563fb566 22-Jan-2026 Andreas Gohr <gohr@cosmocode.de>

Add exponential timeout for failed login attempts

Introduces a configurable brute-force protection mechanism that enforces
increasing wait times between login attempts. The timeout doubles with
each

Add exponential timeout for failed login attempts

Introduces a configurable brute-force protection mechanism that enforces
increasing wait times between login attempts. The timeout doubles with
each failure (e.g., 5s → 10s → 20s → ...) up to a configurable maximum.

New settings:
- logindenial: Base timeout in seconds (0 to disable)
- logindenial_max: Maximum timeout cap (default 1 hour)

The feature works independently of CAPTCHA protection - failed attempts
are tracked per IP using the existing IpCounter mechanism, and users
are shown the remaining wait time when blocked.

show more ...


# 5e79b2ee 06-Dec-2023 Andreas Gohr <andi@splitbrain.org>

clean up action.php, remove support for deprecated forms


# c6d794b3 06-Dec-2023 Andreas Gohr <andi@splitbrain.org>

move file cookies to class


# 09b1e97e 06-Dec-2023 Andreas Gohr <andi@splitbrain.org>

first go at cleaning up the code


# 64382f29 27-Aug-2022 Andreas Gohr <andi@splitbrain.org>

use $INPUT for access to $_SERVER. fixes #131


# c0439b03 04-Aug-2022 Andreas Gohr <andi@splitbrain.org>

fix form handling

The recent login protect change actually influenced all forms instead
only applying to the login form


# 31c8e2bd 25-Jul-2022 Andreas Gohr <andi@splitbrain.org>

fix failed login counter. closes #129

Fixes two problems:

* every request was counted as a failed login because $_REQUEST[u] is
nearly always set (to an empty string)
* the captcha entry was disp

fix failed login counter. closes #129

Fixes two problems:

* every request was counted as a failed login because $_REQUEST[u] is
nearly always set (to an empty string)
* the captcha entry was displayed one request too late, because the
event registration happened before the login fail counting

show more ...


# 969b14c4 11-Jan-2022 Andreas Gohr <andi@splitbrain.org>

added bruteforce protection on login

The new default for protecting the login now takes failed logins from
the originating IP into account.


# 18622736 11-Jan-2022 Andreas Gohr <andi@splitbrain.org>

auto reformat code


# 1c08a51c 10-Nov-2021 Andreas Gohr <andi@splitbrain.org>

add compatibility for new FORM_* events


# 3718d442 16-Jun-2017 Moisés Braga Ribeiro <moisesbr@gmail.com>

Updated comment


# 49a3e24e 15-Jun-2017 Moisés Braga Ribeiro <moisesbr@gmail.com>

Highlighted CAPTCHA before submit button


# 5d59bd09 01-Feb-2017 Andreas Gohr <andi@splitbrain.org>

update the lastrun file correctly


# cde3ece1 01-Feb-2017 Andreas Gohr <andi@splitbrain.org>

clean up old captcha cookies

Old cookies are now cleared once per day.


# 643f15bd 17-Apr-2015 Andreas Gohr <andi@splitbrain.org>

optionally require a CAPTCHA on login

makes plugin:captchalogin obsolete


# f74276b8 17-Apr-2015 Andreas Gohr <andi@splitbrain.org>

now protects the password reset mechanism as well


# bd26d35b 17-Apr-2015 Andreas Gohr <andi@splitbrain.org>

a bit cleaner way of handling the different modes


# 6ee10a68 17-Apr-2015 Andreas Gohr <andi@splitbrain.org>

removed config for registration

I don't see any reason why anyone should ever switch this off


# 7218f96c 17-Apr-2015 Andreas Gohr <andi@splitbrain.org>

removed deprecated events


# c2695b40 04-Jan-2014 Andreas Gohr <andi@splitbrain.org>

some reformatting


# b10673ee 06-Jan-2010 Andreas Gohr <andi@splitbrain.org>

moved to new plugin.info.txt format


# 77e00bf9 03-Jan-2009 Andreas Gohr <andi@splitbrain.org>

Moved some parts to a helper plugin for reuse in other plugins

darcs-hash:20090103171233-7ad00-db4cae1fea54c663224160de8bbebafd251846c6.gz


# 3d3f58a5 16-Sep-2008 Andreas Gohr <andi@splitbrain.org>

no longer rely on srand() which does not work on suhosin

darcs-hash:20080916184042-7ad00-5d037cac440d8f11077a1ae01af4242bf42d36ad.gz


# 1b900c88 14-Aug-2007 Andreas Gohr <andi@splitbrain.org>

italian translation

darcs-hash:20070814044917-7ad00-5ebcad82704d0ba15397298b1bf0652db57f4351.gz


12