forked from Empornium/Radiance
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES
139 lines (124 loc) · 5.87 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
-- 1.1.5 (2019-04-05)
Support MariaDB library paths
Fix peer counting statistics
Fix handling of X-Forwarded-For with multiple IPs
Add XML report output
Fix reconnection to DB with connection pool
Add support for FreeBSD
-- 1.1.4 (2018-10-10)
Improved DB queue status reporting
Fix potential shutdown race condition
Update usage text to include -v option for version output
Upgrade DB handling to use a connection pool
Fix debug build mode
Fix IPv4/IPv6 peer accounting performance issues
-- 1.1.3 (2018-10-01)
Update user loading SQL query
Fix logger file handling
Add -v command line argument to print version
Split peer counting into IPv4/IPv6
Fix IPv6 subnet check (thanks APL)
-- 1.1.2 (2017-07-03)
Add support for BEP21 and BEP24 (http://www.bittorrent.org/beps/bep_0000.html)
Fix bug in protected status updates
-- 1.1 (2017-06-19)
**RENAMED TO RADIANCE**
NOTE: This version requires the following database changes:
ALTER TABLE xbt_files_users ADD COLUMN `ipv4` varbinary(4) DEFAULT NULL
ALTER TABLE xbt_files_users ADD COLUMN `ipv6` varbinary(16) DEFAULT NULL
ALTER TABLE xbt_snatched ADD COLUMN `ipv4` varbinary(4) DEFAULT NULL
ALTER TABLE xbt_snatched ADD COLUMN `ipv6` varbinary(16) DEFAULT NULL
ALTER TABLE users_main ADD COLUMN `track_ipv6` enum('1','0') NOT NULL DEFAULT '0'
CREATE TABLE `options` (`Name` varchar(255) NOT NULL, `Value` text NOT NULL, PRIMARY KEY (`Name`))
CREATE TABLE `xbt_client_blacklist` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `peer_id` varchar(20) DEFAULT NULL, `vstring` varchar(200) DEFAULT '', PRIMARY KEY (`id`), UNIQUE KEY `peer_id` (`peer_id`))
Add support for IPv6 listening socket
Add support for unix domain listening socket
Add IPv6 tracking and mixed swarms
Add pointer to remember location in leecher lists when selecting peers
Add support for personal, universal and sitewide doubleseed
Add log to file support
Add ability to fork to background as a daemon
Add support for jemalloc memory allocator
Add extra debug capabilities
Reject requests which report unroutable IPs
Add support for reloading peerlists from DB (warning! very very slow operation)
Add statistics reporting for domain users announce to
-- 1.0 (2015-01-26)
NOTE: This version requires the following database change:
ALTER TABLE xbt_files_users DROP PRIMARY KEY, ADD PRIMARY KEY (peer_id,fid,uid)
Add a 'deleted' flag to user object to stop including removed users in returned peer lists
Add a prefix to the peer list keys for randomization and smaller chance of peer id collisions
Add HTTP Keep-Alive support and show request rate in the tracker stats
Add readonly mode for easier testing
Catch exceptions in the mysql::load_* functions
Configurable max/default numwant parameter
Don't disable binlogs in the peer flush sessions
Don't start a reaper thread if it's already running
Inline peer_is_visible and user functions
Mark nonchanging parameter as const
Mark users with IP = 127.0.0.1 as protected
Read settings from a config file instead of a compiled object
Reload torrent list, user list and client whitelist on SIGUSR1
Use atomic variables for stats
Use consistent integer widths where it matters
Use std::lock_guard instead of std::unique_lock for mutex
-- 0.8 (2014-03-27)
Add setting for maximum request size
Get client IP from the x-forwarded-for header if it is provided
Read/write full requests even if they are split into several recv/send calls
-- 0.7 (2013-12-05)
Add bintohex function to use when printing binary data to stdout
Check if compiler supports -std=c++11
Collect some stats and add a method that prints them
Create a function for adding peers
Fix a potential problem where a deleted pointer was being accessed
Improve the anti-web crawler code
Make use of the peer iterator for faster deletions
Remove most of the dependencies on boost and move all thread-related calls to the STL components provided in C++11
Run the reaper routines in a single thread to clean up stdout
Separate the sections responsible for output to make it easier to change http headers if needed
Update the db's torrents table when the peer reaper deletes the last peer on a torrent
-- 0.6 (2013-03-19)
Add --with-tcmalloc option to the configure script to enable Google's high-performance multi-threaded malloc() implementation
Configurable site path
Expire multiple tokens in a single request to the web server
Less spammy output unless a -v switch is passed when starting Ocelot
Make flush queries slightly less spammy by moving them to the functions that invoke flush threads
Print warning instead of error if someone submits an IPv6 or otherwise invalid address
Remove unused logger class
Send special data to search engine crawlers (and other odd clients) in an attempt to prevent indexing of announce URLs
Use a lighter query to update peer records in xbt_files_users if a peer's data has not changed since its previous announcement
-- 0.5 (2012-10-08)
Add ability to show reasons why a torrent was deleted on unregistered torrents
Add gzip compression support for announces and scrapes
Autotools build system
Fix incorrect handling of "corrupt" stat
Make Ocelot clear stale peer data out of the db on startup
Track transfer stats from users without leech privs
-- 0.4 (2012-06-20)
Convert all headers to lowercase
Don't show users to themselves (patch by GrecKo)
Don't write peer updates to the binlog
Search for peer in leecher list if not found in seeders list
Sort response dictionary according to BitTorrent specs
-- 0.3 (2012-02-03)
Add tokens
Added a logging function
Added DB_LOCK_TIMEOUT constant
Added info command
Added neutral leech
Added transactions and backups around the peer/user queries
Added working makefile
Adding more debug to query outputs
Changed flushing logic to prevent buildups
Clean shutdown
Don't print complete query if an error occurred
Fixed thread visibility
Flush every schedule
More debug output
New DB class with queue
Nicer schedule display
-- 0.2 alpha (2011-01-11)
Bug fixes
-- 0.1 alpha (2010-10-27)
First release