bcb4e51a409d94ae670de96afb8483a4f7855294 |
|
01-Jan-2018 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2018. |
9a84b90d894a741ae6e090de104d31382a41d0aa |
|
01-Nov-2017 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
global: start relying on [io]_stream_close(NULL) being a no-op
Cleanup performed with the following semantic patch (and a bit of
hand-editing):
@@
expression E;
@@
- if (E != NULL) {
- i_stream_close(E);
- }
+ i_stream_close(E);
@@
expression E;
@@
- if (E != NULL) {
- o_stream_close(E);
- }
+ o_stream_close(E); |
a943ed0f901e312445fd393249b91932797bba79 |
|
03-Oct-2017 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
global: use i_close_fd{,_path}() instead of open-coding them |
204ee6ed414f5e4eeb6f6c10763b55daf56f11ac |
|
19-Sep-2017 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
global: start relying on [io]_stream_unref(NULL) being a no-op
Cleanup performed with the following semantic patch:
@@
expression E;
@@
- if (E != NULL) {
- i_stream_unref(&E);
- }
+ i_stream_unref(&E);
@@
expression E;
@@
- if (E != NULL) {
- o_stream_unref(&E);
- }
+ o_stream_unref(&E); |
5f1d689131a75c39f064cbd4202373e7edf78f18 |
|
19-Sep-2017 |
Josef 'Jeff' Sipek <jeff.sipek@dovecot.fi> |
global: start relying on io_remove{,_closed}(NULL) being a no-op
Cleanup performed with the following semantic patch:
@@
expression E;
@@
- if (E != NULL) {
- io_remove(&E);
- }
+ io_remove(&E);
@@
expression E;
@@
- if (E != NULL) {
- io_remove_closed(&E);
- }
+ io_remove_closed(&E); |
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! |
2454dfa32c93c20a8522c6ed42fe057baaac9f9a |
|
01-Jan-2017 |
Stephan Bosch <stephan.bosch@dovecot.fi> |
Updated copyright notices to include the year 2017. |
7a60e1dc9e93ef3f7c7fe1af6385a0bfa1e31bc3 |
|
20-Oct-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Replaced t_strsplit_tab() calls with t_strsplit_tabescaped()
This is useful especially in auth code to support LFs in extra fields.
Other pieces of code were also tab-escaping strings, but never unescaping
them. Usually it didn't matter, because nobody would use the escaped
characters. Still, the code wasn't exactly behaving correctly.
One downside to this change is that it's now possible to pass through TABs,
CRs and LFs through the various protocols. In theory this shouldn't cause
any problems, but combined with other bugs this could trigger some security
problems. |
5965eaa2d972e6264cecaf54091cd43019bc7d1f |
|
23-Aug-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Added uchar_empty_ptr and use it instead of &uchar_nul.
This makes Coverity happier about not treating a char as an array.
For now this is a pointer to a 0, but could as well become a pointer
that crashes if dereferenced. Shouldn't be NULL anyway because clang's
-fsanitize=nonnull-attribute will complain about them. |
6e5a4cdf7ef123589e2409e0012b1024c97957d5 |
|
11-Jul-2016 |
Aki Tuomi <aki.tuomi@dovecot.fi> |
auth: Skip authentication with noauthenticate |
e93184a9055c2530366dfe617e07199603c399dd |
|
06-Jun-2016 |
Martti Rannanjärvi <martti.rannanjarvi@dovecot.fi> |
lib: remove autoclose parameter from [io]_stream_create_fd
Use [io]_stream_create_fd_autoclose() for autoclose. |
d9a7e950a9cd21f2b4a90ec7759fca9e8fcc7995 |
|
05-Jun-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: Fixed mismatched bool vs. int/pointer handling
I don't think these fix any actual bugs. |
6aafdd81aa1e12c127941c1ebd87e8ee4697ec3e |
|
11-Mar-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
auth: Code cleanup - avoid using void *context
auth_request_callback_t always uses struct auth_client/master_connection*
in the context - no need to try to be too generic here. |
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/' |
3cad7d3634afa649561921c54e7769528e7813f9 |
|
27-Oct-2015 |
Timo Sirainen <tss@iki.fi> |
auth: Typofix for error message. |
814bf67459ad405a157af0b8940602024d7fadfe |
|
23-Sep-2015 |
Teemu Huovila <teemu.huovila@dovecot.fi> |
Remove now-unnecessary direct stdlib.h #includes. |
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> |
bbdd683dd23641dca779bffdf22c089b57fe5066 |
|
25-Oct-2014 |
Timo Sirainen <tss@iki.fi> |
auth: Some unsuccessful passdb lookups weren't returned as failures to passdb lookups.
These lookups were only being done internally, so it usually didn't matter.
Also this only affected things like allow_nets checking and some non-common
passdb {Â result_* } settings. |
47b5ef748f34ca194419befab4f7450002f4e85d |
|
10-Oct-2014 |
Timo Sirainen <tss@iki.fi> |
auth: Make sure userdb iteration is destroyed if worker connection disconnects. |
b8a6abfd2bc86118f54f59ee71005f634f45cdfc |
|
20-Aug-2014 |
Timo Sirainen <tss@iki.fi> |
auth: protocol-specific username settings weren't used for userdb lookups.
The username was set before the service-specific settings were looked up, so
global settings were always used. This affected auth_default_realm,
auth_username_translation and auth_username_format settings. |
6094fe2df0a7efe28d45fa37b59755a2bee695e1 |
|
27-May-2014 |
Phil Carmody <phil@dovecot.fi> |
auth: master-connection - bail on malformed list
If master is not communicating to us in a syntax we understand, just ask for
it to be unplugged. This changes the behaviour in this error case.
Previously, we returned -1, which is TRUE when converted to a boolean, and
thus this changes the error semantics, and may be horribly wrong. However,
the i_error()s in auth_master_input_line follow the same pattern.
Signed-off-by: Phil Carmody <phil@dovecot.fi> |
a8c5a86d183db25a57bf193c06b41e092ec2e151 |
|
04-Feb-2014 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2014. |
cd75c360f244c96b9ee10e01ee3a66fad13183c8 |
|
08-Dec-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Added userdb result_success/failure/tempfail and skip settings, similar to passdb's. |
56ffe7c9356544aa228ef6760f9fa08ec2c8c9c1 |
|
03-Nov-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Crashfix to "doveadm auth cache flush" when auth cache was disabled |
04f792b9b17210898bab55e4b6c919fe78913001 |
|
01-Nov-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Return a reason string if PASS lookup fails because passdbs don't support it. |
f205e138634bd4269fa095463938cccf3970954d |
|
23-Oct-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Don't crash with "doveadm auth cache flush" when cache is disabled. |
5afc76d0215c5f7631dec06ef864d59f0686a0a8 |
|
21-Sep-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Fixed user iteration hang due to earlier stream corking changes.
Also fixed process title updating for auth-worker process during LIST. |
1ce47e48d7231da6f18f02eab6bab6451b4ef12a |
|
12-Jul-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Use fewer syscalls for sending user list. |
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. |
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. |
ee6df9526e9716b3f1734d85b566e00fc41208bc |
|
30-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Code cleanup: Renamed auth-stream to auth-fields. |
2f35a2fbe2c525380487464fad7cf85f16e0dded |
|
30-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Code cleanup: Merged extra_cache_fields into extra_fields.
They are separated using a hidden-flag in the extra field. This required a
new implementation for auth-streams. |
eb7b8855cc45292334056f425645215e348ec493 |
|
30-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Code cleanup: Avoid using auth_stream_reply as temporary strings. |
548193b7d6c19a14eff810202cd334f364b75e36 |
|
04-Jan-2013 |
Timo Sirainen <tss@iki.fi> |
auth: Don't keep username duplicated in userdb_reply string.
This fixes bugs where userdb_reply is accessed via auth_stream_*() functions
that remove/replace existing fields, which may have ended up
removing/replacing the username. |
4240acc84d065472e5b21becd6481553fc38fe38 |
|
07-Nov-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Give a better error message for "client doesn't have lookup permissions". |
bdd36cfdba3ff66d25570a9ff568d69e1eb543cf |
|
03-Oct-2012 |
Timo Sirainen <tss@iki.fi> |
Renamed network.[ch] to net.[ch].
The function prefixes already started with net_ instead of network_.
And icecap wants to use network.h for other purpose. :) |
d03a871a77f8ec36f48f5fea98d810e51b186fdb |
|
15-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
Renamed str_tabescape_write() to str_append_tabescaped() |
ab90f702ceedb7ba445a9a592be0b213b27cbafa |
|
14-Sep-2012 |
Stephan Bosch <stephan@rename-it.nl> |
Added support to perform token-based service process authentication.
Creates hidden SASL method DOVECOT-TOKEN. This method is not available on
the normal auth login socket and thus never presented to clients.
Creates new auth socket type 'tokenlogin'. This otherwise normal login
socket only offers authentication using the DOVECOT-TOKEN mechanism.
Creates new token-login directory in base_dir to separate token logins from
normal logins. This directory is otherwise completely identical to the
normal login dir, i.e. it contains sockets for the service backends, used
to chroot login processes to, etc.
Makes default login socket configurable.
Performs some minor changes to src/login-common to build very sparse
protocols, e.g. avoid the need to implement methods that are not needed. |
3281669db44d09a087a203201248abbc81b3cc1a |
|
06-Sep-2012 |
Timo Sirainen <tss@iki.fi> |
Renamed buffer_create_*data() to buffer_create_from_*data() for consistency.
Especially i_stream_create_from_data() was a very similar function, which
made it difficult to remember which one should have "from" and which one
shouldn't. |
d85f713cc9f9ddaa2b591169f79df70e764fbe05 |
|
23-Aug-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Make it clearer in debug messages if the replies are passdb or userdb. |
39dcbe101c4538ee25d8b196eab30e5f0faa22ee |
|
04-Jul-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Added CACHE-FLUSH command to flush some/all users from auth cache. |
e2a88d59c0d47d63ce1ad5b1fd95e487124a3fd4 |
|
24-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Added o_stream_nsend*() and related functions to make delayed error handling safer.
Once o_stream_nsend*() is called, o_stream_nfinish() must be called before
stream is destroyed to finish checking if there were any errors. If
something failed and the stream is just wanted to be closed,
o_stream_ignore_last_errors() can be called.
For streams where errors don't really make any difference (network sockets)
you can call o_stream_set_no_error_handling() immediately after creating the
stream. |
a10ed8c47534b4c6b6bf2711ccfe577e720a47b4 |
|
23-Jun-2012 |
Timo Sirainen <tss@iki.fi> |
Marked functions parameters that are allowed to be NULL. Some APIs were also changed.
The non-obvious APIs where NULL parameter was changed to "" are
master_service_init() and auth_master_user_list_init().
These checks can currently be enabled only on a patched clang:
http://llvm.org/bugs/show_bug.cgi?id=6786 |
3c296d819c54e21ce05c3d2eeeedc79be42ac593 |
|
19-Apr-2012 |
Timo Sirainen <tss@iki.fi> |
Use t_strsplit_tab() wherever possible |
91233a89f0060f95542ed661683e5d99a50f1778 |
|
25-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Handle proxy_maybe=yes with host=hostname properly. |
8be0af2dd41283fdd250b9a0d8fad28bfe80ca85 |
|
25-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Handle proxy_maybe=yes with host=hostname properly. |
5f5870385cff47efd2f58e7892f251cf13761528 |
|
12-Feb-2012 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2012. |
29d4c6eac14a0b3d79656eb6b206a102fd09d24a |
|
09-Jan-2012 |
Timo Sirainen <tss@iki.fi> |
auth: Use linked list instead of array for storing list of auth connections.
With arrays the removal was slower than necessary. |
1114ab18309daeeeba17c6e2a71e75d5fb5af2a4 |
|
12-Dec-2011 |
Timo Sirainen <tss@iki.fi> |
auth: Handle proxy_maybe=yes for PASS lookups. (Fixes it for LMTP.) |
e9371f899a3d4207a0ffd3923ea5ec7250cf5e75 |
|
23-Nov-2011 |
Timo Sirainen <tss@iki.fi> |
auth: Support passing regular %variables to sql/ldap iterate queries. |
ab122a3bbae3b5fd2aad66e2f2840149d98cee52 |
|
18-Nov-2011 |
Timo Sirainen <tss@iki.fi> |
auth: Don't allow auth clients to set internal auth request fields.
This could have allowed attacker to bypass authentication if login process
was first successfully attacked to allow arbitrary code execution. |
8eefc42b2559db19d06d7ad7b8ad9d1cd2a09178 |
|
07-Nov-2011 |
Timo Sirainen <tss@iki.fi> |
auth: When complaining about auth-userdb permission errors, log also the wanted UID's name. |
e5a776932f62d971766d55b6bcc42d2824fa05a3 |
|
07-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
auth: Don't re-add IO to master connection input.
This fixes a panic crash in some situations. |
86a58337862c546aa489f07e8e6d242f0180e4a0 |
|
07-Oct-2011 |
Timo Sirainen <tss@iki.fi> |
auth: Improved "auth client doesn't have permissions to do .." errors. |
c96a1bff0db10e7f7e1d50bc434c95bf1f071805 |
|
06-Sep-2011 |
Timo Sirainen <tss@iki.fi> |
auth: If auth_debug_passwords=no, hide values of userdb keys containing "pass" string. |
c95b7ce6c3ebf84a9ef20320b9f11ef2129e1f1a |
|
04-Apr-2011 |
Timo Sirainen <tss@iki.fi> |
auth: If auth-userdb socket is 0666, allow peer to do only USER lookups whose uid matches its.
Anything else results in failure. If userdb doesn't return uid, the lookups
also fail. To truly give full permissions for everyone, use 0777 mode. |
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. |
7fc0f80480063a9d4cb9e8c07b50db2a5627799e |
|
22-Jul-2010 |
Timo Sirainen <tss@iki.fi> |
Fixing my english: s/non-?existing/nonexistent/ |
76830cda2eddcb36736bbb349dcbc2e9ca032483 |
|
07-Jul-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Add "user" field to all PASS lookup replies.
--HG--
branch : HEAD |
5f618705ebdfa8220a98a5cbb4a561e5e335cfff |
|
21-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Fixed sending "userdb iteration not supported" failure to client.
--HG--
branch : HEAD |
9d75363d3fbabc2fbc2d80f06672e3ed8965804a |
|
08-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Changed how auth deinitilization works.
--HG--
branch : HEAD |
0602c7dee8ceda2d7c7e5723f18c56698ac5a76d |
|
02-Jun-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Fixes to destroying pending async userdb requests at deinit.
--HG--
branch : HEAD |
daa7e7459749ae8f82cd3eed9c44522d81c609a3 |
|
12-May-2010 |
Timo Sirainen <tss@iki.fi> |
auth: Separate auth and login connections. Non-login requests are freed immediately after auth finished.
The login connections are used by Dovecot internally, while the auth
connections are for SMTP AUTH etc.
--HG--
branch : HEAD |
401b0787fff2dc986a5321ddb32acb1947ff66b0 |
|
03-May-2010 |
Timo Sirainen <tss@iki.fi> |
auth: If verbose_proctitle=yes, show auth request counts in ps.
- wait: waiting for auth client to do something (either continue multistep
auth mechanism or issue master request for a finished auth)
- passdb: waiting for passdb lookup to finish
- userdb: waiting for userdb lookup to finish
--HG--
branch : HEAD |
9261dbf0675204898c6557591c7aa376e23a52b2 |
|
07-Apr-2010 |
Timo Sirainen <tss@iki.fi> |
Started using str_to_*() functions instead of libc's ones.
--HG--
branch : HEAD |
8bb360f9e5de1c25e4f875205bb06e8bf15dae14 |
|
05-Apr-2010 |
Timo Sirainen <tss@iki.fi> |
Removed dead code.
--HG--
branch : HEAD |
3313a51ef9b245248d672c20f930c52a577a42f7 |
|
31-Mar-2010 |
Timo Sirainen <tss@iki.fi> |
auth: If userdb lookup returns tempfail, return reason field (if any).
--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 |
849969f639a00eab26791db3cb1b66430420c0cd |
|
13-Mar-2010 |
Timo Sirainen <tss@iki.fi> |
auth: passdb/userdb backends no longer know about struct auth_passdb/auth_userdb.
--HG--
branch : HEAD |
647eed98cb795ee9e42911750402dab720b57514 |
|
27-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
auth master lookups: If request isn't found, return FAIL instead of NOTFOUND.
--HG--
branch : HEAD |
e59faf65ce864fe95dc00f5d52b8323cdbd0608a |
|
25-Jan-2010 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2010.
--HG--
branch : HEAD |
7bd72e4deca3cbf757dd1ea298486d9f3bc24226 |
|
02-Dec-2009 |
Timo Sirainen <tss@iki.fi> |
Use array_foreach() more.
--HG--
branch : HEAD |
cf0ad1a0bddb0787f3d7b408a96d721a8b2a98a3 |
|
20-Oct-2009 |
Timo Sirainen <tss@iki.fi> |
Redesigned how login process passes connections to mail processes and changed related APIs.
Master process is no longer in the middle.
--HG--
branch : HEAD |
e5acc283bf030b0b5c79ca4e52d315c516a299fa |
|
16-Oct-2009 |
Pascal Volk <user@localhost.localdomain.org> |
Log debug-level messages with i_debug().
--HG--
branch : HEAD |
419baa2c17c63ae516b2df6cc5695f15aaccbff8 |
|
15-Oct-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Identify clients using a 128bit random cookie on top of the existing PID.
When master is finishing the login, it must give this cookie to REQUEST
command and it must match what auth process knows. This change makes it safe
to do client/master login without a dedicated master process.
--HG--
branch : HEAD |
0bb8c135a1c065655fc4d2d89b74b4f958fe4f02 |
|
08-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Allow PASS lookups also in userdb sockets, not just master sockets.
--HG--
branch : HEAD |
d20bb66c85500545aed02a21bedf806f6be6662a |
|
04-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Don't notify lib-master when primary master connection was destroyed, since it wasn't created through it.
--HG--
branch : HEAD |
1862352e2ef8ed1ef824368d9c0c2c0fce89962e |
|
17-Aug-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Added PASS command for auth-master socket to do passdb lookups.
--HG--
branch : HEAD |
3278289d240da169166de8aa785273c5df904e64 |
|
17-Aug-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Added auth-master socket that's allowed to do REQUEST commands.
--HG--
branch : HEAD |
451254b8f080792f1e6f11639a9e8be663a108c0 |
|
25-Jun-2009 |
Timo Sirainen <tss@iki.fi> |
auth: Keep master connection referenced during USER lookups.
Fixes a crash when master disconnected before USER lookup was finished.
--HG--
branch : HEAD |
4d4d6d4745682790c20d759ba93dbea46b812c5d |
|
22-May-2009 |
Timo Sirainen <tss@iki.fi> |
lib-master has now a global master_service variable that all binaries use.
There should always be only one of them anyway.
--HG--
branch : HEAD |
550034b94a58491a08a620c8e392fd3087551e7a |
|
15-May-2009 |
Timo Sirainen <tss@iki.fi> |
userdb listing: Don't crash with multiple userdbs.
--HG--
branch : HEAD |
43d3ea2780b5f8557ede7b4c039e8f56cb8d357d |
|
13-May-2009 |
Timo Sirainen <tss@iki.fi> |
Implemented support for listing all users in userdb.
--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 |
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76 |
|
24-Apr-2009 |
Timo Sirainen <tss@iki.fi> |
Initial commit for v2.0 master rewrite. Several features are still missing.
--HG--
branch : HEAD |
a64adf62fa33f2463a86f990217b0c9078531a40 |
|
28-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Initial commit for config rewrite.
--HG--
branch : HEAD |
45312f52ff3a3d4c137447be4c7556500c2f8bf2 |
|
06-Jan-2009 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2009.
--HG--
branch : HEAD |
226259ee6fb9830dafc1a5ba1e95bf5a4345b406 |
|
08-Mar-2008 |
Timo Sirainen <tss@iki.fi> |
Use auth-stream API to build all TAB-delimited strings to make sure strings
are escaped properly where necessary.
--HG--
branch : HEAD |
19e8adccba16ff419f5675b1575358c2956dce83 |
|
11-Feb-2008 |
Timo Sirainen <tss@iki.fi> |
Renamed T_FRAME_BEGIN/END to T_BEGIN/END. Removed T_FRAME() macro and
replaced them with T_BEGIN/END calls. T_FRAME() made it difficult to debug
code with gdb.
--HG--
branch : HEAD |
76b43e4417bab52e913da39b5f5bc2a130d3f149 |
|
01-Jan-2008 |
Timo Sirainen <tss@iki.fi> |
Updated copyright notices to include year 2008.
--HG--
branch : HEAD |
eddd9bf1a1369aea4a2715f6be1137da6d17d293 |
|
05-Dec-2007 |
Timo Sirainen <tss@iki.fi> |
Replaced t_push/t_pop calls with T_FRAME*() macros.
--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 |
4f17af486518a4a7526dc6c4eed702178dc0bee9 |
|
07-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Do username checks and translations with userdb lookups.
--HG--
branch : HEAD |
2526d52441ef368215ab6bf04fd0356d3b09d235 |
|
02-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Renamed i_stream_create_file() to i_stream_create_fd().
--HG--
branch : HEAD |
93fa87cf1a96c4f279ec4f5c311820313ba12c34 |
|
02-Aug-2007 |
Timo Sirainen <tss@iki.fi> |
Split o_stream_create_file() to _create_fd() and _create_fd_file().
--HG--
branch : HEAD |
fe363b433b8038a69b55169da9dca27892ad7d18 |
|
24-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
Removed memory pool parameter from iostreams. Default pool was almost always
used, and the stream usually required destroying anyway so it didn't even
make freeing memory easier.
--HG--
branch : HEAD |
6fabfb7bbfd88d0c1de66981e52850f26067623b |
|
03-Jul-2007 |
Timo Sirainen <tss@iki.fi> |
Changed userdb callback API. Don't require uid/gid to be returned by userdb.
--HG--
branch : HEAD |
5cda7e699876c1de203c30777924c899d2a20221 |
|
16-Apr-2007 |
Timo Sirainen <tss@iki.fi> |
Log an error and disconnect with unknown commands.
--HG--
branch : HEAD |
2703c3499e2d422d4f26e62720a4e8a43164fa57 |
|
21-Mar-2007 |
Timo Sirainen <tss@iki.fi> |
If doing a plain userdb lookup with userdb static, verify the user's
existence from passdb first, unless allow_all_users=yes
--HG--
branch : HEAD |
ecb1b2d6236942bf82f822e8d0167f0e160b206d |
|
19-Jan-2007 |
Timo Sirainen <tss@iki.fi> |
Several fixes to handling deinitialization without crashing.
--HG--
branch : HEAD |
2cfe9983ce7a6280636ee12beccc2e865111967b |
|
15-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
Replaced void *context from a lot of callbacks with the actual context
type. Also added/fixed some context type checks.
--HG--
branch : HEAD |
0f39a57760d93cddbce3ca43096d78e0fe2f42fd |
|
09-Dec-2006 |
Timo Sirainen <tss@iki.fi> |
We treated internal userdb lookup errors as "user unknown" errors. In such
situations this caused deliver to think the user didn't exist and the mail
get bounced.
--HG--
branch : HEAD |
9f9450c0f2b8bba483a2c40c6c143682da6456db |
|
12-Nov-2006 |
Timo Sirainen <tss@iki.fi> |
Removed "DIE" command from auth protocol. It wasn't implemented, and I'm not
sure if it's such a good idea anyway.
--HG--
branch : HEAD |
3ee2da6133bd7773961d1f3f3ac531448a5158b9 |
|
31-Jul-2006 |
Timo Sirainen <tss@iki.fi> |
Debug: Don't log empty error when writing "master out" debug lines.
--HG--
branch : HEAD |
cd56a23e21f1df3f79648cf07e2f4385e2fadebb |
|
25-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
Added i_stream_destroy() and o_stream_destroy() and used them instead of
*_stream_unref() where possible. Fixes at least one problem with io_remove()
being called after socket was closed, which caused problems with epoll.
--HG--
branch : HEAD |
62d1665ff7842b61bc99be238ede3921ec08ccc5 |
|
29-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Call io_remove() before closing the fd. It's required by kqueue.
--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 |
397165dbd694272487e29c8d48d619822da52abc |
|
05-Oct-2005 |
Timo Sirainen <tss@iki.fi> |
Added "master out" debugging also for USER queries from master (ie. from
deliver)
--HG--
branch : HEAD |
137ea7ca34005345aa2304a940149b7f3774d727 |
|
07-Aug-2005 |
Timo Sirainen <tss@iki.fi> |
s/occured/occurred/
--HG--
branch : HEAD |
16f816d3f3c32ae3351834253f52ddd0212bcbf3 |
|
04-Jul-2005 |
Timo Sirainen <tss@iki.fi> |
Moved array declaration to array-decl.h and include it in lib.h. So array.h
needs to be now included to use any array_*() functions.
--HG--
branch : HEAD |
826cb2b19f57bb9b6f73018b585bd922e820f9f6 |
|
16-May-2005 |
Timo Sirainen <tss@iki.fi> |
Master connection's USER command was leaking memory (with deliver binary).
--HG--
branch : HEAD |
70c181da837ed85fc5b0426c010b65609bda5329 |
|
26-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
USER auth command requires now service parameter and supports also others
parameters. Fixes a crash in dovecot-auth with deliver+mysql.
--HG--
branch : HEAD |
ad49932dae8ba31e07544b66bbc4f4de707a751c |
|
19-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
Allow multiple master connections for a single listener.
--HG--
branch : HEAD |
645397402d1d0c755cd485ecf721b59b6babc874 |
|
19-Apr-2005 |
Timo Sirainen <tss@iki.fi> |
Exit only if all master connections are lost, not only if one of them is.
--HG--
branch : HEAD |
9398c0935613ba038cf2275ff66c43b25092cfd0 |
|
07-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
Handle USER requests from master connections.
--HG--
branch : HEAD |
e9503210d3521a6833ed62dc332fc42ffb0e7a13 |
|
07-Mar-2005 |
Timo Sirainen <tss@iki.fi> |
Replaced userdb/passdb settings with blocks so it's possible to give
multiple ones. Plaintext password mechanisms now support handling multiple
passdbs, but others don't yet. Also fixed a few memory leaks.
--HG--
branch : HEAD |
66d2db642fe24d555d113ba463e446b038d476ef |
|
28-Feb-2005 |
Timo Sirainen <tss@iki.fi> |
Restructuring of auth code. Balancer auth processes were a bad idea. Usually
the balancer itself took as much CPU as the actual workers because it acted
as a proxy.
Now auth worker means different thing: they're used to execute blocking
passdb and userdb queries. Currently just MySQL (PAM and checkpassword in
TODO).
--HG--
branch : HEAD |
9f431ccfb6932746db56245c8a3d3415717ef545 |
|
12-Feb-2005 |
Timo Sirainen <tss@iki.fi> |
userdb can now return extra parameters to master. Removed special handling
of home/mail wherever possible, they're just regular extra parameters now.
LDAP passdb and static userdb can return extra parameters now.
--HG--
branch : HEAD |
6f71a6a4ed759df963587302976d7315346d11f8 |
|
09-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Don't close balancer listener after one worker has connected..
--HG--
branch : HEAD |
70905e51a5148bd5613cb04720807177474a2496 |
|
09-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Changed the way multiple auth processes are handled. It no longer uses a pid
appended to socket name but instead there's a balancer process which
proxies the requests to worker processes.
--HG--
branch : HEAD |
657afb33796f8216c568ad813627da89970760be |
|
09-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Moving code around.
--HG--
branch : HEAD |
49e513d090753ccbf95560b2f3a21f081a5b6c51 |
|
08-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Added auth_request_log_*().
--HG--
branch : HEAD |
1e21e6be70994b1aa9e52ca0e2f51afefca6d0df |
|
08-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Cleanups.
--HG--
branch : HEAD |
97c339398f1aba6f315b55a9b6ee6b020e33bea4 |
|
07-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Reorganized the code to have less global/static variables.
--HG--
branch : HEAD |
e80203675151ef9d4f3f850cf02041042eb13096 |
|
07-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Split auth_request* functions from mech.c to auth-request.c
--HG--
branch : HEAD |
a7bee3930831a9261fa6180d02af29c484d862e9 |
|
06-Jan-2005 |
Timo Sirainen <tss@iki.fi> |
Added authentication debugging logging.
--HG--
branch : HEAD |
85c80ced2a2c88a83ab0cdd3886845d860aad2c3 |
|
08-Dec-2004 |
Timo Sirainen <tss@iki.fi> |
When master looked for auth request, it didn't check if the authentication
was yet finished, so auth client could have fooled master by beginning
authentication without finishing it. Login processes didn't allow users to
do this though, so no real problem.
--HG--
branch : HEAD |
4b8c92b4773677a7b4064816e469eeafc976ba75 |
|
22-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Separate major/minor version with TAB instead of dot in VERSION.
--HG--
branch : HEAD |
2cb3e318bdfee05d1de2d8c8942ff790edd3ea3f |
|
20-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Put SPID back, it's needed for standalone dovecot-auth.
--HG--
branch : HEAD |
211ed7806d8715ec2280ffbf5d10f0d6e4f1beb2 |
|
20-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Changed ostream's flush callback to have return value which can tell if
there are more bytes to be sent even if there is none in output buffer
itself. Fixes FETCH commands which used o_stream_send_istream() getting
stuck.
--HG--
branch : HEAD |
b0df0e9a8ed8889ad4bf032043ab245ce8851fde |
|
19-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Added VERSION command and checking to authentication protocol.
--HG--
branch : HEAD |
6c2c5f20760b06bfb4a40b0ee2ef5ab016bc41f0 |
|
16-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Created generic asynchronous SQL API and implemented MySQL and PostgreSQL
drivers. MySQL is implemented synchronously because it's API doesn't provide
async way to do it.
Replaced pgsql and mysql userdb/passdb with generic sql userdb/passdb.
--HG--
branch : HEAD |
fe00e9487c4cd20c21ebe847560ead202827825f |
|
13-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Auth protocol fix
--HG--
branch : HEAD |
73bfdbe28c2ce6d143eadf0bab8ccfbe4cab0fae |
|
13-Oct-2004 |
Timo Sirainen <tss@iki.fi> |
Changed dovecot-auth protocol to ASCII based. Should be easier now to write
replacement server if needed by someone. Also cleaned up/made more
consistent auth code. The new code could still use some cleaning though..
--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 |
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 |
8eea67470c1bd8562a62e7445d930bb2079b1a43 |
|
03-Jul-2004 |
Timo Sirainen <tss@iki.fi> |
Added APOP authentication for POP3. Patch by Andrey Panin.
This required some changes in auth APIs.
--HG--
branch : HEAD |
6b46a500174ace25494b8f0547283eb60dc13756 |
|
23-Jun-2004 |
Timo Sirainen <tss@iki.fi> |
Dovecot can now connect to externally running dovecot-auth.
--HG--
branch : HEAD |
d1414c09cf0d58ac983054e2f4e1a1f329272dcf |
|
29-May-2004 |
Timo Sirainen <tss@iki.fi> |
Removed hardcoded mechanism lists. It's now possible to add them
dynamically. Added support for SASL initial response.
--HG--
branch : HEAD |
76213404317a7ed17bec0beadb5137c82785d816 |
|
29-May-2004 |
Timo Sirainen <tss@iki.fi> |
dovecot-auth can now be run by itself, it listens in UNIX sockets specified
in AUTH_SOCKETS environment. Added extra_sockets auth setting which can be
used to do the same thing while started through dovecot master.
--HG--
branch : HEAD |
3b94ff5951db4d4eddb7a80ed4e3f61207202635 |
|
25-May-2004 |
Timo Sirainen <tss@iki.fi> |
Fixed var_expand() to take a table of variables rather than a few predefined
ones. Added support for modifiers.
--HG--
branch : HEAD |
cd466fe7b84b0223735a6469c7f7bc225f65996d |
|
21-Sep-2003 |
Timo Sirainen <tss@iki.fi> |
data_stack_pool split into two: unsafe_data_stack_pool which works like
before, and a new one which verifies that stack frame stays the same
whenever the pool is accessed.
--HG--
branch : HEAD |
bbef8d37812f877525ca57e7ed206094e1efe288 |
|
22-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
fixes
--HG--
branch : HEAD |
7a87427770874f38d1d299635b37d699f9772860 |
|
22-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
bugfixes
--HG--
branch : HEAD |
2a90d8a14b0e7cc1508814bc87d3dfa598ef46a8 |
|
22-Aug-2003 |
Timo Sirainen <tss@iki.fi> |
Moved client side code for auth process handling to lib-auth. Some other login process cleanups.
--HG--
branch : HEAD |