Florent Bruneau [Fri, 19 Sep 2008 15:30:44 +0000 (17:30 +0200)]
Add server port in the example.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 19 Sep 2008 15:28:03 +0000 (17:28 +0200)]
Read the port from the configuration file.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 18 Sep 2008 20:57:52 +0000 (22:57 +0200)]
Simplify code.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 18 Sep 2008 20:17:45 +0000 (22:17 +0200)]
Configuration reloader for postlicyd.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 18 Sep 2008 16:15:37 +0000 (18:15 +0200)]
Add hook to refresh config on SIGHUP.
Lock the pid file.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 17 Sep 2008 21:30:54 +0000 (23:30 +0200)]
Array contains a "lock" flag, allowing "per array" locking.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 17 Sep 2008 20:19:53 +0000 (22:19 +0200)]
Some improvements to the trie:
- add trie_prefix to check if the trie contains a prefix for a string.
- add comments
- lock the trie_t structure, not only its content.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 17 Sep 2008 18:21:39 +0000 (20:21 +0200)]
Oops.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 17 Sep 2008 17:27:49 +0000 (19:27 +0200)]
Fix loop detection (we're on oriented graph).
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 17 Sep 2008 15:51:11 +0000 (17:51 +0200)]
Remove debug.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 17 Sep 2008 14:43:08 +0000 (16:43 +0200)]
Declare Array(void*).
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 17 Sep 2008 14:38:06 +0000 (16:38 +0200)]
Store param value length. Fix off-by-one.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 17 Sep 2008 10:18:04 +0000 (12:18 +0200)]
Check configuration for internal loops.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 20:57:21 +0000 (22:57 +0200)]
Strlist filter.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 19:00:52 +0000 (21:00 +0200)]
Rename rbl to iplist since it can be whitelisting.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 18:57:45 +0000 (20:57 +0200)]
Hop !
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 17:36:22 +0000 (19:36 +0200)]
typo.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 17:31:12 +0000 (19:31 +0200)]
Update conf.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 17:29:51 +0000 (19:29 +0200)]
RTrim strings.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 17:23:39 +0000 (19:23 +0200)]
Factorize PARSE_INT...
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 16:31:39 +0000 (18:31 +0200)]
Add a "special" return value: abort.
Abort is a *private* hook and can not be associated to a user action. When
abort is returned, the connection is closed as requested by the
"SMTPD_POLICY_README".
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 15:16:02 +0000 (17:16 +0200)]
Configuration example (and documentation).
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 16 Sep 2008 15:15:38 +0000 (17:15 +0200)]
Can set an entry point per protocol-state.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 15 Sep 2008 16:30:51 +0000 (18:30 +0200)]
Filter runner logs.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 15 Sep 2008 16:23:12 +0000 (18:23 +0200)]
More logs in greylister... need tests.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 15 Sep 2008 16:01:50 +0000 (18:01 +0200)]
Greylist filter.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 15 Sep 2008 14:46:29 +0000 (16:46 +0200)]
Implements filter runner.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 15 Sep 2008 13:59:42 +0000 (15:59 +0200)]
filter_params_t -> filter_param_t
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 15 Sep 2008 13:33:09 +0000 (15:33 +0200)]
Tokenize params too.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 15 Sep 2008 12:22:10 +0000 (14:22 +0200)]
Tokenize hook names.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Sat, 13 Sep 2008 16:48:18 +0000 (18:48 +0200)]
Generated token list by parsing the sources.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Sat, 13 Sep 2008 15:46:00 +0000 (17:46 +0200)]
rbl filter implementation.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Sat, 13 Sep 2008 14:04:59 +0000 (16:04 +0200)]
Fix order of linkage to setup modules in a correct order.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Sat, 13 Sep 2008 07:39:53 +0000 (09:39 +0200)]
foreach() semantic for arrays, improves configuration post-processing.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Sat, 13 Sep 2008 07:39:06 +0000 (09:39 +0200)]
Fix off-by-one.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 20:49:59 +0000 (22:49 +0200)]
Add array_lock and array_unlock.
Convert rbl to use array_t.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 20:37:36 +0000 (22:37 +0200)]
Switch to array_t and feed the filters from config.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 20:37:14 +0000 (22:37 +0200)]
Add the A() macro to get the array type.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 20:04:40 +0000 (22:04 +0200)]
Add array framework that works with any type.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 17:32:46 +0000 (19:32 +0200)]
Cleanup.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 17:10:57 +0000 (19:10 +0200)]
Fix config parser.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 16:24:17 +0000 (18:24 +0200)]
Initial version of the parser.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 14:12:19 +0000 (16:12 +0200)]
Factorize code to map a file into memory.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Fri, 12 Sep 2008 13:16:05 +0000 (15:16 +0200)]
Prepare filter and config design.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 16:47:14 +0000 (18:47 +0200)]
Update guards.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 16:04:27 +0000 (18:04 +0200)]
Highly reduce the number of allocations required to build a trie.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 12:42:50 +0000 (14:42 +0200)]
Publish trie_lock and trie_unlock.
Don't forget to unlock before deletion.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 12:36:03 +0000 (14:36 +0200)]
Add protection against lookup in not compiled trie (and vice-versa).
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 12:30:05 +0000 (14:30 +0200)]
Add show_content parameter to trie_inspect().
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 12:26:49 +0000 (14:26 +0200)]
Fix duplicate management.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 12:10:56 +0000 (14:10 +0200)]
English.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 11:58:41 +0000 (13:58 +0200)]
More informations in trie_inspect.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 11:19:00 +0000 (13:19 +0200)]
Add shrink and memblock.
Does not support duplicates anymore.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Thu, 11 Sep 2008 10:58:23 +0000 (12:58 +0200)]
Smaller memory footprint.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 10 Sep 2008 22:32:37 +0000 (00:32 +0200)]
Fix m_strncpy() speed issue.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 10 Sep 2008 22:24:11 +0000 (00:24 +0200)]
Compacter trie, reduce the number of allocations.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 10 Sep 2008 21:27:52 +0000 (23:27 +0200)]
More tests and fixes.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 10 Sep 2008 17:58:36 +0000 (19:58 +0200)]
Lookup tests.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 10 Sep 2008 17:53:21 +0000 (19:53 +0200)]
Add tst-trie to gitignore.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 10 Sep 2008 17:52:35 +0000 (19:52 +0200)]
Fixes and add small tests.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 10 Sep 2008 16:56:29 +0000 (18:56 +0200)]
Initial implementation of a patricia-trie str->boolean.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Wed, 10 Sep 2008 16:37:05 +0000 (18:37 +0200)]
Missing error report, and fix error in binary search.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 9 Sep 2008 16:12:56 +0000 (18:12 +0200)]
Prepare tokenizer for filter names.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 9 Sep 2008 12:02:53 +0000 (14:02 +0200)]
Allow make install-progname without running make progname.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 9 Sep 2008 11:52:58 +0000 (13:52 +0200)]
Cleanup source structure.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 9 Sep 2008 10:35:07 +0000 (12:35 +0200)]
Useless.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Tue, 9 Sep 2008 10:30:14 +0000 (12:30 +0200)]
Cleanup, fix memleaks.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 21:39:22 +0000 (23:39 +0200)]
Close the listeners on exit.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 17:02:06 +0000 (19:02 +0200)]
Simplify.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 16:44:45 +0000 (18:44 +0200)]
Working policy daemon.
Add support for the stress parameter of postfix 2.5+.
Can mlock rbl data.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 14:38:18 +0000 (16:38 +0200)]
Add comments to the greylist algorithm.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 13:04:19 +0000 (15:04 +0200)]
More readable.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 12:44:10 +0000 (14:44 +0200)]
Factorize code.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 11:57:23 +0000 (13:57 +0200)]
Switch srsd to the server structure.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 10:15:38 +0000 (12:15 +0200)]
Don't loose typing.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Florent Bruneau [Mon, 8 Sep 2008 10:10:50 +0000 (12:10 +0200)]
Abstract server loop.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
Pierre Habouzit [Mon, 3 Dec 2007 10:06:17 +0000 (11:06 +0100)]
bad typing
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 2 Dec 2007 21:38:56 +0000 (22:38 +0100)]
Make the greylist configuration public.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 2 Dec 2007 21:27:28 +0000 (22:27 +0100)]
Threads are just such a bad idea…
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 2 Dec 2007 21:26:17 +0000 (22:26 +0100)]
missing guard
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 2 Dec 2007 12:31:00 +0000 (13:31 +0100)]
fix buffer module.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 2 Dec 2007 12:01:20 +0000 (13:01 +0100)]
Refactor epoll module.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sun, 2 Dec 2007 11:38:28 +0000 (12:38 +0100)]
refactor.
Pierre Habouzit [Sun, 2 Dec 2007 11:36:28 +0000 (12:36 +0100)]
Implement buffer_write.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 16:47:43 +0000 (17:47 +0100)]
Use epoll
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 16:37:41 +0000 (17:37 +0100)]
Use a conveniency library.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 14:52:03 +0000 (15:52 +0100)]
Have a slightly better event loop.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 14:42:16 +0000 (15:42 +0100)]
postfix uses \n not \r. Also fix a typo.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 14:16:51 +0000 (15:16 +0100)]
fix SIGINT in the blocking mode for linux.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 14:07:47 +0000 (15:07 +0100)]
Simplify sigint handler.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 14:05:20 +0000 (15:05 +0100)]
we must copy the closure temporarily.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 13:46:07 +0000 (14:46 +0100)]
add option to prevent daemonization
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 13:41:41 +0000 (14:41 +0100)]
listen on a port (postlicyd)
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 13:37:39 +0000 (14:37 +0100)]
Add new APIs
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 13:23:02 +0000 (14:23 +0100)]
Reorganize code slightly
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 13:16:52 +0000 (14:16 +0100)]
We don't need a separate module here.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 13:14:02 +0000 (14:14 +0100)]
Plug the postfix policy query parsing again.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Sat, 1 Dec 2007 12:30:16 +0000 (13:30 +0100)]
prepare hooking of policy.c module.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Fri, 30 Nov 2007 23:31:46 +0000 (00:31 +0100)]
greylist initializer.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
Pierre Habouzit [Fri, 30 Nov 2007 11:00:29 +0000 (12:00 +0100)]
Begin work on the greylist module.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>