3 ms·
BEncoding and variants like REncoding are possibly one of my least favourite things ever. If you deal with the Deluge torrent client API you'll see it everywher
by voltagex_ 10y ago
BEncoding and variants like REncoding are possibly one of my least favourite things ever. If you deal with the Deluge torrent client API you'll see it everywhere.
That aside, fantastic work on this, I think previously the only Bittorrent library for C# was an abandoned Mono project.
- douche 10y agoYeah, monotorrent doesn't really work very effectively. Tends to get blocked by a lot of peers and really mediocre throughout when it isn't blocked. The last time I was trying to build something that used bittorrent, I fell back on launching aria2 and redirecting and parsing its stdout, which as crazy as it was, worked much better.
- Ardren 10y agoAria2 actually has a RPC interface which is pretty easy to work with (json or xml over http or web sockets). https://aria2.github.io/manual/en/html/aria2c.html#rpc-interface https://aria2.github.io/manual/en/html/aria2c.html#rpc-inter...
- masklinn 10y ago> BEncoding and variants like REncoding are possibly one of my least favourite things ever. Can't be worse than ASN.1 can it?
- orbitur 10y agoYes, it can be worse, since ASN.1 is relatively "popular" and there's a decent pool of knowledge.
- nickpsecurity 10y agoDepends on if ignoring a high-assurance implementation is bad: http://cps-vo.org/node/1577 http://cps-vo.org/node/1577 Already bad if you wanted ASN.1 but can't get Galois's version. If you can get it, then choosing an ASN.1 alternative can be bad since it probably won't have a formal spec, verified parser, Haskell implementation, and so on. Probably a drop in correctness in some corner case vs whatever they made. Note: I'd like to see them do a high-assurance JSON and/or XDR parser instead of just ASN.1. I know they did a Haskell-to-JSON library already. A strong one that extracted parsers or generators from a user-supplied specification with plugins for various programming languages would be nice.