Vladimir Golovnev (Glassez)
9565b695ef
Unify custom exceptions
2021-05-18 08:40:05 +03:00
Vladimir Golovnev (Glassez)
561b597031
Improve "info hash" handling
...
Define "torrent ID" concept, which is either a SHA1 hash for torrents of version 1,
or a SHA256 hash (truncated to SHA1 hash length) for torrents of version 2.
Add support for native libtorrent2 info hashes.
2021-03-12 12:43:14 +03:00
Vladimir Golovnev (Glassez)
8cfd803222
Drop implicit conversions between InfoHash and QString
2021-03-06 12:35:42 +03:00
Vladimir Golovnev (Glassez)
c41df9ffbd
Improve coding style
2020-11-17 21:02:37 +03:00
FranciscoPombal
f502f60f7c
Avoid unessary QString allocation
2020-10-07 15:34:26 +01:00
FranciscoPombal
966f891d91
Fix response to event=stopped
...
BEP-3 says all tracker responses to valid announce requests should be bencoded dictionaries with at least the "peers" and "interval" keys; the "peers" key can be empty.
Also clarify support for BEP-21.
2020-02-26 20:47:33 +00:00
FranciscoPombal
af6f63f82c
Don't use IPv4-mapped IPv6
...
Always register peers with either IPv4 or IPv6.
Fixes potential connection issues.
Also clarify related BEP-24 support.
2020-02-26 20:44:09 +00:00
FranciscoPombal
abc69dfd20
Fix BEP-23 support
...
The embedded tracker was returning a non-compliant response.
The peer lists should be packed strings instead of lists.
Also clarify level of compliance with BEP-7.
2020-02-26 20:42:14 +00:00
FranciscoPombal
9f045500d1
Fix IPv6 endianness
2020-02-26 20:42:07 +00:00
Chocobo1
8d0d8e4dcb
Improve embedded tracker
...
Now it conforms to BEPs more closely.
2019-08-21 18:05:50 +08:00
Chocobo1
94f7a095bb
Implement proper equal operators
2019-08-16 01:35:41 +08:00
Chocobo1
f4e7b8c6bf
Replace QMap with QHash
2019-08-05 09:51:39 +08:00
Chocobo1
3955eef50d
Change to lt
namespace
...
Quoting from libtorrent doc:
> In the future, libtorrent will be the alias and lt the namespace name.
2019-05-13 11:20:41 +08:00
Chocobo1
bd8d70bf60
Refactor HTTP query parsing
2019-05-09 12:41:30 +08:00
Chocobo1
69d29af097
Fix '+' char not decoded to space correctly
...
Closes #10606 .
2019-05-09 11:17:41 +08:00
Mike Tzou
78ab0e4ba9
Merge pull request #10220 from thalieht/const
...
Add const to many vars and arguments
2019-02-13 12:11:00 +08:00
thalieht
ca3ce87e06
Add const to many vars and arguments
...
Also remove const in declarations' arguments that are passed by value
2019-02-11 20:19:41 +02:00
Vladimir Golovnev (Glassez)
b0446380c6
Separate URL components before percent-decoding
...
Allow special characters in query string parameters.
Closes #9116 .
2019-01-27 15:33:19 +03:00
Mike Tzou
0ab5b8fcba
Merge pull request #9824 from thalieht/style
...
Convert all foreach() to range-based for()
2018-12-06 16:19:17 +08:00
Chocobo1
ede9b1a7c4
Fix typo
2018-12-03 12:06:32 +08:00
Chocobo1
b4564f5f4e
Use ip parameter from tracker request if provided
...
Closes #9949 .
2018-12-03 00:14:15 +08:00
Chocobo1
b56937f5fa
Use QHostAddress for storing IP
2018-12-02 14:18:18 +08:00
thalieht
1f36b8b89f
Combine qAsConst() with copyAsConst() to asConst()
2018-11-28 23:41:23 +02:00
Chocobo1
0217d5b4c0
Replace single-character string with character literal
...
Also remove unnecessary dynamic allocation.
2018-07-21 23:26:15 +08:00
thalieht
20ca90800d
Fix coding style
2018-05-09 17:06:22 +03:00
Vladimir Golovnev (Glassez)
dfddda57b9
Properly reply to announce request
2018-03-09 17:41:06 +03:00
Vladimir Golovnev (Glassez)
1aca3b0adc
Parse URL query string at application level
2018-03-04 17:08:48 +03:00
Vladimir Golovnev (Glassez)
27d8dbf13b
Redesign Web API
...
Normalize Web API method names.
Allow to use alternative Web UI.
Switch Web API version to standard form (i.e. "2.0").
Improve Web UI translation code.
Retranslate changed files.
Add Web API for RSS subsystem.
2018-01-28 19:16:24 +03:00
thalieht
525fdd6c2b
Coding style, use nullptr and other minor things
2017-10-08 10:20:54 +03:00
Vladimir Golovnev (qlassez)
cff6a64e9f
Use qUtf8Printable() for logging strings
...
qDebug(), qInfo(), qWarning(), qCritical(), qFatal() expect %s arguments
to be UTF-8 encoded, while qPrintable() converts to local 8-bit encoding.
Therefore qUtf8Printable() should be used for logging strings instead of
qPrintable().
2017-08-13 16:14:57 +03:00
Chocobo1
ffdcfe9686
Replace Utils::String::toStdString() by QString::toStdString()
2017-03-06 23:58:38 +08:00
Vladimir Golovnev (Glassez)
9db93e5d8f
Rename Core to Base ( Closes #3733 ).
2015-12-06 14:27:00 +03:00