From 2df09905f5540fee096d48a92cb0c42558498a12 Mon Sep 17 00:00:00 2001 From: erdgeist <> Date: Fri, 2 Jan 2009 08:57:53 +0000 Subject: * opentracker now drops permissions in correct order and really chroots() if ran as root * lock passing between add_peer_to_torrent and return_peers_for_torrent is now avoided by providing a more general add_peer_to_torrent_and_return_peers function that can be used with NULL parameters to not return any peers (in sync case) * in order to keep a fast overview how many torrents opentracker maintains, every mutex_bucket_unlock operation expects an additional integer parameter that tells ot_mutex.c how many torrents have been added or removed. A function mutex_get_torrent_count has been introduced. --- ot_mutex.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'ot_mutex.h') diff --git a/ot_mutex.h b/ot_mutex.h index 7038332..ba5684d 100644 --- a/ot_mutex.h +++ b/ot_mutex.h @@ -14,8 +14,10 @@ void mutex_deinit( ); ot_vector *mutex_bucket_lock( int bucket ); ot_vector *mutex_bucket_lock_by_hash( ot_hash *hash ); -void mutex_bucket_unlock( int bucket ); -void mutex_bucket_unlock_by_hash( ot_hash *hash ); +void mutex_bucket_unlock( int bucket, int delta_torrentcount ); +void mutex_bucket_unlock_by_hash( ot_hash *hash, int delta_torrentcount ); + +size_t mutex_get_torrent_count(); typedef enum { TASK_STATS_CONNS = 0x0001, -- cgit v1.2.3