diff --git a/Cargo.lock b/Cargo.lock
index f5c4452..7a94fab 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -14,6 +14,12 @@ version = "2.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3ded4057c258ba199e2d26386d3af3780957ecaee6c4ef4041c6b4b8b97c0b06"
+[[package]]
+name = "cfg-if"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4e7648175b45a9a48536d676f68d918270699102aa8dab5496df06904c914600"
+
[[package]]
name = "equivalent"
version = "1.0.2"
@@ -26,6 +32,18 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb"
+[[package]]
+name = "getrandom"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "r-efi",
+ "wasip2",
+]
+
[[package]]
name = "hashbrown"
version = "0.17.1"
@@ -71,6 +89,12 @@ version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2"
+[[package]]
+name = "libc"
+version = "0.2.189"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
+
[[package]]
name = "log"
version = "0.4.34"
@@ -98,6 +122,7 @@ checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98"
name = "memona-plugin-ftp"
version = "0.1.3"
dependencies = [
+ "getrandom",
"memona-plugin-sdk",
"tokio",
]
@@ -106,7 +131,7 @@ dependencies = [
name = "memona-plugin-sdk"
version = "0.1.0"
dependencies = [
- "wit-bindgen",
+ "wit-bindgen 0.62.0",
]
[[package]]
@@ -143,6 +168,12 @@ dependencies = [
"proc-macro2",
]
+[[package]]
+name = "r-efi"
+version = "5.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
+
[[package]]
name = "semver"
version = "1.0.28"
@@ -229,6 +260,15 @@ version = "1.0.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954"
+[[package]]
+name = "wasip2"
+version = "1.0.1+wasi-0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7"
+dependencies = [
+ "wit-bindgen 0.46.0",
+]
+
[[package]]
name = "wasm-encoder"
version = "0.259.0"
@@ -263,6 +303,12 @@ dependencies = [
"semver",
]
+[[package]]
+name = "wit-bindgen"
+version = "0.46.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59"
+
[[package]]
name = "wit-bindgen"
version = "0.62.0"
diff --git a/Cargo.toml b/Cargo.toml
index 77a50dc..2d3a3ea 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -8,6 +8,7 @@ license = "MIT"
crate-type = ["cdylib", "rlib"]
[dependencies]
+getrandom = "0.3"
memona-plugin-sdk = { path = "sdk" }
[dev-dependencies]
diff --git a/src/lib.rs b/src/lib.rs
index e02b80c..944ec76 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -32,7 +32,6 @@ const MAX_STAGE_ATTEMPTS: usize = 64;
thread_local! {
static CONTROL: RefCell