diff options
| author | Henry Gressmann <mail@henrygressmann.de> | 2024-01-30 01:12:38 +0100 |
|---|---|---|
| committer | Henry Gressmann <mail@henrygressmann.de> | 2024-01-30 01:12:38 +0100 |
| commit | 893396aa3ce270280a2a1a87007a4b84edc8b898 (patch) | |
| tree | 59690b8bee97a158a01dd49f4b6e611bdf284546 /examples/rust/src | |
| parent | 4919d8c2f86f69f669a1afba2a28d5c344fe7197 (diff) | |
perf: add more benchmarks
Signed-off-by: Henry Gressmann <mail@henrygressmann.de>
Diffstat (limited to 'examples/rust/src')
| -rw-r--r-- | examples/rust/src/argon2id.rs | 14 | ||||
| -rw-r--r-- | examples/rust/src/fibonacci.rs | 8 | ||||
| -rw-r--r-- | examples/rust/src/print.rs | 7 |
3 files changed, 15 insertions, 14 deletions
diff --git a/examples/rust/src/argon2id.rs b/examples/rust/src/argon2id.rs new file mode 100644 index 0000000..01ea7ca --- /dev/null +++ b/examples/rust/src/argon2id.rs @@ -0,0 +1,14 @@ +#![no_main] + +#[no_mangle] +pub extern "C" fn argon2id(m_cost: i32, t_cost: i32, p_cost: i32) -> i32 { + let password = b"password"; + let salt = b"some random salt"; + + let params = argon2::Params::new(m_cost as u32, t_cost as u32, p_cost as u32, None).unwrap(); + let argon = argon2::Argon2::new(argon2::Algorithm::Argon2id, argon2::Version::V0x13, params); + + let mut hash = [0u8; 32]; + argon.hash_password_into(password, salt, &mut hash).unwrap(); + hash[0] as i32 +} diff --git a/examples/rust/src/fibonacci.rs b/examples/rust/src/fibonacci.rs index 7924aef..8de496d 100644 --- a/examples/rust/src/fibonacci.rs +++ b/examples/rust/src/fibonacci.rs @@ -1,11 +1,5 @@ -#![no_std] #![no_main] - -#[cfg(not(test))] -#[panic_handler] -fn panic(_info: &core::panic::PanicInfo) -> ! { - core::arch::wasm32::unreachable() -} +#![allow(non_snake_case)] #[no_mangle] pub extern "C" fn fibonacci(n: i32) -> i32 { diff --git a/examples/rust/src/print.rs b/examples/rust/src/print.rs index 34f3c7f..d04daa3 100644 --- a/examples/rust/src/print.rs +++ b/examples/rust/src/print.rs @@ -1,12 +1,5 @@ -#![no_std] #![no_main] -#[cfg(not(test))] -#[panic_handler] -fn panic(_info: &core::panic::PanicInfo) -> ! { - core::arch::wasm32::unreachable() -} - #[link(wasm_import_module = "env")] extern "C" { fn printi32(x: i32); |
