| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
| |
The constructor of std::unique_ptr which takes nullptr is not explicit
so we can return nullptr directly.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
Made #include guard consistent for c++ header files.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
Changed naming standards for class member variable: now it looks
like var_ instead of _var.
|
| |
|
|
|
|
| |
Removed BDE and bencode
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rewritten DHTMessageCallback using Visitor pattern. Eliminated
dynamic_pointer_cast.
* src/DHTMessageCallbackImpl.cc: Removed
* src/DHTMessageReceiver.cc
* src/DHTAbstractNodeLookupTask.h
* src/DHTAnnouncePeerReplyMessage.h
* src/DHTReplaceNodeTask.h
* src/DHTFindNodeReplyMessage.cc
* src/DHTGetPeersReplyMessage.h
* src/DHTPeerLookupTask.h
* src/DHTMessageCallbackImpl.h: Removed
* src/DHTMessageFactory.h
* src/DHTNodeLookupTaskCallback.h
* src/DHTMessageTracker.h
* src/DHTMessageCallbackListener.h: Removed
* src/DHTGetPeersReplyMessage.cc
* src/DHTMessageCallback.h
* src/DHTAnnouncePeerReplyMessage.cc
* src/DHTNodeLookupTask.h
* src/DHTReplaceNodeTask.cc
* src/DHTPeerLookupTaskCallback.cc
* src/DHTMessageTracker.cc
* src/DHTPingReplyMessage.cc
* src/DHTPingTask.cc
* src/DHTMessageFactoryImpl.h
* src/Makefile.am
* src/DHTNodeLookupTask.cc
* src/DHTPeerLookupTaskCallback.h
* src/DHTPeerLookupTask.cc
* src/DHTMessageReceiver.h
* src/DHTMessageFactoryImpl.cc
* src/DHTResponseMessage.h
* src/DHTFindNodeReplyMessage.h
* src/DHTPingReplyMessageCallback.h
* src/Makefile.in
* src/DHTBucketRefreshTask.cc
* src/DHTNodeLookupTaskCallback.cc
* src/DHTPingTask.h
* src/DHTPingReplyMessage.h
* src/DHTAbstractNodeLookupTask.cc: Removed
* test/DHTMessageTrackerTest.cc
* test/DHTPingMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/MockDHTMessage.h
* test/MockDHTMessageFactory.h
* test/DHTFindNodeMessageTest.cc
* test/MockDHTMessageCallback.h
* test/DHTAnnouncePeerMessageTest.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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Changed signature of DHTMessageFactory::createResponseMessage().
Removed unused validateIDMatch.
* src/DHTMessageFactory.h
* src/DHTMessageFactoryImpl.cc
* src/DHTMessageFactoryImpl.h
* src/DHTMessageTracker.cc
* test/DHTMessageFactoryImplTest.cc
* test/MockDHTMessageFactory.h
Dropped DHT message coming from same ID of localhost.
* src/DHTMessageReceiver.cc
Rejected adding node whose ID is the same as localhost's.
* src/DHTRoutingTable.cc
* test/BtPortMessageTest.cc
* test/DHTRoutingTableTest.cc
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added test 'testDoReceivedAction' for DHTQueryMessage
subclasses.
* test/DHTPingMessageTest.cc
* test/DHTGetPeersMessageTest.cc
* test/DHTFindNodeMessageTest.cc
* test/DHTAnnouncePeerMessageTest.cc
* test/MockDHTMessage.h
* test/MockDHTMessageFactory.h
* test/MockDHTMessageDispatcher.h: New class.
|
| |
|
|
|
|
|
|
|
| |
Removed "using namespace std;" from all sources. Appended std::
prefix to c++
standard classes.
Included string.h where mem* function are used.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Catch exception inside DHTMessageReceiver::receiveMessage().
Log unknown message.
* src/DHTMessageReceiver.{h, cc}
* src/DHTMessageFactory.h
* src/DHTMessageFactoryImpl.{h, cc}
* src/DHTMessageTracker.cc (handleTimeout): Catch and handle exception.
* src/DHTInteractionCommand.cc
* src/DHTUnknownMessage.{h, cc}
* test/DHTUnknownMessageTest.cc
* test/MockDHTMessageFactory.h
|
|
|
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}
|