1#ifndef _C_SIGNATURE_VERIFIER_H
2#define _C_SIGNATURE_VERIFIER_H
This file contains macro declarations for importing and exporting symbols from library boundaries.
This file contains all type forward declarations returned by the library API.
This file contains types and constants used as parameters or return values.
Represents memory stored data.
Result of signature verification operation.
error_type CALLING_CONVENTION SignatureVerificationResult_GetStatus(SignatureVerificationResultHandle *handle, SignatureVerificationStatusType *result)
Get overall verification status.
error_type CALLING_CONVENTION SignatureVerificationResult_Release(SignatureVerificationResultHandle *handle)
Decrement the internal reference counter.
error_type CALLING_CONVENTION SignatureVerificationResult_GetSignerCertificate(SignatureVerificationResultHandle *handle, BufferHandle **result)
Get signer's certificate (DER-encoded)
error_type CALLING_CONVENTION SignatureVerificationResult_IsDocumentIntact(SignatureVerificationResultHandle *handle, boolean_type *result)
Check if document bytes are intact (ByteRange matches)
error_type CALLING_CONVENTION SignatureVerificationResult_GetSignerCommonName(SignatureVerificationResultHandle *handle, BufferHandle **result)
Get signer's common name from certificate.
error_type CALLING_CONVENTION SignatureVerificationResult_IsSignatureValid(SignatureVerificationResultHandle *handle, boolean_type *result)
Check if signature is cryptographically valid.
error_type CALLING_CONVENTION SignatureVerificationResult_GetMessage(SignatureVerificationResultHandle *handle, BufferHandle **result)
Get human-readable message describing verification result.
error_type CALLING_CONVENTION SignatureVerificationResult_GetCertificateChainAt(SignatureVerificationResultHandle *handle, size_type index, BufferHandle **result)
Get certificate from chain at index.
error_type CALLING_CONVENTION SignatureVerificationResult_IsCertificateTrusted(SignatureVerificationResultHandle *handle, boolean_type *result)
Check if certificate chain is trusted.
error_type CALLING_CONVENTION SignatureVerificationResult_GetCertificateChainCount(SignatureVerificationResultHandle *handle, size_type *result)
Get number of certificates in the chain.
Configuration settings for signature verification.
error_type CALLING_CONVENTION SignatureVerifier_Verify(const BufferHandle *signed_data, const BufferHandle *signature_contents, TrustedCertificateStoreHandle *trusted_store, SignatureVerificationSettingsHandle *settings, SignatureVerificationResultHandle **result)
Verify digital signature (low-level API)
Collection of trusted certificates for signature verification.
error_type CALLING_CONVENTION TrustedCertificateStore_LoadSystemDefaults(TrustedCertificateStoreHandle *handle)
Load system default trusted certificates.
error_type CALLING_CONVENTION TrustedCertificateStore_Release(TrustedCertificateStoreHandle *handle)
Decrement the internal reference counter.
error_type CALLING_CONVENTION TrustedCertificateStore_Create(TrustedCertificateStoreHandle **result)
Create an empty trusted certificate store.
error_type CALLING_CONVENTION TrustedCertificateStore_LoadFromDirectory(TrustedCertificateStoreHandle *handle, string_type directory_path)
Load certificates from directory (e.g., /etc/ssl/certs)
error_type CALLING_CONVENTION TrustedCertificateStore_AddCertificateFromPEM(TrustedCertificateStoreHandle *handle, const BufferHandle *pem_data)
Add a certificate from PEM format.
error_type CALLING_CONVENTION TrustedCertificateStore_AddCertificateFromDER(TrustedCertificateStoreHandle *handle, const BufferHandle *der_data)
Add a certificate from DER format.
uint32_t error_type
This is return value type of all API functions.
Definition c_types.h:25
int8_t boolean_type
Boolean type supported in C.
Definition c_types.h:31
uint32_t size_type
Size type defined in standard library.
Definition c_types.h:62
const char * string_type
C-Style string.
Definition c_types.h:82
SignatureVerificationStatusType
Overall status of signature verification.
Definition c_signature_verifier.h:37
@ SignatureStatus_MissingCertificate
Definition c_signature_verifier.h:47
@ SignatureStatus_WeakAlgorithm
Definition c_signature_verifier.h:46
@ SignatureStatus_CertificateRevoked
Definition c_signature_verifier.h:43
@ SignatureStatus_CertificateExpired
Definition c_signature_verifier.h:41
@ SignatureStatus_Invalid
Definition c_signature_verifier.h:40
@ SignatureStatus_CertificateUntrusted
Definition c_signature_verifier.h:44
@ SignatureStatus_Unknown
Definition c_signature_verifier.h:48
@ SignatureStatus_Valid
Definition c_signature_verifier.h:39
@ SignatureStatus_DocumentModified
Definition c_signature_verifier.h:45
@ SignatureStatus_Undefined
Definition c_signature_verifier.h:38
@ SignatureStatus_CertificateNotYetValid
Definition c_signature_verifier.h:42