Skip to content

belamenso/ntorrent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ntorrent - torrent client library

Header-only C++17 Linux implementation of various bittorrent-related protocols. Mostly for educational purposes.

goals

  1. correctness of implementation
  2. usability both as a standalone client and library
  3. clarity of code
  4. POSIX portability

non-goals

  • performance
  • full portability

done

  • bencoding parser
  • metainfo parser
  • TCP tracker protocol
    • Tracker Returns Compact Peer Lists (BEP_23)
  • UDP tracker protocol (BEP_15)
    • IPv4
    • IPv6
  • main client
  • DHT + magnet links support
  • Python3 module

dependencies