]> git.meshlink.io Git - meshlink/commitdiff
Account for SPTPS overhead.
authorGuus Sliepen <guus@meshlink.io>
Fri, 8 Oct 2021 18:54:45 +0000 (20:54 +0200)
committerGuus Sliepen <guus@meshlink.io>
Fri, 8 Oct 2021 18:54:45 +0000 (20:54 +0200)
src/protocol_key.c
src/route.c

index 768b6371e4a03338cc98f93b06595d4fe3726da9..745845a650ebd0453660e53301a0cbc056459931 100644 (file)
@@ -346,8 +346,8 @@ bool req_key_h(meshlink_handle_t *mesh, connection_t *c, const char *request) {
                }
 
                size_t len = strlen(request);
-               from->in_forward += len;
-               to->out_forward += len;
+               from->in_forward += len + SPTPS_OVERHEAD;
+               to->out_forward += len + SPTPS_OVERHEAD;
 
                send_request(mesh, to->nexthop->connection, NULL, "%s", request);
        }
@@ -417,8 +417,8 @@ bool ans_key_h(meshlink_handle_t *mesh, connection_t *c, const char *request) {
 
                /* TODO: find a good way to avoid the use of strlen() */
                size_t len = strlen(request);
-               from->in_forward += len;
-               to->out_forward += len;
+               from->in_forward += len + SPTPS_OVERHEAD;
+               to->out_forward += len + SPTPS_OVERHEAD;
 
                /* Append the known UDP address of the from node, if we have a confirmed one */
                if(!*address && from->status.udp_confirmed && from->address.sa.sa_family != AF_UNSPEC) {
index 25256de36196054af238f64ff395d761f7e3a891..c63c03732f4e39c8b93cff6233b105e3257ebefc 100644 (file)
@@ -61,11 +61,11 @@ void route(meshlink_handle_t *mesh, node_t *source, vpn_packet_t *packet) {
 
        // Channel traffic accounting
        if(source == mesh->self) {
-               dest->out_data += len;
+               dest->out_data += len + SPTPS_OVERHEAD;
        }
 
        if(dest == mesh->self) {
-               source->in_data += len;
+               source->in_data += len + SPTPS_OVERHEAD;
                const void *payload = packet->data + sizeof(*hdr);
 
                char hex[len * 2 + 1];