gnutls_record_send_range — API function

Synopsis

#include <gnutls/gnutls.h>

ssize_t gnutls_record_send_range(gnutls_session_t session, const void * data, size_t data_size, const gnutls_range_st * range);

Arguments

gnutls_session_t session

is a gnutls_session_t type.

const void * data

contains the data to send.

size_t data_size

is the length of the data.

const gnutls_range_st * range

is the range of lengths in which the real data length must be hidden.

Description

This function operates like gnutls_record_send() but, while gnutls_record_send() adds minimal padding to each TLS record, this function uses the TLS extra-padding feature to conceal the real data size within the range of lengths provided. Some TLS sessions do not support extra padding (e.g. stream ciphers in standard TLS or SSL3 sessions). To know whether the current session supports extra padding, and hence length hiding, use the gnutls_record_can_use_length_hiding() function.

Note

This function currently is limited to blocking sockets.

Returns

The number of bytes sent (that is data_size in a successful invocation), or a negative error code.

Reporting Bugs

Report bugs to <bugs@gnutls.org>.
Home page: https://www.gnutls.org

See Also

The full documentation for gnutls is maintained as a Texinfo manual. If the /usr/share/doc/gnutls/ directory does not contain the HTML form visit

https://www.gnutls.org/manual/

Info

3.6.9 gnutls