// This file was automatically generated by bifcl from /build/zeek/src/zeek/src/file_analysis/analyzer/x509/functions.bif (plugin mode).

#pragma once

#if defined(ZEEK_IN_NETVAR) || ! defined(_build_zeek_src_zeek_build_src_file_analysis_analyzer_x509_functions_bif)
#ifndef ZEEK_IN_NETVAR
#ifndef _build_zeek_src_zeek_build_src_file_analysis_analyzer_x509_functions_bif
#define _build_zeek_src_zeek_build_src_file_analysis_analyzer_x509_functions_bif
#include "zeek/zeek-bif.h"
#endif
#endif

namespace zeek::BifFunc { extern zeek::ValPtr x509_parse_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_parse_native(zeek::Val* cert); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_from_der_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_from_der_native(zeek::StringVal* der); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_get_certificate_string_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_get_certificate_string_native(zeek::Val* cert, int pem); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_ocsp_verify_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_ocsp_verify_native(zeek::Val* certs, zeek::StringVal* ocsp_reply, zeek::Val* root_certs, double verify_time); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_verify_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_verify_native(zeek::Val* certs, zeek::Val* root_certs, double verify_time); }
namespace zeek::BifFunc { extern zeek::ValPtr sct_verify_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern bool sct_verify_native(zeek::Val* cert, zeek::StringVal* logid, zeek::StringVal* log_key, zeek::StringVal* signature, zeek_uint_t timestamp, zeek_uint_t hash_algorithm, zeek::StringVal* issuer_key_hash); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_subject_name_hash_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_subject_name_hash_native(zeek::Val* cert, zeek_uint_t hash_alg); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_issuer_name_hash_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_issuer_name_hash_native(zeek::Val* cert, zeek_uint_t hash_alg); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_spki_hash_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_spki_hash_native(zeek::Val* cert, zeek_uint_t hash_alg); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_set_certificate_cache_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern bool x509_set_certificate_cache_native(zeek::Val* tbl); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_set_certificate_cache_hit_callback_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern bool x509_set_certificate_cache_hit_callback_native(zeek::Val* f); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_check_hostname_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern bool x509_check_hostname_native(zeek::StringVal* hostname, zeek::StringVal* certname); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_check_cert_hostname_bif(zeek::detail::Frame* frame, const zeek::Args*); }
namespace zeek::BifFunc { extern zeek::ValPtr x509_check_cert_hostname_native(zeek::Val* cert_opaque, zeek::StringVal* hostname); }

#endif
