Kleissner
b5266b1c52
File Transfer: Add header to file transfer to indicate file size and transfer size. This is important to know when to stop reading. It will also help when reading only ranges (which is important for video streaming).
...
New function FileTransferReadHeaderUDT to read the header.
Warehouse: ReadFile return count bytes read
2021-10-25 03:34:28 +02:00
Kleissner
39bc255007
Minor cleanup
2021-10-24 06:31:36 +02:00
Kleissner
f6bbd02a01
Transfer: Change virtual connection from net.PacketConn to channels which is faster and less complex.
...
Improve termination behavior and documentation of it.
2021-10-24 06:27:23 +02:00
Kleissner
153ca78ed7
UDT: Removing MTU in favor of MaxPacketSize.
2021-10-24 04:59:14 +02:00
Kleissner
75e3d9a42e
Initial UDT implementation for file transfer.
...
New function RequestFileTransferUDT to download files from other peers.
2021-10-24 04:26:30 +02:00
Kleissner
6c2d526251
Protocol sequences: Add support for bidirectional responses.
2021-10-24 02:28:33 +02:00
Kleissner
7b732e1232
Create initial virtual net.PacketConn code for embedding other transfer protocols. This is likely going to be replaced with direct channel I/O.
...
Create swarm readme! Swarms are to be introduced soon!
2021-10-24 00:18:04 +02:00
Kleissner
789d177052
New function sendTransfer
2021-10-23 06:53:34 +02:00
Kleissner
f1e30c942f
webapi: /blockchain/file/add and /blockchain/file/update now always overwrite file size field. Update file now fails if ID is not provided.
2021-10-22 16:55:03 +02:00
Kleissner
0c4562e1d3
Protocol: Fixes in Transfer code. Add IsLast convenience functions.
2021-10-22 06:23:56 +02:00
Kleissner
89f9e3a563
New function PublicKeyFromPeerID
2021-10-22 06:17:28 +02:00
Kleissner
2659921cb8
warehouse: Minor refactoring. Use native hash encoding for FileExists.
2021-10-22 00:21:59 +02:00
Kleissner
c7b9facc10
webapi: /search/result always return stats if requested
2021-10-21 16:18:20 +02:00
Kleissner
d2899a4378
Initial Transfer message encoding. Embedded UDT implementation to follow.
...
Documentation of file transfer to follow in upcoming Whitepaper update.
2021-10-20 10:20:56 +02:00
Kleissner
fb9944aaed
Update readme
2021-10-20 09:00:33 +02:00
Kleissner
e45d6fe888
New function to delete account. Create deletion functions for blockchain and warehouse. Add function /account/delete to webapi. Close #42
2021-10-20 08:46:53 +02:00
Kleissner
285bed59e3
webapi: Document time zone behavior.
2021-10-19 17:36:18 +02:00
Kleissner
f954c4777b
Refactor message encoding code into separate files. No code changes.
2021-10-18 04:57:54 +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
f1e8e0cab8
Finally moving Sequence code into protocol package
2021-10-18 02:41:55 +02:00
Kleissner
5d93a74981
Collecting network vars and functions in networks structure
2021-10-18 02:12:36 +02:00
Kleissner
e2542b3a4d
Create struct ipList from ip listening list
2021-10-18 01:10:40 +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
be7b596551
Rename field sequence in MessageRaw due to name collision in PacketRaw
2021-10-17 19:42:19 +02:00
Kleissner
77579a8866
Simplify EncodeAnnouncement. Return generic packetsRaw.
...
Fixes also a theoretical bug in announcement encoding for multicast/broadcast.
2021-10-17 19:30:24 +02:00
Kleissner
b51579fb3f
Untangle function IsBadQuality
2021-10-17 18:29:21 +02:00
Kleissner
42ff6d926e
Change msgNewSequence function to use parameters
2021-10-17 17:53:48 +02:00
Kleissner
1b93eac17a
Moving FeatureSupport() and UserBlockchain.Header() calls out of Message Encoding.
...
This paves the way for refactoring the message code into the protocol package.
2021-10-17 17:40:22 +02:00
Kleissner
4d3caaf567
Move message sending code into separate file (no code changes)
2021-10-17 17:20:21 +02:00
Kleissner
7be31a9e34
Refactoring code. Use protocol.HashData and HashSize. Move PublicKey2NodeID into protocol.
2021-10-17 17:15:22 +02:00
Kleissner
39217ab5ef
Untangle connection parameters from msgEncodeTraverseSetAddress
2021-10-17 16:55:31 +02:00
Kleissner
93f10fd3b5
Untangle connection from MessageRaw, paving the way for refactoring the message code into the protocol package.
2021-10-17 16:39:41 +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
2476146949
Add info about other UPnP packages
2021-10-16 13:32:43 +02:00
Kleissner
0dc383e767
Moving blockchain code into separate files (no code changes).
2021-10-14 02:40:28 +02:00
Kleissner
e78ca02af7
Housekeeping! Renaming /blockchain functions for simplicity
2021-10-13 22:26:30 +02:00
Kleissner
1c0406dc60
Housekeeping! Removing unnecessary "blockchain" prefix of status codes within the blockchain package.
2021-10-13 21:22:17 +02:00
Kleissner
b556acb86c
webapi: New function /blockchain/file/update
...
blockchain: Add readme.md. Add function ReplaceFiles.
2021-10-13 20:09:09 +02:00
Kleissner
336de68801
Refactor blockchain code into separate files (no code changes).
2021-10-13 15:30:35 +02:00
Kleissner
c2f110169a
Automatically delete files from Warehouse in case there are no other references when deleting files from the blockchain via /blockchain/self/delete/file.
...
New function blockchain.FileExists.
blockchain.DeleteFiles now returns list of deleted files.
2021-10-13 06:00:40 +02:00
Kleissner
335f83d79b
/blockchain/self/add/file checks now if the file exists in the Warehouse and aborts with StatusCorruptBlockRecord if not.
2021-10-13 02:42:04 +02:00
Kleissner
cec070b740
Introducing Warehouse - the store for files shared by the user.
...
New endpoints:
/warehouse/create Create a file in the warehouse
/warehouse/create/path Create a file in the warehouse via copy
/warehouse/read Read a file in the warehouse
/warehouse/delete Delete a file in the warehouse
2021-10-13 01:40:58 +02:00
Kleissner
956e6dd76b
Sync reuseport sub-package to latest version
2021-10-11 01:38:13 +02:00
Kleissner
fbeb01e7ff
Major refactoring of blockchain code into new sub-package.
2021-10-11 01:21:38 +02:00
Kleissner
7495b823e4
webapi search: Implement /search/result/ws
2021-10-10 16:58:09 +02:00
Kleissner
7891bdbeac
webapi search: Provide option to embed statistics into /search/result response
2021-10-10 16:07:44 +02:00
Kleissner
4ef002ab57
webapi: Add /search/statistic
2021-10-10 15:32:29 +02:00
Kleissner
7c3fc8938f
webapi search: Add min/max file size as filter.
2021-10-10 03:03:35 +02:00
Kleissner
5707132687
webapi: Search: Add support for additional sorting parameters (Size ASC/DESC, Shared by count ASC/DESC).
2021-10-10 02:20:36 +02:00