projects
/
tinc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove old Spanish translation.
[tinc]
/
src
/
net.c
diff --git
a/src/net.c
b/src/net.c
index
a21850a
..
31f1b0e
100644
(file)
--- a/
src/net.c
+++ b/
src/net.c
@@
-1,7
+1,7
@@
/*
net.c -- most of the network code
/*
net.c -- most of the network code
- Copyright (C) 1998-2005 Ivo Timmermans
<ivo@tinc-vpn.org>
,
- 2000-200
5
Guus Sliepen <guus@tinc-vpn.org>
+ Copyright (C) 1998-2005 Ivo Timmermans,
+ 2000-200
6
Guus Sliepen <guus@tinc-vpn.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@
-241,7
+241,7
@@
static void check_dead_connections(void)
if(c->last_ping_time + pingtimeout < now) {
if(c->status.active) {
if(c->status.pinged) {
if(c->last_ping_time + pingtimeout < now) {
if(c->status.active) {
if(c->status.pinged) {
- ifdebug(CONNECTIONS) logger(LOG_INFO, _("%s (%s) didn't respond to PING in %d seconds"),
+ ifdebug(CONNECTIONS) logger(LOG_INFO, _("%s (%s) didn't respond to PING in %
l
d seconds"),
c->name, c->hostname, now - c->last_ping_time);
c->status.timeout = true;
terminate_connection(c, true);
c->name, c->hostname, now - c->last_ping_time);
c->status.timeout = true;
terminate_connection(c, true);
@@
-251,7
+251,7
@@
static void check_dead_connections(void)
} else {
if(c->status.remove) {
logger(LOG_WARNING, _("Old connection_t for %s (%s) status %04x still lingering, deleting..."),
} else {
if(c->status.remove) {
logger(LOG_WARNING, _("Old connection_t for %s (%s) status %04x still lingering, deleting..."),
- c->name, c->hostname,
*(uint32_t *)&c->status
);
+ c->name, c->hostname,
c->status.value
);
connection_del(c);
continue;
}
connection_del(c);
continue;
}
@@
-270,7
+270,7
@@
static void check_dead_connections(void)
if(c->outbuflen > 0 && c->last_flushed_time + pingtimeout < now) {
if(c->status.active) {
ifdebug(CONNECTIONS) logger(LOG_INFO,
if(c->outbuflen > 0 && c->last_flushed_time + pingtimeout < now) {
if(c->status.active) {
ifdebug(CONNECTIONS) logger(LOG_INFO,
- _("%s (%s) could not flush for %d seconds (%d bytes remaining)"),
+ _("%s (%s) could not flush for %
l
d seconds (%d bytes remaining)"),
c->name, c->hostname, now - c->last_flushed_time, c->outbuflen);
c->status.timeout = true;
terminate_connection(c, true);
c->name, c->hostname, now - c->last_flushed_time, c->outbuflen);
c->status.timeout = true;
terminate_connection(c, true);
@@
-288,7
+288,7
@@
static void check_network_activity(fd_set * readset, fd_set * writeset)
connection_t *c;
avl_node_t *node;
int result, i;
connection_t *c;
avl_node_t *node;
int result, i;
-
in
t len = sizeof(result);
+
socklen_
t len = sizeof(result);
vpn_packet_t packet;
cp();
vpn_packet_t packet;
cp();
@@
-354,13
+354,15
@@
int main_loop(void)
fd_set readset, writeset;
struct timeval tv;
int r, maxfd;
fd_set readset, writeset;
struct timeval tv;
int r, maxfd;
- time_t last_ping_check, last_config_check;
+ time_t last_ping_check, last_config_check
, last_graph_dump
;
event_t *event;
cp();
last_ping_check = now;
last_config_check = now;
event_t *event;
cp();
last_ping_check = now;
last_config_check = now;
+ last_graph_dump = now;
+
srand(now);
running = true;
srand(now);
running = true;
@@
-411,9
+413,9
@@
int main_loop(void)
if(keyexpires < now) {
ifdebug(STATUS) logger(LOG_INFO, _("Regenerating symmetric key"));
if(keyexpires < now) {
ifdebug(STATUS) logger(LOG_INFO, _("Regenerating symmetric key"));
- RAND_pseudo_bytes(myself->key, myself->keylength);
+ RAND_pseudo_bytes(
(unsigned char *)
myself->key, myself->keylength);
if(myself->cipher)
if(myself->cipher)
- EVP_DecryptInit_ex(&packet_ctx, myself->cipher, NULL,
myself->key,
myself->key + myself->cipher->key_len);
+ EVP_DecryptInit_ex(&packet_ctx, myself->cipher, NULL,
(unsigned char *)myself->key, (unsigned char *)
myself->key + myself->cipher->key_len);
send_key_changed(broadcast, myself);
keyexpires = now + keylifetime;
}
send_key_changed(broadcast, myself);
keyexpires = now + keylifetime;
}
@@
-422,7
+424,7
@@
int main_loop(void)
while((event = get_expired_event())) {
event->handler(event->data);
while((event = get_expired_event())) {
event->handler(event->data);
- free(event);
+ free
_event
(event);
}
if(sigalrm) {
}
if(sigalrm) {
@@
-461,7
+463,8
@@
int main_loop(void)
if(c->outgoing) {
free(c->outgoing->name);
if(c->outgoing) {
free(c->outgoing->name);
- freeaddrinfo(c->outgoing->ai);
+ if(c->outgoing->ai)
+ freeaddrinfo(c->outgoing->ai);
free(c->outgoing);
c->outgoing = NULL;
}
free(c->outgoing);
c->outgoing = NULL;
}
@@
-478,6
+481,13
@@
int main_loop(void)
try_outgoing_connections();
}
try_outgoing_connections();
}
+
+ /* Dump graph if wanted every 60 seconds*/
+
+ if(last_graph_dump + 60 < now) {
+ dump_graph();
+ last_graph_dump = now;
+ }
}
return 0;
}
return 0;