An alternative full node implementation of LBRY's blockchain written in Go (golang)
Find a file
Owain G. Ainsworth 98109dbadd Fix shutdown hangs.
We would occasionally hang or a while during server shudown, this is due
to an outbound peer waiting on a connection or a sleep. However, we
don't actually require to wait for the peers to finish at all. So just
let them finish.

Secondly, make peer.disconnnect and server.shutdown atomic varaibles so
that checking them from multiple goroutines isn't race, and clean up
their usage.
2013-10-02 14:36:04 +01:00
.gitignore Convert .gitignore line endings to unix. 2013-08-07 15:00:20 -05:00
addrmanager.go Bucketizing for addrmanager 2013-10-02 14:35:59 +01:00
addrmanager_test.go Move btcd to root directory. 2013-08-07 12:47:51 -05:00
blockmanager.go Disconnect misbehaving peers who send unsolicited blocks. 2013-10-02 14:36:04 +01:00
btcd.go Address some minor things reported by golint. 2013-09-18 00:36:40 -05:00
config.go Address some minor things reported by golint. 2013-09-18 00:36:40 -05:00
discovery.go Flesh out addrmanger with some basic functionality. 2013-09-15 20:25:55 -05:00
LICENSE Initial import. 2013-08-06 19:17:05 -05:00
logclosure.go Move log closure code into its own file. 2013-08-10 20:07:37 -05:00
mruinvmap.go Add block inventory relay. 2013-09-11 20:14:13 -05:00
params.go Rework the data path and db type handling. 2013-09-15 14:25:32 -05:00
peer.go Fix shutdown hangs. 2013-10-02 14:36:04 +01:00
README.md Remove block relay from TODO list. 2013-09-12 09:15:38 -05:00
rpcserver.go Add basic http auth to rpc server. 2013-10-01 17:10:21 -04:00
sample-btcd.conf Update sample config for recent go-flags fix. 2013-09-19 09:17:15 -05:00
server.go Fix shutdown hangs. 2013-10-02 14:36:04 +01:00
signal.go Move btcd to root directory. 2013-08-07 12:47:51 -05:00
upgrade.go Rework the data path and db type handling. 2013-09-15 14:25:32 -05:00
version.go Rework the data path and db type handling. 2013-09-15 14:25:32 -05:00

btcd

btcd is an alternative full node bitcoin implementation written in Go (golang).

This project is currently under active development and is not production ready yet.

TODO

The following is a list of major items remaining before production release:

  • Implement multi-peer support
  • Implement transaction mempool & relay
  • Complete address manager
  • Documentation
  • A lot of code cleanup
  • Optimize