Commit Graph

21 Commits

Author SHA1 Message Date
Kleissner
b76601e11c Support custom client config in Init. Now saved on backend.SaveConfig. 2022-02-05 21:05:23 +01:00
Kleissner
20a1d45520 webapi: Implement GeoIP. 2021-12-14 03:09:28 +01:00
Kleissner
15e46133c7 Global Blockchain Cache implementation. Automatically download other blockchains based on the limits in the config.
Started with a unified backend struct. Long term all lose vars should be put there, which in term will support multiple concurrent Peernet instances (users) within the same process.
2021-12-11 14:55:02 +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
956e6dd76b Sync reuseport sub-package to latest version 2021-10-11 01:38:13 +02:00
Kleissner
19e29b3a91 Add webapi. Provides an HTTP API for clients to use Peernet. 2021-09-10 13:40:07 +02:00
Kleissner
a2384ca627 Blockchain: Change of block format.
File records:
* Add unique ID to file record.
* Introducing tags which are flexible. Close #31
* Name and Directory fields are now tags.
* Embedded basic compression by storing duplicate file tags as single record.
Added date field to record structure.
2021-08-27 03:12:30 +02:00
Kleissner
7c7048c4c7 Use Pogreb as key/value store instead for now. 2021-08-11 22:49:00 +02:00
Kleissner
afef726aaf Add tentatively cockroachdb/pebble as initial database! This can be changed/replaced easily. Unfortunately it adds 7 MB to the binary and tons of dependencies :( 2021-08-11 22:18:30 +02:00
Kleissner
560f019786 Remove unnecessary module for dht subdirectory. This streamlines dependencies on the core module. 2021-07-07 02:38:08 +02:00
Kleissner
5f8f299799 Working UPnP code. Close #16 2021-05-06 14:57:40 +02:00
Kleissner
f13695709f Kademlia: Initial bucket refresh implementation. This might be improved down the road. 2021-04-25 04:22:10 +02:00
Kleissner
63e736486a Implement auto refresh of buckets. Close #11 2021-04-24 23:06:08 +02:00
Kleissner
146bb6991e Proper ShouldEvict implementation 2021-04-22 06:11:39 +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
ce2d3309af Update seed list. New function LoadConfigOut to parse main config into custom structure.
Remove reuseport module file (not needed).
2021-04-15 12:59:06 +02:00
Kleissner
6a9d167177 Module update 2021-04-10 16:06:55 +02:00
Kleissner
ff9804bf6d Start with the store code. Properly handle announcement requests.
Add core data functions: Data2Hash, GetData, GetDataLocal, GetDataDHT, StoreDataLocal, StoreDataDHT
2021-04-10 16:00:43 +02:00
Kleissner
e69589c5c8 Kademlia: Use information requests from updated DHT library. More testing & fixes upcoming. 2021-04-09 16:36:35 +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
8d2a94d078 Add go module for core package 2021-03-16 22:31:22 +01:00