gnutls_dtls_cookie_send3
Api function
Usage
#include <gnutls/dtls.h>
int gnutls_dtls_cookie_send(gnutls_datum_t * key, void * client_data, size_t client_data_size, gnutls_dtls_prestate_st * prestate, gnutls_transport_ptr_t ptr, gnutls_push_func push_func);
Arguments
gnutls_datum_t * key
|
is a random key to be used at cookie generation |
|---|---|
void * client_data
|
contains data identifying the client (i.e. address) |
size_t client_data_size
|
The size of client's data |
gnutls_dtls_prestate_st * prestate
|
The previous cookie returned by |
gnutls_transport_ptr_t ptr
|
A transport pointer to be used by push_func |
gnutls_push_func push_func
|
A function that will be used to reply |
Overview
This function can be used to prevent denial of service attacks to a DTLS server by requiring the client to reply using a cookie sent by this function. That way it can be ensured that a client we allocated resources for (i.e. gnutls_session_t) is the one that the original incoming packet was originated from.
This function must be called at the first incoming packet, prior to allocating any resources and must be succeeded by gnutls_dtls_cookie_verify().
Returns
the number of bytes sent, or a negative error code.
Since
3.0
Releases
7 releases since Debian 8 (Jessie); the text changed 6 times.