ADD_EXECUTABLE(rspamd-http-server ${UTILSERVERSRC})
SET_TARGET_PROPERTIES(rspamd-http-server PROPERTIES LINKER_LANGUAGE C)
TARGET_LINK_LIBRARIES(rspamd-http-server rspamd-server)
-
TARGET_LINK_LIBRARIES(rspamd-http-server rspamd-http-parser)
TARGET_LINK_LIBRARIES(rspamd-http-server ${RSPAMD_REQUIRED_LIBRARIES})
ADD_EXECUTABLE(rspamd-http-bench ${UTILBENCHSRC})
-SET_TARGET_PROPERTIES(rspamd-http-server PROPERTIES LINKER_LANGUAGE C)
-TARGET_LINK_LIBRARIES(rspamd-http-server rspamd-server)
-TARGET_LINK_LIBRARIES(rspamd-http-server rspamd-http-parser)
-TARGET_LINK_LIBRARIES(rspamd-http-server ${RSPAMD_REQUIRED_LIBRARIES})
+SET_TARGET_PROPERTIES(rspamd-http-bench PROPERTIES LINKER_LANGUAGE C)
+TARGET_LINK_LIBRARIES(rspamd-http-bench rspamd-server)
+TARGET_LINK_LIBRARIES(rspamd-http-bench rspamd-http-parser)
+TARGET_LINK_LIBRARIES(rspamd-http-bench ${RSPAMD_REQUIRED_LIBRARIES})
# Redirector
IF (ENABLE_REDIRECTOR MATCHES "ON")
static struct rspamd_keypair_cache *c;
static gpointer server_key;
static struct timeval io_tv = {
- .tv_sec = 5,
+ .tv_sec = 20,
.tv_usec = 0
};
rspamd_server_error (struct rspamd_http_connection *conn,
GError *err)
{
- msg_err ("http error occurred: %s", err->message);
- g_assert (0);
+ struct rspamd_http_server_session *session = conn->ud;
+
+ rspamd_fprintf (stderr, "http error occurred: %s\n", err->message);
+ rspamd_http_connection_unref (conn);
+ close (session->fd);
+ g_slice_free1 (sizeof (*session), session);
}
static int
reply->code = 200;
reply->status = rspamd_fstring_new_init ("OK", 2);
reply->body = rspamd_fstring_sized_new (size);
+ reply->body->len = size;
memset (reply->body->str, 0, size);
}
else {
if ((nfd =
rspamd_accept_from_socket (fd, &addr)) == -1) {
- msg_warn ("accept failed: %s", strerror (errno));
+ rspamd_fprintf (stderr, "accept failed: %s", strerror (errno));
return;
}
/* Check for EAGAIN */
pid_t *sfd = arg;
rspamd_http_stop_servers (sfd);
+ event_loopexit (NULL);
}
int