1 // Licensed to the Apache Software Foundation (ASF) under one 2 // or more contributor license agreements. See the NOTICE file 3 // distributed with this work for additional information 4 // regarding copyright ownership. The ASF licenses this file 5 // to you under the Apache License, Version 2.0 (the 6 // "License"); you may not use this file except in compliance 7 // with the License. You may obtain a copy of the License at 8 // 9 // http://www.apache.org/licenses/LICENSE-2.0 10 // 11 // Unless required by applicable law or agreed to in writing, 12 // software distributed under the License is distributed on an 13 // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 // KIND, either express or implied. See the License for the 15 // specific language governing permissions and limitations 16 // under the License. 17 18 #[cfg(feature = "std")] 19 use std::os::raw::*; 20 #[cfg(not(feature = "std"))] 21 use core::ffi::*; 22 use super::*; 23 24 extern "C" { 25 /// tee_invoke_supp_plugin() - invoke a tee-supplicant's plugin 26 /// @uuid: uuid of the plugin 27 /// @cmd: command for the plugin 28 /// @sub_cmd: subcommand for the plugin 29 /// @buf: data [for/from] the plugin [in/out] 30 /// @len: length of the input buf 31 /// @outlen: pointer to length of the output data (if they will be used) 32 /// Return TEE_SUCCESS on success or TEE_ERRROR_* on failure. tee_invoke_supp_plugin( uuid: *const TEE_UUID, cmd: u32, sub_cmd: u32, buf: *mut c_char, len: usize, outlen: *mut usize, ) -> TEE_Result33 pub fn tee_invoke_supp_plugin( 34 uuid: *const TEE_UUID, 35 cmd: u32, 36 sub_cmd: u32, 37 buf: *mut c_char, 38 len: usize, 39 outlen: *mut usize, 40 ) -> TEE_Result; 41 42 } 43