]> git.bitcoin.ninja Git - rust-lightning/commit
Add a `lightning-dns-resolver` crate which answers bLIP 32 queries
authorMatt Corallo <git@bluematt.me>
Sun, 14 Jul 2024 13:08:04 +0000 (13:08 +0000)
committerMatt Corallo <git@bluematt.me>
Tue, 12 Nov 2024 15:53:35 +0000 (15:53 +0000)
commit8e941426cfc6588e445bdece7494a89e0b162823
tree742237ad801a64338276e301f5d1708ade9fe636
parent2bbb3b708311ced636466943ceb66a97da6a4f98
Add a `lightning-dns-resolver` crate which answers bLIP 32 queries

When a lightning node wishes to send payments to a BIP 353 human
readable name (using BOLT 12), it first has to resolve that name to
a DNS TXT record. bLIP 32 defines a way to do so over onion
messages, and this completes our implementation thereof by adding
the server side.

It operates by simply accepting new messages and spawning tokio
tasks to do DNS lookups using the `dnsse_prover` crate. It also
contains full end-to-end tests of the BIP 353 -> BOLT 12 -> payment
logic using the new server code to do the resolution.

Note that because we now have a workspace crate which sets the
"lightning/dnssec" feature in its `dev-dependencies`, a naive
`cargo test` will test the "dnssec" feature.
.gitignore
Cargo.toml
ci/ci-tests.sh
lightning-dns-resolver/Cargo.toml [new file with mode: 0644]
lightning-dns-resolver/src/lib.rs [new file with mode: 0644]
lightning/src/ln/channelmanager.rs
lightning/src/onion_message/messenger.rs