= nng_http_res_alloc_error(3)
:copyright: Copyright 2018 mailto:info@staysail.tech[Staysail Systems, Inc.] + \
            Copyright 2018 mailto:info@capitar.com[Capitar IT Group BV] + \
            {blank} + \
            This document is supplied under the terms of the \
            https://opensource.org/licenses/MIT[MIT License].

== NAME

nng_http_res_alloc_error - allocate HTTP error response

== SYNOPSIS

[source, c]
-----------
#include <nng/nng.h>
#include <nng/supplemental/http/http.h>

int nng_http_res_alloc_error(nng_http_res **resp, uint16_t status);
-----------


== DESCRIPTION

The `nng_http_res_alloc_error()` function allocates a new HTTP response structure
and stores a pointer to it in __resp__.  The response will be initialized
with the status code _status_, a corresponding reason phrase, and
a simple HTML page containing the same information will be generated and
attached to the response. (Relevant HTTP headers will be set as well,
such as `Content-Type` and `Content-Length`.)  The HTTP protocol version
is also set to "HTTP/1.1".

TIP: This is the simplest way to generate an error response.

== RETURN VALUES

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

== ERRORS

`NNG_ENOMEM`:: Insufficient free memory exists to allocate a message.
`NNG_ENOTSUP`:: HTTP support not configured.

== SEE ALSO

<<nng_http_res_alloc#,nng_http_res_alloc(3)>>,
<<nng_http_res_free#,nng_http_res_free(3)>>,
<<nng_http_res_set_reason#,nng_http_res_set_reason(3)>>,
<<nng_http_res_set_status#,nng_http_res_set_status(3)>>,
<<nng_strerror#,nng_strerror(3)>>,
<<nng#,nng(7)>>

== COPYRIGHT

{copyright}
