ef11e8273b
Reconnecting an existing socket simply was not working; the Rust socket did not expose any methods for reconnection, so I simply tried calling connect() again. As near as I can tell, this was a no-op --- which makes sense because both the sending and receiving threads had their own copy of the Socket, and it's not clear what the synchronization behaviour should have been. Instead if the connection fails, we relay this information to the main thread, wait for an acknowledgement, then simply destroy the listening thread. The caller can then simply call `start()` again. |
||
---|---|---|
src | ||
.gitignore | ||
.travis.yml | ||
Cargo.toml | ||
LICENSE | ||
README.md |
README.md
Rust Bitcoin Library
This library is badly incomplete --- though at this point it is perhaps stable enough that pull requests could be accepted.
Currently development is following the needs of the Wizard's Wallet, which is a "lite" wallet which does SPV validation but maintains a full UTXO index. Its purpose is to be a usable-though-risky wallet which supports experimental user-facing features.
Pull requests to generalize the library or introduce new use cases would be great.
Building
To build, start by obtaining cargo. Then just run cargo build
.
To run the test cases, do cargo test
. Note that the tests must pass (and reasonably
complete unit tests provided for new features) before any submissions can be accepted.