From 977033c3053228b62d28e0a6dd105eb687670fdb Mon Sep 17 00:00:00 2001 From: Facundo Lerena Date: Mon, 29 Apr 2024 13:56:01 -0300 Subject: [PATCH] removed folders that were renamed (#269) --- test-cases/unstable-interface/Cargo.toml | 26 ------- .../remediated-example/Cargo.toml | 23 ------ .../remediated-example/src/lib.rs | 59 --------------- .../vulnerable-example/Cargo.toml | 23 ------ .../vulnerable-example/src/lib.rs | 74 ------------------- test-cases/vec-considerations/Cargo.toml | 26 ------- .../remediated-example/Cargo.toml | 32 -------- .../remediated-example/src/lib.rs | 63 ---------------- .../vulnerable-example/Cargo.toml | 33 --------- .../vulnerable-example/src/lib.rs | 49 ------------ 10 files changed, 408 deletions(-) delete mode 100644 test-cases/unstable-interface/Cargo.toml delete mode 100644 test-cases/unstable-interface/unstable-interface-1/remediated-example/Cargo.toml delete mode 100644 test-cases/unstable-interface/unstable-interface-1/remediated-example/src/lib.rs delete mode 100644 test-cases/unstable-interface/unstable-interface-1/vulnerable-example/Cargo.toml delete mode 100644 test-cases/unstable-interface/unstable-interface-1/vulnerable-example/src/lib.rs delete mode 100644 test-cases/vec-considerations/Cargo.toml delete mode 100755 test-cases/vec-considerations/vec-considerations-1/remediated-example/Cargo.toml delete mode 100755 test-cases/vec-considerations/vec-considerations-1/remediated-example/src/lib.rs delete mode 100755 test-cases/vec-considerations/vec-considerations-1/vulnerable-example/Cargo.toml delete mode 100755 test-cases/vec-considerations/vec-considerations-1/vulnerable-example/src/lib.rs diff --git a/test-cases/unstable-interface/Cargo.toml b/test-cases/unstable-interface/Cargo.toml deleted file mode 100644 index 8d1c5677..00000000 --- a/test-cases/unstable-interface/Cargo.toml +++ /dev/null @@ -1,26 +0,0 @@ -[workspace] -exclude = [".cargo", "target"] -members = ["unstable-interface-*/*"] -resolver = "2" - -[workspace.dependencies] -ink = { version = "5.0.0", default-features = false } -scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } -scale-info = { version = "2.6", default-features = false, features = ["derive"]} -ink_e2e = { version = "=5.0.0" } - - -[profile.release] -codegen-units = 1 -debug = 0 -debug-assertions = false -lto = true -opt-level = "z" -overflow-checks = false -panic = "abort" -strip = "symbols" - -[profile.release-with-logs] -debug-assertions = true -inherits = "release" - diff --git a/test-cases/unstable-interface/unstable-interface-1/remediated-example/Cargo.toml b/test-cases/unstable-interface/unstable-interface-1/remediated-example/Cargo.toml deleted file mode 100644 index 2c8683eb..00000000 --- a/test-cases/unstable-interface/unstable-interface-1/remediated-example/Cargo.toml +++ /dev/null @@ -1,23 +0,0 @@ -[package] -name = "unstable-interface-remediated" -version = "0.1.0" -edition = "2021" -authors = ["[your_name] <[your_email]>"] - -[lib] -path = "src/lib.rs" - -[features] -default = ["std"] -std = [ - "ink/std", - "scale/std", - "scale-info/std", -] -ink-as-dependency = [] -e2e-tests = [] - -[dependencies] -ink = { workspace = true } -scale = { workspace = true } -scale-info = { workspace = true } diff --git a/test-cases/unstable-interface/unstable-interface-1/remediated-example/src/lib.rs b/test-cases/unstable-interface/unstable-interface-1/remediated-example/src/lib.rs deleted file mode 100644 index 1e3043db..00000000 --- a/test-cases/unstable-interface/unstable-interface-1/remediated-example/src/lib.rs +++ /dev/null @@ -1,59 +0,0 @@ -#![cfg_attr(not(feature = "std"), no_std, no_main)] - -#[ink::contract] -mod unstable_interface { - use ink::storage::Mapping; - - #[ink(storage)] - pub struct UnstableInterface { - total_supply: Balance, - balances: Mapping, - } - - #[derive(Debug, PartialEq, Eq, Clone, scale::Encode, scale::Decode)] - #[cfg_attr(feature = "std", derive(::scale_info::TypeInfo))] - pub enum Error { - InsufficientBalance, - InvalidSignature, - } - - impl UnstableInterface { - #[ink(constructor)] - pub fn new(total_supply: Balance) -> Self { - let mut balances = Mapping::new(); - let caller = Self::env().caller(); - balances.insert(caller, &total_supply); - - Self { - total_supply, - balances, - } - } - - /// Returns the balance of a given account. - #[ink(message)] - pub fn balance_of(&self, owner: AccountId) -> Balance { - self.balances.get(owner).unwrap() - } - - /// Transfers tokens from the caller to the given `to` account. - #[ink(message)] - pub fn transfer(&mut self, to: AccountId, amount: Balance) -> Result<(), Error> { - let from_balance = self.balances.get(self.env().caller()).unwrap(); - - if from_balance < amount { - return Err(Error::InsufficientBalance); - } - - let new_from_balance = from_balance - amount; - self.balances.insert(self.env().caller(), &new_from_balance); - - let new_to_balance = self.balance_of(to) + amount; - self.balances.insert(to, &new_to_balance); - - Ok(()) - } - - //dont use sr25519() - } -} diff --git a/test-cases/unstable-interface/unstable-interface-1/vulnerable-example/Cargo.toml b/test-cases/unstable-interface/unstable-interface-1/vulnerable-example/Cargo.toml deleted file mode 100644 index cd734218..00000000 --- a/test-cases/unstable-interface/unstable-interface-1/vulnerable-example/Cargo.toml +++ /dev/null @@ -1,23 +0,0 @@ -[package] -name = "unstable-interface-vulnerable" -version = "0.1.0" -edition = "2021" -authors = ["[your_name] <[your_email]>"] - -[lib] -path = "src/lib.rs" - -[features] -default = ["std"] -std = [ - "ink/std", - "scale/std", - "scale-info/std", -] -ink-as-dependency = [] -e2e-tests = [] - -[dependencies] -ink = { workspace = true } -scale = { workspace = true } -scale-info = { workspace = true } diff --git a/test-cases/unstable-interface/unstable-interface-1/vulnerable-example/src/lib.rs b/test-cases/unstable-interface/unstable-interface-1/vulnerable-example/src/lib.rs deleted file mode 100644 index f3053394..00000000 --- a/test-cases/unstable-interface/unstable-interface-1/vulnerable-example/src/lib.rs +++ /dev/null @@ -1,74 +0,0 @@ -#![cfg_attr(not(feature = "std"), no_std, no_main)] - -#[ink::contract] -mod unstable_interface { - use ink::storage::Mapping; - - #[ink(storage)] - pub struct UnstableInterface { - total_supply: Balance, - balances: Mapping, - } - - #[derive(Debug, PartialEq, Eq, Clone, scale::Encode, scale::Decode)] - #[cfg_attr(feature = "std", derive(::scale_info::TypeInfo))] - pub enum Error { - InsufficientBalance, - InvalidSignature, - } - - impl UnstableInterface { - #[ink(constructor)] - pub fn new(total_supply: Balance) -> Self { - let mut balances = Mapping::new(); - let caller = Self::env().caller(); - balances.insert(caller, &total_supply); - - Self { - total_supply, - balances, - } - } - - /// Returns the balance of a given account. - #[ink(message)] - pub fn balance_of(&self, owner: AccountId) -> Balance { - self.balances.get(owner).unwrap() - } - - /// Transfers tokens from the caller to the given `to` account. - #[ink(message)] - pub fn transfer(&mut self, to: AccountId, amount: Balance) -> Result<(), Error> { - let from_balance = self.balances.get(self.env().caller()).unwrap(); - - if from_balance < amount { - return Err(Error::InsufficientBalance); - } - - let new_from_balance = from_balance - amount; - self.balances.insert(self.env().caller(), &new_from_balance); - - let new_to_balance = self.balance_of(to) + amount; - self.balances.insert(to, &new_to_balance); - - Ok(()) - } - - #[ink(message)] - pub fn example(&self) -> bool { - let signature: [u8; 64] = [ - 184, 49, 74, 238, 78, 165, 102, 252, 22, 92, 156, 176, 124, 118, 168, 116, 247, 99, - 0, 94, 2, 45, 9, 170, 73, 222, 182, 74, 60, 32, 75, 64, 98, 174, 69, 55, 83, 85, - 180, 98, 208, 75, 231, 57, 205, 62, 4, 105, 26, 136, 172, 17, 123, 99, 90, 255, - 228, 54, 115, 63, 30, 207, 205, 131, - ]; - let message: &[u8; 11] = b"hello world"; - let pub_key: [u8; 32] = [ - 212, 53, 147, 199, 21, 253, 211, 28, 97, 20, 26, 189, 4, 169, 159, 214, 130, 44, - 133, 88, 133, 76, 205, 227, 154, 86, 132, 231, 165, 109, 162, 125, - ]; - - ink::env::sr25519_verify(&signature, message.as_slice(), &pub_key).is_ok() - } - } -} diff --git a/test-cases/vec-considerations/Cargo.toml b/test-cases/vec-considerations/Cargo.toml deleted file mode 100644 index 9d04915d..00000000 --- a/test-cases/vec-considerations/Cargo.toml +++ /dev/null @@ -1,26 +0,0 @@ -[workspace] -exclude = [".cargo", "target"] -members = ["vec-considerations-*/*"] -resolver = "2" - -[workspace.dependencies] -ink = { version = "5.0.0", default-features = false } -scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] } -scale-info = { version = "2.6", default-features = false, features = ["derive"]} -ink_e2e = { version = "=5.0.0" } - - -[profile.release] -codegen-units = 1 -debug = 0 -debug-assertions = false -lto = true -opt-level = "z" -overflow-checks = false -panic = "abort" -strip = "symbols" - -[profile.release-with-logs] -debug-assertions = true -inherits = "release" - diff --git a/test-cases/vec-considerations/vec-considerations-1/remediated-example/Cargo.toml b/test-cases/vec-considerations/vec-considerations-1/remediated-example/Cargo.toml deleted file mode 100755 index 698082d6..00000000 --- a/test-cases/vec-considerations/vec-considerations-1/remediated-example/Cargo.toml +++ /dev/null @@ -1,32 +0,0 @@ -[package] -name = "vec_considerations-remediated" -version = "0.1.0" -authors = ["[your_name] <[your_email]>"] -edition = "2021" - -[lib] -path = "src/lib.rs" - -[features] -default = ["std"] -std = [ - "ink/std", - "scale/std", - "scale-info/std", -] -ink-as-dependency = [] -e2e-tests = [] - -[dependencies] -ink = { workspace = true } -scale = { workspace = true } -scale-info = { workspace = true } - -[dev-dependencies] -ink_e2e = { workspace = true } - -[profile.release] -overflow-checks = false - -[profile.dev] -overflow-checks = false diff --git a/test-cases/vec-considerations/vec-considerations-1/remediated-example/src/lib.rs b/test-cases/vec-considerations/vec-considerations-1/remediated-example/src/lib.rs deleted file mode 100755 index 01e2808b..00000000 --- a/test-cases/vec-considerations/vec-considerations-1/remediated-example/src/lib.rs +++ /dev/null @@ -1,63 +0,0 @@ -#![cfg_attr(not(feature = "std"), no_std, no_main)] - -#[ink::contract] -mod vec_considerations { - - use ink::prelude::{format, string::String}; - use ink::storage::{Mapping, StorageVec}; - - #[derive(Default)] - #[ink(storage)] - pub struct MyContract { - on_chain_log: Mapping, - donations: StorageVec, - } - - #[derive(Debug, PartialEq, Eq, scale::Encode, scale::Decode)] - #[cfg_attr(feature = "std", derive(scale_info::TypeInfo))] - pub enum Error { - InsertFailed, - PeekFailed, - PushFailed, - ErrNone, - } - - impl MyContract { - #[ink(constructor)] - pub fn new_default() -> Self { - Self::default() - } - - #[ink(message)] - pub fn do_something2(&mut self, data: String) -> Result<(), Error> { - let caller = self.env().caller(); - - match self.on_chain_log.try_insert(caller, &data) { - Ok(_) => Ok(()), - Err(_) => Err(Error::InsertFailed), - } - } - - #[ink(message)] - pub fn donate(&mut self) -> Result<(), Error> { - let caller = self.env().caller(); - let endowment = self.env().transferred_value(); - - let log_message = format!("{caller:?} donated {endowment}"); - - match self.donations.try_push(&log_message) { - Ok(_) => Ok(()), - Err(_) => Err(Error::PushFailed), - } - } - - #[ink(message)] - pub fn last_donation(&self) -> Result<(), Error> { - match self.donations.try_peek() { - Some(Ok(_)) => Ok(()), - Some(Err(_)) => Err(Error::PeekFailed), - None => Err(Error::ErrNone), - } - } - } -} diff --git a/test-cases/vec-considerations/vec-considerations-1/vulnerable-example/Cargo.toml b/test-cases/vec-considerations/vec-considerations-1/vulnerable-example/Cargo.toml deleted file mode 100755 index 3e662ecd..00000000 --- a/test-cases/vec-considerations/vec-considerations-1/vulnerable-example/Cargo.toml +++ /dev/null @@ -1,33 +0,0 @@ -[package] -name = "vec_considerations-vulnerable" -version = "0.1.0" -authors = ["[your_name] <[your_email]>"] -edition = "2021" - -[lib] -path = "src/lib.rs" - -[features] -default = ["std"] -std = [ - "ink/std", - "scale/std", - "scale-info/std", -] -ink-as-dependency = [] -e2e-tests = [] - -[dependencies] -ink = { workspace = true } -scale = { workspace = true } -scale-info = { workspace = true } - - -[dev-dependencies] -ink_e2e = { workspace = true } -[profile.release] -overflow-checks = false - -[profile.dev] -overflow-checks = false - diff --git a/test-cases/vec-considerations/vec-considerations-1/vulnerable-example/src/lib.rs b/test-cases/vec-considerations/vec-considerations-1/vulnerable-example/src/lib.rs deleted file mode 100755 index 527c54c0..00000000 --- a/test-cases/vec-considerations/vec-considerations-1/vulnerable-example/src/lib.rs +++ /dev/null @@ -1,49 +0,0 @@ -#![cfg_attr(not(feature = "std"), no_std, no_main)] - -#[ink::contract] -pub mod vec_considerations { - use ink::prelude::{format, string::String}; - use ink::storage::{Mapping, StorageVec}; - - #[derive(Default)] - #[ink(storage)] - pub struct VecConsiderations { - on_chain_log: Mapping, - donations: StorageVec, - test: Mapping, - } - - impl VecConsiderations { - #[ink(constructor)] - pub fn new() -> Self { - Self::default() - } - - #[ink(message)] - pub fn do_something(&mut self, data: String) { - let caller = self.env().caller(); - let example = format!("{caller:?}: {data}"); - // Panics if data overgrows the static buffer size! - self.on_chain_log.insert(caller, &example); - } - - #[ink(message)] - pub fn donate(&mut self) { - let caller = self.env().caller(); - let endowment = self.env().transferred_value(); - - let log_message = format!("{caller:?} donated {endowment}"); - self.donations.push(&log_message); - } - - #[ink(message)] - pub fn last_donation(&self) -> Option { - self.donations.peek() - } - - #[ink(message)] - pub fn shouldnt_turn_on(&mut self, person: AccountId, balance: Balance) { - self.test.insert(person, &balance); - } - } -}