projects
/
apps
/
pfixtools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add greylist tests.
[apps/pfixtools.git]
/
common
/
server.c
diff --git
a/common/server.c
b/common/server.c
index
73c2888
..
6ea1a9a
100644
(file)
--- a/
common/server.c
+++ b/
common/server.c
@@
-135,11
+135,18
@@
static int start_client(server_t *server, start_client_t starter,
}
int server_loop(start_client_t starter, delete_client_t deleter,
}
int server_loop(start_client_t starter, delete_client_t deleter,
- run_client_t runner, void* config) {
+ run_client_t runner,
refresh_t refresh,
void* config) {
while (!sigint) {
struct epoll_event evts[1024];
int n;
while (!sigint) {
struct epoll_event evts[1024];
int n;
+ if (sighup && refresh) {
+ if (!refresh(config)) {
+ syslog(LOG_ERR, "error while refreshing configuration");
+ return EXIT_FAILURE;
+ }
+ }
+
n = epoll_select(evts, countof(evts), -1);
if (n < 0) {
if (errno != EAGAIN && errno != EINTR) {
n = epoll_select(evts, countof(evts), -1);
if (n < 0) {
if (errno != EAGAIN && errno != EINTR) {