gnutls_dtls_cookie_send − API function


, void * int gnutls_dtls_cookie_send(gnutls_datum_t * key

gnutls_datum_t * key
            is a random key to be used at cookie generation

void * client_data
            contains data identifying the client (i.e.

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

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

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


Report bugs to <>.
Home page:

Copyright © 2001‐2016 Free Software Foundation, Inc., and
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.


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