| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added IPv6 DHT. Added --dht-entry-porint6, --dht-file-path6,
--dht-listen-addr6 and --enable-dht6 option. IPv6 DHT is disabled
by default. To use IPv6 DHT, you need to use --enable-dht6 and
specify a global unicast address to --dht-listen-addr6. IPv6 DHT
is highly experimental.
* src/BtSetup.cc
* src/DHTAutoSaveCommand.cc
* src/DHTAutoSaveCommand.h
* src/DHTConnectionImpl.cc
* src/DHTConnectionImpl.h
* src/DHTEntryPointNameResolveCommand.cc
* src/DHTFindNodeReplyMessage.cc
* src/DHTFindNodeReplyMessage.h
* src/DHTGetPeersMessage.cc
* src/DHTGetPeersReplyMessage.cc
* src/DHTGetPeersReplyMessage.h
* src/DHTMessageFactory.h
* src/DHTMessageFactoryImpl.cc
* src/DHTMessageFactoryImpl.h
* src/DHTMessageTracker.cc
* src/DHTRegistry.cc
* src/DHTRegistry.h
* src/DHTRoutingTableDeserializer.cc
* src/DHTRoutingTableDeserializer.h
* src/DHTRoutingTableSerializer.cc
* src/DHTRoutingTableSerializer.h
* src/DHTSetup.cc
* src/DHTSetup.h
* src/FtpConnection.cc
* src/LpdMessageReceiver.cc
* src/OptionHandlerFactory.cc
* src/OptionHandlerImpl.h
* src/PeerInteractionCommand.cc
* src/RequestGroup.cc
* src/SocketCore.cc
* src/SocketCore.h
* src/bittorrent_helper.cc
* src/bittorrent_helper.h
* src/prefs.cc
* src/prefs.h
* src/usage_text.h
* test/DHTConnectionImplTest.cc
* test/DHTFindNodeReplyMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/DHTMessageFactoryImplTest.cc
* test/DHTRoutingTableDeserializerTest.cc
* test/DHTRoutingTableSerializerTest.cc
* test/LpdMessageDispatcherTest.cc
* test/MockDHTMessageFactory.h
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added bittorrent::packcompact() which replaces
bittorrent::createcompact() and supports IPv6 addresses. Rewritten
bittorrent::unpackcompact() and bittorrent::extractPeer() to
support IPv6 addresses. Fixed added.f flags in ut_pex.
* src/BtConstants.h
* src/DHTFindNodeReplyMessage.cc
* src/DHTGetPeersReplyMessage.cc
* src/DHTMessageFactoryImpl.cc
* src/DHTRoutingTableDeserializer.cc
* src/DHTRoutingTableSerializer.cc
* src/DHTTokenTracker.cc
* src/DefaultBtAnnounce.cc
* src/UTPexExtensionMessage.cc
* src/bittorrent_helper.cc
* src/bittorrent_helper.h
* test/BittorrentHelperTest.cc
* test/DHTFindNodeReplyMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/DHTMessageFactoryImplTest.cc
* test/DHTRoutingTableSerializerTest.cc
* test/DefaultExtensionMessageFactoryTest.cc
* test/UTPexExtensionMessageTest.cc
|
| |
|
|
|
|
| |
Removed BDE and bencode
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Renamed member variables
* src/ActivePeerConnectionCommand.cc
* src/BtLeecherStateChoke.cc
* src/BtPieceMessage.cc
* src/BtPortMessage.cc
* src/BtSeederStateChoke.cc
* src/DHTGetPeersReplyMessage.cc
* src/DefaultBtInteractive.cc
* src/DefaultPeerStorage.cc
* src/HandshakeExtensionMessage.cc
* src/LpdReceiveMessageCommand.cc
* src/Peer.cc
* src/Peer.h
* src/PeerAbstractCommand.cc
* src/PeerInitiateConnectionCommand.cc
* src/PeerListenCommand.cc
* src/SimpleBtMessage.cc
* src/UTPexExtensionMessage.cc
* src/XmlRpcMethodImpl.cc
* test/DHTAnnouncePeerMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/DHTMessageFactoryImplTest.cc
* test/DHTPeerAnnounceEntryTest.cc
* test/DHTPeerAnnounceStorageTest.cc
* test/DefaultPeerStorageTest.cc
* test/HandshakeExtensionMessageTest.cc
* test/LpdMessageReceiverTest.cc
* test/PeerListProcessorTest.cc
* test/PeerTest.cc
* test/UTPexExtensionMessageTest.cc
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added v key in DHT message. aria2's DHT version is independent of
the package version and we defined it as 1 at the moment. It is
defined as DHT_VERSION in src/DHTConstants.h. aria2's DHT version
scheme is "A2"+2bytes DHT version number in network byte order.
* src/DHTAbstractMessage.cc
* src/DHTConstants.h
* src/DHTMessage.cc
* src/DHTMessage.h
* src/DHTMessageFactoryImpl.cc
* src/DHTQueryMessage.cc
* src/DHTResponseMessage.cc
* src/util.h
* test/DHTAnnouncePeerMessageTest.cc
* test/DHTAnnouncePeerReplyMessageTest.cc
* test/DHTFindNodeMessageTest.cc
* test/DHTFindNodeReplyMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/DHTPingMessageTest.cc
* test/DHTPingReplyMessageTest.cc
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
urlencode -> percentEncode,
torrentUrlencode -> torrentPercentEncode
* src/BtHandshakeMessage.cc
* src/BtHandshakeMessageValidator.h
* src/DHTMessageFactoryImpl.cc
* src/DefaultBtAnnounce.cc
* src/HandshakeExtensionMessage.cc
* src/HttpRequest.cc
* src/XmlRpcMethodImpl.cc
* src/bittorrent_helper.cc
* src/util.cc
* src/util.h
* test/DHTAnnouncePeerMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/UTPexExtensionMessageTest.cc
* test/UtilTest.cc
|
| |
|
|
|
|
|
| |
Use vector instead of deque for containers which is used for
mostly read-only purpose.
|
| |
|
|
|
|
|
|
|
| |
Untabify. Fixed one line in copyright which is longer than 80
columns.
* src
* test
|
| |
|
|
|
|
|
|
|
|
| |
Renamed Util.{cc,h} as util.{cc,h}
* src/Util.cc
* src/Util.h
* src/util.cc
* src/util.h
|
| |
|
|
|
|
|
|
| |
Moved static functions in Util class to namespace util.
* src
* test
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Moved generateRandomData to Util.cc Moved flipBit to bitfield.cc.
Moved generateRandomKey to bittorrent_helper.cc.
* src/DHTBucket.cc
* src/DHTGetPeersMessage.cc
* src/DHTGetPeersReplyMessage.cc
* src/DHTMessage.cc
* src/DHTNode.cc
* src/DHTTokenTracker.cc
* src/DHTUtil.cc: Removed.
* src/DHTUtil.h: Removed.
* src/Makefile.am
* src/Util.cc
* src/Util.h
* src/bitfield.h
* src/bittorrent_helper.cc
* src/bittorrent_helper.h
* test/ARC4Test.cc
* test/BNodeTest.cc
* test/DHTAnnouncePeerMessageTest.cc
* test/DHTAnnouncePeerReplyMessageTest.cc
* test/DHTFindNodeMessageTest.cc
* test/DHTFindNodeReplyMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/DHTPingMessageTest.cc
* test/DHTPingReplyMessageTest.cc
* test/DHTTokenTrackerTest.cc
* test/DHTUtilTest.cc: Removed.
* test/Makefile.am
* test/UtilTest.cc
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Move all functions in PeerMessageUtil to bittorrent_helper.
* src/BtBitfieldMessage.cc
* src/BtBitfieldMessageValidator.h
* src/BtExtendedMessage.cc
* src/BtHandshakeMessage.cc
* src/BtHandshakeMessageValidator.h
* src/BtPieceMessage.cc
* src/BtPieceMessageValidator.h
* src/BtPortMessage.cc
* src/DHTFindNodeReplyMessage.cc
* src/DHTGetPeersReplyMessage.cc
* src/DHTMessageFactoryImpl.cc
* src/DHTRoutingTableDeserializer.cc
* src/DHTRoutingTableSerializer.cc
* src/DHTTokenTracker.cc
* src/DefaultBtMessageFactory.cc
* src/IndexBtMessage.cc
* src/IndexBtMessage.h
* src/IndexBtMessageValidator.h
* src/Makefile.am
* src/PeerMessageUtil.cc: Removed.
* src/PeerMessageUtil.h: Removed.
* src/RangeBtMessage.cc
* src/RangeBtMessage.h
* src/RangeBtMessageValidator.h
* src/UTPexExtensionMessage.cc
* src/ZeroBtMessage.cc
* src/ZeroBtMessage.h
* src/bittorrent_helper.cc
* src/bittorrent_helper.h
* test/BittorrentHelperTest.cc
* test/BtAllowedFastMessageTest.cc
* test/BtBitfieldMessageTest.cc
* test/BtCancelMessageTest.cc
* test/BtChokeMessageTest.cc
* test/BtExtendedMessageTest.cc
* test/BtHandshakeMessageTest.cc
* test/BtHaveAllMessageTest.cc
* test/BtHaveMessageTest.cc
* test/BtHaveNoneMessageTest.cc
* test/BtInterestedMessageTest.cc
* test/BtNotInterestedMessageTest.cc
* test/BtPieceMessageTest.cc
* test/BtPortMessageTest.cc
* test/BtRejectMessageTest.cc
* test/BtRequestMessageTest.cc
* test/BtSuggestPieceMessageTest.cc
* test/BtUnchokeMessageTest.cc
* test/DHTFindNodeReplyMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/DHTMessageFactoryImplTest.cc
* test/DHTRoutingTableDeserializerTest.cc
* test/DHTRoutingTableSerializerTest.cc
* test/DefaultBtMessageFactoryTest.cc
* test/DefaultExtensionMessageFactoryTest.cc
* test/Makefile.am
* test/PeerListProcessorTest.cc
* test/PeerMessageUtilTest.cc: Removed.
* test/UTPexExtensionMessageTest.cc
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Put BDE in aria2 namespace. BDE will also be used to store
xml-rpc request.
* src/AnnounceList.cc
* src/AnnounceList.h
* src/BDE.cc: Added
* src/BDE.h: Added
* src/DHTAbstractMessage.cc
* src/DHTAbstractMessage.h
* src/DHTAnnouncePeerMessage.cc
* src/DHTAnnouncePeerMessage.h
* src/DHTAnnouncePeerReplyMessage.cc
* src/DHTAnnouncePeerReplyMessage.h
* src/DHTFindNodeMessage.cc
* src/DHTFindNodeMessage.h
* src/DHTFindNodeReplyMessage.cc
* src/DHTFindNodeReplyMessage.h
* src/DHTGetPeersMessage.cc
* src/DHTGetPeersMessage.h
* src/DHTGetPeersReplyMessage.cc
* src/DHTGetPeersReplyMessage.h
* src/DHTMessageFactory.h
* src/DHTMessageFactoryImpl.cc
* src/DHTMessageFactoryImpl.h
* src/DHTMessageReceiver.cc
* src/DHTMessageTracker.cc
* src/DHTMessageTracker.h
* src/DHTPingMessage.cc
* src/DHTPingMessage.h
* src/DHTPingReplyMessage.cc
* src/DHTPingReplyMessage.h
* src/DHTQueryMessage.cc
* src/DHTQueryMessage.h
* src/DHTResponseMessage.cc
* src/DHTResponseMessage.h
* src/DefaultBtAnnounce.cc
* src/DefaultBtContext.cc
* src/DefaultBtContext.h
* src/HandshakeExtensionMessage.cc
* src/Makefile.am
* src/PeerListProcessor.h
* src/UTPexExtensionMessage.cc
* src/bencode.cc
* src/bencode.h
* test/AnnounceListTest.cc
* test/BDETest.cc: Added
* test/BencodeTest.cc
* test/DHTAnnouncePeerMessageTest.cc
* test/DHTAnnouncePeerReplyMessageTest.cc
* test/DHTFindNodeMessageTest.cc
* test/DHTFindNodeReplyMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/DHTMessageFactoryImplTest.cc
* test/DHTMessageTrackerTest.cc
* test/DHTPingMessageTest.cc
* test/DHTPingReplyMessageTest.cc
* test/Makefile.am
* test/MockDHTMessageFactory.h
* test/PeerListProcessorTest.cc
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use BDE instead of Dictionary/List/Data.
* src/DHTAbstractMessage.cc
* src/DHTAbstractMessage.h
* src/DHTAnnouncePeerMessage.cc
* src/DHTAnnouncePeerMessage.h
* src/DHTAnnouncePeerReplyMessage.cc
* src/DHTAnnouncePeerReplyMessage.h
* src/DHTFindNodeMessage.cc
* src/DHTFindNodeMessage.h
* src/DHTFindNodeReplyMessage.cc
* src/DHTFindNodeReplyMessage.h
* src/DHTGetPeersMessage.cc
* src/DHTGetPeersMessage.h
* src/DHTGetPeersReplyMessage.cc
* src/DHTGetPeersReplyMessage.h
* src/DHTMessageFactory.h
* src/DHTMessageFactoryImpl.cc
* src/DHTMessageFactoryImpl.h
* src/DHTMessageReceiver.cc
* src/DHTMessageTracker.cc
* src/DHTMessageTracker.h
* src/DHTPingMessage.cc
* src/DHTPingMessage.h
* src/DHTPingReplyMessage.cc
* src/DHTPingReplyMessage.h
* src/DHTQueryMessage.cc
* src/DHTQueryMessage.h
* src/DHTResponseMessage.cc
* src/DHTResponseMessage.h
* test/DHTAnnouncePeerMessageTest.cc
* test/DHTAnnouncePeerReplyMessageTest.cc
* test/DHTFindNodeMessageTest.cc
* test/DHTFindNodeReplyMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/DHTGetPeersReplyMessageTest.cc
* test/DHTMessageFactoryImplTest.cc
* test/DHTMessageTrackerTest.cc
* test/DHTPingMessageTest.cc
* test/DHTPingReplyMessageTest.cc
* test/MockDHTMessageFactory.h
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rewritten SharedHandle. Now copy constructor taking raw pointer
has
keyword explicit and SharedHandle's default constructor
initializes
its internal obj to null, old implementation initializes it
using
obj's default constructor.
To assign null, write SharedHandle<T> x(...); x.reset();
TODO: test/SharedHandleTest.cc needs more tests.
* src/SharedHandle.h
|
| |
|
|
|
|
| |
Use unsigned char for data store.
|
| |
|
|
|
|
|
|
|
| |
Removed "using namespace std;" from all sources. Appended std::
prefix to c++
standard classes.
Included string.h where mem* function are used.
|
|
|
Added DHT functionality, compatible with mainline.
DHT is disabled by default. To enable it, give --enable-dht to
aria2c.
You may need to specify entry point to DHT network using
--dht-entry-point. DHT uses UDP port to listen incoming message.
Use --dht-listen-port to specify port number. Make sure that
your
firewall configuration can pass through UDP traffic to the port.
The routing table is saved in $HOME/.aria2/dht.dat.
* src/DHT*
* src/BNode.{h, cc}
* src/PeerInteractionCommand.cc: enable DHT functionality for a
particular torrent.
* src/Data.cc: Rewritten ctor.
* src/OptionHandlerFactory.cc: Added --enable-dht,
--dht-listen-port,
--dht-entry-point.
* src/DefaultBtInteractive.cc: Send port message if dht is
enabled.
* src/RequestGroup.cc: Initialize DHT functionality. When
download
ends, remove BtContext from DHTPeerAnnounceStorage.
* src/BtPortMessage.{h, cc}: Rewritten.
* src/message.h
* src/OptionHandlerImpl.cc
* src/option_processing.cc: Added --enable-dht,
--dht-listen-port,
--dht-entry-point.
* src/Dictionary.{h, cc} (remove): New function.
* src/prefs.h
* src/DefaultBtMessageFactory.h
* src/BtHandshakeMessage.cc
* src/ActivePeerConnectionCommand.cc
* src/SocketCore.{h, cc}: Added datagram socket support.
* src/DefaultBtMessageFactory.cc
* src/BtSetup.cc: Add BtContext to DHTPeerAnnounceStorage here.
Create DHT commands.
* src/BtMessageFactory.h
* src/PeerMessageUtil.{h, cc}
|