Minor refactorings
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 20s
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 20s
This commit is contained in:
parent
5a9cdb33c4
commit
9ff991d907
1 changed files with 3 additions and 4 deletions
|
@ -78,6 +78,7 @@ typedef struct ConnectionContext {
|
||||||
char *buf;
|
char *buf;
|
||||||
const Args *args;
|
const Args *args;
|
||||||
C_SIMPLE_HTTP_ParsedConfig *parsed;
|
C_SIMPLE_HTTP_ParsedConfig *parsed;
|
||||||
|
struct timespec current_time;
|
||||||
} ConnectionContext;
|
} ConnectionContext;
|
||||||
|
|
||||||
void c_simple_http_cleanup_connection_item(void *data) {
|
void c_simple_http_cleanup_connection_item(void *data) {
|
||||||
|
@ -163,9 +164,7 @@ int c_simple_http_manage_connections(void *data, void *ud) {
|
||||||
const Args *args = ctx->args;
|
const Args *args = ctx->args;
|
||||||
C_SIMPLE_HTTP_ParsedConfig *parsed = ctx->parsed;
|
C_SIMPLE_HTTP_ParsedConfig *parsed = ctx->parsed;
|
||||||
|
|
||||||
struct timespec current_monotonic;
|
if (ctx->current_time.tv_sec - citem->time_point.tv_sec
|
||||||
clock_gettime(CLOCK_MONOTONIC, ¤t_monotonic);
|
|
||||||
if (current_monotonic.tv_sec - citem->time_point.tv_sec
|
|
||||||
>= C_SIMPLE_HTTP_CONNECTION_TIMEOUT_SECONDS) {
|
>= C_SIMPLE_HTTP_CONNECTION_TIMEOUT_SECONDS) {
|
||||||
fprintf(stderr, "Peer ");
|
fprintf(stderr, "Peer ");
|
||||||
c_simple_http_print_ipv6_addr(stderr, &citem->peer_addr);
|
c_simple_http_print_ipv6_addr(stderr, &citem->peer_addr);
|
||||||
|
@ -586,7 +585,6 @@ int main(int argc, char **argv) {
|
||||||
}
|
}
|
||||||
|
|
||||||
ConnectionItem *citem = malloc(sizeof(ConnectionItem));
|
ConnectionItem *citem = malloc(sizeof(ConnectionItem));
|
||||||
memset(citem, 0, sizeof(ConnectionItem));
|
|
||||||
citem->fd = connection_fd;
|
citem->fd = connection_fd;
|
||||||
ret = clock_gettime(CLOCK_MONOTONIC, &citem->time_point);
|
ret = clock_gettime(CLOCK_MONOTONIC, &citem->time_point);
|
||||||
citem->peer_addr = peer_info.sin6_addr;
|
citem->peer_addr = peer_info.sin6_addr;
|
||||||
|
@ -597,6 +595,7 @@ int main(int argc, char **argv) {
|
||||||
printf("WARNING: accept: Unknown invalid state!\n");
|
printf("WARNING: accept: Unknown invalid state!\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
clock_gettime(CLOCK_MONOTONIC, &connection_context.current_time);
|
||||||
simple_archiver_list_remove(connections,
|
simple_archiver_list_remove(connections,
|
||||||
c_simple_http_manage_connections,
|
c_simple_http_manage_connections,
|
||||||
&connection_context);
|
&connection_context);
|
||||||
|
|
Loading…
Reference in a new issue