Commit graph

186 commits

Author SHA1 Message Date
John Jones
d5c3e01267 Intitial test for ipns resolve 2017-09-14 12:13:07 -05:00
jmjatlanta
3eec8553a6 Began implementing updates to journal timestamp 2017-09-13 12:40:48 -05:00
jmjatlanta
478fa403fd Merge branch 'master' of https://github.com/Agorise/c-ipfs 2017-09-13 05:03:13 -05:00
jmjatlanta
d0eb0acc9d Added test for api 2017-09-13 05:02:59 -05:00
John Jones
a9481631df Several memory leak fixes for journal code 2017-09-07 18:45:09 -05:00
John Jones
78904ff1b6 refactored datastore/journalstore for readability 2017-09-07 14:58:02 -05:00
John Jones
cb1ea3ceff Sorting a memory leak in datastore/journalstore 2017-09-07 11:05:56 -05:00
jmjatlanta
bf7ba9049c Implementation of timestamp in both datastore and journalstore 2017-09-04 17:10:57 -05:00
jmjatlanta
bf87d93136 Updating cid codes 2017-09-04 13:33:56 -05:00
John Jones
7dbb6fca29 multistream protocol now has a protocol interface 2017-09-04 11:02:48 -05:00
John Jones
407f85bc89 More testing and compat fixes for ipfs 2017-08-31 16:41:10 -05:00
jmjatlanta
1eab27fa0e journalio working, needs tuning 2017-08-31 06:41:54 -05:00
jmjatlanta
49bd61feb1 Testing journalio protocol 2017-08-30 11:10:14 -05:00
jmjatlanta
b3af783f4e Building tests for journaling and backup 2017-08-28 13:04:27 -05:00
jmjatlanta
0bc975dfcf journaling protocol 2017-08-24 10:08:27 -05:00
jmjatlanta
d13e4b4318 Added journaling when a file is saved - beginning of backup scheme 2017-08-21 14:49:21 -05:00
John Jones
5e8683e64d Cleaning up old code 2017-08-09 12:34:02 -05:00
John Jones
0e24b0a1d3 Fix small memory leak. 2017-08-09 12:26:26 -05:00
John Jones
c58134db1c Fixing memory leaks 2017-08-08 20:40:35 -05:00
John Jones
3cc75058f0 Fix of memory leaks 2017-08-03 17:46:20 -05:00
jmjatlanta
b578e5c13a Fixed tests 2017-08-03 14:35:06 -05:00
John Jones
e58909b875 Handle entry in WantlistQueue only once if we found provider 2017-08-02 11:43:48 -05:00
John Jones
9131559a04 correctly handling send of wantlist 2017-08-02 09:04:37 -05:00
jmjatlanta
986d054c6c code cleanup 2017-08-02 08:53:34 -05:00
jmjatlanta
fa7a6826b1 Change in secio method signature 2017-07-31 16:36:52 -05:00
John Jones
ac5a622400 Passing SessionContext instead of Stream 2017-07-31 13:54:09 -05:00
John Jones
3a68619016 Fixed mem leak and more testing 2017-07-31 13:32:09 -05:00
jmjatlanta
e4f1c9b39c Making providerstore smarter 2017-07-31 12:50:12 -05:00
John Jones
e22da601ea bug fixes to client side bitswap 2017-07-31 10:01:06 -05:00
John Jones
059a3286c9 More bitswap implementation 2017-07-31 06:43:15 -05:00
John Jones
b3bb857f3a Still testing bitswap 2017-07-27 14:33:19 -05:00
John Jones
73d7d5daed More implementation of bitswap 2017-07-27 12:05:41 -05:00
John Jones
e1135fef3b Beginnings of the multithreaded engine
This engine has 2 threads. One to process the request queue, the other
to gather up and build peer messages and send them.
2017-07-27 08:38:57 -05:00
John Jones
10aa932e08 Unit testing and memory fixes 2017-07-26 09:48:04 -05:00
John Jones
692d3406c8 Implementation of a universal bitswap queue
This queue stores both local and remote requests for blocks
2017-07-26 07:38:47 -05:00
John Jones
108792ca44 More changes for bitswap 2017-07-24 17:58:39 -05:00
John Jones
9924d5dcf7 Connecting bitswap and blockstore 2017-07-24 14:56:30 -05:00
John Jones
4368e052e2 First cut of peer request queue complete 2017-07-24 10:26:07 -05:00
jmjatlanta
a63910e0d7 Adding bitswap request queue 2017-07-24 09:09:22 -05:00
John Jones
2bb70b01be Some tweaks to avoid potential problems found during unit testing 2017-07-20 16:10:31 -05:00
jmjatlanta
f47a6116f0 Adding basic unit tests for Bitswap protobuf 2017-07-20 15:16:59 -05:00
jmjatlanta
2232d03854 Implementing protobuf objects for bitswap messages 2017-07-20 15:03:49 -05:00
jmjatlanta
1fe5be1c5c Reading replication parameters from config file 2017-07-20 09:12:31 -05:00
jmjatlanta
cb05b249ba Fixed warnings 2017-07-17 16:14:40 -05:00
John Jones
069379acf4 Fix of a few compiler warnings 2017-07-17 13:05:56 -05:00
297283168c Make sure don't crash if ipfs_routing_new_kademlia fails. 2017-07-07 00:11:52 -03:00
8da685b5cf Implemented timeout to avoid hang due to connection error. 2017-07-06 23:02:11 -03:00
John Jones
6c936de20e Closing socket descriptor 2017-05-11 14:30:52 -05:00
John Jones
a5e5a71ddd Fixes for various memory leaks 2017-05-11 13:53:52 -05:00
John Jones
d6ee0f7d5d Fixed small memory leak 2017-05-11 07:13:13 -05:00
John Jones
def5331d4c Better handling of locally stored files 2017-05-11 07:04:54 -05:00
John Jones
3de4b757e4 Bugfixes and unit test fixes 2017-04-27 15:52:20 -05:00
John Jones
e756fdf510 Memory and test fixes 2017-04-27 11:35:26 -05:00
John Jones
a991dab1bc Small change to logger cleanup 2017-04-27 00:10:25 -05:00
John Jones
43bf2caeff Tested and made adjustments for large file transfers 2017-04-24 16:33:59 -05:00
John Jones
03696dd6e7 Major changes to support large file transfer 2017-04-20 17:56:03 -05:00
John Jones
a2a08156a7 Added thread pool to aid in clean daemon shutdown 2017-04-17 14:02:33 -05:00
John Jones
427b5c948f Added routines to cleanly shutdown daemon
This still needs more work, but the mechanism now exists
2017-04-17 11:58:47 -05:00
John Jones
2b0a29a06b Implemented find providers from remote peers
Now, you can ask a known node for a key, and it can pass a list of peers
that are perhaps unknownn to the calling peer.
2017-04-16 23:47:53 -05:00
John Jones
62096ffc1c Handling finding of peer via swarm
Also included is a way to pass port and swarm info to methods that build
the config file. This makes testing easier. Multiple peers can be
started on the same machine easily.
2017-04-13 09:31:58 -05:00
John Jones
94d6005587 Moved datastore interface from ipfs to libp2p 2017-04-06 09:33:28 -05:00
John Jones
87cf779704 handling add provider 2017-04-03 17:26:33 -05:00
John Jones
e90d966e44 Adding network and swarm functionality 2017-04-03 11:55:36 -05:00
John Jones
59af1c0b9e Using config file for bootstrap of kademlia 2017-03-24 16:51:00 -05:00
John Jones
8feb946087 debugging daemon 2017-03-24 14:29:00 -05:00
John Jones
d25e088b7c Built some system tests
Testing the retrieve remote file area using kademlia
2017-03-23 08:28:35 -05:00
John Jones
640e4be5be fix for strtok_r 2017-03-21 13:40:46 -05:00
John Jones
25a2fa0c65 Testing string tokenizer 2017-03-21 12:58:39 -05:00
John Jones
83242b0046 minor fixes 2017-03-21 12:11:41 -05:00
John Jones
8edc94509c c99 for centos 2017-03-21 15:20:52 +00:00
John Jones
cfcabaecd0 Finishing NodeIO 2017-03-19 14:40:16 -05:00
John Jones
0b238eb5ac Implementing NodeIO 2017-03-19 08:05:25 -05:00
John Jones
e8b8d06f24 refactoring + beginning of file transfer
Now attempting to use kademlia to find a hash, and NodeIO to transfer
the file
2017-03-19 07:47:19 -05:00
John Jones
93c4988f90 Added utility functions to multiaddress
Parsing of typical IP addresses is now easier
2017-03-09 18:47:27 -05:00
John Jones
43ca313854 Working with secio streams 2017-03-09 12:50:08 -05:00
John Jones
15a8abff9a Made the stream methods more generic 2017-03-09 10:01:09 -05:00
John Jones
cd5d347e63 Minor fixes to libp2p 2017-03-06 19:04:14 -05:00
John Jones
f1aac5d707 Starting to handle get_value request 2017-02-27 12:27:40 -05:00
John Jones
ae48e058dd Added ping functionality to multistream 2017-02-23 11:16:23 -05:00
John Jones
8a2aabc013 Fixed some errors and warnings 2017-02-13 08:53:32 -05:00
John Jones
a3ec7bf41d Small change to provide a little more information for testing 2017-02-02 14:10:55 -05:00
John Jones
9882c28743 Fixed memory leaks
Several tests had memory leaks. As well found a few leaks within the
importer and resolver areas.
2017-01-02 00:38:09 -05:00
jmjatlanta
61d0adc445 misc tweaks and fixes
Now paying attention to the IPFS_PATH environment variable to determine
where the repository is. Fixed some broken tests. Fixed a bug whereby a
subdirectory within a subdirectory was not displaying correctly when
imported.
2017-01-01 23:48:09 -05:00
jmjatlanta
c2fe60949e Added the ability to retrieve the file using directories
Files can be refered to directly using their hash, or the hash of their
directory and the file name.
2016-12-29 19:05:44 -05:00
jmjatlanta
396dfc6abc Directory hashes match 2016-12-29 04:42:01 -05:00
John Jones
8d2aeab016 Fixed various memory leaks 2016-12-23 10:49:30 -05:00
jmjatlanta
914d3caaed Intermidiate commit with big changes to storage formats
I am attempting to match the storage format of the reference
implementation, so as to generate the same hashes.
2016-12-23 09:37:43 -05:00
jmjatlanta
7fa0fc6a7b Added a simplistic command line.
From the command line, you can init the repository or add a file.
Directories coming soon...
2016-12-21 08:08:44 -05:00
jmjatlanta
c8fdb084e4 Moving closer to binary compatability with go version of ipfs
The files are now stored in the same format. Now it is necessary to
reverse engineer the directory structure
2016-12-21 06:40:19 -05:00
jmjatlanta
a654022d32 More work on unixfs protobuf 2016-12-19 17:21:21 -05:00
jmjatlanta
57ed4fd5e4 Beginnings of persistence for unixfs 2016-12-19 14:19:43 -05:00
jmjatlanta
a1166e840a Move of node to merkledag 2016-12-19 09:03:28 -05:00
jmjatlanta
1d63cdb4a1 Persisting large files in chunks 2016-12-15 12:38:08 -05:00
jmjatlanta
34301c286e Storing large files
Files larger than about 200K are split into smaller files and stored in
the ipfs file system in blocks.
2016-12-15 05:40:24 -05:00
John Jones
5168bc87e0 Fixed memory leak in test 2016-12-14 12:24:44 -05:00
jmjatlanta
033dd767b4 More work on persisting data to disk.
Blockstore now storing the data, whereas datastore is storing the key
and filename. The key should be the multihash (currently the sha256, not
the multihash), and the value is the filename (base32).
2016-12-14 12:07:43 -05:00
John Jones
88d177cf4a Fixed minor leak in test and more compiler warnings 2016-12-14 06:39:06 -05:00
jmjatlanta
bf0cbfb412 Removed compiler warnings, starting to import large files 2016-12-14 06:25:09 -05:00
John Jones
876e2dfcf2 Fixed memory leaks around node and allocations 2016-12-12 18:27:46 -05:00
jmjatlanta
a36ba20557 made node links a single linked list instead of array
This will save some complicated memory allocations
2016-12-12 16:58:27 -05:00