libtorrent::udp_tracker_connection Class Reference

#include <udp_tracker_connection.hpp>

Inheritance diagram for libtorrent::udp_tracker_connection:

libtorrent::tracker_connection libtorrent::timeout_handler

List of all members.

Public Member Functions

 udp_tracker_connection (asio::strand &str, tracker_manager &man, tracker_request const &req, std::string const &hostname, unsigned short port, address bind_infc, boost::weak_ptr< request_callback > c, session_settings const &stn)

Private Types

enum  action_t { action_connect, action_announce, action_scrape, action_error }

Private Member Functions

boost::intrusive_ptr
< udp_tracker_connection
self ()
void name_lookup (asio::error_code const &error, udp::resolver::iterator i)
void timeout (asio::error_code const &error)
void send_udp_connect ()
void connect_response (asio::error_code const &error, std::size_t bytes_transferred)
void send_udp_announce ()
void announce_response (asio::error_code const &error, std::size_t bytes_transferred)
void send_udp_scrape ()
void scrape_response (asio::error_code const &error, std::size_t bytes_transferred)
virtual void on_timeout ()

Private Attributes

tracker_managerm_man
asio::strandm_strand
udp::resolver m_name_lookup
boost::shared_ptr
< datagram_socket
m_socket
udp::endpoint m_target
udp::endpoint m_sender
int m_transaction_id
boost::int64_t m_connection_id
session_settings const & m_settings
int m_attempts
std::vector< char > m_buffer

Friends

class tracker_manager


Detailed Description

Definition at line 63 of file udp_tracker_connection.hpp.


Member Enumeration Documentation

Enumerator:
action_connect 
action_announce 
action_scrape 
action_error 

Definition at line 80 of file udp_tracker_connection.hpp.


Constructor & Destructor Documentation

libtorrent::udp_tracker_connection::udp_tracker_connection ( asio::strand str,
tracker_manager man,
tracker_request const &  req,
std::string const &  hostname,
unsigned short  port,
address  bind_infc,
boost::weak_ptr< request_callback c,
session_settings const &  stn 
)


Member Function Documentation

boost::intrusive_ptr<udp_tracker_connection> libtorrent::udp_tracker_connection::self (  )  [inline, private]

Reimplemented from libtorrent::timeout_handler.

Definition at line 88 of file udp_tracker_connection.hpp.

void libtorrent::udp_tracker_connection::name_lookup ( asio::error_code const &  error,
udp::resolver::iterator  i 
) [private]

void libtorrent::udp_tracker_connection::timeout ( asio::error_code const &  error  )  [private]

void libtorrent::udp_tracker_connection::send_udp_connect (  )  [private]

void libtorrent::udp_tracker_connection::connect_response ( asio::error_code const &  error,
std::size_t  bytes_transferred 
) [private]

void libtorrent::udp_tracker_connection::send_udp_announce (  )  [private]

void libtorrent::udp_tracker_connection::announce_response ( asio::error_code const &  error,
std::size_t  bytes_transferred 
) [private]

void libtorrent::udp_tracker_connection::send_udp_scrape (  )  [private]

void libtorrent::udp_tracker_connection::scrape_response ( asio::error_code const &  error,
std::size_t  bytes_transferred 
) [private]

void libtorrent::udp_tracker_connection::on_timeout (  )  [private, virtual]


Friends And Related Function Documentation

friend class tracker_manager [friend]

Definition at line 65 of file udp_tracker_connection.hpp.


Member Data Documentation

Reimplemented from libtorrent::tracker_connection.

Definition at line 105 of file udp_tracker_connection.hpp.

Referenced by announce_response(), and scrape_response().

Reimplemented from libtorrent::timeout_handler.

Definition at line 107 of file udp_tracker_connection.hpp.

Referenced by udp_tracker_connection().

Definition at line 108 of file udp_tracker_connection.hpp.

Referenced by name_lookup(), on_timeout(), and udp_tracker_connection().

Definition at line 115 of file udp_tracker_connection.hpp.

Referenced by udp_tracker_connection().

std::vector<char> libtorrent::udp_tracker_connection::m_buffer [private]


The documentation for this class was generated from the following files:

Generated on Sun May 25 00:21:45 2008 by  doxygen 1.5.6