Merge pull request #224 from arvidn/fix-warnings

add more override annotation
This commit is contained in:
Arvid Norberg 2015-10-18 11:31:39 -04:00
commit b87995fd3e
12 changed files with 329 additions and 246 deletions

View File

@ -2116,10 +2116,6 @@ torrents is ``min(active_downloads + active_seeds, active_limit)``.
``active_downloads`` and ``active_seeds`` are upper limits on the
number of downloading torrents and seeding torrents respectively.
Setting the value to -1 means unlimited.
``active_checking`` is the limit of number of checking torrents.
Note that this limit applies to started non-auto-managed torrents as
well (as long as they are the the checking_files state).
For example if there are 10 seeding torrents and 10 downloading
torrents, and ``active_downloads`` is 4 and ``active_seeds`` is 4,
there will be 4 seeds active and 4 downloading torrents. If the
@ -2128,9 +2124,11 @@ then there will be 2 downloading torrents and 4 seeding torrents
active. Torrents that are not auto managed are not counted against
these limits.
``active_checking`` is the limit of number of simultaneous checking
torrents.
``active_limit`` is a hard limit on the number of active (auto
managed) torrents. This limit also applies to slow torrents. It does
not apply to checking torrents.
managed) torrents. This limit also applies to slow torrents.
``active_dht_limit`` is the max number of torrents to announce to
the DHT. By default this is set to 88, which is no more than one

View File

