bcb4e51a409d94ae670de96afb8483a4f7855294 |
|
01-Jan-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2018. |
ab5c28d0976c4e89d503f1fe9b1568f9a125e176 |
|
05-Dec-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
auth: Fix 'Password mismatch' casing consistency |
c147bff818798a979d93537f72f5c1f68f5d5ba8 |
|
24-Nov-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
global: Use t_buffer_create
sed -i -e 's/buffer_create_dynamic(pool_datastack_create(), */t_buffer_create(/g' |
42f8ce7c269d3f923d84193de37062717a12874a |
|
16-Oct-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
libpassword: Deinitialize hash iterator in password_scheme_detect
Otherwise it will leak memory |
1ebb6094e5105ba7ef521a0177c42d3ea81243f0 |
|
16-Oct-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
libpassword: Add BLF-CRYPT support independent of crypt |
0babe1cf4ee9b58e54de8d8f3afa4af0c6033ee8 |
|
16-Oct-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
libpassword: Add support for ARGON2 scheme |
605c40c77fc3851cb2845da1c5319e32c791592a |
|
02-Oct-2017 |
Sergey Kitov <sergey.kitov@open-xchange.com> |
auth: global rounds parameter replaced with argument to password_generate()
username and rounds parameter moved to a single
password_generate_params structure. |
f784d5bb8edbec88829524135cfa100129f5384d |
|
17-Aug-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Add/change switch case "fall through" comments
These fix warnings with gcc 7's -Wimplicit-fallthrough |
083675993c0b92a673dc14d810e4372de2c077b8 |
|
14-Aug-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
auth: Empty schemes cannot be aliases
Optimizes cases where empty scheme is compared to PLAIN |
512e3c94f603df12426158074a6bf729929c0b75 |
|
14-Aug-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
auth: Use strchr to split encoding and scheme
This is an optimization because usually strchr is faster |
f937937c966a6633f24f3de3bf7457c9612f3bb2 |
|
14-Aug-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
auth: Use hash table for schemes |
ace06232cfa0e99ecca1040e8553b3216d025768 |
|
11-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
auth: Use mem_equals_timing_safe() for all password hash comparisons.
It's unlikely these could be used to perform timing attacks, since the
attacker would have to have broken MD5/SHA badly enough to be able to
quickly generate string that result in wanted hashes. Still, the extra
cost is almost nothing and it's always better to be super paranoid! |
f1d759d0b4860cac29b5077ee423f9de8bb7d300 |
|
11-Apr-2017 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
auth: Make plaintext password comparisons safe against timing attacks |
2454dfa32c93c20a8522c6ed42fe057baaac9f9a |
|
01-Jan-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2017. |
2ac5f36aa7c2e7a07ba8815d43a6d7483f62e74c |
|
16-Dec-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Change string position/length from unsigned int to size_t
Mainly to avoid truncating >4GB strings, which might potentially cause
some security holes. Normally there are other limits, which prevent such
excessive strings from being created in the first place.
I'm sure this didn't find everything. Maybe everything could be found with
compiler warnings. -Wconversion kind of does it, but it gives way too many
unnecessary warnings.
These were mainly found with:
grep " = strlen"
egrep "unsigned int.*(size|len)" |
0175d37a5ae5a4d146ca41b684bd38d9b03683cb |
|
30-May-2016 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
Remove t_malloc in favour of t_malloc_no0
Using either t_malloc_no0 or t_malloc0 makes it clear whether the
allocated memory is zeroed or not. |
21e185f465bc20c5244866d1bf9ec70e5e002180 |
|
27-Apr-2016 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
auth: Add PBKDF2 password scheme |
02c335c23bf5fa225a467c19f2c063fb0dc7b8c3 |
|
12-Jan-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: freshen copyright
git ls-files | xargs perl -p -i -e 's/(\d+)-201[0-5]/$1-2016/g;s/ (201[0-5]) Dovecot/ $1-2016 Dovecot/' |
54a1b3574acab5f778843f7f1e04d2d26d61a852 |
|
09-Nov-2015 |
Timo Sirainen <tss@iki.fi> |
auth: Don't crash when trying to use CRYPT scheme when crypt() doesn't support DES |
7cb128dc4cae2a03a742f63ba7afee23c78e3af0 |
|
05-Jan-2015 |
Phil Carmody <phil@dovecot.fi> |
global: freshen copyright
Robomatically:
git ls-files | xargs perl -p -i -e 's/(\d+)-201[0-4]/$1-2015/g;s/ (201[0-4]) Dovecot/ $1-2015 Dovecot/'
Happy 2015 everyone!
Signed-off-by: Phil Carmody <phil@dovecot.fi> |
a8c5a86d183db25a57bf193c06b41e092ec2e151 |
|
04-Feb-2014 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2014. |
5a580c3a38ced62d4bcc95b8ac7c4f2935b5d294 |
|
02-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
Oops :) Update copyrights to 2013 without breaking all .c files. |
cca4ba2a504d70a9fe9fee37f8433997359de52c |
|
02-Feb-2013 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2013. |
5028f44d64e960bbf6c342fb2d7b786dd74ee6b6 |
|
18-Dec-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Added CLEAR as yet another alias to PLAIN/CLEARTEXT password scheme.
This apparently is used by Sun LDAP server. |
8455d9a9d1d0b851a5420ecf29719ceed2284ad6 |
|
19-Sep-2012 |
Florian Zeitz <florob@babelmonkeys.de> |
auth: Add and use SCRAM-SHA-1 password scheme |
0a3769a4ef3afbbbd05df38f43ec7382fd65a2b6 |
|
30-Aug-2012 |
Florian Zeitz <florob@babelmonkeys.de> |
lib: Generalize hmac to be hash independent |
7bd301fdbfefe7cef3576d19ece29c75ebe53baf |
|
24-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Make static analyzer happier. |
5f5870385cff47efd2f58e7892f251cf13761528 |
|
12-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2012. |
b6cfbf37127344b6c644cf7d65a360798fb06f66 |
|
09-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
auth: password_verify() now returns error string also for password mismatches. |
8e0265f999e2fb4be4add5437df12f780a89b44e |
|
26-Jan-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Added PLAIN-TRUNC password schmee.
The idea is to allow successful authentication when the original plaintext
password was stored truncated in the database. So e.g. user gave 123456789
as password, but database truncated it to 12345678. To make this
authentication work, {PLAIN-TRUNC}8-12345678 password allows successful
authentication with any password that begins with 12345678. With the "8-"
prefix this prefix matching is done only when the password after it is
exactly 8 characters. |
ce6c2809b8a1673372a683716566d973efd2f6ee |
|
01-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
auth: If password data isn't valid for specified scheme, give a better error message. |
06d948c4adc2bfd2934f74c8046bcc1d567426d8 |
|
23-May-2011 |
Timo Sirainen <tss@iki.fi> |
auth: Don't log warnings/errors when guessing a password's scheme. |
2e37d45867d081db150ab78dad303b9077aea24f |
|
04-Mar-2011 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2011. |
183bea41fa640dc8117f3eb45ff935cd81377a84 |
|
04-Mar-2011 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2011. |
42fb278a57f1c6d7d5d0c7bd2318edb721dc0ec0 |
|
09-May-2010 |
Pascal Volk <user@localhost.localdomain.org> |
auth: added new password scheme names {BLF,SHA256,SHA512}-CRYPT.
Their availability depends on the used libc.
doveadm pw: added '-r rounds' option for the password schemes mentioned above.
--HG--
branch : HEAD |
ac9f94b71742d0c406b276c8b00f625a7a06a1d2 |
|
16-Apr-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Removed special case check for MD5-CRYPT from wrong password scheme checking.
--HG--
branch : HEAD |
9099d97f427d695a10826c3feb591a3ddc61be7a |
|
18-Feb-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Added SHA512 and SSHA512 password schemes.
Based on patch by Mark Washenberger.
--HG--
branch : HEAD |
e59faf65ce864fe95dc00f5d52b8323cdbd0608a |
|
25-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2010.
--HG--
branch : HEAD |
45f7508ca586fc67bb788ecc0f50c4eb2c300206 |
|
31-Dec-2009 |
Timo Sirainen <tss@iki.fi> |
auth_debug_passwords: If password is correct but scheme is wrong, try to detect and log it.
--HG--
branch : HEAD |
7bd72e4deca3cbf757dd1ea298486d9f3bc24226 |
|
02-Dec-2009 |
Timo Sirainen <tss@iki.fi> |
Use array_foreach() more.
--HG--
branch : HEAD |
02752bc8d64df8cd361f464e55422f7b3f2f143e |
|
25-Nov-2009 |
Timo Sirainen <tss@iki.fi> |
Removed buffer_create_static_hard().
buffer_create_data() handles most of the situations where it was wanted.
--HG--
branch : HEAD |
0afc67e19d59d5f8f4eca73903047a970b5f6016 |
|
21-May-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Handle crypt() failing.
--HG--
branch : HEAD |
4cbeaa5797f239edd30d19cc662b07a440d26e94 |
|
25-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
auth: hex vs. base64 autodetection didn't work with CRAM-MD5 scheme.
--HG--
branch : HEAD |
0a99de47bbf6a3eeb0229029c230a3868526d80a |
|
03-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
digest-md5 scheme generation was broken if username didn't contain @domain.
Broken by previous change to it.
--HG--
branch : HEAD |
446e518e4fe86ff40e33543445f4e99edf840a21 |
|
21-Feb-2009 |
Timo Sirainen <tss@iki.fi> |
DIGEST-MD5: Fixed authentication with user@domain usernames.
--HG--
branch : HEAD |
45312f52ff3a3d4c137447be4c7556500c2f8bf2 |
|
06-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2009.
--HG--
branch : HEAD |
b03dffa5d7122d52a7ed8870d381ce4d2ccc090a |
|
31-Dec-2008 |
Timo Sirainen <tss@iki.fi> |
auth: If MD5 scheme can't decode the password log an error.
--HG--
branch : HEAD |
e14ccef85097644c0c9de49d87cbcd67d1ad539b |
|
12-Nov-2008 |
Timo Sirainen <tss@iki.fi> |
Added support for SSHA256 password scheme.
--HG--
branch : HEAD |
7846509319601b22f4e7e66cfbc76ed786e909ee |
|
09-Jul-2008 |
Timo Sirainen <tss@iki.fi> |
MD5 scheme can now autodetect between MD5-CRYPT and PLAIN-MD5.
--HG--
branch : HEAD |
76b43e4417bab52e913da39b5f5bc2a130d3f149 |
|
01-Jan-2008 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2008.
--HG--
branch : HEAD |
9c4d433f42e4d04aca2375c112a57826cd85dfed |
|
27-Oct-2007 |
Timo Sirainen <tss@iki.fi> |
digest_md5_generate(): Fail with fatal instead of panic if username isn't
given. This can easily happen with dovecotpw utility.
--HG--
branch : HEAD |
89a126810703c666309310d0f3189e9834d70b5b |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Replaced my Copyright notices. The year range always ends with 2007 now.
My name was replaced with "Dovecot authors". In many cases I didn't really
even own the copyright, so this is more correct.
--HG--
branch : HEAD |
43d32cbe60fdaef2699d99f1ca259053e9350411 |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Renamed __attr_*__ to ATTR_*. Renamed __attrs_used__ to ATTRS_DEFINED.
--HG--
branch : HEAD |
69293bd0b4ceb47c7f12c4a01254f4cddf700470 |
|
06-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Changed plugin handling. We'll just load and call _init() functions for all
plugins in $moduledir/auth/.
--HG--
branch : HEAD |
034ba60e28b45896b4a26548fe3a6d0be5f6dfa0 |
|
06-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Added password_scheme_[un]register() and used it internally. Removed
password_list_schemes(), instead made the scheme array public.
--HG--
branch : HEAD |
7a7d97c082834dccdd89dbb95598977deec4d5a7 |
|
16-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Added support for SHA256. Based on patch by Jasper Slits.
--HG--
branch : HEAD |
f13200f4e9de7aa11fd2eacb111287125e08b34c |
|
16-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
SMD5 scheme was broken, it was using SHA1 constants.
--HG--
branch : HEAD |
1e7252421b9c85b898fef7e75bd6422ef1f046e4 |
|
13-May-2007 |
Timo Sirainen <tss@iki.fi> |
Empty password doesn't anymore allow user to log in with any password,
unless nopassword extra field is also set.
--HG--
branch : HEAD |
b44650b0f48a4b5f0dc240ed836833a00b643b9f |
|
13-May-2007 |
Timo Sirainen <tss@iki.fi> |
All password schemes can now be encoded with base64 or hex. The encoding is
".b64", ".base64" or ".hex" suffix in the scheme, eg. {plain.b64}.
Password scheme verification function can now be set to NULL, in which case
the verification is done by generating a new crypted password from given
plaintext password and comparing it.
--HG--
branch : HEAD |
ba640f44613a259710dcfd2642c750acbe3d816a |
|
13-May-2007 |
Timo Sirainen <tss@iki.fi> |
Changed schemes_buf to schemes_arr array.
--HG--
branch : HEAD |
2e2b76ea4b5bc55ac4c2be33ee27070bfb95a093 |
|
13-May-2007 |
Timo Sirainen <tss@iki.fi> |
cleanup
--HG--
branch : HEAD |
a8e132559a7ebe54c8269d79ce29fa3338c76199 |
|
13-May-2007 |
Timo Sirainen <tss@iki.fi> |
Removed enum passdb_credentials. Use scheme strings directly instead. This
makes it possible to implement new mechanisms in plugins.
--HG--
branch : HEAD |
03c3bce84b21b58edf535ba6cc8ee6c8fbadd924 |
|
17-Apr-2007 |
Timo Sirainen <tss@iki.fi> |
Do scheme=MD5 password!=$1$.. -> PLAIN-MD5 change only with LDAP.
--HG--
branch : HEAD |
41590df9f518459d66a9f7b9be2126f2e31fb221 |
|
22-Feb-2007 |
Timo Sirainen <tss@iki.fi> |
Don't compare to PACKAGE_VERSION in lib/ core directly, rather make
module_dir_load() have the version string as parameter. Plugin version
checks can be skipped with version_ignore=yes.
--HG--
branch : HEAD |
4449ad85fcbd4f6fedbaa9a5bdfe58a9ae60f8ae |
|
16-Feb-2007 |
Timo Sirainen <tss@iki.fi> |
module_dir_load() doesn't call init() functions anymore. Added a new
module_dir_init() which does it. This way imap/pop3 can load the modules
before chrooting and initialize them after.
--HG--
branch : HEAD |
661911ee2ea6b9f3f41650ccf74f3716e189da72 |
|
16-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Changed the default naming for password schemes: HMAC-MD5 -> CRAM-MD5. MD5
-> MD5-CRYPT. The old names still work for backwards compatibility.
--HG--
branch : HEAD |
d481a0f92e3673a345a6c3d61a1f74924f80bd44 |
|
03-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Don't crash if plain-md5, plain-md4 or sha1 password is invalid and we're
not using digest-md5 authentication..
--HG--
branch : HEAD |
e9e2d23e1ea5a149a7d8828d2a45b9f2313c3785 |
|
12-Nov-2006 |
Timo Sirainen <tss@iki.fi> |
Added OTP and S/KEY authentication mechanisms. Patch by Andrey Panin.
--HG--
branch : HEAD |
b193066823000095cae0781445fe9234c7c01366 |
|
09-Oct-2006 |
Timo Sirainen <tss@iki.fi> |
Based on password length detect if it's hex-encoded or sha1-encoded. Also
use MD[45]_RESULTLEN macros instead of hardcoded 16 value.
--HG--
branch : HEAD |
23f8c5356cacdbd1cc09a39a08ef37a39125bb74 |
|
17-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Compiler warning fixes and some coding style cleanups.
--HG--
branch : HEAD |
de0759fa4812e8fc01b317eaff08f25cd2d6f07b |
|
16-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Added PLAIN-MD4 password scheme. Patch by Andrey Panin.
--HG--
branch : HEAD |
457cafc9e72edb81eacfe88b35f14a75a96cf00a |
|
26-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
Replaced mail_use_modules and mail_modules settings with mail_plugins and
mail_plugin_dir. Now instead of loading all plugins from the directory,
you'll have to give a list of plugins to load. If the plugin couldn't be
loaded, the process exits instead of just ignoring the problem (this is
important with ACL plugin).
--HG--
branch : HEAD |
d5cebe7f98e63d4e2822863ef2faa4971e8b3a5d |
|
14-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
deinit, unref, destroy, close, free, etc. functions now take a pointer to
their data pointer, and set it to NULL. This makes double-frees less likely
to cause security holes.
--HG--
branch : HEAD |
6ef7e31619edfaa17ed044b45861d106a86191ef |
|
13-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Added "bool" type and changed all ints that were used as booleans to bool.
--HG--
branch : HEAD |
6dbdd6c85276d6112773af2ddfa9c09aacd9dec2 |
|
22-Jul-2005 |
Timo Sirainen <tss@iki.fi> |
digest_md5_generate(): If username isn't given, give an error message
instead of crashing. Mostly to avoid crashing with dovecotpw utility.
--HG--
branch : HEAD |
b24a39bcfa4482c85ad9ed128785b770af5da224 |
|
28-Dec-2004 |
Timo Sirainen <tss@iki.fi> |
comment cleanup.
--HG--
branch : HEAD |
4b058f90f9e8a2c6b2eed275de4eb8cc5195a71d |
|
08-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Buffer API change: we no longer support limited sized buffers where
writes past limit wouldn't kill the process. They weren't used hardly
anywhere, they could have hidden bugs and the code for handling them was too
complex.
This also changed base64 and hex-binary APIs.
--HG--
branch : HEAD |
a4ac325c2802693c6b761e5a8fda961e5d7490ea |
|
19-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
Added Compuserve RPA authentication. Patch by Andrey Panin.
--HG--
branch : HEAD |
21be4f711d3bab82a783273189a8bbca44a84c5d |
|
15-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
oops, shouldn't have committed these
--HG--
branch : HEAD |
2767104d81e97a109f0aa9758792bfa1da325a97 |
|
15-Aug-2004 |
Timo Sirainen <tss@iki.fi> |
We never do blocking reads/writes to network anymore. Changed imap and pop3
processes to use a single I/O loop.
Not much tested yet, and currently LIST/LSUB may eat too much memory and
APPEND eats all CPU.
--HG--
branch : HEAD |
d43c646d4b84635aa795946555be04a553d5413a |
|
30-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Added LANMAN password scheme. Patch by Andrey Panin
--HG--
branch : HEAD |
c7480644202e5451fbed448508ea29a25cffc99c |
|
28-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
NTLM authentication. Patch by Andrey Panin
--HG--
branch : HEAD |
794ac3e4a22caba0297a1333b43e6bd47fc50b91 |
|
26-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Added dovecotpw utility. Patch by Joshua Goodall
--HG--
branch : HEAD |
93b7c5ff4dc3f77e3248845dab1917241852514a |
|
23-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
crypt_generate and md5_generate used only 3 different characters for salt.
Patch by Joshua Goodall.
--HG--
branch : HEAD |
c0a05ba822189ff4f2c86645c38a5a904943192a |
|
30-May-2004 |
Timo Sirainen <tss@iki.fi> |
Added support for password scheme plugins. auth module dir defaults under
module_dir now.
--HG--
branch : HEAD |
92cbde6325361ca1c3389e36c32fe19154f412a6 |
|
30-May-2004 |
Timo Sirainen <tss@iki.fi> |
Allow either SHA or SHA1.
--HG--
branch : HEAD |
80c035e5559f877a7f5058589c41164995919a71 |
|
30-May-2004 |
Timo Sirainen <tss@iki.fi> |
SHA1 support via OpenSSL
--HG--
branch : HEAD |
6c07b8ddc5e894feead4d422075b079451721241 |
|
11-Nov-2003 |
Timo Sirainen <tss@iki.fi> |
cram-md5 updates.
--HG--
branch : HEAD |
94a78eb438622fa53abef1e1726714dacad4b61c |
|
10-Nov-2003 |
Timo Sirainen <tss@iki.fi> |
CRAM-MD5 mechanism by Joshua Goodall, plus some cleanups.
--HG--
branch : HEAD |
f0b86fe0db17286be03781cad752a3a48fc2a86b |
|
04-Apr-2003 |
Timo Sirainen <tss@iki.fi> |
MD5crypt password fixes.
--HG--
branch : HEAD |
a617fe15eac8db4fadc0799e9f9dc5a50c94b99d |
|
19-Feb-2003 |
Timo Sirainen <tss@iki.fi> |
crypt-password checking was broken. added support for md5crypt passwords.
--HG--
branch : HEAD |
ff487c974815bdaa2d05a3b834f4c2c841f4cc34 |
|
18-Feb-2003 |
Timo Sirainen <tss@iki.fi> |
Fix realm usage with DIGEST-MD5. Support generating other password schemes
out of plaintext passwords.
--HG--
branch : HEAD |