ElementsProject / ElementsProject/elements

RPCs that need to use the wallet should check if it's unlocked

Offen
#881 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
C++
Sterne
1.2k
Forks
417
Ø Merge
1 T. 23 Std.
Gemergte PRs (30 T.)
15

Beschreibung

At some appropriate place in `issueasset` in `rpcwallet.cpp` (after `LOCK(pwallet->cs_wallet)` but before doing anything that uses the wallet), there should be a call to `EnsureWalletIsUnlocked(pwallet)`. Otherwise we crash when trying to sign if the wallet has a password and is not unlocked.

We should also check whether any other RPCs have this issue (any RPCs that need to use the wallet for signing, which I think is the only thing you need it unlocked for?)

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne in rpcwallet.cpp bei issueasset, nach LOCK(pwallet->cs_wallet), und untersuche den Signaturpfad, der derzeit ausgeführt wird, während eine passwortgeschützte Wallet gesperrt ist. Überprüfe auch andere RPCs, die die Wallet zum Signieren verwenden; erledigt ist die Aufgabe, wenn jeder solche RPC vor dem Zugriff auf die Wallet zum Signieren EnsureWalletIsUnlocked(pwallet) prüft und der gemeldete Absturz nicht mehr auftritt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp
Bereich
blockchain
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.