# metaplex =============This arithmetic operation may be UNSAFE!================ Found a potential vulnerability at line 123, column 23 in metaplex/program/src/state.rs The add operation may result in overflows: 121| // need to skip ahead by the number of items to the next offset. 122| // Add one byte to cover the boolean at the end of the winning config state. >123| let idx = current_config_offset + skip + 4 + 1; 124| data[idx] = 1; 125| } else { >>>Stack Trace: >>>spl_metaplex::processor::process_instruction::h8267d87f5d69f8a5 [metaplex/program/src/entrypoint.rs:19] >>> spl_metaplex::processor::redeem_bid::process_redeem_bid::hd0edcc61d598d613 [metaplex/program/src/processor.rs:57] >>> spl_metaplex::utils::common_redeem_finish::h0762df45e9d85bd7 [metaplex/program/src/processor/redeem_bid.rs:255] >>> spl_metaplex::state::AuctionManager::set_claimed_and_status::h4dce9f6eee0a71fa [metaplex/program/src/utils.rs:704] =============This arithmetic operation may be UNSAFE!================ Found a potential vulnerability at line 135, column 31 in metaplex/program/src/state.rs The add operation may result in overflows: 133| if winning_config_index == i { 134| // ok we need to target the claimed u8 inside the correct item now. >135| let idx = current_config_offset 136| + 4 137| + winning_config_item_index * MAX_WINNING_CONFIG_STATE_ITEM_SIZE >>>Stack Trace: >>>spl_metaplex::processor::process_instruction::h8267d87f5d69f8a5 [metaplex/program/src/entrypoint.rs:19] >>> spl_metaplex::processor::redeem_bid::process_redeem_bid::hd0edcc61d598d613 [metaplex/program/src/processor.rs:57] >>> spl_metaplex::utils::common_redeem_finish::h0762df45e9d85bd7 [metaplex/program/src/processor/redeem_bid.rs:255] >>> spl_metaplex::state::AuctionManager::set_claimed_and_status::h4dce9f6eee0a71fa [metaplex/program/src/utils.rs:704] =============This arithmetic operation may be UNSAFE!================ Found a potential vulnerability at line 146, column 45 in metaplex/program/src/state.rs The add operation may result in overflows: 144| // need to skip ahead by the number of items to the next offset. 145| // Add one byte to cover the boolean at the end of the winning config state. >146| current_config_offset = current_config_offset + 4 + skip + 1; 147| } 148| } >>>Stack Trace: >>>spl_metaplex::processor::process_instruction::h8267d87f5d69f8a5 [metaplex/program/src/entrypoint.rs:19] >>> spl_metaplex::processor::redeem_bid::process_redeem_bid::hd0edcc61d598d613 [metaplex/program/src/processor.rs:57] >>> spl_metaplex::utils::common_redeem_finish::h0762df45e9d85bd7 [metaplex/program/src/processor/redeem_bid.rs:255] >>> spl_metaplex::state::AuctionManager::set_claimed_and_status::h4dce9f6eee0a71fa [metaplex/program/src/utils.rs:704] =============This arithmetic operation may be UNSAFE!================ Found a potential vulnerability at line 306, column 25 in metaplex/program/src/processor/redeem_printing_v2_bid.rs The add operation may result in overflows: 304| 305| if n < winning_index { >306| edition_offset_min += matching 307| } 308| if prize_tracking_ticket_info.data_is_empty() { >>>Stack Trace: >>>spl_metaplex::processor::process_instruction::h8267d87f5d69f8a5 [metaplex/program/src/entrypoint.rs:19] >>> spl_metaplex::processor::redeem_printing_v2_bid::process_redeem_printing_v2_bid::hfac28d055c012b82 [metaplex/program/src/processor.rs:105] =============This arithmetic operation may be UNSAFE!================ Found a potential vulnerability at line 309, column 25 in metaplex/program/src/processor/redeem_printing_v2_bid.rs The add operation may result in overflows: 307| } 308| if prize_tracking_ticket_info.data_is_empty() { >309| expected_redemptions += matching 310| } else if n >= winning_index { 311| // no need to keep using this loop more than winning_index if we're not >>>Stack Trace: >>>spl_metaplex::processor::process_instruction::h8267d87f5d69f8a5 [metaplex/program/src/entrypoint.rs:19] >>> spl_metaplex::processor::redeem_printing_v2_bid::process_redeem_printing_v2_bid::hfac28d055c012b82 [metaplex/program/src/processor.rs:105] =============This arithmetic operation may be UNSAFE!================ Found a potential vulnerability at line 317, column 42 in metaplex/program/src/processor/redeem_printing_v2_bid.rs The add operation may result in overflows: 315| } 316| >317| let edition_offset_max = edition_offset_min 318| + count_item_amount_by_safety_deposit_order( 319| &auction_manager.settings.winning_configs[winning_index].items, >>>Stack Trace: >>>spl_metaplex::processor::process_instruction::h8267d87f5d69f8a5 [metaplex/program/src/entrypoint.rs:19] >>> spl_metaplex::processor::redeem_printing_v2_bid::process_redeem_printing_v2_bid::hfac28d055c012b82 [metaplex/program/src/processor.rs:105] https://github.com/metaplex-foundation/metaplex/issues/943 https://medium.com/coinmonks/understanding-arithmetic-overflow-underflows-in-rust-and-solana-smart-contracts-9f3c9802dc45