# nng_http_handler_set_data(3http) Manual Page

## NAME

nng_http_handler_set_data - set extra data for HTTP handler

## SYNOPSIS

    #include <nng/nng.h>
    #include <nng/supplemental/http/http.h>

    int nng_http_handler_set_data(nng_http_handler *handler, void *data,
        void (*dtor)(void *));

## DESCRIPTION

The `nng_http_handler_set_data()` function is used to set an additional data for the handler. The stored data can be retrieved later in the handler function using `nng_http_handler_get_data()`.

Additionally, when the handler is deallocated, if dtor is not `NULL`, then it will be called with data as its argument. The intended use of this function is deallocate any resources associated with data.

## RETURN VALUES

This function returns 0 on success, and non-zero otherwise.

## ERRORS

`NNG_ENOMEM` | Insufficient free memory to perform the operation.
`NNG_ENOTSUP` | No support for HTTP in the library.

## SEE ALSO

nng_http_handler_alloc(3http), nng_http_server_get_data(3http), nng_http_server_add_handler(3http), nng(7)