diff options
| author | Jesper Jensen <jesper@jnsn.dev> | 2025-04-12 09:35:32 +0200 |
|---|---|---|
| committer | Jesper Jensen <jesper@jnsn.dev> | 2025-04-12 10:21:20 +0200 |
| commit | 04c5b9d5ef4723d469ea3472012787a8e2a5bdbd (patch) | |
| tree | c9626a0cbc18e9d54fad639ac091121dc7d69713 /src/peers.h | |
| parent | cd622b745254baafa21adf4b1b724e079652321a (diff) | |
Add prometheus monitoring
Diffstat (limited to 'src/peers.h')
| -rw-r--r-- | src/peers.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/peers.h b/src/peers.h index 106df7b..8bd6b44 100644 --- a/src/peers.h +++ b/src/peers.h @@ -5,6 +5,8 @@ #define PEER_ENOMEM 1 #define PEER_EFULL 1 +#define HASH_TIMEOUT (12 * 60 * 60) + struct infohash { union { uint32_t inner[5]; @@ -17,6 +19,7 @@ struct peer_entry { struct infohash key; struct addr value[PEERS_PER_HASH]; size_t value_len; + time_t last_seen; bool set; }; @@ -30,5 +33,7 @@ extern size_t peer_table_size; extern size_t peer_table_load; int allocate_hashtable(); -int add_peer(struct infohash* key, struct addr* peer); -void get_peers(struct infohash* infohash, struct addr *peers[PEERS_PER_HASH], size_t *peers_len); +int add_peer(struct infohash* infohash, struct addr* peer, time_t now); +void get_peers(struct infohash* infohash, struct addr **peers, size_t *peers_len); + +void expire_hashes(time_t now); |
