---
name: "gnutls_ia_recv"
section: "3"
platform: "linux"
package: "gnutls-doc"
version: "2.8.6-1+squeeze3"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/gnutls_ia_recv"
---

# gnutls\_ia\_recv(3)

read data from the TLS/IA protocol

## NAME

gnutls\_ia\_recv - read data from the TLS/IA protocol

## SYNOPSIS

**#include \<gnutls/extra.h\>**

**ssize\_t gnutls\_ia\_recv(gnutls\_session\_t** *session***, char \*** *data***, size\_t** *sizeofdata***);**

## ARGUMENTS

- gnutls\_session\_t session

  is a **gnutls\_session\_t** structure.

- char \* data

  the buffer that the data will be read into, must hold \>= 12 bytes.

- size\_t sizeofdata

  the number of requested bytes, must be \>= 12.

## DESCRIPTION

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

If the server attempt to finish an application phase, this function will return **GNUTLS\_E\_WARNING\_IA\_IPHF\_RECEIVED** or **GNUTLS\_E\_WARNING\_IA\_FPHF\_RECEIVED**.  The caller should then invoke **gnutls\_ia\_verify\_endphase()**, and if it runs the client side, also send an endphase message of its own using gnutls\_ia\_endphase\_send.

If EINTR is returned by the internal push function (the default is *code*{**recv()**}) 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.

## RETURNS

The number of bytes received.  A negative error code is returned in case of an error.  The **GNUTLS\_E\_WARNING\_IA\_IPHF\_RECEIVED** and **GNUTLS\_E\_WARNING\_IA\_FPHF\_RECEIVED** errors are returned when an application phase finished message has been sent by the server.

## REPORTING BUGS

Report bugs to \<bug-gnutls@gnu.org\>. GnuTLS home page: http://www.gnu.org/software/gnutls/ General help using GNU software: http://www.gnu.org/gethelp/

## COPYRIGHT

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.

## SEE ALSO

The full documentation for **gnutls** is maintained as a Texinfo manual.  If the **info** and **gnutls** programs are properly installed at your site, the command

-

  **info gnutls**

should give you access to the complete manual.
