Go to the documentation of this file.
29 #ifndef SOPC_PKI_STACK_LIB_ITF_H_
30 #define SOPC_PKI_STACK_LIB_ITF_H_
323 char*** ppThumbprints,
458 const char* securityPolicyUri,
463 const bool bIncludeExistingList);
480 const char* pThumbprint,
481 const bool bIsTrusted,
Defines the common declarations for the PKI objects. The structures and macros defined in this file a...
void SOPC_PKIProvider_DeleteLeafProfile(SOPC_PKI_LeafProfile **ppProfile)
Delete a leaf profile.
void SOPC_PKIProvider_DeleteProfile(SOPC_PKI_Profile **ppProfile)
Delete a PKI profile.
SOPC_ReturnStatus SOPC_PKIProvider_CreateProfile(const char *securityPolicyUri, SOPC_PKI_Profile **ppProfile)
Create a PKI profile for a validation process. Backward interoperability is enabled....
Structure containing the certificate chain profile for the validation with SOPC_PKIProvider_ValidateC...
Definition: sopc_pki_struct_lib_internal.h:92
SOPC_ReturnStatus SOPC_PKIProvider_ProfileSetURL(SOPC_PKI_Profile *pProfile, const char *url)
Set the endpoint URL used for connection to the PKI profile.
The signed public key representation.
Definition: key_manager_cyclone.h:60
The PKIProvider object for the Public Key Infrastructure.
Definition: sopc_pki_struct_lib_internal.h:129
SOPC_ReturnStatus SOPC_PKIProvider_CreateFromStore(const char *directoryStorePath, SOPC_PKIProvider **ppPKI)
Creates the PKIProvider from a directory where certificates are stored.
SOPC_ReturnStatus SOPC_PKIProvider_WriteOrAppendToList(SOPC_PKIProvider *pPKI, SOPC_CertificateList **ppTrustedCerts, SOPC_CRLList **ppTrustedCrl, SOPC_CertificateList **ppIssuerCerts, SOPC_CRLList **ppIssuerCrl)
Extracts certificates from the PKI object.
SOPC_ReturnStatus SOPC_PKIProvider_LeafProfileSetURI(SOPC_PKI_LeafProfile *pProfile, const char *applicationUri)
Set the application URI to the leaf profile.
SOPC_ReturnStatus SOPC_PKIProvider_VerifyEveryCertificate(SOPC_PKIProvider *pPKI, const SOPC_PKI_ChainProfile *pProfile, uint32_t **pErrors, char ***ppThumbprints, uint32_t *pLength)
Verify every certificate of the PKI.
SOPC_ReturnStatus SOPC_PKIProvider_RemoveCertificate(SOPC_PKIProvider *pPKI, const char *pThumbprint, const bool bIsTrusted, bool *pIsRemoved, bool *pIsIssuer)
Remove all the certificates matching with the given thumbprint. If the Certificate is a CA Certificat...
SOPC_ReturnStatus SOPC_PKIProvider_WriteToStore(SOPC_PKIProvider *pPKI, const bool bEraseExistingFiles)
Write the certificate files in the updatedTrustList folder of the PKI storage. The updatedTrustList f...
SOPC_ReturnStatus SOPC_PKIProvider_ValidateCertificate(SOPC_PKIProvider *pPKI, const SOPC_CertificateList *pToValidate, const SOPC_PKI_Profile *pProfile, uint32_t *error)
Validation function for a certificate with the PKI chain.
SOPC_ReturnStatus SOPC_PKIProvider_CreateLeafProfile(const char *securityPolicyUri, SOPC_PKI_LeafProfile **ppProfile)
Create a leaf certificate profile from security policy to check certificate properties.
SOPC_ReturnStatus SOPC_PKIProvider_UpdateFromList(SOPC_PKIProvider *pPKI, const char *securityPolicyUri, SOPC_CertificateList *pTrustedCerts, SOPC_CRLList *pTrustedCrl, SOPC_CertificateList *pIssuerCerts, SOPC_CRLList *pIssuerCrl, const bool bIncludeExistingList)
Update the PKI with new lists of certificates and CRL.
SOPC_ReturnStatus SOPC_PKIProvider_CreateMinimalUserProfile(SOPC_PKI_Profile **ppProfile)
Create a minimal PKI profile for user validation process.
void SOPC_PKIProvider_Free(SOPC_PKIProvider **ppPKI)
Free a PKI provider.
Structure containing the leaf certificate profile for validation with SOPC_PKIProvider_ValidateCertif...
Definition: sopc_pki_struct_lib_internal.h:63
SOPC_ReturnStatus SOPC_PKIProvider_CheckLeafCertificate(const SOPC_CertificateList *pToValidate, const SOPC_PKI_LeafProfile *pProfile, uint32_t *error)
Check leaf certificate properties.
SOPC_ReturnStatus SOPC_PKIProvider_CopyRejectedList(SOPC_PKIProvider *pPKI, SOPC_CertificateList **ppCert)
Copy the list of certificate that have been rejected.
SOPC_ReturnStatus SOPC_PKIProvider_LeafProfileSetURL(SOPC_PKI_LeafProfile *pProfile, const char *url)
Set the endpoint URL used for connection to the leaf profile.
SOPC_ReturnStatus SOPC_PKIProvider_ProfileSetUsageFromType(SOPC_PKI_Profile *pProfile, SOPC_PKI_Type PKIType)
Set the properties to the PKI profile from the PKI type.
SOPC_ReturnStatus SOPC_PKIProvider_SetStorePath(const char *directoryStorePath, SOPC_PKIProvider *pPKI)
Redefines the directory store where the certificates will be stored with SOPC_PKIProvider_WriteToStor...
SOPC_PKI_Type
Type of PKI.
Definition: sopc_pki_decl.h:129
SOPC_ReturnStatus SOPC_PKIProvider_ProfileSetURI(SOPC_PKI_Profile *pProfile, const char *applicationUri)
Set the application URI to the PKI profile.
SOPC_ReturnStatus SOPC_PKIProvider_AddCertToRejectedList(SOPC_PKIProvider *pPKI, const SOPC_CertificateList *pCert)
Add a certificate to the PKI rejected list.
Structure containing the validation configuration.
Definition: sopc_pki_struct_lib_internal.h:118
SOPC_ReturnStatus SOPC_PKIPermissive_Create(SOPC_PKIProvider **ppPKI)
Creates a PKI Provider without security.
SOPC_ReturnStatus SOPC_PKIProvider_WriteRejectedCertToStore(SOPC_PKIProvider *pPKI)
Write the rejected certificates files in the rejected folder of the PKI storage. The format of the wr...
A list of Certificate Revocation Lists.
Definition: key_manager_cyclone.h:79
SOPC_ReturnStatus SOPC_PKIProvider_CreateFromList(SOPC_CertificateList *pTrustedCerts, SOPC_CRLList *pTrustedCrl, SOPC_CertificateList *pIssuerCerts, SOPC_CRLList *pIssuerCrl, SOPC_PKIProvider **ppPKI)
Create the PKIProvider from list representation.
SOPC_ReturnStatus SOPC_PKIProvider_LeafProfileSetUsageFromType(SOPC_PKI_LeafProfile *pProfile, SOPC_PKI_Type PKIType)
Set the keyUsage and extendedKeyUsage to the leaf profile from the PKI type.
SOPC_ReturnStatus
Definition: libs2opc_client.h:64