Next: Contexts, Previous: Error Handling, Up: Top [Contents][Index]
A lot of data has to be exchanged between the user and the crypto
engine, like plaintext messages, ciphertext, signatures and
information about the keys. The technical details about exchanging
the data information are completely abstracted by GPGME.
The user provides and receives the data via gpgme_data_t
objects,
regardless of the communication protocol between GPGME and
the crypto engine in use.
The gpgme_data_t
type is a handle for a container for generic
data, which is used by GPGME to exchange data with the user.
gpgme_data_t
objects do not provide notifications on events.
It is assumed that read and write operations are blocking until data
is available. If this is undesirable, the application must ensure
that all GPGME data operations always have data available, for example
by using memory buffers or files rather than pipes or sockets. This
might be relevant, for example, if the external event loop mechanism
is used.
SINCE: 1.4.1
On POSIX platforms the gpgme_off_t
type is an alias for
off_t
; it may be used interchangeable. On Windows platforms
gpgme_off_t
is defined as a long (i.e. 32 bit) for 32 bit
Windows and as a 64 bit signed integer for 64 bit Windows.
The gpgme_ssize_t
type is an alias for ssize_t
. It has
only been introduced to overcome portability problems pertaining to
the declaration of ssize_t
by different toolchains.
• Creating Data Buffers: | Creating new data buffers. | |
• Destroying Data Buffers: | Releasing data buffers. | |
• Manipulating Data Buffers: | Operations on data buffers. |
Next: Contexts, Previous: Error Handling, Up: Top [Contents][Index]