Skip to content

Commit 1c2db87

Browse files
Merge #7195: backport: cherry-pick #7191 and #7193 into v23.1.x
240a95f Merge #7193: fix: reject identity elements in deserialization and key generation (pasta) 444cbf2 Merge #7191: fix(qt): reseat quorum labels when new types are inserted (pasta) Pull request description: ## Backport Cherry-picks of #7191 and #7193 into `v23.1.x`. ### Included - #7193 — `fix: reject identity elements in deserialization and key generation` (42b707b) - #7191 — `fix(qt): reseat quorum labels when new types are inserted` (641b3ea) ACKs for top commit: UdjinM6: utACK 240a95f Tree-SHA512: dc270139159974b3bdab9177a7215de201d4deecc7883d47e35174fe7073c3508e61313e99e554b5a646ceb179202c96eb170e53dc9fc01177349aaa840acf2b
2 parents 8424411 + 240a95f commit 1c2db87

File tree

3 files changed

+9
-0
lines changed

3 files changed

+9
-0
lines changed

src/bls/bls.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,9 @@ void CBLSSecretKey::MakeNewKey()
6666
GetStrongRandBytes({buf, sizeof(buf)});
6767
try {
6868
impl = bls::PrivateKey::FromBytes(bls::Bytes(reinterpret_cast<const uint8_t*>(buf), SerSize));
69+
if (impl == bls::PrivateKey()) {
70+
continue;
71+
}
6972
break;
7073
} catch (...) {
7174
}

src/bls/bls.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,11 @@ class CBLSWrapper
111111
} else {
112112
try {
113113
impl = ImplType::FromBytes(bls::Bytes(vecBytes.data(), vecBytes.size()), specificLegacyScheme);
114+
if (impl == ImplType()) {
115+
Reset();
116+
cachedHash.SetNull();
117+
return;
118+
}
114119
fValid = true;
115120
} catch (...) {
116121
Reset();

src/qt/networkwidget.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,7 @@ void NetworkWidget::handleQrDataChanged()
240240
it->second.second->setToolTip(tr("Waiting for blockchain sync…"));
241241
grid->addWidget(it->second.first, current_row, 0);
242242
grid->addWidget(it->second.second, current_row, 1);
243+
needs_reseating = true;
243244
} else if (needs_reseating) {
244245
grid->removeWidget(it->second.first);
245246
grid->removeWidget(it->second.second);

0 commit comments

Comments
 (0)