Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Basic, Protocol-level BitTorrent Utilities
Perl
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib/Net/BitTorrent
t
.gitignore
.travis.yml
Changes
LICENSE
README.md
TODO
cpanfile
minil.toml

README.md

NAME

Net::BitTorrent::Protocol - Basic, Protocol-level BitTorrent Utilities

Synopsis

use Net::BitTorrent::Protocol;
...

Functions

In addition to the functions found in Net::BitTorrent::Protocol::BEP03, Net::BitTorrent::Protocol::BEP03::Bencode, Net::BitTorrent::Protocol::BEP06, Net::BitTorrent::Protocol::BEP07, Net::BitTorrent::Protocol::BEP09, Net::BitTorrent::Protocol::BEP10, Net::BitTorrent::Protocol::BEP23, TODO..., a function which wraps all the packet parsing functions is provided:

  • parse_packet( \$data )

    Attempts to parse any known packet from the data (a scalar ref) passed to it. On success, the payload and type are returned and the packet is removed from the incoming data reference. undef is returned on failure and the data in the reference is unchanged.

Importing from Net::BitTorrent::Protocol

You may import from this module manually...

use Net::BitTorrent::Protocol 'build_handshake';

...or by using one or more of the provided tags:

use Net::BitTorrent::Protocol ':all';

Supported tags include...

  • all

    Imports everything.

  • build

    Imports all packet building functions from BEP03, BEP03, BEP06, BEP06, and BEP10.

  • bencode

    Imports the bencode and bdecode functions found in BEP03.

  • compact

    Imports the compact and inflation functions for IPv4 (BEP23) and IPv6 (BEP07) peer lists.

  • dht

    Imports all functions related to BEP05.

  • parse

    Imports all packet parsing functions from BEP03, BEP06, and BEP10 as well as the locally defined parse_packet( ... ) function.

  • types

    Imports the packet type values from BEP03, BEP06, and BEP10.

  • utils

    Imports the utility functions from BEP06.

See Also

AnyEvent::BitTorrent - Simple client which uses Net::BitTorrent::Protocol

http://bittorrent.org/beps/bep\_0003.html - The BitTorrent Protocol Specification

http://bittorrent.org/beps/bep\_0006.html - Fast Extension

http://bittorrent.org/beps/bep\_0009.html - Extension for Peers to Send Metadata Files

http://bittorrent.org/beps/bep\_0010.html - Extension Protocol

http://wiki.theory.org/BitTorrentSpecification - An annotated guide to the BitTorrent protocol

Net::BitTorrent::PeerPacket - by Joshua McAdams

Protocol::BitTorrent - by Tom Molesworth

Author

Sanko Robinson sanko@cpan.org - http://sankorobinson.com/

CPAN ID: SANKO

License and Legal

Copyright (C) 2008-2014 by Sanko Robinson sanko@cpan.org

This program is free software; you can redistribute it and/or modify it under the terms of The Artistic License 2.0. See the LICENSE file included with this distribution or notes on the Artistic License 2.0 for clarification.

When separated from the distribution, all original POD documentation is covered by the Creative Commons Attribution-Share Alike 3.0 License. See the clarification of the CCA-SA3.0.

Neither this module nor the Author is affiliated with BitTorrent, Inc.

Something went wrong with that request. Please try again.