@ -89,7 +89,9 @@ namespace libtorrent
// internal
static const int alert_type = 0;
virtual std::string message() const;
// returns the message associated with this alert
virtual std::string message() const TORRENT_OVERRIDE;
// The torrent_handle pointing to the torrent this
// alert is associated with.
@ -117,8 +119,8 @@ namespace libtorrent
static const int alert_type = 1;
static const int static_category = alert::peer_notification;
virtual int category() const { return static_category; }
virtual std::string message() const;
virtual int category() const TORRENT_OVERRIDE { return static_category; }
virtual std::string message() const TORRENT_OVERRIDE;
// The peer's IP address and port.
tcp::endpoint ip;
@ -138,8 +140,8 @@ namespace libtorrent
static const int alert_type = 2;
static const int static_category = alert::tracker_notification;
virtual int category() const { return static_category; }
virtual std::string message() const;
virtual int category() const TORRENT_OVERRIDE { return static_category; }
virtual std::string message() const TORRENT_OVERRIDE;
// returns a null-terminated string of the tracker's URL
char const* tracker_url() const;
@ -166,10 +168,10 @@ namespace libtorrent
#define TORRENT_DEFINE_ALERT_IMPL(name, seq, prio) \
static const int priority = prio; \
static const int alert_type = seq; \
virtual int type() const { return alert_type; } \
virtual int type() const TORRENT_OVERRIDE { return alert_type; } \
TORRENT_CLONE(name) \
virtual int category() const { return static_category; } \
virtual char const* what() const { return #name; }
virtual int category() const TORRENT_OVERRIDE { return static_category; } \
virtual char const* what() const TORRENT_OVERRIDE { return #name; }
#define TORRENT_DEFINE_ALERT(name, seq) \
TORRENT_DEFINE_ALERT_IMPL(name, seq, 0)
@ -188,7 +190,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(torrent_added_alert, 3)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// The ``torrent_removed_alert`` is posted whenever a torrent is removed. Since
@ -211,7 +213,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(torrent_removed_alert, 4)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
sha1_hash info_hash;
};
@ -234,7 +236,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(read_piece_alert, 5)
static const int static_category = alert::storage_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
error_code ec;
@ -254,7 +256,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(file_completed_alert, 6)
static const int static_category = alert::progress_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// refers to the index of the file that completed.
int index;
@ -272,7 +274,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(file_renamed_alert, 7)
static const int static_category = alert::storage_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
#ifndef TORRENT_NO_DEPRECATE
std::string name;
@ -299,7 +301,7 @@ namespace libtorrent
static const int static_category = alert::storage_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
// refers to the index of the file that was supposed to be renamed,
@ -401,7 +403,7 @@ namespace libtorrent
static const int static_category = alert::performance_warning;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
performance_warning_t warning_code;
};
@ -418,7 +420,7 @@ namespace libtorrent
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the new state of the torrent.
torrent_status::state_t state;
@ -449,7 +451,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(tracker_error_alert, 11)
static const int static_category = alert::tracker_notification | alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int times_in_row;
int status_code;
@ -479,7 +481,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(tracker_warning_alert, 12)
static const int static_category = alert::tracker_notification | alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
#ifndef TORRENT_NO_DEPRECATE
// contains the warning message from the tracker.
@ -505,7 +507,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(scrape_reply_alert, 13)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the data returned in the scrape response. These numbers
// may be -1 if the reponse was malformed.
@ -531,7 +533,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(scrape_failed_alert, 14)
static const int static_category = alert::tracker_notification | alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
#ifndef TORRENT_NO_DEPRECATE
// contains a message describing the error.
@ -564,7 +566,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(tracker_reply_alert, 15)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// tells how many peers the tracker returned in this response. This is
// not expected to be more thant the ``num_want`` settings. These are not necessarily
@ -585,7 +587,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(dht_reply_alert, 16)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int num_peers;
};
@ -602,7 +604,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(tracker_announce_alert, 17)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// specifies what event was sent to the tracker. It is defined as:
//
@ -624,7 +626,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(hash_failed_alert, 18)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int piece_index;
};
@ -639,7 +641,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(peer_ban_alert, 19)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// This alert is generated when a peer is unsnubbed. Essentially when it was snubbed for stalling
@ -652,7 +654,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(peer_unsnubbed_alert, 20)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// This alert is generated when a peer is snubbed, when it stops sending data when we request
@ -665,7 +667,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(peer_snubbed_alert, 21)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// This alert is generated when a peer sends invalid data over the peer-peer protocol. The peer
@ -680,7 +682,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(peer_error_alert, 22)
static const int static_category = alert::peer_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// a NULL-terminated string of the low-level operation that failed, or NULL if
// there was no low level disk operation.
@ -704,7 +706,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(peer_connect_alert, 23)
static const int static_category = alert::debug_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int socket_type;
};
@ -722,7 +724,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(peer_disconnected_alert, 24)
static const int static_category = alert::debug_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the kind of socket this peer was connected over
int socket_type;
@ -755,7 +757,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(invalid_request_alert, 25)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the request we received from the peer
peer_request request;
@ -784,7 +786,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(torrent_finished_alert, 26)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// this alert is posted every time a piece completes downloading
@ -799,7 +801,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(piece_finished_alert, 27)
static const int static_category = alert::progress_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the index of the piece that finished
int piece_index;
@ -817,7 +819,7 @@ namespace libtorrent
static const int static_category = alert::progress_notification
| alert::peer_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int block_index;
int piece_index;
@ -835,7 +837,7 @@ namespace libtorrent
static const int static_category = alert::progress_notification
| alert::peer_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int block_index;
int piece_index;
@ -852,7 +854,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(block_finished_alert, 30)
static const int static_category = alert::progress_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int block_index;
int piece_index;
@ -869,7 +871,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(block_downloading_alert, 31)
static const int static_category = alert::progress_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
#ifndef TORRENT_NO_DEPRECATE
char const* peer_speedmsg;
@ -889,7 +891,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(unwanted_block_alert, 32)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int block_index;
int piece_index;
@ -908,7 +910,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(storage_moved_alert, 33)
static const int static_category = alert::storage_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
#ifndef TORRENT_NO_DEPRECATE
std::string path;
@ -935,7 +937,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(storage_moved_failed_alert, 34)
static const int static_category = alert::storage_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
error_code error;
@ -972,7 +974,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(torrent_deleted_alert, 35)
static const int static_category = alert::storage_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
@ -991,7 +993,7 @@ namespace libtorrent
static const int static_category = alert::storage_notification
| alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
@ -1018,7 +1020,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(save_resume_data_alert, 37)
static const int static_category = alert::storage_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
@ -1038,7 +1040,7 @@ namespace libtorrent
static const int static_category = alert::storage_notification
| alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
@ -1061,7 +1063,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(torrent_paused_alert, 39)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// This alert is generated as a response to a torrent_handle::resume() request. It is
@ -1074,7 +1076,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(torrent_resumed_alert, 40)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// This alert is posted when a torrent completes checking. i.e. when it transitions
@ -1087,7 +1089,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(torrent_checked_alert, 41)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// This alert is generated when a HTTP seed name lookup fails.
@ -1102,7 +1104,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(url_seed_alert, 42)
static const int static_category = alert::peer_notification | alert::error_notification;
std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
#ifndef TORRENT_NO_DEPRECATE
// the HTTP seed that failed
@ -1144,7 +1146,7 @@ namespace libtorrent
static const int static_category = alert::status_notification
| alert::error_notification
| alert::storage_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
#ifndef TORRENT_NO_DEPRECATE
// the path to the file that was accessed when the error occurred.
@ -1178,7 +1180,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(metadata_failed_alert, 44)
static const int static_category = alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// indicates what failed when parsing the metadata. This error is
// what's returned from lazy_bdecode().
@ -1218,7 +1220,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(metadata_received_alert, 45)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// This alert is posted when there is an error on the UDP socket. The
@ -1235,7 +1237,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(udp_error_alert, 46)
static const int static_category = alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the source address associated with the error (if any)
udp::endpoint endpoint;
@ -1256,7 +1258,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(external_ip_alert, 47)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the IP address that is believed to be our external IP
address external_address;
@ -1286,7 +1288,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(listen_failed_alert, 48)
static const int static_category = alert::status_notification | alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
#if !defined(TORRENT_NO_DEPRECATE) && !defined(TORRENT_WINRT)
@ -1329,7 +1331,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(listen_succeeded_alert, 49)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
// the endpoint libtorrent ended up listening on. The address
@ -1356,7 +1358,7 @@ namespace libtorrent
static const int static_category = alert::port_mapping_notification
| alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// refers to the mapping index of the port map that failed, i.e.
// the index returned from add_mapping().
@ -1384,7 +1386,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(portmap_alert, 51)
static const int static_category = alert::port_mapping_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// refers to the mapping index of the port map that failed, i.e.
// the index returned from add_mapping().
@ -1411,7 +1413,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(portmap_log_alert, 52)
static const int static_category = alert::port_mapping_log_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
int map_type;
@ -1446,7 +1448,7 @@ namespace libtorrent
static const int static_category = alert::status_notification
| alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
error_code error;
@ -1486,7 +1488,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(peer_blocked_alert, 54)
static const int static_category = alert::ip_block_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the address that was blocked.
address ip;
@ -1516,7 +1518,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(dht_announce_alert, 55)
static const int static_category = alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
address ip;
int port;
@ -1533,7 +1535,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(dht_get_peers_alert, 56)
static const int static_category = alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
sha1_hash info_hash;
};
@ -1550,7 +1552,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(stats_alert, 57)
static const int static_category = alert::stats_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
enum stats_channel
{
@ -1616,7 +1618,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(anonymous_mode_alert, 59)
static const int static_category = alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
enum kind_t
{
@ -1642,7 +1644,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(lsd_peer_alert, 60)
static const int static_category = alert::peer_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
// This alert is posted whenever a tracker responds with a ``trackerid``.
@ -1658,7 +1660,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(trackerid_alert, 61)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
#ifndef TORRENT_NO_DEPRECATE
// The tracker ID returned by the tracker
@ -1681,7 +1683,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(dht_bootstrap_alert, 62)
static const int static_category = alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
};
#ifndef TORRENT_NO_DEPRECATE
@ -1699,7 +1701,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(rss_alert, 63)
static const int static_category = alert::rss_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
enum state_t
{
@ -1742,7 +1744,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(torrent_error_alert, 64)
static const int static_category = alert::error_notification | alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// specifies which error the torrent encountered.
error_code error;
@ -1772,7 +1774,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(torrent_need_cert_alert, 65)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
error_code error;
@ -1793,7 +1795,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(incoming_connection_alert, 66)
static const int static_category = alert::peer_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// tells you what kind of socket the connection was accepted
// as:
@ -1828,7 +1830,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(add_torrent_alert, 67)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
// a copy of the parameters used when adding the torrent, it can be used
@ -1852,7 +1854,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(state_update_alert, 68)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
// contains the torrent status of all torrents that changed since last
@ -1870,7 +1872,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(mmap_cache_alert, 69)
static const int static_category = alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
error_code error;
};
@ -1885,7 +1887,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(session_stats_alert, 70)
static const int static_category = alert::stats_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
@ -1917,7 +1919,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(torrent_update_alert, 71)
static const int static_category = alert::status_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
// ``old_ih`` and ``new_ih`` are the previous and new info-hash for the torrent, respectively.
@ -1940,7 +1942,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(rss_item_alert, 72)
static const int static_category = alert::rss_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
feed_handle handle;
feed_item item;
@ -1958,7 +1960,7 @@ namespace libtorrent
static const int static_category = alert::error_notification
| alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the error code
error_code error;
@ -1984,7 +1986,7 @@ namespace libtorrent
static const int static_category = alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
// the target hash of the immutable item. This must
@ -2010,7 +2012,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT_PRIO(dht_mutable_item_alert, 75)
static const int static_category = alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
TORRENT_NOT_DISCARDABLE
@ -2052,7 +2054,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(dht_put_alert, 76)
static const int static_category = alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the target hash the item was stored under if this was an *immutable*
// item.
@ -2074,7 +2076,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(i2p_alert, 77)
static const int static_category = alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the error that occurred in the i2p SAM connection
error_code error;
@ -2092,7 +2094,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(dht_outgoing_get_peers_alert, 78)
static const int static_category = alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the info_hash of the torrent we're looking for peers for.
sha1_hash info_hash;
@ -2117,7 +2119,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(log_alert, 79)
static const int static_category = alert::session_log_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// returns the log message
char const* msg() const;
@ -2140,7 +2142,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(torrent_log_alert, 80)
static const int static_category = alert::torrent_log_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// returns the log message
char const* msg() const;
@ -2175,7 +2177,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(peer_log_alert, 81)
static const int static_category = alert::peer_log_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// string literal indicating the kind of event. For messages, this is the
// message name.
@ -2200,7 +2202,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(lsd_error_alert, 82)
static const int static_category = alert::error_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// The error code
error_code error;
@ -2274,7 +2276,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(dht_stats_alert, 83)
static const int static_category = alert::stats_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// a vector of the currently running DHT lookups.
std::vector<dht_lookup> active_requests;
@ -2298,7 +2300,7 @@ namespace libtorrent
static const int static_category = alert::incoming_request_notification;
TORRENT_DEFINE_ALERT(incoming_request_alert, 84)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the request this peer sent to us
peer_request req;
@ -2321,7 +2323,7 @@ namespace libtorrent
static const int static_category = alert::dht_log_notification;
TORRENT_DEFINE_ALERT(dht_log_alert, 85)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// the log message
char const* log_message() const;
@ -2348,7 +2350,7 @@ namespace libtorrent
static const int static_category = alert::dht_log_notification;
TORRENT_DEFINE_ALERT(dht_pkt_alert, 86)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
// returns a pointer to the packet buffer and size of the packet,
// respectively. This buffer is only valid for as long as the alert itself
@ -2379,7 +2381,7 @@ namespace libtorrent
static const int static_category = alert::dht_operation_notification;
TORRENT_DEFINE_ALERT(dht_get_peers_reply_alert, 87)
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
sha1_hash info_hash;
@ -2406,7 +2408,7 @@ namespace libtorrent
TORRENT_DEFINE_ALERT(dht_direct_response_alert, 88)
static const int static_category = alert::dht_notification;
virtual std::string message() const;
virtual std::string message() const TORRENT_OVERRIDE;
void* userdata;
udp::endpoint addr;

View File

@ -201,10 +201,10 @@ namespace libtorrent
void add_ses_extension(boost::shared_ptr<plugin> ext);
#endif
#if TORRENT_USE_ASSERTS
bool has_peer(peer_connection const* p) const;
bool any_torrent_has_peer(peer_connection const* p) const;
bool has_peer(peer_connection const* p) const TORRENT_OVERRIDE TORRENT_FINAL;
bool any_torrent_has_peer(peer_connection const* p) const TORRENT_OVERRIDE TORRENT_FINAL;
bool is_single_thread() const { return single_threaded::is_single_thread(); }
bool is_posting_torrent_updates() const { return m_posting_torrent_updates; }
bool is_posting_torrent_updates() const TORRENT_OVERRIDE TORRENT_FINAL { return m_posting_torrent_updates; }
// this is set while the session is building the
// torrent status update message
bool m_posting_torrent_updates;
@ -212,14 +212,15 @@ namespace libtorrent
void open_listen_port();
torrent_peer_allocator_interface* get_peer_allocator() { return &m_peer_allocator; }
torrent_peer_allocator_interface* get_peer_allocator() TORRENT_OVERRIDE TORRENT_FINAL
{ return &m_peer_allocator; }
io_service& get_io_service() { return m_io_service; }
resolver_interface& get_resolver() { return m_host_resolver; }
io_service& get_io_service() TORRENT_OVERRIDE TORRENT_FINAL { return m_io_service; }
resolver_interface& get_resolver() TORRENT_OVERRIDE TORRENT_FINAL { return m_host_resolver; }
void async_resolve(std::string const& host, int flags
, callback_t const& h);
, callback_t const& h) TORRENT_OVERRIDE TORRENT_FINAL;
std::vector<torrent*>& torrent_list(int i)
std::vector<torrent*>& torrent_list(int i) TORRENT_OVERRIDE TORRENT_FINAL
{
TORRENT_ASSERT(i >= 0);
TORRENT_ASSERT(i < session_interface::num_torrent_lists);
@ -230,13 +231,13 @@ namespace libtorrent
// attempts, because this torrent needs more peers.
// this is typically done when a torrent starts out and
// need the initial push to connect peers
void prioritize_connections(boost::weak_ptr<torrent> t);
void prioritize_connections(boost::weak_ptr<torrent> t) TORRENT_OVERRIDE TORRENT_FINAL;
// if we are listening on an IPv6 interface
// this will return one of the IPv6 addresses on this
// machine, otherwise just an empty endpoint
tcp::endpoint get_ipv6_interface() const;
tcp::endpoint get_ipv4_interface() const;
tcp::endpoint get_ipv6_interface() const TORRENT_OVERRIDE TORRENT_FINAL;
tcp::endpoint get_ipv4_interface() const TORRENT_OVERRIDE TORRENT_FINAL;
void async_accept(boost::shared_ptr<tcp::acceptor> const& listener, bool ssl);
void on_accept_connection(boost::shared_ptr<socket_type> const& s
@ -252,14 +253,14 @@ namespace libtorrent
void get_feeds(std::vector<feed_handle>* f) const;
#endif
boost::weak_ptr<torrent> find_torrent(sha1_hash const& info_hash) const;
boost::weak_ptr<torrent> find_torrent(sha1_hash const& info_hash) const TORRENT_OVERRIDE TORRENT_FINAL;
boost::weak_ptr<torrent> find_torrent(std::string const& uuid) const;
#ifndef TORRENT_DISABLE_MUTABLE_TORRENTS
std::vector<boost::shared_ptr<torrent> > find_collection(
std::string const& collection) const;
std::string const& collection) const TORRENT_OVERRIDE TORRENT_FINAL;
#endif
boost::weak_ptr<torrent> find_disconnect_candidate_torrent() const;
int num_torrents() const { return m_torrents.size(); }
boost::weak_ptr<torrent> find_disconnect_candidate_torrent() const TORRENT_OVERRIDE TORRENT_FINAL;
int num_torrents() const TORRENT_OVERRIDE TORRENT_FINAL { return m_torrents.size(); }
void insert_torrent(sha1_hash const& ih, boost::shared_ptr<torrent> const& t
, std::string uuid);
@ -280,15 +281,15 @@ namespace libtorrent
void apply_settings_pack(boost::shared_ptr<settings_pack> pack);
void apply_settings_pack_impl(settings_pack const& pack);
session_settings const& settings() const { return m_settings; }
session_settings const& settings() const TORRENT_OVERRIDE TORRENT_FINAL { return m_settings; }
settings_pack get_settings() const;
#ifndef TORRENT_DISABLE_DHT
dht::dht_tracker* dht() { return m_dht.get(); }
bool announce_dht() const { return !m_listen_sockets.empty(); }
dht::dht_tracker* dht() TORRENT_OVERRIDE TORRENT_FINAL { return m_dht.get(); }
bool announce_dht() const TORRENT_OVERRIDE TORRENT_FINAL { return !m_listen_sockets.empty(); }
void add_dht_node_name(std::pair<std::string, int> const& node);
void add_dht_node(udp::endpoint n);
void add_dht_node(udp::endpoint n) TORRENT_OVERRIDE TORRENT_FINAL;
void add_dht_router(std::pair<std::string, int> const& node);
void set_dht_settings(dht_settings const& s);
dht_settings const& get_dht_settings() const { return m_dht_settings; }
@ -296,12 +297,12 @@ namespace libtorrent
void start_dht();
void stop_dht();
void start_dht(entry const& startup_state);
bool has_dht() const;
bool has_dht() const TORRENT_OVERRIDE TORRENT_FINAL;
// this is called for torrents when they are started
// it will prioritize them for announcing to
// the DHT, to get the initial peers quickly
void prioritize_dht(boost::weak_ptr<torrent> t);
void prioritize_dht(boost::weak_ptr<torrent> t) TORRENT_OVERRIDE TORRENT_FINAL;
void get_immutable_callback(sha1_hash target
, dht::item const& i);
@ -365,8 +366,8 @@ namespace libtorrent
ip_filter const& get_ip_filter();
void set_port_filter(port_filter const& f);
port_filter const& get_port_filter() const TORRENT_OVERRIDE;
void ban_ip(address addr) TORRENT_OVERRIDE;
port_filter const& get_port_filter() const TORRENT_OVERRIDE TORRENT_FINAL;
void ban_ip(address addr) TORRENT_OVERRIDE TORRENT_FINAL;
void queue_tracker_request(tracker_request& req
, boost::weak_ptr<request_callback> c);
@ -571,23 +572,23 @@ namespace libtorrent
// implements dht_observer
virtual void set_external_address(address const& ip
, address const& source) TORRENT_OVERRIDE;
virtual address external_address() TORRENT_OVERRIDE;
virtual void get_peers(sha1_hash const& ih) TORRENT_OVERRIDE;
virtual void announce(sha1_hash const& ih, address const& addr, int port) TORRENT_OVERRIDE;
, address const& source) TORRENT_OVERRIDE TORRENT_FINAL;
virtual address external_address() TORRENT_OVERRIDE TORRENT_FINAL;
virtual void get_peers(sha1_hash const& ih) TORRENT_OVERRIDE TORRENT_FINAL;
virtual void announce(sha1_hash const& ih, address const& addr, int port) TORRENT_OVERRIDE TORRENT_FINAL;
virtual void outgoing_get_peers(sha1_hash const& target
, sha1_hash const& sent_target, udp::endpoint const& ep) TORRENT_OVERRIDE;
, sha1_hash const& sent_target, udp::endpoint const& ep) TORRENT_OVERRIDE TORRENT_FINAL;
virtual void log(libtorrent::dht::dht_logger::module_t m, char const* fmt, ...)
TORRENT_OVERRIDE TORRENT_FORMAT(3,4);
TORRENT_OVERRIDE TORRENT_FINAL TORRENT_FORMAT(3,4);
virtual void log_packet(message_direction_t dir, char const* pkt, int len
, udp::endpoint node) TORRENT_OVERRIDE;
, udp::endpoint node) TORRENT_OVERRIDE TORRENT_FINAL;
virtual bool on_dht_request(char const* query, int query_len
, dht::msg const& request, entry& response);
void set_external_address(address const& ip
, int source_type, address const& source);
virtual external_ip const& external_address() const TORRENT_OVERRIDE;
virtual external_ip const& external_address() const TORRENT_OVERRIDE TORRENT_FINAL;
// used when posting synchronous function
// calls to session_impl and torrent objects
@ -600,7 +601,7 @@ namespace libtorrent
// uncork all peers added to the delayed uncork queue
// implements uncork_interface
virtual void do_delayed_uncork() TORRENT_OVERRIDE;
virtual void do_delayed_uncork() TORRENT_OVERRIDE TORRENT_FINAL;
void post_socket_job(socket_job& j);
@ -1134,8 +1135,8 @@ namespace libtorrent
boost::uint16_t m_tick_residual;
#ifndef TORRENT_DISABLE_LOGGING
virtual void session_log(char const* fmt, ...) const TORRENT_FORMAT(2,3);
virtual void session_vlog(char const* fmt, va_list& va) const TORRENT_FORMAT(2,0);
virtual void session_log(char const* fmt, ...) const TORRENT_OVERRIDE TORRENT_FINAL TORRENT_FORMAT(2,3);
virtual void session_vlog(char const* fmt, va_list& va) const TORRENT_OVERRIDE TORRENT_FINAL TORRENT_FORMAT(2,0);
// this list of tracker loggers serves as tracker_callbacks when
// shutting down. This list is just here to keep them alive during
@ -1145,8 +1146,8 @@ namespace libtorrent
// TODO: 2 the throttling of saving resume data could probably be
// factored out into a separate class
void queue_async_resume_data(boost::shared_ptr<torrent> const& t);
void done_async_resume();
virtual void queue_async_resume_data(boost::shared_ptr<torrent> const& t) TORRENT_OVERRIDE TORRENT_FINAL;
virtual void done_async_resume() TORRENT_OVERRIDE TORRENT_FINAL;
void async_resume_dispatched();
// state for keeping track of external IPs

