-
Notifications
You must be signed in to change notification settings - Fork 109
API XMLSec GCrypt App
API Group: xmlsec_gcrypt_app
High-level application helpers for the GCrypt back-end.
Application support functions for GCrypt.
XML Security Library (http://www.aleksey.com/xmlsec).
This is free software; see the Copyright file in the source distribution for precise wording.
Copyright (C) 2002-2026 Aleksey Sanin aleksey@aleksey.com. All Rights Reserved.
int xmlSecGCryptAppInit(const char *config);Source: include/xmlsec/gcrypt/app.h
Initializes the GCrypt crypto engine.
General crypto engine initialization. This function is used by the XMLSec command-line utility and is called before the xmlSecInit function.
Parameters:
-
config— the path to GCrypt configuration (unused).
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppShutdown(void);Source: include/xmlsec/gcrypt/app.h
Shuts down the GCrypt crypto engine.
General crypto engine shutdown. This function is used by the XMLSec command-line utility and is called after the xmlSecShutdown function.
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr);Source: include/xmlsec/gcrypt/app.h
Initializes the default key manager for GCrypt.
Initializes mngr with simple keys store xmlSecSimpleKeysStoreId and a default GCrypt crypto key data stores.
Parameters:
-
mngr— the pointer to keys manager.
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr key);Source: include/xmlsec/gcrypt/app.h
Adds key to the keys manager.
Adds key to the keys manager mngr created with xmlSecGCryptAppDefaultKeysMngrInit function.
Parameters:
-
mngr— the pointer to keys manager. -
key— the pointer to key.
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppDefaultKeysMngrVerifyKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr key, xmlSecKeyInfoCtxPtr keyInfoCtx);Source: include/xmlsec/gcrypt/app.h
Verifies key using the keys manager.
Verifies key with the keys manager mngr created with xmlSecCryptoAppDefaultKeysMngrInit function:
- Checks that key certificate is present
- Checks that key certificate is valid
Adds key to the keys manager mngr created with xmlSecCryptoAppDefaultKeysMngrInit function.
Parameters:
-
mngr— the pointer to keys manager. -
key— the pointer to key. -
keyInfoCtx— the key info context for verification.
Returns: 1 if key is verified, 0 otherwise, or a negative value if an error occurs.
int xmlSecGCryptAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char *uri);Source: include/xmlsec/gcrypt/app.h
Loads the XML keys file into the keys manager.
Loads XML keys file from uri to the keys manager mngr created with xmlSecGCryptAppDefaultKeysMngrInit function.
Parameters:
-
mngr— the pointer to keys manager. -
uri— the uri.
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char *filename, xmlSecKeyDataType type);Source: include/xmlsec/gcrypt/app.h
Saves keys from mngr to XML keys file.
Parameters:
-
mngr— the pointer to keys manager. -
filename— the destination filename. -
type— the type of keys to save (public/private/symmetric).
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char *filename, xmlSecKeyDataFormat format, xmlSecKeyDataType type);Source: include/xmlsec/gcrypt/app.h
GCrypt does not support X509 certificates.
Reads cert from filename and adds to the list of trusted or known untrusted certs in store.
Parameters:
-
mngr— the keys manager. -
filename— the certificate file. -
format— the certificate file format. -
type— the flag that indicates is the certificate infilenametrusted or not.
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppKeysMngrCrlLoad(xmlSecKeysMngrPtr mngr, const char *filename, xmlSecKeyDataFormat format);Source: include/xmlsec/gcrypt/app.h
GCrypt does not support X509 certificates.
Reads crls from filename and adds to the list of crls in store.
Parameters:
-
mngr— the keys manager. -
filename— the CRL file. -
format— the CRL file format.
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppKeysMngrCrlLoadAndVerify(xmlSecKeysMngrPtr mngr, const char *filename, xmlSecKeyDataFormat format, xmlSecKeyInfoCtxPtr keyInfoCtx);Source: include/xmlsec/gcrypt/app.h
GCrypt does not support X509 certificates.
Atomically loads and verifies a CRL from filename.
Parameters:
-
mngr— the keys manager. -
filename— the CRL filename. -
format— the CRL format (PEM or DER). -
keyInfoCtx— the key info context for verification parameters.
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const xmlSecByte *data, xmlSecSize dataSize, xmlSecKeyDataFormat format, xmlSecKeyDataType type);Source: include/xmlsec/gcrypt/app.h
GCrypt does not support X509 certificates.
Reads cert from binary buffer data and adds to the list of trusted or known untrusted certs in store.
Parameters:
-
mngr— the keys manager. -
data— the certificate binary data. -
dataSize— the certificate binary data size. -
format— the certificate file format. -
type— the flag that indicates is the certificate trusted or not.
Returns: 0 on success or a negative value otherwise.
xmlSecKeyPtr xmlSecGCryptAppKeyLoadEx(const char *filename, xmlSecKeyDataType type, xmlSecKeyDataFormat format, const char *pwd, void *pwdCallback, void *pwdCallbackCtx);Source: include/xmlsec/gcrypt/app.h
Reads a key from a file.
Parameters:
-
filename— the key filename. -
type— the expected key type. -
format— the key file format. -
pwd— the key file password. -
pwdCallback— the key password callback. -
pwdCallbackCtx— the user context for password callback.
Returns: pointer to the key or NULL if an error occurs.
xmlSecKeyPtr xmlSecGCryptAppKeyLoadMemory(const xmlSecByte *data, xmlSecSize dataSize, xmlSecKeyDataFormat format, const char *pwd, void *pwdCallback, void *pwdCallbackCtx);Source: include/xmlsec/gcrypt/app.h
Reads a key from the memory buffer.
Parameters:
-
data— the binary key data. -
dataSize— the size of binary key. -
format— the key file format. -
pwd— the key file password. -
pwdCallback— the key password callback. -
pwdCallbackCtx— the user context for password callback.
Returns: pointer to the key or NULL if an error occurs.
xmlSecKeyPtr xmlSecGCryptAppPkcs12Load(const char *filename, const char *pwd, void *pwdCallback, void *pwdCallbackCtx);Source: include/xmlsec/gcrypt/app.h
GCrypt does not support X509 certificates.
Reads a key and all associated certificates from the PKCS12 file. For uniformity, call xmlSecGCryptAppKeyLoadEx instead of this function. Pass in format=xmlSecKeyDataFormatPkcs12.
Parameters:
-
filename— the PKCS12 key filename. -
pwd— the PKCS12 file password. -
pwdCallback— the password callback. -
pwdCallbackCtx— the user context for password callback.
Returns: pointer to the key or NULL if an error occurs.
xmlSecKeyPtr xmlSecGCryptAppPkcs12LoadMemory(const xmlSecByte *data, xmlSecSize dataSize, const char *pwd, void *pwdCallback, void *pwdCallbackCtx);Source: include/xmlsec/gcrypt/app.h
GCrypt does not support X509 certificates.
Reads a key and all associated certificates from the PKCS12 data in the memory buffer. For uniformity, call xmlSecGCryptAppKeyLoadMemory instead of this function. Pass in format=xmlSecKeyDataFormatPkcs12.
Parameters:
-
data— the PKCS12 binary data. -
dataSize— the PKCS12 binary data size. -
pwd— the PKCS12 file password. -
pwdCallback— the password callback. -
pwdCallbackCtx— the user context for password callback.
Returns: pointer to the key or NULL if an error occurs.
int xmlSecGCryptAppKeyCertLoad(xmlSecKeyPtr key, const char *filename, xmlSecKeyDataFormat format);Source: include/xmlsec/gcrypt/app.h
GCrypt does not support X509 certificates.
Reads the certificate from filename and adds it to key.
Parameters:
-
key— the pointer to key. -
filename— the certificate filename. -
format— the certificate file format.
Returns: 0 on success or a negative value otherwise.
int xmlSecGCryptAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte *data, xmlSecSize dataSize, xmlSecKeyDataFormat format);Source: include/xmlsec/gcrypt/app.h
GCrypt does not support X509 certificates.
Reads the certificate from memory buffer and adds it to key.
Parameters:
-
key— the pointer to key. -
data— the certificate binary data. -
dataSize— the certificate binary data size. -
format— the certificate file format.
Returns: 0 on success or a negative value otherwise.
void * xmlSecGCryptAppGetDefaultPwdCallback(void);Source: include/xmlsec/gcrypt/app.h
Gets default password callback.
Returns: default password callback.