/* automatically generated by rust-bindgen 0.65.1 */
extern "C" {
#[doc = " @brief C API for getting the size of the generated report\n @param params_buf: [Input] The other report generation parameters buffer.\n @param params_len: [Input] The length of other report generation parameters.\n @param report_len: [Output] The max report size\n\n @return Error code.\n"]
pub fn GetAttestationReportSize(
params_buf: *const ::std::os::raw::c_char,
params_len: ::std::os::raw::c_uint,
report_len: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
#[doc = " @brief C API for report generation\n @param params_buf: [Input] The other report generation parameters buffer.\n @param params_len: [Input] The length of other report generation parameters.\n @param report_buf: [Output] The output serialized JSON string of the report\n @param report_len: [Input and Output] The maximal JSON report buffer size as\n input,\n and the real JSON report string size as output.\n @param msg: [Output] The error message if any error occurs.\n @param msg_len: [Input and Output] The maximal error message buffer size as\n input.\n The real error message size as output.\n @param details: [Output] The detailed error message if any error occurs.\n @param details_len: [Input and Output] The maximal detailed error message\n buffer size as input.\n The real detailed error message size as output.\n\n\n @note All the lengths are memory sizes in bytes. For example, char array[] =\n \"hello\" has a length of 6, not 5.\n\n @return Error code.\n"]
pub fn GenerateAttestationReport(
params_buf: *const ::std::os::raw::c_char,
params_len: ::std::os::raw::c_uint,
report_buf: *mut ::std::os::raw::c_char,
report_len: *mut ::std::os::raw::c_uint,
msg: *mut ::std::os::raw::c_char,
msg_len: *mut ::std::os::raw::c_uint,
details: *mut ::std::os::raw::c_char,
details_len: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
pub fn GetAttributesMaxSize() -> ::std::os::raw::c_uint;
}
extern "C" {
#[doc = " @brief C API for parse attestation report\n\n @param report_json_c_str: [Input] Attestation report in JSON format\n string.\n @param report_json_str_len: [Input] The length of report_json_c_str.\n @param attrs_buf: [Output] Report attributes in JSON format\n string.\n @param attrs_buf_len: [Input and Ouput] The maximal size of attrs_buf as Input.\n The real attrs buf size as Output.\n\n @param msg_buf: [Output] The error message if any error occurs.\n @param msg_buf_len: [Input and Output] The maximal error message buffer size\n as input. The real error message size as output.\n @param details_buf: [Output] The detailed error message if any error occurs.\n @param details_buf_len: [Input and Output] The maximal detailed error\n message buffer size as input. The real detailed error message size as\n output.\n\n @note All the lengths are memory sizes in bytes. For example, char array[] =\n \"hello\" has a length of 6, not 5.\n\n @return Error code.\n"]
pub fn ParseAttributesFromReport(
report_json_c_str: *const ::std::os::raw::c_char,
report_json_str_len: ::std::os::raw::c_uint,
attrs_buf: *mut ::std::os::raw::c_char,
attrs_buf_len: *mut ::std::os::raw::c_uint,
msg_buf: *mut ::std::os::raw::c_char,
msg_buf_len: *mut ::std::os::raw::c_uint,
details_buf: *mut ::std::os::raw::c_char,
details_buf_len: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}
extern "C" {
#[doc = " @brief C API for verification\n\n @param report_json_c_str: [Input] Attestation report in JSON format\n string.\n @param report_json_str_len: [Input] The length of report_json_c_str.\n @param policy_json_c_str: [Input] Attestation policy in JSON format\n string.\n @param policy_json_str_len: [Input] The length of policy_json_c_str.\n\n @param msg_buf: [Output] The error message if any error occurs.\n @param msg_buf_len: [Input and Output] The maximal error message buffer size\n as input. The real error message size as output.\n @param details_buf: [Output] The detailed error message if any error occurs.\n @param details_buf_len: [Input and Output] The maximal detailed error\n message buffer size as input. The real detailed error message size as\n output.\n\n @note All the lengths are memory sizes in bytes. For example, char array[] =\n \"hello\" has a length of 6, not 5.\n\n @return Error code.\n"]
pub fn AttestationReportVerify(
report_json_c_str: *const ::std::os::raw::c_char,
report_json_str_len: ::std::os::raw::c_uint,
policy_json_c_str: *const ::std::os::raw::c_char,
policy_json_str_len: ::std::os::raw::c_uint,
msg_buf: *mut ::std::os::raw::c_char,
msg_buf_len: *mut ::std::os::raw::c_uint,
details_buf: *mut ::std::os::raw::c_char,
details_buf_len: *mut ::std::os::raw::c_uint,
) -> ::std::os::raw::c_int;
}