3 Protocols and Engines

GPGME supports several cryptographic protocols, however, it
does not implement them. Rather it uses backends (also called
engines) which implement the protocol. GPGME uses
inter-process communication to pass data back and forth between the
application and the backend, but the details of the communication
protocol and invocation of the backend is completely hidden by the
interface. All complexity is handled by GPGME. Where an
exchange of information between the application and the backend is
necessary, GPGME provides the necessary callback function
hooks and further interfaces.

Data type: enum gpgme_protocol_t

The gpgme_protocol_t type specifies the set of possible protocol
values that are supported by GPGME. The following protocols
are supported:

Reserved for future extension. You may use this to indicate that the
used protocol is not known to the application. Currently,
GPGME does not accept this value in any operation, though,
except for gpgme_get_protocol_name.