Commit Graph

91 Commits (d84f1ff4eb072c3f9147cc18535eeba2436f95a3)

Author SHA1 Message Date
Dirk Engling c718b15168 Fixed warnings about newlines at end of file 2007-11-06 12:03:11 +00:00
Dirk Engling fed78043a6 No one can get access to buckets now without locking them. Also split up the trackerlogic.c-monster in functional sub-units. HEADS UP: this code is untested and not considered stable. 2007-11-06 11:58:12 +00:00
Dirk Engling 44cbe3de53 Make to_hex thread safe. Get rid off old /24 counting code. Protect more bucket accesses by locks. 2007-11-06 03:21:03 +00:00
Dirk Engling ee8369dbcf We do now use the tools for locking buckets in order to prepare MT code 2007-11-06 01:29:57 +00:00
Dirk Engling 472f8469d2 Introduce configuration dependent number of parameters in a nicer way 2007-11-02 13:13:03 +00:00
Dirk Engling f37e510592 Reenabled syncing 2007-10-29 17:22:05 +00:00
Dirk Engling df30bc8484 Number of buckets is 1024 now
Clean all torrents now only cleans one bucket at a time
All torrents that are being worked upon in an announce are being cleaned on demoand
torrent's peer lists now keep extra counts for seeds and peers to speed up scrape and announce
Sync has gone for now. I will think up a new way to implement. The old one was way to slow.
2007-10-27 14:06:07 +00:00
Dirk Engling 96a43699e8 Now measure the time a clean_all_torrents takes 2007-10-22 00:57:57 +00:00
Dirk Engling d3f8013a18 Introducing multiscrape 2007-10-19 21:56:59 +00:00
Dirk Engling b7e8a852e8 Remove an unused variable 2007-10-19 05:23:04 +00:00
Dirk Engling 547463a21f Release exactly all unused bytes in mmap allocation. 2007-10-19 05:21:01 +00:00
Dirk Engling 938d063919 HEADS UP: you need to check out the latest libowfat! Huge allocations are now taken from mmap()ed regions, not from heap anymore 2007-10-17 14:43:13 +00:00
Dirk Engling 7a65f9ca73 Fixed 24h clean bug. Allocate less memory for full scrape. Free torrents without any downloaders immediately. 2007-10-16 00:33:31 +00:00
Dirk Engling 5b82b40439 Exclude empty torrents from full scrape, also try to shrink full scrape buffer after it is full 2007-10-16 00:23:13 +00:00
Dirk Engling b3f834951c make 64bit safe 2007-10-12 21:57:10 +00:00
Dirk Engling 332a481e47 There is a pool leak somewhere... try to find it 2007-10-06 19:17:21 +00:00
Dirk Engling 4319defc9c New stats for s24s code, this is debug, do not use in real world 2007-09-26 16:49:13 +00:00
Denis Ahrens 976987d4a3 fixed a small bug with 0 torrents and a cosmetical one 2007-09-21 22:24:22 +00:00
Dirk Engling c863c6e108 An announce with event=stopped now returns correct number of leechers and seeders. In TCP and UDP. 2007-09-10 02:43:10 +00:00
Dirk Engling 1911aa7328 Fixed the inverse interpretation of black/white listing 2007-08-18 12:51:13 +00:00
Dirk Engling d58db69d9a Added whitelisting to reimplement the WANT_CLOSED_TRACKER functionality 2007-08-18 09:56:22 +00:00
Dirk Engling 7abbe1294b off by -1... or so, strange error class 2007-07-22 18:23:00 +00:00
Dirk Engling 61ed0bd785 Fix endianess issue in /24 stats code 2007-07-22 16:33:16 +00:00
Dirk Engling 6382386416 some subnet stats... still ugly and untested. 2007-07-22 16:17:26 +00:00
Dirk Engling 8ef59b0351 * fixed "nobody " -> "nobody" fuckup when getpwnam-ing
* implemented basic blacklisting:
** the file specified with -b <BLACKLIST> is read and added to a blacklist vector
** if an announce hits a torrent in that blacklist vector, add_peer_to_torrent fails
** sending a SIGHUP to the program forces it to reread the blacklists
** the server returns with a 500, which is not exactly nice but does the job for now
** an adaequat "failure reason:" should be delivered... TODO
2007-07-22 00:40:10 +00:00
Denis Ahrens 7cebcfb54e need more space for data because we reach this limit easily now 2007-05-20 14:35:22 +00:00
Denis Ahrens aed3630af9 fix a warning 2007-04-10 04:00:49 +00:00
Dirk Engling 20635e3544 New Makefile, incorporated some patches sent to me by Robin H. Johnson 2007-04-03 11:08:17 +00:00
Dirk Engling cb90c27b28 Added inbound part of sync. This also meant to remove the black/whitelisting as we did by now. A more scalable way to blacklist will follow. 2007-03-27 16:09:03 +00:00
Dirk Engling 2a646cf4a0 Added outbound part of sync Proposed format: d4:syncd20:<info_hash>8*N:(xxxxyy)*Nee, therefore had to refactor torrent cleanup now that it will hit all torrents once every OT_POOL_TIMEOUT units. 2007-03-27 12:07:29 +00:00
Denis Ahrens d75fb67a25 endianess fix for udp scrape 2007-03-17 01:24:56 +00:00
Denis Ahrens b3f72c444b support for udp scrape 2007-03-16 22:46:41 +00:00
Dirk Engling eea5c628de make full scrapes a bit faster, increase checkback time for udp 2007-03-10 15:39:19 +00:00
Dirk Engling a5ea2b2793 Missing include 2007-03-07 23:15:11 +00:00
Dirk Engling 622e34f2b0 udp is working in theory, return_peers_for_torrent accepts a switch to request an udp answer. Fixed prototypes. 2007-03-06 19:43:47 +00:00
Dirk Engling 123ca420a8 Can now handle multiple ips/ports, can BIND to udp ports but not yet handle them, now checks if event=completed comes with left=0 and drops it, if it doesnt 2007-03-05 21:14:36 +00:00
Dirk Engling 7b97ef62e0 stupid mistake in remove torrent call 2007-03-02 02:23:03 +00:00
Dirk Engling 43ee5b14a6 Count completed messages only once per peer 2007-02-16 21:13:44 +00:00
Dirk Engling ccc6761c97 Add a lot of documentation for static functions in trackerlogic.c. Make vector_remove_peer use hysteresis only, if pool is expected to grow again. Remove too old torrents. 2007-02-04 03:29:29 +00:00
Denis Ahrens ef12e05d40 shortened the dmem debug output 2007-02-04 00:37:45 +00:00
Denis Ahrens 7540de785a made the output of the memdebug smaller 2007-02-02 23:39:36 +00:00
Denis Ahrens 5ebd2371e5 clear the freed mempointer 2007-02-01 22:23:56 +00:00
Dirk Engling 196fdd5da2 release memory for empty peer pools 2007-02-01 17:01:03 +00:00
Dirk Engling e12ac60dea Forgot to take into account, that there are OT_POOL_COUNT debuggable pools in one torrent. Fixed. 2007-02-01 15:57:29 +00:00
Dirk Engling be59653be2 Reserved too few space to hold all data for a memdebug 2007-02-01 15:45:24 +00:00
Dirk Engling b0eee67849 el cheapo vector debugging 2007-02-01 13:51:39 +00:00
Dirk Engling 8fc31f7e29 We now answer as soon as the first \n is seen
We do not copy input buffer to socket's input array anymore, if we find \n in first buffer
We simplified parsing of input string
We removed asserts that were needed to debug negative seeder counts
We split static input and output buffers for obvious reasons
We enlarged static output buffer to prepare multi scrape functionality
We removed -lm from Makefile, this lib was only needed, when our random algorithm worked on floats
We close fds now that come with an empty iocookie into write loop, those don't make sense
We documented query string parser in opentracker.c a lot better to help auditing
2007-01-29 02:02:03 +00:00
Dirk Engling b040154b22 really copy in new peer, even if it already existed, to remember its state 2007-01-27 17:04:55 +00:00
Dirk Engling 16d52e8c16 Asserts were always false :/ 2007-01-27 16:42:57 +00:00
Dirk Engling a8f875a157 Due to recent issues... assert() seed counts 2007-01-27 16:35:56 +00:00