Dump traffic statistics over control sockets.
This commit is contained in:
parent
f5843e7d64
commit
362d8a6358
3 changed files with 17 additions and 0 deletions
|
@ -113,6 +113,9 @@ bool control_h(connection_t *c, char *request) {
|
||||||
return control_return(c, REQ_DISCONNECT, found ? 0 : -2);
|
return control_return(c, REQ_DISCONNECT, found ? 0 : -2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case REQ_DUMP_TRAFFIC:
|
||||||
|
return dump_traffic(c);
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return send_request(c, "%d %d", CONTROL, REQ_INVALID);
|
return send_request(c, "%d %d", CONTROL, REQ_INVALID);
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,6 +37,7 @@ enum request_type {
|
||||||
REQ_RETRY,
|
REQ_RETRY,
|
||||||
REQ_CONNECT,
|
REQ_CONNECT,
|
||||||
REQ_DISCONNECT,
|
REQ_DISCONNECT,
|
||||||
|
REQ_DUMP_TRAFFIC,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define TINC_CTL_VERSION_CURRENT 0
|
#define TINC_CTL_VERSION_CURRENT 0
|
||||||
|
|
13
src/node.c
13
src/node.c
|
@ -179,3 +179,16 @@ bool dump_nodes(connection_t *c) {
|
||||||
|
|
||||||
return send_request(c, "%d %d", CONTROL, REQ_DUMP_NODES);
|
return send_request(c, "%d %d", CONTROL, REQ_DUMP_NODES);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool dump_traffic(connection_t *c) {
|
||||||
|
splay_node_t *node;
|
||||||
|
node_t *n;
|
||||||
|
|
||||||
|
for(node = node_tree->head; node; node = node->next) {
|
||||||
|
n = node->data;
|
||||||
|
send_request(c, "%d %d %s %"PRIu64" %"PRIu64" %"PRIu64" %"PRIu64, CONTROL, REQ_DUMP_TRAFFIC,
|
||||||
|
n->name, n->in_packets, n->in_bytes, n->out_packets, n->out_bytes);
|
||||||
|
}
|
||||||
|
|
||||||
|
return send_request(c, "%d %d", CONTROL, REQ_DUMP_TRAFFIC);
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue