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-07-27 12:05:41 -05:00
blocks More implementation of bitswap 2017-07-27 12:05:41 -05:00
cid Unit testing and memory fixes 2017-07-26 09:48:04 -05:00
cmd Handling finding of peer via swarm 2017-04-13 09:31:58 -05:00
commands c99 for centos 2017-03-21 15:20:52 +00:00
core More implementation of bitswap 2017-07-27 12:05:41 -05:00
datastore Moving closer to binary compatability with go version of ipfs 2016-12-21 06:40:19 -05:00
dnslink Fixed some compiler warnings 2017-02-13 05:34:56 -05:00
exchange More implementation of bitswap 2017-07-27 12:05:41 -05:00
flatfs Moved datastore interface from ipfs to libp2p 2017-04-06 09:33:28 -05:00
importer Better handling of locally stored files 2017-05-11 07:04:54 -05:00
include/ipfs More implementation of bitswap 2017-07-27 12:05:41 -05:00
main Implementing protobuf objects for bitswap messages 2017-07-20 15:03:49 -05:00
merkledag Bugfixes and unit test fixes 2017-04-27 15:52:20 -05:00
multibase Turned on warnings for compilation 2016-12-05 06:54:21 -05:00
namesys Unit testing and memory fixes 2017-07-26 09:48:04 -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 Unit testing and memory fixes 2017-07-26 09:48:04 -05:00
routing More implementation of bitswap 2017-07-27 12:05:41 -05:00
test More implementation of bitswap 2017-07-27 12:05:41 -05:00
thirdparty Removal of incorrect copyright notice 2016-12-05 07:12:23 -05:00
unixfs Minor fixes to libp2p 2017-03-06 19:04:14 -05:00
util Added thread pool to aid in clean daemon shutdown 2017-04-17 14:02:33 -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 Implementing protobuf objects for bitswap messages 2017-07-20 15:03:49 -05:00
README.md Fixed broken links 2017-07-21 22:39:50 -07: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/kenCode-de/c-protobuf
c-multihash https://github.com/kenCode-de/c-multihash
c-multiaddr https://github.com/kenCode-de/c-multiaddr
c-libp2p https://github.com/kenCode-de/c-libp2p

And of course this project at https://github.com/kenCode-de/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".