Skip to content

Commit

Permalink
Fix weight estimation for RctType::ClsagBulletproof TXs
Browse files Browse the repository at this point in the history
  • Loading branch information
kayabaNerve committed Jul 7, 2024
1 parent 3cf0b84 commit 4743ea7
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 5 deletions.
1 change: 0 additions & 1 deletion .github/workflows/monero-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ jobs:
GITHUB_CI=true RUST_BACKTRACE=1 cargo test --package monero-seed --lib
GITHUB_CI=true RUST_BACKTRACE=1 cargo test --package polyseed --lib
GITHUB_CI=true RUST_BACKTRACE=1 cargo test --package monero-wallet-util --lib
GITHUB_CI=true RUST_BACKTRACE=1 cargo test --package monero-serai-verify-chain --lib
# Doesn't run unit tests with features as the tests workflow will

Expand Down
1 change: 1 addition & 0 deletions coins/monero/wallet/src/send/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,7 @@ impl SignableTransaction {
Err(SendError::NoInputs)?;
}
for (_, decoys) in &self.inputs {
// TODO: Add a function for the ring length
if decoys.len() !=
match self.rct_type {
RctType::ClsagBulletproof => 11,
Expand Down
9 changes: 8 additions & 1 deletion coins/monero/wallet/src/send/tx.rs
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,14 @@ impl SignableTransaction {
key_images.push(ED25519_BASEPOINT_POINT);
clsags.push(Clsag {
D: ED25519_BASEPOINT_POINT,
s: vec![Scalar::ZERO; 16],
s: vec![
Scalar::ZERO;
match self.rct_type {
RctType::ClsagBulletproof => 11,
RctType::ClsagBulletproofPlus => 16,
_ => unreachable!("unsupported RCT type"),
}
],
c1: Scalar::ZERO,
});
pseudo_outs.push(ED25519_BASEPOINT_POINT);
Expand Down
4 changes: 2 additions & 2 deletions coins/monero/wallet/tests/runner/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ pub async fn rpc() -> SimpleRequestRpc {
SimpleRequestRpc::new("http://serai:[email protected]:18081".to_string()).await.unwrap();

// Only run once
if rpc.get_height().await.unwrap() < 100 {
if rpc.get_height().await.unwrap() < 120 {
return rpc;
}

Expand All @@ -138,7 +138,7 @@ pub async fn rpc() -> SimpleRequestRpc {
);

// Mine 100 blocks to ensure decoy availability
rpc.generate_blocks(&addr, 100).await.unwrap();
rpc.generate_blocks(&addr, 120).await.unwrap();

rpc
}
Expand Down
2 changes: 1 addition & 1 deletion orchestration/dev/coins/monero/run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ RPC_PASS="${RPC_PASS:=seraidex}"
monerod --non-interactive --regtest --offline --fixed-difficulty=1 \
--no-zmq --rpc-bind-ip=0.0.0.0 --rpc-bind-port=18081 --confirm-external-bind \
--rpc-access-control-origins "*" --disable-rpc-ban \
--rpc-login=$RPC_USER:$RPC_PASS \
--rpc-login=$RPC_USER:$RPC_PASS --log-level 2 \
$1

0 comments on commit 4743ea7

Please sign in to comment.