* Copyright (c) 2023 Huawei Device Co., Ltd.
* 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.
*/
use core::ffi::{c_uchar, c_int, c_char, c_ulong, CStr, c_void};
#[allow(unused)]
pub extern fn err_print_cb (err_str: *const c_char, _len: c_ulong, _u: *mut c_void) -> c_int
{
println!("openssl err: {}", unsafe { CStr::from_ptr(err_str) }.to_string_lossy());
1
}
#[link(name = "crypto_static")]
#[allow(unused)]
extern "C" {
pub fn EVP_DecodeBlock(t: *mut c_uchar, f: *const c_uchar, n: c_int) -> c_int;
pub fn ERR_print_errors_cb(
cb: extern fn(
err_str: *const c_char,
len: c_ulong,
u: *mut c_void
) -> c_int,
u: *mut c_void
) -> c_void;
}
#[allow(unused)]
pub enum LogLevel {
DEBUG = 3,
INFO = 4,
WARNING = 5,
ERROR = 6,
FATAL = 7,
}
#[link(name = "updaterlog")]
extern "C" {
pub fn Logger(level: c_int, file_name: *const c_char, line: i32, format: *const c_char, ...) -> c_void;
}