summaryrefslogtreecommitdiff
path: root/node/IncomingPacket.cpp
AgeCommit message (Collapse)Author
2015-11-09Fix for possible high CPU usage on multicast queries.Adam Ierymenko
2015-11-08Cluster simplification and refactor work in progress...Adam Ierymenko
2015-11-06Further pare down Cluster messaging and rename some stuff.Adam Ierymenko
2015-11-05Deferred decode for HELLO to prevent HELLOcalypse under high load of new peers.Adam Ierymenko
2015-11-02Decided to make this 1.1.0 (semantic versioning increment is warranted), and ↵Adam Ierymenko
add a legacy hack for older clients working with clusters.
2015-10-28TRACE build fixes.Adam Ierymenko
2015-10-28Clean up PUSH_DIRECT_PATH limits a bit more and make them a bit smarter.Adam Ierymenko
2015-10-27Add a circuit breaker for VERB_PUSH_DIRECT_PATHS.Adam Ierymenko
2015-10-27More cleanup.Adam Ierymenko
2015-10-27Factor out RemotePath subclass of Path -- no longer needed, just cruft.Adam Ierymenko
2015-10-27Fix infinite loop in Cluster, clean up some stuff elsewhere, and back out ↵Adam Ierymenko
rate limiting in PUSH_DIRECT_PATHS for now (but we will do something else to mitigate amplification attacks)
2015-10-27Well that was broken.Adam Ierymenko
2015-10-27Fix inverted sense bug.Adam Ierymenko
2015-10-27Some cleanup, and use VERB_PUSH_DIRECT_PATHS to redirect newer peers.Adam Ierymenko
2015-10-20Move replication of COMs to avoid race condition.Adam Ierymenko
2015-10-20Finish wiring up Cluster, fix some issues with other recent changes.Adam Ierymenko
2015-10-20Wire up peer announcement in cluster.Adam Ierymenko
2015-10-20Cluster work -- integrating with the rest of the code.Adam Ierymenko
2015-10-19Fix bad COM attachment bug and eliminate an unnecessary redundant check.Adam Ierymenko
2015-10-19Do not allow VERB_RENDEZVOUS from non-upstream peers to block potential DOS ↵Adam Ierymenko
vector.
2015-10-16Add rate limit on receive of DIRECT_PATH_PUSH to prevent DOS exploitation.Adam Ierymenko
2015-10-15GitHub issue #235, and I also see no reason not to communicate with people ↵Adam Ierymenko
from other Worlds.
2015-10-14Fix for world size in OK(HELLO)Adam Ierymenko
2015-10-13Full integration of World and World updates.Adam Ierymenko
2015-10-13World stuff...Adam Ierymenko
2015-10-13More World stuff, and mkworld.Adam Ierymenko
2015-10-12Work in progress on refactoring root-topology into World and adding in-band ↵Adam Ierymenko
updates.
2015-10-09Create files for each hop (more convenient) and fix a packet parse bug.Adam Ierymenko
2015-10-09Be a bit more verbose in circuit test reports to more clearly track current ↵Adam Ierymenko
and upstream hop in graph traversal history.
2015-10-09Unroll Salsa20 fully for a little more speed (non-SSE now almost as fast as SSE)Adam Ierymenko
2015-10-08Abiltiy to post a test via the controller web API, and parsing of ↵Adam Ierymenko
CIRCUIT_TEST_REPORT messages.
2015-10-07Make sure received() gets called for some new messages, and docs.Adam Ierymenko
2015-10-07Finally add an ECHO.Adam Ierymenko
2015-10-07Limit proof of work difficulty to something sane.Adam Ierymenko
2015-10-07Add proof of work request for future DDOS mitigation use.Adam Ierymenko
2015-10-07Kill debug line.Adam Ierymenko
2015-10-07More cleanup and simple refactoring, consolidate InetAddres ↵Adam Ierymenko
serialize/deserialize into the class.
2015-10-07Trim some cruft that is not used and probably never would be.Adam Ierymenko
2015-10-06Send initial CIRCUIT_TEST packet.Adam Ierymenko
2015-10-06Plumbing through circuit test stuff.Adam Ierymenko
2015-10-06Handling of CIRCUIT_TEST, should be ready to test.Adam Ierymenko
2015-10-01Refactor: move network COMs out of Network and into Peer in prep for ↵Adam Ierymenko
tightening up multicast lookup and other things.
2015-09-30More work on circuit testing...Adam Ierymenko
2015-09-24(1) Make ZT_ naming convention consistent (get rid of ZT1_), (2) Make local ↵Adam Ierymenko
interface a full sockaddr_storage instead of an int identifier, which turns out to be better for multi-homing and other uses.
2015-09-23Plumb through localInterfaceId to track local interfaces corresponding with ↵Adam Ierymenko
remote addresses.
2015-09-08Add a bit of useful testing instrumentation to SqliteNetworkController.Adam Ierymenko
2015-07-28Try another NAT traversal improvement.Adam Ierymenko
2015-07-23Add a rate limiting circuit breaker to the network controller to prevent ↵Adam Ierymenko
flooding attacks and race conditions.
2015-07-23Eliminate some poorly thought out optimizations from the netconf/controller ↵Adam Ierymenko
interaction, and go ahead and bump version to 1.0.4. For a while in 1.0.3 -dev I was trying to optimize out repeated network controller requests by using a ratcheting mechanism. If the client received a network config that was indeed different from the one it had, it would respond by instantlly requesting it again. Not sure what I was thinking. It's fundamentally unsafe to respond to a message with another message of the same type -- it risks a race condition. In this case that's exactly what could happen. It just isn't worth the added complexity to avoid a tiny, tiny amount of network overhead, so I've taken this whole path out. A few extra bytes every two minutes isn't worth fretting about, but as I recall the reason for this optimization was to save CPU on the controller. This can be achieved by just caching responses in memory *there* and serving those same responses back out if they haven't changed. I think I developed that 'ratcheting' stuff before I went full time on this. It's hard to develop stuff like this without hours of sustained focus.
2015-07-13Clean up some YAGNI issues with implementation of GitHub issue #180, and ↵Adam Ierymenko
make best path choice aware of path rank.