e8df5cfa65521933fa16a9487b427bfdae92c9ca |
|
16-Dec-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
master: Removed unused process_exec(extra_args) parameter
Removes unnecessarily complicated code marked with @UNSAFE. |
41ee23907b084da5baed459e35bccd5a33430419 |
|
16-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
global: use dev_null_fd instead of opening /dev/null |
be7c7c4e99a9bb8570cdd923d5d369125a6ca727 |
|
16-Nov-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
master: Don't unlink login sockets at startup if someone is listening to them.
The original check there never worked, because null_fd was always set.
Normally the master.pid file would prevent this happening, but if it didn't
exist, the sockets would be unlinked and usually also created back. |
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 |
29f32cdcf44cda9688576bfdc7450a8a15e90e86 |
|
04-Mar-2011 |
Timo Sirainen <tss@iki.fi> |
master: Use per-services_list "master is dead" fd, so services know when config is reload. |
cbcba924a745c938260fd39cb284175b75f8eaf2 |
|
15-Dec-2010 |
Timo Sirainen <tss@iki.fi> |
master-child API change: Use a separate fd for tracking when master dies.
This works around a Linux performance problem where when one process writes
to status fd all the other processes of the same service type wake up. |
4ef46445d2ce12f63b4440b43ae69dcfa01a8675 |
|
30-Nov-2010 |
Timo Sirainen <tss@iki.fi> |
master: Use t_askpass() for getting the manual SSL key password. |
0453b9e1be810831c0389465dd59f4a40e04dd96 |
|
10-Nov-2009 |
Timo Sirainen <tss@iki.fi> |
Removed all traces of auth-success file checking.
The file no longer got written after pre/post-login process redesign and
maybe it's too much trouble to get it back.
--HG--
branch : HEAD |
d0867802ab23e2b4ea78113c97df3b0898620a92 |
|
09-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
dovecot -p (ask ssl key password from command line) works again.
--HG--
branch : HEAD |
3b959c98e05e780de2a063a4a9d8d393dc61ed58 |
|
04-Sep-2009 |
Timo Sirainen <tss@iki.fi> |
master: Several fixes to handling SIGHUPs.
--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 |
617e13833c798435e2be425b99c27ecaad1b8393 |
|
05-May-2009 |
Timo Sirainen <tss@iki.fi> |
master: Added back some startup checks/fixes.
--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 |
a55742ae2e6b3fd53c8e2b5b63565d081ecfb1fc |
|
03-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
Improved logging for core dumping. With Linux use PR_SET_DUMPABLE for imap/pop3.
--HG--
branch : HEAD |
528862222dfae36874e51753a6782e3f7acc9ec5 |
|
03-Mar-2009 |
Timo Sirainen <tss@iki.fi> |
Improved logging for core dumping. With Linux use PR_SET_DUMPABLE for imap/pop3.
--HG--
branch : HEAD |
5568683cf2fc457bcab299b3f1086828d78655e0 |
|
19-Oct-2008 |
Timo Sirainen <tss@iki.fi> |
Print a help message about authentication at startup until the first successful authentication.
--HG--
branch : HEAD |
c25356d5978632df6203437e1953bcb29e0c736f |
|
16-Sep-2007 |
Timo Sirainen <tss@iki.fi> |
Changed .h ifdef/defines to use <NAME>_H format.
--HG--
branch : HEAD |
5750d924d97ad418d573bc406cd05650e8f772c1 |
|
30-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Removed validate_str(). It's not used anywhere.
--HG--
branch : HEAD |
e98df1785d3f246cb72c4ee7b3dbddf56636bf14 |
|
30-Jun-2007 |
Timo Sirainen <tss@iki.fi> |
Moved child process handling to child-process.[ch]. The hash table now uses
pointers to structures instead of a casted process type. This allowed
removing another login-processes hash table.
--HG--
branch : HEAD |
157e7b9e26e14c37f4ffcbabfd5d157cfbfa84df |
|
05-Feb-2006 |
Timo Sirainen <tss@iki.fi> |
Added ssl-build-param binary to build the ssl-parameters.dat. This way
dovecot master binary doesn't anymore need to be linked with SSL libraries,
and the process title is also clearer.
--HG--
branch : HEAD |
3d512ea91533687d5ba2c0f8a16049ac311f72ed |
|
15-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Added support for password protected SSL private keys. The password can be
given in dovecot.conf, or when dovecot is started with -p parameter.
--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 |
b901fb10f0a6afa467e35da9a076a61adfe65873 |
|
12-Jan-2006 |
Timo Sirainen <tss@iki.fi> |
Start dict server automatically when a client tries to connect to it.
--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 |
6b005a6c3e96a03be8e5183f857f028063f384f5 |
|
24-Nov-2004 |
Timo Sirainen <tss@iki.fi> |
Allow running all executables with parameters.
--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 |
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 |
316dad8277db6575354eba30d3fc7a1c0447c513 |
|
10-May-2004 |
Timo Sirainen <tss@iki.fi> |
Write all logging through master process. Fixes problems with log rotation,
chrooting, etc. Master process also allows max. 10 log messages per second
per child process, it then begins throttling them (eventually making the
child process start blocking on stderr).
--HG--
branch : HEAD |
54a6d29d96e243cd5c84892384c18c9830359ada |
|
13-Jul-2003 |
Timo Sirainen <tss@iki.fi> |
Replaced geteuid() calls with one in the beginning and saving it to
master_uid. When chdir()ing to user's home dir, temporarily set euid to
user's uid.
--HG--
branch : HEAD |
0cb57ee35d4cab9c03434d7abf312c081ed554d4 |
|
10-Jul-2003 |
Timo Sirainen <tss@iki.fi> |
New configuration file code. Some syntax changes, but tries to be somewhat
backwards compatible. SIGHUP now reverts back to old configuration if it
detected errors in new one.
--HG--
branch : HEAD |
c62704c56e9c46214723cda6ca73e4c985f75e4b |
|
15-Apr-2003 |
Timo Sirainen <tss@iki.fi> |
Separate PROCESS_TYPE_MAIL into IMAP and POP3.
--HG--
branch : HEAD |
a7c58de2babd44256c9bb63f12876433646f9e7e |
|
04-Mar-2003 |
Timo Sirainen <tss@iki.fi> |
Somewhat working code to support loading Dovecot from inetd and such. It
still needs possibility to specify which login process to use, and LOGIN and
AUTHENTICATE commands shouldn't be allowed before we're connected to auth
process.
--HG--
branch : HEAD |
9e49712b9cddbf47568ea4f3676e59b151489356 |
|
30-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
Moved settings parsing to lib-settings.
--HG--
branch : HEAD |
fc60e984083286229bf908fbadb896882f85dc6c |
|
30-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
Rewrote setting handling. Changed some existing settings also since POP3
support required changes anyway. POP3 seems to be really working now :)
--HG--
branch : HEAD |
25757faf029c369a8318349dafe952e2358df1d8 |
|
27-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
We have now separate "userdb" and "passdb". They aren't tied to each others
in any way, so it's possible to use whatever user database with whatever
password database.
Added "static" userdb, which uses same uid/gid for everyone and generates
home directory from given template. This could be useful with PAM, although
insecure since everyone uses same uid.
Not too well tested, and userdb/passdb API still needs to be changed to
asynchronous for sql/ldap/etc lookups.
--HG--
branch : HEAD |
b67cf4235f18327c2ee5c5142310e87a2b7b42d3 |
|
21-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
If auth/login process died unexpectedly, the exit status or killing signal
wasn't logged.
--HG--
branch : HEAD |
c0435c854a0e7246373b9752d163095cc4fbe985 |
|
05-Jan-2003 |
Timo Sirainen <tss@iki.fi> |
Naming style changes, finally got tired of most of the typedefs. Also the
previous enum -> macro change reverted so that we don't use the highest bit
anymore, that's incompatible with old indexes so they will be rebuilt.
--HG--
branch : HEAD |
c8ffea67272a9893d7d03860746371eb2490c255 |
|
20-Dec-2002 |
Timo Sirainen <tss@iki.fi> |
Instead of just trusting randomness of authentication cookies between
auth<->master<->login process IPC, master now doesn't accept any cookies
from login process which weren't created by it (identified by PID). When
login process dies, all it's pending cookies are also removed, so I can't
see even a theoretical possiblity anymore for exploited login process to
authenticate as someone else.
Also fixed some int -> unsigned int.
--HG--
branch : HEAD |
aff95d423ca04ac801d55bbb3e29cc18d630f97a |
|
18-Dec-2002 |
Timo Sirainen <tss@iki.fi> |
Drop root privileges earlier. Close syslog more later in imap-master when
forking new processes, so that any errors get logged. Make sure that all
errors show up in log files - use specific exit status codes if we can't
write to log file. Make sure imap and login processes always drop root
privileges even if master process didn't ask for it for some reason.
putenv() wasn't verified to succeed - luckily we never allowed large user
given data there.
--HG--
branch : HEAD |
6abc464b8f5aac60ea635769e4bc0a64c0fb43c5 |
|
17-Dec-2002 |
Timo Sirainen <tss@iki.fi> |
Clear separation of virtual and system usernames. passwd-file didn't work
before if the user didn't exist in system. Prefixed also all setuid/etc.
restriction environments with RESTRICT_.
--HG--
branch : HEAD |
7a1cd184b81c4c8a5165b84d3d01c82e2cada70f |
|
17-Nov-2002 |
Timo Sirainen <tss@iki.fi> |
Master process generates DH/RSA parameters now and stores them into file
which login processes read. Added setting for regeneration interval. Some
other SSL cleanups.
Also fixed default login process path to be ../run/dovecot/login/ like
example config file said, instead of just ../run/dovecot/ which it actually
was until now.
--HG--
branch : HEAD |
94f11e46199ea913e4ae17198b3024771b1bef68 |
|
06-Nov-2002 |
Timo Sirainen <tss@iki.fi> |
Added verbose_proctitle setting: Show more verbose process titles (in ps).
Currently shows user name and IP address. Useful for seeing who are actually
using the IMAP processes (eg. shared mailboxes or if same uid is used for
multiple accounts).
--HG--
branch : HEAD |
fc1761e5f721d8a8e9a0c07c87072574b5ec08bd |
|
29-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
cleanup
--HG--
branch : HEAD |
664c7007d4a0116be2cce62295cd9fb9cd33eee0 |
|
08-Sep-2002 |
Timo Sirainen <tss@iki.fi> |
Replaced INT_TO_POINTER and POINTER_TO_INT macros with POINTER_CAST and
POINTER_CAST_TO macros, the CAST_TO takes a parameter to which type we're
casting to. Also POINTER_CAST should be valid ANSI-C now.
--HG--
branch : HEAD |
66251e6ab31e5cc153fe5cae608e416dacafe9cd |
|
08-Aug-2002 |
Timo Sirainen <tss@iki.fi> |
Initial revision
--HG--
branch : HEAD |