gnutls_ia_send(3) API function


#include <gnutls/extra.h>

ssize_t gnutls_ia_send(gnutls_session_t session, const char * data, size_t sizeofdata);


gnutls_session_t session
is a gnutls_session_t structure.
const char * data
contains the data to send
size_t sizeofdata
is the length of the data


Send TLS/IA application payload data. This function has the similar semantics with send(). The only difference is that it accepts a GnuTLS session, and uses different error codes.

The TLS/IA protocol is synchronous, so you cannot send more than one packet at a time. The client always send the first packet.

To finish an application phase in the server, use gnutls_ia_endphase_send(). The client cannot end an application phase unilaterally; rather, a client is required to respond with an endphase of its own if gnutls_ia_recv indicates that the server has sent one.

If the EINTR is returned by the internal push function (the default is send()} then GNUTLS_E_INTERRUPTED will be returned. If GNUTLS_E_INTERRUPTED or GNUTLS_E_AGAIN is returned, you must call this function again, with the same parameters; alternatively you could provide a NULL pointer for data, and 0 for size.


The number of bytes sent, or a negative error code.


Report bugs to <[email protected]>. GnuTLS home page: General help using GNU software:


Copyright © 2008 Free Software Foundation.
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.