diff --git a/aqua-examples/drand/services/curl_adapter/Cargo.toml b/aqua-examples/drand/services/curl_adapter/Cargo.toml new file mode 100644 index 0000000..bb128bc --- /dev/null +++ b/aqua-examples/drand/services/curl_adapter/Cargo.toml @@ -0,0 +1,14 @@ +[package] +name = "curl_adapter" +version = "0.1.0" +authors = ["Fluence Labs"] +edition = "2018" +publish = false + +[[bin]] +path = "src/main.rs" +name = "curl_adapter" + +[dependencies] +marine-rs-sdk = "0.7.1" +log = "0.4.8" diff --git a/aqua-examples/drand/services/curl_adapter/src/main.rs b/aqua-examples/drand/services/curl_adapter/src/main.rs new file mode 100644 index 0000000..861cbf8 --- /dev/null +++ b/aqua-examples/drand/services/curl_adapter/src/main.rs @@ -0,0 +1,37 @@ +/* + * Copyright 2021 Fluence Labs Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#![allow(improper_ctypes)] + +use marine_rs_sdk::marine; +use marine_rs_sdk::module_manifest; + +use marine_rs_sdk::MountedBinaryResult; + +module_manifest!(); + +pub fn main() {} + +#[marine] +pub fn curl_request(cmd: Vec) -> MountedBinaryResult { + curl(cmd) +} + +#[marine] +#[link(wasm_import_module = "host")] +extern "C" { + fn curl(cmd: Vec) -> MountedBinaryResult; +}