View File

@ -33,8 +33,12 @@ POSSIBILITY OF SUCH DAMAGE.
#ifndef TORRENT_DHT_STORAGE_HPP
#define TORRENT_DHT_STORAGE_HPP
#include "libtorrent/aux_/disable_warnings_push.hpp"
#include <boost/function.hpp>
#include "libtorrent/aux_/disable_warnings_pop.hpp"
#include <libtorrent/socket.hpp>
#include <libtorrent/sha1_hash.hpp>
#include <libtorrent/address.hpp>

View File

@ -34,12 +34,17 @@ POSSIBILITY OF SUCH DAMAGE.
#define TORRENT_STRING_UTIL_HPP_INCLUDED
#include "libtorrent/config.hpp"
#include "libtorrent/aux_/disable_warnings_push.hpp"
#include <vector>
#include <string>
#include <boost/cstdint.hpp>
#include <boost/limits.hpp>
#include <boost/array.hpp> // for boost::array
#include "libtorrent/aux_/disable_warnings_pop.hpp"
namespace libtorrent
{
TORRENT_EXTRA_EXPORT bool is_alpha(char c);

View File

@ -1,26 +1,35 @@
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 14962439509416331833 (0xcfa543759c07ca39)
Signature Algorithm: sha1WithRSAEncryption
Serial Number: 10052184073940222221 (0x8b808828100bc10d)
Signature Algorithm: sha256WithRSAEncryption
Issuer: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=test root
Validity
Not Before: Oct 7 08:41:33 2014 GMT
Not After : Oct 7 08:41:33 2015 GMT
Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=*
Not Before: Oct 18 05:18:49 2015 GMT
Not After : Oct 17 05:18:49 2016 GMT
Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=test3
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Public-Key: (2048 bit)
Modulus:
00:b0:84:78:9f:a4:ea:6e:b4:a8:27:e8:c1:07:1b:
dd:6d:44:bf:bb:c1:2d:cf:4e:94:1e:ba:e4:f1:f8:
98:bc:42:95:4b:54:aa:bb:11:87:3b:43:cd:23:b0:
e2:ca:e6:ee:d4:2e:5a:13:e2:ec:65:ff:18:d2:0f:
93:ac:69:75:e6:1c:34:41:d6:09:2c:b9:fa:99:3e:
04:04:0e:46:b6:14:93:78:7d:d8:9d:2f:87:a5:32:
42:1d:6e:91:d8:23:d8:94:0b:65:0f:91:11:58:b7:
45:90:62:b2:a1:d1:22:55:35:5b:dc:d0:3c:e4:42:
ab:9d:26:49:04:66:4c:8d:5f
00:b7:fb:11:f8:bc:71:33:ff:f9:70:5e:16:32:62:
2b:94:24:cb:c1:da:0c:52:f1:59:bd:f5:b4:78:66:
22:72:f2:b7:6d:33:2e:9b:7a:8a:2e:7c:e5:d8:0d:
7f:b2:3d:10:ec:35:f3:fe:c9:df:16:43:11:bc:90:
8c:cb:7d:f1:7d:56:e6:d2:1e:65:7f:7e:74:48:b4:
e8:da:02:20:54:94:b9:39:31:77:fd:e2:06:c4:5b:
4f:30:f5:7c:9f:0c:0c:b2:17:0f:c8:27:7d:ff:4c:
23:04:99:57:35:94:51:e2:0f:a8:6f:af:21:99:56:
c1:ce:41:25:ae:04:fb:ae:87:92:d2:fd:0e:b6:ad:
b4:e7:bb:36:6a:fe:ee:10:ef:5f:cc:83:45:b1:e6:
41:55:04:7d:c4:bc:86:e4:cc:65:73:d9:38:14:77:
48:b4:94:92:aa:68:bb:ea:90:2a:46:a8:57:ff:a7:
54:f7:60:19:98:07:1b:ec:c7:b2:7b:11:32:58:d6:
74:84:cd:0d:5d:82:a9:26:95:d5:a9:38:7f:7a:d3:
36:b6:2f:55:b5:d9:50:d1:52:a3:da:32:00:4e:05:
2b:94:e2:38:4e:ac:4e:14:0b:08:4a:82:a9:3c:ec:
f6:3c:fe:11:34:54:02:81:26:a4:bc:4f:2b:51:3b:
dc:c3
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints:
@ -28,33 +37,45 @@ Certificate:
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
68:14:57:1C:27:2B:CB:45:7F:F9:96:AD:A9:99:EF:BC:4D:9F:A5:CB
79:5C:E8:66:88:0B:D8:10:84:DA:92:D5:5D:DF:21:93:B4:24:3B:4E
X509v3 Authority Key Identifier:
keyid:EA:38:2C:12:62:53:49:BB:87:39:32:FC:29:86:3C:B9:A1:1B:D7:79
keyid:79:A3:D1:7D:8A:32:71:2B:E1:F8:9F:0C:39:92:20:63:31:A2:ED:D6
Signature Algorithm: sha1WithRSAEncryption
9d:5f:92:42:21:79:e4:19:5d:3f:25:65:3f:95:72:92:7a:21:
62:0b:c3:e8:a4:47:b8:7f:f8:f9:e9:f2:ee:fb:cc:f9:2e:00:
e2:24:39:11:91:20:20:52:9f:19:64:43:0c:9a:05:e9:77:88:
5e:7e:07:99:cd:4b:cd:93:34:7c:10:6d:35:f6:5c:c7:5c:af:
60:dc:91:09:d8:27:13:38:25:00:ec:50:f3:07:db:31:0a:e2:
a2:2c:0f:df:8a:db:ee:0d:c7:15:c8:bb:2b:93:12:99:7e:25:
49:17:28:10:83:7a:93:2b:98:2f:ea:21:54:32:e2:d9:b6:ca:
2f:10
Signature Algorithm: sha256WithRSAEncryption
8b:3b:5c:29:98:a2:69:42:39:fa:e9:cf:c5:35:c0:88:05:6d:
a8:ba:6a:6b:b1:a2:86:fd:9d:bc:9c:af:eb:dc:03:62:38:2c:
fe:b1:60:85:3a:fa:95:90:c0:6c:d3:1f:a7:42:c0:04:b3:09:
ca:d3:9b:c7:53:78:d2:66:da:30:f4:ec:39:b8:75:60:39:c9:
84:78:c7:b4:e8:56:41:8f:cb:4a:f5:6c:5d:1c:f9:78:f9:34:
ec:f8:0a:2c:f8:3e:4c:0b:66:60:4a:eb:97:90:71:ed:63:e3:
f3:69:46:8f:8e:9b:1e:b7:55:33:0b:5a:ed:73:6d:bc:24:a0:
e0:22:e9:0e:ca:b2:8d:54:1a:37:d2:39:8f:05:81:77:8f:0d:
f0:3f:2a:6c:1a:79:7c:e4:f4:a6:e9:b3:7a:6e:98:cc:cd:43:
cd:40:7c:c6:60:e2:bf:c3:15:dd:54:fc:62:63:8a:e2:71:29:
7e:75:2c:ed:1f:f8:8e:2c:93:1f:8a:3e:79:6d:6e:7e:92:2e:
ce:89:c5:b6:41:ec:d5:f8:90:9b:f9:49:08:e9:4d:c7:21:34:
8a:fb:d8:2b:63:97:78:18:5a:b8:44:ae:46:49:9f:db:c6:51:
bd:d1:6e:ee:1f:e2:85:b2:d3:d7:26:03:86:d9:80:3c:b9:81:
65:aa:e9:1f
-----BEGIN CERTIFICATE-----
MIICozCCAgygAwIBAgIJAM+lQ3WcB8o5MA0GCSqGSIb3DQEBBQUAMFkxCzAJBgNV
MIIDrDCCApSgAwIBAgIJAIuAiCgQC8ENMA0GCSqGSIb3DQEBCwUAMFkxCzAJBgNV
BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
aWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMMCXRlc3Qgcm9vdDAeFw0xNDEwMDcwODQx
MzNaFw0xNTEwMDcwODQxMzNaMFExCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21l
LVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxCjAIBgNV
BAMMASowgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALCEeJ+k6m60qCfowQcb
3W1Ev7vBLc9OlB665PH4mLxClUtUqrsRhztDzSOw4srm7tQuWhPi7GX/GNIPk6xp
deYcNEHWCSy5+pk+BAQORrYUk3h92J0vh6UyQh1ukdgj2JQLZQ+REVi3RZBisqHR
IlU1W9zQPORCq50mSQRmTI1fAgMBAAGjezB5MAkGA1UdEwQCMAAwLAYJYIZIAYb4
QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBRo
FFccJyvLRX/5lq2pme+8TZ+lyzAfBgNVHSMEGDAWgBTqOCwSYlNJu4c5Mvwphjy5
oRvXeTANBgkqhkiG9w0BAQUFAAOBgQCdX5JCIXnkGV0/JWU/lXKSeiFiC8PopEe4
f/j56fLu+8z5LgDiJDkRkSAgUp8ZZEMMmgXpd4hefgeZzUvNkzR8EG019lzHXK9g
3JEJ2CcTOCUA7FDzB9sxCuKiLA/fitvuDccVyLsrkxKZfiVJFygQg3qTK5gv6iFU
MuLZtsovEA==
aWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMMCXRlc3Qgcm9vdDAeFw0xNTEwMTgwNTE4
NDlaFw0xNjEwMTcwNTE4NDlaMFUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21l
LVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxDjAMBgNV
BAMMBXRlc3QzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt/sR+Lxx
M//5cF4WMmIrlCTLwdoMUvFZvfW0eGYicvK3bTMum3qKLnzl2A1/sj0Q7DXz/snf
FkMRvJCMy33xfVbm0h5lf350SLTo2gIgVJS5OTF3/eIGxFtPMPV8nwwMshcPyCd9
/0wjBJlXNZRR4g+ob68hmVbBzkElrgT7roeS0v0Otq2057s2av7uEO9fzINFseZB
VQR9xLyG5Mxlc9k4FHdItJSSqmi76pAqRqhX/6dU92AZmAcb7MeyexEyWNZ0hM0N
XYKpJpXVqTh/etM2ti9VtdlQ0VKj2jIATgUrlOI4TqxOFAsISoKpPOz2PP4RNFQC
gSakvE8rUTvcwwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1P
cGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUeVzoZogL2BCE
2pLVXd8hk7QkO04wHwYDVR0jBBgwFoAUeaPRfYoycSvh+J8MOZIgYzGi7dYwDQYJ
KoZIhvcNAQELBQADggEBAIs7XCmYomlCOfrpz8U1wIgFbai6amuxoob9nbycr+vc
A2I4LP6xYIU6+pWQwGzTH6dCwASzCcrTm8dTeNJm2jD07Dm4dWA5yYR4x7ToVkGP
y0r1bF0c+Xj5NOz4Ciz4PkwLZmBK65eQce1j4/NpRo+Omx63VTMLWu1zbbwkoOAi
6Q7Kso1UGjfSOY8FgXePDfA/KmwaeXzk9Kbps3pumMzNQ81AfMZg4r/DFd1U/GJj
iuJxKX51LO0f+I4skx+KPnltbn6SLs6JxbZB7NX4kJv5SQjpTcchNIr72Ctjl3gY
WrhErkZJn9vGUb3Rbu4f4oWy09cmA4bZgDy5gWWq6R8=
-----END CERTIFICATE-----

View File

@ -1,17 +1,30 @@
-----BEGIN ENCRYPTED PRIVATE KEY-----
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
iDc=
-----END ENCRYPTED PRIVATE KEY-----

View File

@ -1,57 +1,78 @@
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 14962439509416331832 (0xcfa543759c07ca38)
Signature Algorithm: sha1WithRSAEncryption
Serial Number: 10052184073940222220 (0x8b808828100bc10c)
Signature Algorithm: sha256WithRSAEncryption
Issuer: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=test root
Validity
Not Before: Oct 7 08:39:22 2014 GMT
Not After : Oct 4 08:39:22 2024 GMT
Not Before: Oct 18 05:18:16 2015 GMT
Not After : Oct 17 05:18:16 2018 GMT
Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=test root
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Public-Key: (2048 bit)
Modulus:
00:a8:05:9e:99:7d:0f:79:4f:f8:03:d9:11:89:c2:
e0:31:a9:99:aa:04:63:d3:6a:5c:1b:98:59:2e:bf:
4c:04:56:7e:6c:f9:e8:03:51:38:eb:35:76:43:e9:
a4:49:2c:5b:ec:ef:f9:29:b8:d6:e2:bb:9e:e1:3f:
79:1d:38:9d:74:3e:6b:10:ea:02:bf:f3:d2:a1:58:
6b:78:0e:0f:72:b1:4d:68:04:76:32:16:ef:59:38:
55:d7:ff:ff:6c:4e:a2:4b:0e:15:39:a0:00:9a:d5:
cf:93:f5:31:9b:cc:5c:3d:01:00:f7:cf:97:78:ee:
d6:a5:df:c3:ea:59:1b:93:b5
00:d9:93:d1:b4:a0:b0:6b:c1:a0:9a:1b:43:d0:32:
04:b6:87:76:0e:f4:38:d7:e0:f6:8c:00:76:b2:3b:
73:06:33:bd:ec:03:cd:d4:7f:9d:12:63:8b:96:ba:
2c:58:9d:ac:d4:3b:c0:18:de:c9:27:2f:4b:1a:cd:
95:e7:9a:20:e1:4f:55:ae:b9:5b:78:9e:41:27:8d:
9f:94:5f:dc:d0:7f:a7:5d:7e:70:70:03:05:98:e5:
09:6f:34:79:d7:10:97:94:86:26:41:f9:8e:60:8f:
81:3c:63:eb:69:bd:67:9a:fa:47:69:bd:61:3f:e5:
c9:07:8a:ea:b4:6c:b5:e6:33:31:d5:23:43:f6:51:
42:e8:68:7f:fe:93:3e:8d:85:90:04:e0:e4:0c:64:
45:6f:a6:94:38:e0:fd:53:7e:18:52:6c:7e:60:2a:
33:6a:99:3b:6c:dd:27:1d:3d:76:70:92:af:d8:f8:
36:5c:5f:ab:be:ea:d7:9f:20:74:f6:55:50:02:c1:
20:5a:1e:9b:ed:cc:c4:91:c6:69:e3:99:d5:87:6c:
83:4e:1f:ed:4f:db:84:c5:7b:97:6f:bc:05:3d:a6:
3b:cd:96:3a:a7:6c:f9:65:59:20:d5:df:66:af:c6:
3c:e2:06:ba:04:5a:15:86:cf:c2:cc:3b:0c:fe:89:
d0:47
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Key Identifier:
EA:38:2C:12:62:53:49:BB:87:39:32:FC:29:86:3C:B9:A1:1B:D7:79
79:A3:D1:7D:8A:32:71:2B:E1:F8:9F:0C:39:92:20:63:31:A2:ED:D6
X509v3 Authority Key Identifier:
keyid:EA:38:2C:12:62:53:49:BB:87:39:32:FC:29:86:3C:B9:A1:1B:D7:79
keyid:79:A3:D1:7D:8A:32:71:2B:E1:F8:9F:0C:39:92:20:63:31:A2:ED:D6
X509v3 Basic Constraints:
CA:TRUE
Signature Algorithm: sha1WithRSAEncryption
38:db:11:90:24:0c:fc:ec:15:79:91:21:e9:6d:3e:a5:79:e3:
bd:8f:03:60:d4:e3:9e:24:ed:56:6b:6a:50:5f:82:a3:8f:9b:
b7:e0:69:65:69:f8:5e:73:bd:a4:92:5a:60:0d:76:52:26:41:
f7:bb:e1:24:c7:83:cc:c2:03:20:4e:51:05:2d:cb:dd:8b:ed:
bb:b1:2b:5f:21:8a:17:d4:85:a2:1e:92:37:88:88:6b:12:f6:
75:a8:dc:b9:4c:93:d4:b9:d5:5d:ed:fc:89:a2:4d:dc:f3:d2:
8a:86:93:1d:04:51:50:9d:f2:12:ba:cb:8a:ef:8a:c8:53:73:
da:47
Signature Algorithm: sha256WithRSAEncryption
ab:e4:ab:ca:fb:9a:dc:f1:41:43:45:f7:31:41:99:27:23:c2:
f5:57:23:9a:0b:a8:29:fe:a9:6c:1d:ba:74:84:df:87:45:0f:
e1:dd:ba:7b:66:67:a7:f8:b9:3e:23:6d:70:69:45:1a:c9:67:
12:59:83:4f:5d:5a:58:cb:df:a9:b7:71:cf:fc:41:75:f0:9b:
61:49:81:00:1b:0e:ca:4f:26:ae:00:ae:ae:0a:a4:65:db:29:
c7:a8:9f:e6:c2:34:d0:b7:30:a0:76:4c:85:83:c4:81:6c:12:
d4:d8:2a:98:8f:e5:60:59:bb:57:38:da:b4:94:48:05:6c:41:
51:1f:c3:48:56:ec:e4:c7:87:b6:c5:84:5c:0e:54:aa:e6:85:
c1:b7:e1:fd:a2:b5:e6:af:06:7b:02:e6:15:c4:fc:a5:6c:29:
64:96:4e:0d:3e:90:36:fd:cf:4b:aa:47:3b:bc:e6:c7:6e:98:
e6:97:6e:80:a3:10:75:a5:3f:2a:9b:2f:9e:4b:4f:ad:44:19:
a4:db:c7:66:f6:28:ed:7d:46:b3:5f:87:70:e4:cd:17:ef:e8:
2e:8c:49:02:45:84:12:56:44:e0:a9:b1:95:f2:32:7a:38:5e:
bd:39:57:b9:8a:5c:c8:f6:6b:09:0b:32:16:01:d9:b6:32:8d:
de:4e:ef:f1
-----BEGIN CERTIFICATE-----
MIICgDCCAemgAwIBAgIJAM+lQ3WcB8o4MA0GCSqGSIb3DQEBBQUAMFkxCzAJBgNV
MIIDhTCCAm2gAwIBAgIJAIuAiCgQC8EMMA0GCSqGSIb3DQEBCwUAMFkxCzAJBgNV
BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
aWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMMCXRlc3Qgcm9vdDAeFw0xNDEwMDcwODM5
MjJaFw0yNDEwMDQwODM5MjJaMFkxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21l
aWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMMCXRlc3Qgcm9vdDAeFw0xNTEwMTgwNTE4
MTZaFw0xODEwMTcwNTE4MTZaMFkxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21l
LVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxEjAQBgNV
BAMMCXRlc3Qgcm9vdDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAqAWemX0P
eU/4A9kRicLgMamZqgRj02pcG5hZLr9MBFZ+bPnoA1E46zV2Q+mkSSxb7O/5KbjW
4rue4T95HTiddD5rEOoCv/PSoVhreA4PcrFNaAR2MhbvWThV1///bE6iSw4VOaAA
mtXPk/Uxm8xcPQEA98+XeO7Wpd/D6lkbk7UCAwEAAaNQME4wHQYDVR0OBBYEFOo4
LBJiU0m7hzky/CmGPLmhG9d5MB8GA1UdIwQYMBaAFOo4LBJiU0m7hzky/CmGPLmh
G9d5MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAONsRkCQM/OwVeZEh
6W0+pXnjvY8DYNTjniTtVmtqUF+Co4+bt+BpZWn4XnO9pJJaYA12UiZB97vhJMeD
zMIDIE5RBS3L3Yvtu7ErXyGKF9SFoh6SN4iIaxL2dajcuUyT1LnVXe38iaJN3PPS
ioaTHQRRUJ3yErrLiu+KyFNz2kc=
BAMMCXRlc3Qgcm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANmT
0bSgsGvBoJobQ9AyBLaHdg70ONfg9owAdrI7cwYzvewDzdR/nRJji5a6LFidrNQ7
wBjeyScvSxrNleeaIOFPVa65W3ieQSeNn5Rf3NB/p11+cHADBZjlCW80edcQl5SG
JkH5jmCPgTxj62m9Z5r6R2m9YT/lyQeK6rRsteYzMdUjQ/ZRQuhof/6TPo2FkATg
5AxkRW+mlDjg/VN+GFJsfmAqM2qZO2zdJx09dnCSr9j4Nlxfq77q158gdPZVUALB
IFoem+3MxJHGaeOZ1Ydsg04f7U/bhMV7l2+8BT2mO82WOqds+WVZINXfZq/GPOIG
ugRaFYbPwsw7DP6J0EcCAwEAAaNQME4wHQYDVR0OBBYEFHmj0X2KMnEr4fifDDmS
IGMxou3WMB8GA1UdIwQYMBaAFHmj0X2KMnEr4fifDDmSIGMxou3WMAwGA1UdEwQF
MAMBAf8wDQYJKoZIhvcNAQELBQADggEBAKvkq8r7mtzxQUNF9zFBmScjwvVXI5oL
qCn+qWwdunSE34dFD+HduntmZ6f4uT4jbXBpRRrJZxJZg09dWljL36m3cc/8QXXw
m2FJgQAbDspPJq4Arq4KpGXbKceon+bCNNC3MKB2TIWDxIFsEtTYKpiP5WBZu1c4
2rSUSAVsQVEfw0hW7OTHh7bFhFwOVKrmhcG34f2iteavBnsC5hXE/KVsKWSWTg0+
kDb9z0uqRzu85sdumOaXboCjEHWlPyqbL55LT61EGaTbx2b2KO19RrNfh3DkzRfv
6C6MSQJFhBJWROCpsZXyMno4Xr05V7mKXMj2awkLMhYB2bYyjd5O7/E=
-----END CERTIFICATE-----

View File

@ -1,17 +1,30 @@
-----BEGIN ENCRYPTED PRIVATE KEY-----
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
05c=
-----END ENCRYPTED PRIVATE KEY-----

View File

@ -31,7 +31,7 @@ POSSIBILITY OF SUCH DAMAGE.
*/
#include "libtorrent/bencode.hpp"
#include <boost/lexical_cast.hpp>
#include <iostream>
#include <cstring>

View File

@ -31,7 +31,6 @@ POSSIBILITY OF SUCH DAMAGE.
*/
#include "libtorrent/hasher.hpp"
#include <boost/lexical_cast.hpp>
#include "libtorrent/hex.hpp" // from_hex
#include "test.hpp"

View File

@ -36,12 +36,16 @@ POSSIBILITY OF SUCH DAMAGE.
#include "libtorrent/file.hpp"
#include "libtorrent/session_status.hpp"
#include "libtorrent/torrent_info.hpp"
#include <boost/bind.hpp>
#include <boost/tuple/tuple.hpp>
#include "test.hpp"
#include "test_utils.hpp"
#include "setup_transfer.hpp"
#include "libtorrent/aux_/disable_warnings_push.hpp"
#include <boost/bind.hpp>
#include <boost/tuple/tuple.hpp>
#include <fstream>
#include <iostream>
#include <boost/asio/connect.hpp>
@ -50,6 +54,8 @@ POSSIBILITY OF SUCH DAMAGE.
#include <boost/asio/ssl/error.hpp> // for asio::error::get_ssl_category()
#include <boost/asio/ssl.hpp>
#include "libtorrent/aux_/disable_warnings_pop.hpp"
using namespace libtorrent;
using boost::tuples::ignore;