



@deftypefun {ssize_t} {gnutls_record_recv_packet} (gnutls_session_t @var{session}, gnutls_packet_t * @var{packet})
@var{session}: is a @code{gnutls_session_t}  type.

@var{packet}: the structure that will hold the packet data

This is a lower-level function than @code{gnutls_record_recv()}  and allows
to directly receive the whole decrypted packet. That avoids a
memory copy, and is intended to be used by applications seeking high
performance.

The received packet is accessed using @code{gnutls_packet_get()}  and
must be deinitialized using @code{gnutls_packet_deinit()} . The returned
packet will be @code{NULL}  if the return value is zero (EOF).

@strong{Returns:} The number of bytes received and zero on EOF (for stream
connections).  A negative error code is returned in case of an error.

@strong{Since:} 3.3.5
@end deftypefun
