manpagez: man pages & more
info gpgme
Home | html | info | man

File: gpgme.info,  Node: Exchanging Data,  Next: Contexts,  Prev: Error Handling,  Up: Top

6 Exchanging Data
*****************

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.

 -- Data type: gpgme_data_t
     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.

 -- Data type: gpgme_off_t
     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.

 -- Data type: gpgme_ssize_t
     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.

* Menu:

* Creating Data Buffers::         Creating new data buffers.
* Destroying Data Buffers::       Releasing data buffers.
* Manipulating Data Buffers::     Operations on data buffers.

© manpagez.com 2000-2024
Individual documents may contain additional copyright information.