Forked from xethyrion/c-ipfs IPFS implementation in C. Why C? Think about archive backups, eliminate http and DNS attack vectors, OpenWrt routers (decentralize the internet/meshnet!), Android TV and seeder streams, decentralized Media, decentralized websites, decentralized Apps, Browsers and mobile chat, decentralized CDN's and App Stores, RasPi's, old pc's and more...
Find a file
2017-10-05 11:20:12 -05:00
blocks Adjustments for testing 2017-09-25 15:11:44 -05:00
cid beginning to resolve ipns addresses 2017-09-21 11:21:01 -05:00
cmd Preparing for name resolve and name publish 2017-09-21 09:47:16 -05:00
commands ipfs name command line options processing 2017-09-21 07:51:18 -05:00
core Misc changes to support binary upload 2017-10-04 09:36:38 -05:00
datastore Began implementing updates to journal timestamp 2017-09-13 12:40:48 -05:00
dnslink Fixed some compiler warnings 2017-02-13 05:34:56 -05:00
exchange Adjustments for testing 2017-09-25 15:11:44 -05:00
flatfs Moved datastore interface from ipfs to libp2p 2017-04-06 09:33:28 -05:00
importer Misc changes to support binary upload 2017-10-04 09:36:38 -05:00
include/ipfs Misc changes to support binary upload 2017-10-04 09:36:38 -05:00
journal The API changed pthread to scope, so it can load multiple instances. 2017-09-20 14:39:26 -03:00
main Fix for object get when api not running 2017-09-27 07:02:00 -05:00
merkledag memory fixes 2017-09-28 16:32:36 -05:00
multibase Turned on warnings for compilation 2016-12-05 06:54:21 -05:00
namesys Misc changes to support binary upload 2017-10-04 09:36:38 -05:00
path Fixed path/path compilation. 2017-02-09 18:32:12 -03:00
pin Major changes to support large file transfer 2017-04-20 17:56:03 -05:00
repo Fix of memory leak 2017-09-28 13:48:57 -05:00
routing Misc changes to support binary upload 2017-10-04 09:36:38 -05:00
test Adjusting test scripts to make it easier to spot failures. 2017-10-05 11:20:12 -05:00
thirdparty Removal of incorrect copyright notice 2016-12-05 07:12:23 -05:00
unixfs various fixes for object_get 2017-09-25 17:56:10 -05:00
util code cleanup 2017-08-02 08:53:34 -05:00
.cproject Added ping functionality to multistream 2017-02-23 11:16:23 -05:00
.gitignore Fixed various memory leaks 2016-12-23 10:49:30 -05:00
.project added Eclipse project files 2016-11-17 16:30:39 -05:00
LICENSE Update LICENSE 2017-01-31 17:10:12 +01:00
Makefile journaling protocol 2017-08-24 10:08:27 -05:00
README.md Update README.md 2017-09-22 12:38:45 +03:00

C-IPFS

IPFS implementation in C, (not just an API client library).

getting started: https://github.com/ipfs/specs/blob/master/overviews/implement-ipfs.md
specifications: https://github.com/ipfs/specs
getting started: https://github.com/ipfs/community/issues/177
libp2p: https://github.com/libp2p/specs

Prerequisites: To compile the C version you will need:
lmdb https://github.com/jmjatlanta/lmdb
c-protobuf https://github.com/Agorise/c-protobuf
c-multihash https://github.com/Agorise/c-multihash
c-multiaddr https://github.com/Agorise/c-multiaddr
c-libp2p https://github.com/Agorise/c-libp2p

And of course this project at https://github.com/Agorise/c-ipfs

The compilation at this point is simple, but not very flexible. Place all of these projects in a directory. Compile all (the order above is recommended) by going into each one and running "make all".