anidex: rewrite in C# to bypass DDOS. resolves #7036 resolves #6834 (#7142)

* Replace Cardigann Anidex indexer for C# impelementation

Add bypass for DDOS Guard

* Improve error messages from type conversions

* Add missing cookie check

* Fix index out of range exception

* Change error handling to only warn about DDoS bypass exceptions

This is so that searches will still be attempted if there are issues with the DDoS protection (e.g. if it is removed).

* Improve error handling and clean up code

* pending changes
This commit is contained in:
Diego Heras
2020-02-09 03:43:32 +01:00
committed by GitHub
parent c12da520a4
commit e2310ea70b
3 changed files with 427 additions and 215 deletions

View File

@@ -267,49 +267,118 @@ namespace Jackett.Updater
// delete old files
string[] oldFiles = new string[] {
"appsettings.Development.json",
"Autofac.Integration.WebApi.dll",
"Content/congruent_outline.png",
"Content/crissXcross.png",
"Content/css/jquery.dataTables.css",
"Content/css/jquery.dataTables_themeroller.css",
"Definitions/tspate.yml",
"Definitions/freakstrackingsystem.yml",
"Definitions/rarbg.yml",
"Definitions/t411.yml",
"Definitions/hdbc.yml", // renamed to hdbitscom
"Definitions/maniatorrent.yml",
"Definitions/nyaa.yml",
"Definitions/nachtwerk.yml",
"Definitions/leparadisdunet.yml",
"Definitions/qctorrent.yml",
"Definitions/dragonworld.yml",
"Definitions/hdclub.yml",
"Definitions/polishtracker.yml",
"Definitions/zetorrents.yml",
"Definitions/rapidetracker.yml",
"Definitions/isohunt.yml",
"Definitions/t411v2.yml",
"Definitions/bithq.yml",
"Definitions/blubits.yml",
"Definitions/torrentproject.yml",
"Definitions/torrentvault.yml",
"Definitions/apollo.yml", // migrated to C# gazelle base tracker
"Definitions/secretcinema.yml", // migrated to C# gazelle base tracker
"Definitions/utorrents.yml", // same as SzeneFZ now
"Definitions/ultrahdclub.yml",
"Definitions/infinityt.yml",
"Definitions/hachede-c.yml",
"Definitions/skytorrents.yml",
"Definitions/gormogon.yml",
"Definitions/czteam.yml",
"Definitions/rockhardlossless.yml",
"Definitions/tehconnection.yml",
"Definitions/torrentwtf.yml",
"Definitions/eotforum.yml",
"Definitions/nexttorrent.yml",
"Definitions/torrentsmd.yml",
"Definitions/scenehd.yml", // migrated to C# (use JSON API)
"appsettings.Development.json",
"CurlSharp.dll",
"CurlSharp.pdb",
"Autofac.Integration.WebApi.dll",
"Definitions/420files.yml",
"Definitions/aox.yml",
"Definitions/anidex.yml", // migrated to C#
"Definitions/apollo.yml", // migrated to C# gazelle base tracker
"Definitions/archetorrent.yml",
"Definitions/asiandvdclub.yml",
"Definitions/avg.yml",
"Definitions/b2s-share.yml",
"Definitions/bithq.yml",
"Definitions/bitme.yml",
"Definitions/blubits.yml",
"Definitions/bt-scene.yml",
"Definitions/btbit.yml",
"Definitions/btkitty.yml",
"Definitions/btstornet.yml",
"Definitions/btxpress.yml",
"Definitions/cinefilhd.yml",
"Definitions/czteam.yml",
"Definitions/dark-shadow.yml",
"Definitions/digbt.yml",
"Definitions/dragonworld.yml",
"Definitions/dreamteam.yml",
"Definitions/elitehd.yml",
"Definitions/elittracker.yml",
"Definitions/eotforum.yml",
"Definitions/evolutionpalace.yml",
"Definitions/extratorrent-ag.yml",
"Definitions/extratorrentclone.yml",
"Definitions/freakstrackingsystem.yml",
"Definitions/freedomhd.yml",
"Definitions/gdf76.yml",
"Definitions/gfxnews.yml",
"Definitions/gods.yml",
"Definitions/gormogon.yml",
"Definitions/hachede-c.yml",
"Definitions/hd4free.yml",
"Definitions/hdbc.yml", // renamed to hdbitscom
"Definitions/hdclub.yml",
"Definitions/hdplus.yml",
"Definitions/hon3yhd-net.yml",
"Definitions/horriblesubs.yml",
"Definitions/hyperay.yml",
"Definitions/idopeclone.yml",
"Definitions/iloveclassics.yml",
"Definitions/infinityt.yml",
"Definitions/isohunt.yml",
"Definitions/katcrs.yml",
"Definitions/kikibt.yml",
"Definitions/lapausetorrents.yml",
"Definitions/lechaudron.yml",
"Definitions/lemencili.yml",
"Definitions/leparadisdunet.yml",
"Definitions/maniatorrent.yml",
"Definitions/manicomioshare.yml",
"Definitions/megabliz.yml",
"Definitions/mkvcage.yml",
"Definitions/music-master.yml",
"Definitions/nachtwerk.yml",
"Definitions/nexttorrent.yml",
"Definitions/nyaa.yml",
"Definitions/nyoo.yml",
"Definitions/passionetorrent.yml",
"Definitions/polishtracker.yml",
"Definitions/qctorrent.yml",
"Definitions/qxr.yml",
"Definitions/rapidetracker.yml",
"Definitions/rarbg.yml",
"Definitions/redtopia.yml",
"Definitions/rgu.yml",
"Definitions/rockethd.yml",
"Definitions/rockhardlossless.yml",
"Definitions/scenehd.yml", // migrated to C# (use JSON API)
"Definitions/scenereactor.yml",
"Definitions/secretcinema.yml", // migrated to C# gazelle base tracker
"Definitions/sharingue.yml",
"Definitions/skytorrents.yml",
"Definitions/solidtorrents.yml", // migrated to C#
"Definitions/speed-share.yml",
"Definitions/t411.yml",
"Definitions/t411v2.yml",
"Definitions/tazmaniaden.yml",
"Definitions/tbplus.yml",
"Definitions/tehconnection.yml",
"Definitions/themoviecave.yml",
"Definitions/thetorrents.yml",
"Definitions/tigers-dl.yml",
"Definitions/tntvillage.yml",
"Definitions/torrentcouch.yml",
"Definitions/torrentkim.yml",
"Definitions/torrentproject.yml",
"Definitions/torrentsmd.yml",
"Definitions/torrentvault.yml",
"Definitions/torrentwtf.yml",
"Definitions/torrof.yml",
"Definitions/torviet.yml",
"Definitions/tspate.yml",
"Definitions/ultimategamerclub.yml",
"Definitions/ultrahdclub.yml",
"Definitions/utorrents.yml", // same as SzeneFZ now
"Definitions/waffles.yml",
"Definitions/worldofp2p.yml",
"Definitions/worldwidetorrents.yml",
"Definitions/xktorrent.yml",
"Definitions/zetorrents.yml",
"Microsoft.Owin.dll",
"Microsoft.Owin.FileSystems.dll",
"Microsoft.Owin.Host.HttpListener.dll",
@@ -319,74 +388,6 @@ namespace Jackett.Updater
"System.Web.Http.dll",
"System.Web.Http.Owin.dll",
"System.Web.Http.Tracing.dll",
"Definitions/torrentkim.yml",
"Definitions/horriblesubs.yml",
"Definitions/bt-scene.yml",
"Definitions/extratorrentclone.yml",
"Definitions/torrentcouch.yml",
"Definitions/idopeclone.yml",
"Definitions/torrof.yml",
"Definitions/archetorrent.yml",
"Definitions/420files.yml",
"Definitions/redtopia.yml",
"Definitions/btxpress.yml",
"Definitions/btstornet.yml",
"Definitions/hdplus.yml",
"Definitions/gods.yml",
"Definitions/freedomhd.yml",
"Definitions/sharingue.yml",
"Definitions/cinefilhd.yml",
"Definitions/tbplus.yml",
"Definitions/manicomioshare.yml",
"Definitions/speed-share.yml",
"Definitions/b2s-share.yml",
"Definitions/nyoo.yml",
"Definitions/ultimategamerclub.yml",
"Definitions/evolutionpalace.yml",
"Definitions/qxr.yml",
"Definitions/gfxnews.yml",
"Definitions/megabliz.yml",
"Definitions/tigers-dl.yml",
"Definitions/worldwidetorrents.yml",
"Definitions/tntvillage.yml",
"Definitions/xktorrent.yml",
"Definitions/btkitty.yml",
"Definitions/kikibt.yml",
"Definitions/rockethd.yml",
"Definitions/worldofp2p.yml",
"Definitions/avg.yml",
"Definitions/aox.yml",
"Definitions/dreamteam.yml",
"Definitions/elitehd.yml",
"Definitions/gdf76.yml",
"Definitions/hyperay.yml",
"Definitions/scenereactor.yml",
"Definitions/lapausetorrents.yml",
"Definitions/lechaudron.yml",
"Definitions/katcrs.yml",
"Definitions/iloveclassics.yml",
"Definitions/hd4free.yml",
"Definitions/lemencili.yml",
"Definitions/btbit.yml",
"Definitions/digbt.yml",
"Definitions/mkvcage.yml",
"Content/congruent_outline.png",
"Content/crissXcross.png",
"Definitions/dark-shadow.yml",
"Definitions/bitme.yml",
"Definitions/asiandvdclub.yml",
"Definitions/music-master.yml",
"Definitions/torviet.yml",
"Definitions/waffles.yml",
"Definitions/rgu.yml",
"Definitions/elittracker.yml",
"Definitions/hon3yhd-net.yml",
"Definitions/solidtorrents.yml",
"Definitions/extratorrent-ag.yml",
"Definitions/passionetorrent.yml",
"Definitions/thetorrents.yml",
"Definitions/themoviecave.yml",
"Definitions/tazmaniaden.yml",
};
foreach (var oldFile in oldFiles)