diff --git a/TODO.md b/TODO.md index b595ffb73..6518abfc4 100644 --- a/TODO.md +++ b/TODO.md @@ -1,23 +1,14 @@ # Looking for things to hack on? # -I've marked things as simple if you want something easy to work on! - ## Cleanups ## -* Wean off openssl's -lcrypto - * (simple) use libsodium for all RNG - * (simple) use libbase58 - * Remove our specific libsecp256k1 in secp256k1/ and use the installed one. - * Implement `sig_valid`, using `secp256k1_ecdsa_signature_normalize` - * Use `secp256k1_ecdsa_signature_parse_compact`/`_serialize_compact` in `signature_to_proto` ## Minor improvements ## * Make `json_get_params` fail if unknown parameters are specified by user. * Print backtrace in `log_crash` * When unpacking a packet, reject any with an unknown odd-numbered field as per BOLT #2. -* Provide details (string) when a command fails because state() returns CMD_FAIL * Limit total number of peers in `new_peer`, or at least in `peer_connected_in`. * logging: add IO logging for peers. * Add `history` RPC command which shows all prior commit txs. @@ -27,8 +18,8 @@ I've marked things as simple if you want something easy to work on! ## Testing: ## -* Add more unit tests in bitcoin/test. -* Test more scenarios with daemon/test/test.sh +* Add more unit tests in bitcoin/test and daemon/test +* Test more scenarios with daemon/test/test.sh, and split it up. * Implement compile-time crypto-free mode * Implement canned conversation files for fuzz testing (eg AFL). * Write canned input/output test cases for various conversations, and @@ -36,10 +27,8 @@ I've marked things as simple if you want something easy to work on! ## Major improvements: ## -* Don't fail funding if fees insufficient, fall back as per BOLT #2. - * (MAJOR) Implement onion - * (MAJOR) Implement failure messages + * (MAJOR) Implement failure message encryption ## Other ##