Net::BitTorrent::Todo - TODO list for Perl module Net::BitTorrent

High priorities

  • Get help

Short term goals

  • Verify multi-thread processing (for non-blocking hashcheck, for example.)

  • Complete test suite

    Create a series of bad .torrent files to test N::B::Torrent with:

    • invalid pieces string

      • string length does not % 40 evenly

      • string is shorter than 40 chars

      • piece_length * num_pieces is nowhere near total_size_of_torrent

  • Improve detection of bad .torrent metadata.

  • Per-torrent transfer limits.

  • Start, stop, pause individual torrents.

  • Taint safe.

Long term goals

  • Net::BitTorrent::Notes - Description of N::B's internals

    • Data layout

    • Behavior

    • Shortfalls

  • improve file handling

    • large torrents (> 4G) typically require 64bit math

    • .piece file to store incoming blocks

  • Wire protocol encryption (?)

    • Not internal. A callback, perhaps.

  • scripts/

    • very light gui example using Wx

  • Internal bans for 'bad' peers

    • Penalty (and eventual ban) for peers who always seem involved with bad pieces

  • PoCo::BitTorrent

    • Not to be confused with the other PoCo::BitTorrent

  • UDP trackers

  • Fast Peers

    Partial support currently

Duke Nukem: Forever

  • perlcritic severity=stern

    • This is actually possible now with a bit of work.

    • Single class

    • No extensions

    • Trimmed API