-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
teleport attempts to use jsonrpc 2.0 despite it not being supported by Core #43
Comments
Thanks for the issue. At first glance it's pretty strange to me. I've been successfully using the project for ages, and I've used Bitcoin Core 0.21 and 22.0. Before release I did I'll think a little some more. edit: fwiw teleport doesn't implement its own json-rpc, it uses https://github.com/rust-bitcoin/rust-bitcoincore-rpc |
Do we have same dependencies? name = "jsonrpc"
version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "436f3455a8a4e9c7b14de9f1206198ee5d0bdc2db1b560339d2141093d7dd389" |
Looks like I have the same.
But good thinking, I'm pretty sure I have kept the same Cargo.lock this whole time, I've renamed it and am now building from scratch to see if I reproduce the error. edit: attached is my whole file |
I just tried running teleport after In case its helpful heres the new Cargo.lock file I'm sure you've already checked this, but do you have a wallet called |
Interesting, will investigate. I think wallets shouldn't affect |
You're right they shouldnt.
|
Weird. Maybe Rust version is relevant? I have 1.59. Also, I used debug mode. |
I tried to bump dependencies: |
I intentionally downgraded because of this issue: rust-bitcoin/rust-bitcoincore-rpc#211 Are you able to reproduce that issue on your end? Try creating a new wallet, it should run |
I tried the code at the issue you posted as well as running |
Oh weird. I guess then update it on your end and we'll leave the current versions on the repos, when more people try out the software we can see how best to solve it then. |
TBH, I'm starting to be afraid of UB since the behavior is so non-deterministic. Hopefully I can run it through asan/ubsan when I get a bit of time. |
What is UB? |
Undefined behavior. Of course it'd mean a problem in some |
After unsuccessful attempt to try this out I recorded the communication and it looks like jsonrpc 2.0 is the problem:
Recorded request from teleport:
Request from bitcoin-cli:
(don't worry about the "leak", it's a disposable VM :))
socat TCP-LISTEN:18441,fork,reuseaddr SYSTEM:'tee /proc/self/fd/2 | nc 127.0.0.1 18444 | tee /proc/self/fd/2'
(yes, my ports are correct)sudo -u bitcoin-regtest ./target/debug/teleport --wallet-file-name=maker1.teleport generate-wallet
debug.log
I'm still confused how come this wasn't discovered already...
P.S.: thanks a lot for working on this project!!!
The text was updated successfully, but these errors were encountered: