Akilan Selvacoumar
ae5f1d2fd7
New features ( #110 )
...
* added upload status
* added changes for progress bar with more logs and bug fixes, Documentation yet to be added
* huge changes that need more doucmenting
* added possibility to get profile using NodeID
* added fix profile listing user profile information
* removed profile image from the explore reult struct
* saving current changes
* added filter to search based on NodeID
* Monday bug fixing
* updates to the profile
* changes for tracing the blockchain profile image not shown
* added condition to ensure TAG is not sent and removed debug prints
* updated webapi docs
2023-06-28 00:38:17 +01:00
Akilan Selvacoumar
9775525d35
gofmt peernet ( #103 )
2023-02-12 09:59:31 +00:00
Akilan Selvacoumar
3537d04c4d
Exposed certain variables in the struct public for the Test framework. ( #101 )
...
* Exposed peer seed as a public struct
* Made certain variables public in the struct WebAPIInstance
2023-02-11 21:57:41 +00:00
Kleissner
f305e5b158
Lite Packet algorithm for data transfer. It bypasses the CPU expensive Peernet Protocol packet encoding (which uses public key signing).
2022-01-17 03:48:40 +01:00
Kleissner
f2c344dc96
Major refactoring of the code base into Backend structure. Increase version number to Alpha 6 to prepare for the upcoming release.
2021-12-29 05:29:34 +01:00
Kleissner
f7e8f1821b
New flag Firewall in the Features field to inform uncontacted peers that a Traverse message might be required to establish a connection. Close #61
...
This flag can be activated via the config setting LocalFirewall.
The Features field exists in Announcement/Response messages and was now added to peer records.
2021-11-20 04:28:03 +01:00
Kleissner
9626fa8088
Fork btcec to remove external dependency. This significantly reduces the count of indirect modules (cuts it by half). Close #7
...
Update the other Go modules.
2021-11-14 22:37:07 +01:00
Kleissner
5d9d1bf838
File transfer: New API /file/read
2021-10-27 14:16:13 +02:00
Kleissner
c9d9be2972
Refactor message encoding into protocol package. User Agent must be now provided in the Init function.
2021-10-18 04:37:02 +02:00
Kleissner
5d93a74981
Collecting network vars and functions in networks structure
2021-10-18 02:12:36 +02:00
Kleissner
1b9151d6fd
Refactor sequence code into SequenceManager
2021-10-17 21:34:30 +02:00
Kleissner
767181620e
Prepare refactoring of sequence code
2021-10-17 20:02:35 +02:00
Kleissner
0c7b1e0e03
Start refactoring protocol code into sub package. Move Packet Encoding and list of Commands. Change SetSelfReportedPorts parameters.
...
More related commits to follow!
2021-10-17 16:28:19 +02:00
Kleissner
2937154c8d
Add filters for low-level packet and high-level message interception for debugging purposes. Close #4
2021-07-31 17:29:14 +02:00
Kleissner
e5d09e7086
New filter DHTSearchStatus for debug purposes.
...
Various minor improvements and fixes.
New high-level FindNode and AsyncSearch functions.
2021-07-28 01:33:33 +02:00
Kleissner
084f3bc1ee
Prepare log functions for filters. Init all filter functions by assigning empty stubs. #26
2021-06-28 02:37:31 +02:00
Kleissner
f5ce15d33a
Initial filters for new peers and new connections. More filters to be added. #4
2021-06-09 22:45:43 +02:00
Kleissner
94c8e16724
Record BlockchainHeight and BlockchainVersion for each peer. New function IsPortForward.
2021-06-09 22:35:55 +02:00
Kleissner
1a44b9c5e7
Include both IPv4/IPv6 addresses in peer records in Response message. This makes peer list sharing more efficient and speeds up discovery. Close #24
2021-05-21 02:33:32 +02:00
Kleissner
82033e124a
Finalize Traverse message implementation. Close #23
...
Remove createVirtualAnnouncement function, no longer needed.
2021-05-19 14:56:39 +02:00
Kleissner
d148fddd1e
Simplify and streamline send code. Close #21
2021-05-19 03:40:26 +02:00
Kleissner
9eb1127b40
Alpha 2 release. Includes Traverse message according to latest Whitepaper 0.8.
...
Send and traverse code needs some cleanup.
2021-05-11 10:33:06 +02:00
Kleissner
f084edc316
New function record.IsBadQuality to make sure bad peers returned in the Response message are not considered.
...
Improved remote peer NAT detection. Placeholder for sending the Traverse message.
Fix in handling incoming FIND_PEER request. Do not return self as closest node.
Do not share peers for which the internal port is not known.
2021-05-09 00:49:34 +02:00
Kleissner
f1da49d68e
Add PortForward setting to override external listening port. Improve default config inline documentation.
...
Prepare EnableUPnP setting.
2021-05-04 12:43:31 +02:00
Kleissner
0fe2ce60ec
Add reported internal and external port to Connection. New function peer.IsBehindNAT.
...
PeerlistAdd is now called on every incoming message. User Agent fixes.
2021-05-04 01:13:11 +02:00
Kleissner
f3c9d5e17f
Add new fields Port Internal and Port External to the Announcement/Response message according to the latest Whitepaper 0.7.3.
...
These fields will be used for NAT detection and UPnP support.
2021-05-03 14:05:07 +02:00
Kleissner
ec809029d8
Sequences add pointer to high-level data. Proper mapping of sequences to information requests.
2021-04-21 03:27:03 +02:00
Kleissner
8269219cf0
Fix sendAllNetworks: New sequence number per packet
2021-04-20 07:18:46 +02:00
Kleissner
8bb1a3bdf7
GetRTT function
2021-04-19 15:32:14 +02:00
Kleissner
b2db81143e
Proper message sequence implementation for Response and Pong messages. Record round-trip time at connection level! Reply timeout. Close #13 #5
...
Fixes.
2021-04-19 05:18:07 +02:00
Kleissner
703e40c947
Add Sequence field #13 to packet header according to latest Whitepaper 0.7.1
...
The field is yet to be used.
2021-04-18 05:22:19 +02:00
Kleissner
b2cbe2d066
Support for feature bits: IPv4_LISTEN and IPv6_LISTEN
...
Share IPv4/IPv6 peer connections only if supported by the remote peer.
2021-04-05 14:58:47 +02:00
Kleissner
3080119fc1
Initial working Kademlia network - peer list exchange is working!
...
Using the announcement and response messages to exchange peer lists. Fixes in encoding.
Add arbitrary Info structure to DHT Lite/Node.
2021-03-15 22:25:05 +01:00
Kleissner
323f379ee7
Message encoding of announcement and response messages.
...
More changes coming.
Rename of organization to Peernet s.r.o.
InformationRequest proper termination signal.
2021-03-14 04:30:57 +01:00
Kleissner
213c724016
Detect network changes, initial code. Actions to be developed. #2
2021-03-02 00:28:03 +01:00
Kleissner
fec5644b9f
Connections: Introduce Redundant type to lower ping overhead.
2021-03-01 03:41:26 +01:00
Kleissner
ce831b31b6
Connection status field
2021-03-01 01:37:39 +01:00
Kleissner
dcc7464f46
New function IsNetworkErrorFatal to invalidate connections on fatal network errors. Use connection.Expires field to trigger removal of inactive connections after a while.
2021-03-01 01:05:37 +01:00
Kleissner
b53ab7c7b3
Reworked connection code. Pings are now regularly sent out to every connection to check if it remains valid.
...
Invalid connections are moved to a second list, and eventually dropped if they don't become active.
2021-02-28 20:59:39 +01:00