19557f192d37cd54a1a090a8a26d9d47265e4413 |
|
01-Nov-2017 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
global: Fix spelling mistakes in comments
Original work by @andreasschulze and @jsoref |
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! |
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)" |
9a4542801f04f81385e554ba79b12f50eba1d460 |
|
28-Aug-2016 |
Stephan Bosch <stephan@dovecot.fi> |
auth: GSSAPI mechanism: Fix CLang -Wstrict-bool warnings.
The GSS_ERROR() macro yields an integer rather than an actual bool value.
The krb5_kuserok() function returns a krb_boolean type, which is unsigned int rather than a bool. |
ec18e7378947c601cb75ba01261d7787ccd8e4ad |
|
11-Jul-2016 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
gssapi: Add missing PASSDB_RESULT_NEXT clause |
814bf67459ad405a157af0b8940602024d7fadfe |
|
23-Sep-2015 |
Teemu Huovila <teemu.huovila@dovecot.fi> |
Remove now-unnecessary direct stdlib.h #includes. |
1b81b28b2e7856748cffd7d01052a944b6c80b23 |
|
25-Sep-2014 |
Timo Sirainen <tss@iki.fi> |
auth: Mark memory pools as growing and use the same sizes for all mechanisms.
Mainly to have DEBUG log fewer warnings. |
6135260095e1704ed6edff9d00bdfc043c11429c |
|
17-Apr-2014 |
Timo Sirainen <tss@iki.fi> |
auth: Use special AUTH_SUBSYS_DB/MECH parameters as auth_request_log*() subsystem.
This avoids hardcoded strings all over the place and also allows assigning
the correct passdb/userdb name for log messages generated by generic
passdb/userdb code, which doesn't know exactly where it was called from. |
8521def0d87912647884064f4c549935cbdd0c7e |
|
30-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Fixed compiling GSSAPI after recent changes. |
559f278a4c54d9fa7e0f2e96ebceda30562f9009 |
|
30-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Added passdb { result_* and skip } settings.
passdb { skip = never | authenticated | unauthenticated } can be used to
skip over a passdb lookup based on previous passdb lookups.
passdb { result_success, result_failure, result_internalfail } can be used
to specify what to do on those conditions. Choices as continue,
continue-ok, continue-fail, return, return-ok, return-fail. The -ok and
-fail variants update the current "success" flag, while continue/return uses
the current flag. The authentication succeeds only if the success flag is
set after the last lookup. The continue variants continue to the next
passdb, while return variants finish the lookup immediately. |
31633d676642b83305b8d46da495d9bb4e2d1ff8 |
|
30-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Cleaned up flags in auth request. Removed those that already exist in extra_fields.
It's now slightly slower to check for those flags in extra_fields, but it's
going to be easier to make commit/rollback feature to extra_fields. |
b1f02eab20719cda8ec4efe229dfd3c6967970f1 |
|
17-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Fixed error handling in GSSAPI when __gss_userok() was used.
An invalid username would have been treated as successful and auth process
probably would have crashed. |
0da7ec741f53fa8a2244421f6c63e0617b0cbf06 |
|
17-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
auth: GSSAPI RFC compliancy fixes.
Patch by Ben Morrow:
The first problem is that, because of the way the client invokes
libsasl, it sends a GSSAPI request which does not ask for mutual
authentication. This means that on the server gss_accept_sec_context
returns GSS_S_COMPLETE with a zero-length output token. Dovecot
currently sends this to the client as a zero-length continuation
response, but this is incorrect according to RFC 4752: what it ought to
do instead is proceed straight to the security layer negotiations, and
send a gss_wrap packet.
The second is that Cyrus sends an empty authz identity; that is, the
security layer negotiation packet, when gss_unwrapped, is exactly 4
bytes long. Dovecot objects to this, but in RFC 4422 this is explicitly
allowed, and means the authz identity is identical to the authn
identity. |
00ef253647b45487e75b8a4a2636f38909eaee51 |
|
26-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
gssapi: Allow logging in as users listed in "k5principals" extra field.
This also enables other passdb extra fields for gssapi mechanism.
Based on patch by Sam Morris. |
50782de8a9d5ebe11ee61496b4e695a1d3875230 |
|
08-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Removed unnecessary auth_request callback and context uses.
--HG--
branch : HEAD |
c14f183857b32b26aaea6a31b57eb801d1fcd386 |
|
13-Apr-2010 |
Timo Sirainen <tss@iki.fi> |
Static analyzer warning fix.
--HG--
branch : HEAD |
1500468f62b0963974f1ba42a6ecf9c9be4381f4 |
|
14-Mar-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Compile fix for gssapi.
--HG--
branch : HEAD |
9ed2951bd0bb1878a27437d7c00611b2baadd614 |
|
13-Mar-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Initial support for per-protocol auth settings.
Currently the list of services is hard-coded. This should be changed so that
config lookup returns the service names.
--HG--
branch : HEAD |
7bafda1813454621e03615e83d55bccfa7cc56bd |
|
04-Dec-2009 |
Timo Sirainen <tss@iki.fi> |
Removed MEMBER() macro. Require C99 style struct initializer.
--HG--
branch : HEAD |
3bc82073c6bc12195e4bb63c11ce546fdc0e8db3 |
|
09-Oct-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Fixed compiling with --with-gssapi=plugin
--HG--
branch : HEAD |
39f34a5a2c99a61aacb7e755e40d1cd221f68e86 |
|
28-Aug-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Apparently all usernames end with NUL. Allow it.
--HG--
branch : HEAD |
31803cddc7ad83490dbb71e84ed56954af64b8ce |
|
14-Aug-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Check for potentially dangerous NULs in usernames.
--HG--
branch : HEAD |
5f94d41239988988d70ed6ed7578306c60e77ed6 |
|
27-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Error handling fix.
--HG--
branch : HEAD |
1fb790b0dadd9d7c226e5ff116355f447d68f31c |
|
27-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Fixed compiling for non-MIT/Heimdal GSSAPI implementations (Solaris).
--HG--
branch : HEAD |
9c9332454f40a8c0ff53074d98ff86d607f76362 |
|
27-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Fail authentication if mechanism type isn't Kerberos 5.
Also check GSS_KRB5_NT_PRINCIPAL_NAME more correctly.
--HG--
branch : HEAD |
7dc0c3eba0fe9f24e88b6fd4fb4339f2ab42b815 |
|
27-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Don't do krb5_kuserok() to authz_name. It shouldn't be necessary.
--HG--
branch : HEAD |
aef258ab477801df25b12929a7b9ab6d740d52f2 |
|
18-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
GSSAPI: Fixed memory leak on error conditions.
--HG--
branch : HEAD |
f622620587322fda179727c06df79e162eb5ea8c |
|
08-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Code cleanup.
--HG--
branch : HEAD |
b55f6e163c6f20505bf4a57ccd085ee0609e92af |
|
08-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Use *userok() functions only when authz_name != authn_name.
Some more code cleanups.
--HG--
branch : HEAD |
7e770ce56e9123b9cadb3bff9d645b4420865a1a |
|
08-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Set username via auth_request_set_username().
This makes GSSAPI also use auth_username_* settings. Also improved logging.
--HG--
branch : HEAD |
fb51b3deffb527a6703b2077d5fc385fe31ea721 |
|
08-Jul-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Code cleanups. Logging error level changes.
--HG--
branch : HEAD |
08d6658a4e2ec8104cd1307f6baa75fdb07a24f8 |
|
05-May-2009 |
Mark Washenberger <none@none> |
Renamed headers to prevent collision if they were flattened on an install.
--HG--
branch : HEAD |
44fc0a34c39f1ddb3a776918630010867a5dd04e |
|
26-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
Fixed --with-ldap=plugin and --with-gssapi=plugin
--HG--
branch : HEAD |
c09ed250a0bbfc610ab265a18c17b7edd98b7937 |
|
13-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Fix to previous change.
--HG--
branch : HEAD |
6edf77bf423fe09849a79fd4077a697b8dc14a41 |
|
13-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
gssapi: Cross-realm authentication fix.
Patch by Bryan Jacobs.
--HG--
branch : HEAD |
a64adf62fa33f2463a86f990217b0c9078531a40 |
|
28-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Initial commit for config rewrite.
--HG--
branch : HEAD |
ba8566b02903a4b00a39a611d19f421739a09456 |
|
09-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Code cleanup for specifying what passdb features auth mechanisms need.
--HG--
branch : HEAD |
24c4835905c0a7ba5a7caa1666af5daef6233303 |
|
11-Sep-2008 |
Timo Sirainen <tss@iki.fi> |
GSSAPI: stdlib.h wasn't included with all OSes, causing crash at startup with 64bit systems.
--HG--
branch : HEAD |
6e873f135368bcfdd1de4458dded791d0c4d00cd |
|
13-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
Renamed auth_ntlm_use_winbind to auth_use_winbind,
which also determines if GSS-SPNEGO is handled by GSSAPI or winbind.
--HG--
branch : HEAD |
704fbadd78375da18dcaf2c5d93ac8cfe2c61358 |
|
13-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Based on a patch by Jason Gunthorpe.
--HG--
branch : HEAD |
bde5b40c4fcc20e812a7caff9c0ed55e7090ced9 |
|
13-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
Added support for gssapi_hostname=$ALL for multihomed hosts.
Patch by Jason Gunthorpe.
--HG--
branch : HEAD |
448723dc1c12b126dd2d348d4ce385203abbaa7d |
|
04-Aug-2008 |
Timo Sirainen <tss@iki.fi> |
gssapi: Make auth_krb5_keytab work by calling _register_acceptor_identity()
instead of relying on KRB5_KTNAME environment to be picked up.
--HG--
branch : HEAD |
01ff322068d8cb54d37b478efc1348087b1f9f78 |
|
04-Jun-2008 |
Timo Sirainen <tss@iki.fi> |
gssapi: Check for gssapi_krb5.h existence before trying to use it.
--HG--
branch : HEAD |
c869c075b0b558e82a613a8320b3b3a7e120741b |
|
04-May-2008 |
Timo Sirainen <tss@iki.fi> |
Don't use krb5_get_error_message(), it doesn't work with Heimdal Kerberos.
--HG--
branch : HEAD |
c5b99a8a85370e7d1f7edb1fcb18a9d44616f726 |
|
04-May-2008 |
Timo Sirainen <tss@iki.fi> |
Support cross-realm krb5 authentication. Based on patch by Zachary Kotlarek.
--HG--
branch : HEAD |
00db1828183b3e487ad7ed58810da8ebc5e95193 |
|
02-Apr-2008 |
Timo Sirainen <tss@iki.fi> |
GSSAPI: Show username in "autn_name and authz_name differ" error.
--HG--
branch : HEAD |
648d24583c1574441c4fa0331a90bd4d6e7996c5 |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
pool_unref() now takes ** pointer.
--HG--
branch : HEAD |
9e3f0cc69cbc4af74d08d1e52aa5ed8a7675b8f1 |
|
09-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Crashfix for failed GSSAPI requests.
--HG--
branch : HEAD |
f97cf1c086715db87094bc3d0a4fefdd80bd869c |
|
07-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Added --with-gssapi=plugin
--HG--
branch : HEAD |
ce38f7f75700ac098d09155942c41a027464f162 |
|
02-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
And removed unneeded code.
--HG--
branch : HEAD |
44a9b5fc1b57e5cc0a113f8cada9d9011747cadc |
|
02-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
If __gss_userok() exists, use it to verify username. Patch by Peter Eriksson.
--HG--
branch : HEAD |
ee5be4287d37f251f683fd2755eafc02504d527c |
|
27-Mar-2007 |
Timo Sirainen <tss@iki.fi> |
Added auth_gssapi_hostname setting.
--HG--
branch : HEAD |
00bde9ae9eab9e720462bf6ec9a4dd85e88c3bbf |
|
10-Mar-2007 |
Timo Sirainen <tss@iki.fi> |
Added more debug logging.
--HG--
branch : HEAD |
405aa3bff8ca00739ebeaab59afb593bcfc8edcc |
|
03-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Some systems have gssapi elsewhere than gssapi/gssapi.h. So check also plain
gssapi.h. Based on patch by Chris Wakelin
--HG--
branch : HEAD |
35136dd2baf8dc30e4e754294ed81ff48e8c1e64 |
|
08-Nov-2006 |
Timo Sirainen <tss@iki.fi> |
Added auth_request_set_credentials() to modify credentials in passdb and
implemented it for SQL passdb. Added passdb_need_set_credentials boolean to
mechanisms to indicate that it's required (OTP will need it). Patch by
Andrey Panin.
--HG--
branch : HEAD |
893f7d52acc42058045f188b625449981bd7f9bc |
|
22-Sep-2006 |
Timo Sirainen <tss@iki.fi> |
POP3 service name is "pop" with GSSAPI.
--HG--
branch : HEAD |
8d80659e504ffb34bb0c6a633184fece35751b18 |
|
28-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Array API redesigned to work using unions. It now provides type safety
without having to enable DEBUG, as long as the compiler supports typeof().
Its API changed a bit. It now allows directly accessing the array contents,
although that's not necessarily recommended. Changed existing array usage to
be type safe in a bit more places. Removed array_t completely. Also did
s/modifyable/modifiable/.
--HG--
branch : HEAD |
e074ffeaee1ce283bd42f167c6810e3d013f8218 |
|
16-Jun-2006 |
Timo Sirainen <tss@iki.fi> |
Relicensed dovecot-auth to MIT.
--HG--
branch : HEAD |
da3f943e93b0ea5a8256a2e850f4738ad161f71d |
|
12-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
Crashfix. Patch by Mark Davies
--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 |
9426f0585f821606cbf332282a57eea24376a765 |
|
28-Dec-2005 |
Timo Sirainen <tss@iki.fi> |
Removed need_passdb from mechanism definitions. passdb_need_plain/credentials is enough to know that. Also give a better error message if no passdbs are set and a mechanism requires passdb.
--HG--
branch : HEAD |
e03ec0b7b9d92551331bc509bcd86920544171d1 |
|
28-Oct-2005 |
Timo Sirainen <tss@iki.fi> |
Use a bit larger initial pool sizes
--HG--
branch : HEAD |
0469ed17dafcc56589ce00960a23f4f06817dfb5 |
|
27-Oct-2005 |
Timo Sirainen <tss@iki.fi> |
Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
pod@herald.ox.ac.uk
--HG--
branch : HEAD |