The library libgpg-error defines an error source for every
component of the GnuPG system. The error source part of an error
value is not well defined. As such it is mainly useful to improve the
diagnostic error message for the user.
If the error code part of an error value is 0, the whole error
value will be 0. In this case the error source part is of
course GPG_ERR_SOURCE_UNKNOWN.
The list of error sources that might occur in applications using Libgcrypt is:
GPG_ERR_SOURCE_UNKNOWN0.
GPG_ERR_SOURCE_GPGMEGPG_ERR_SOURCE_GPGGPG_ERR_SOURCE_GPGSMGPG_ERR_SOURCE_GCRYPTlibgcrypt, which is used by crypto engines
to perform cryptographic operations.
GPG_ERR_SOURCE_GPGAGENTGPG_ERR_SOURCE_PINENTRYGPG_ERR_SOURCE_SCDGPG_ERR_SOURCE_KEYBOXlibkbx, a library used by the crypto
engines to manage local keyrings.
GPG_ERR_SOURCE_USER_1GPG_ERR_SOURCE_USER_2GPG_ERR_SOURCE_USER_3GPG_ERR_SOURCE_USER_4GPG_ERR_SOURCE_USER_1 is the default for errors
created with gcry_error and gcry_error_from_errno,
unless you define GCRY_ERR_SOURCE_DEFAULT before including
gcrypt.h.