Răsfoiți Sursa

client: enable freeing relay flows based on inactivity

ambrop7 15 ani în urmă
părinte
comite
91936964b2
2 a modificat fișierele cu 3 adăugiri și 1 ștergeri
  1. 1 1
      client/client.c
  2. 2 0
      client/client.h

+ 1 - 1
client/client.c

@@ -2144,7 +2144,7 @@ out:
     
     // relay frame
     if (relay_dest) {
-        DPRelaySource_SubmitFrame(&src_peer->relay_source, &relay_dest->relay_sink, data, data_len, options.send_buffer_relay_size, -1);
+        DPRelaySource_SubmitFrame(&src_peer->relay_source, &relay_dest->relay_sink, data, data_len, options.send_buffer_relay_size, PEER_RELAY_FLOW_INACTIVITY_TIME);
     }
     
     // inform DataProto of received packet

+ 2 - 0
client/client.h

@@ -64,6 +64,8 @@
 #define PEER_DEFAULT_SEND_BUFFER_SIZE 32
 // size of frame send buffer for relayed packets, in number of frames
 #define PEER_DEFAULT_SEND_BUFFER_RELAY_SIZE 32
+// time after an unused relay flow is freed (-1 for never)
+#define PEER_RELAY_FLOW_INACTIVITY_TIME 10000
 // retry time
 #define PEER_RETRY_TIME 5000