= nng_http_req_set_version(3http)
//
// Copyright 2018 Staysail Systems, Inc. <info@staysail.tech>
// Copyright 2018 Capitar IT Group BV <info@capitar.com>
//
// This document is supplied under the terms of the MIT License, a
// copy of which should be located in the distribution where this
// file was obtained (LICENSE.txt).  A copy of the license may also be
// found online at https://opensource.org/licenses/MIT.
//

== NAME

nng_http_req_set_version - set HTTP request protocol version

== SYNOPSIS

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

int nng_http_req_set_version(nng_http_req *req, const char *version);
----

== DESCRIPTION

The `nng_http_req_set_version()` sets the HTTP protocol version associated with
the request _req_ to _version_.
The _version_ must be a string containing
a valid HTTP protocol version, such as "HTTP/1.0".
The default value is "HTTP/1.1".

A local copy of the _version_ is made in the request _req_.

NOTE: No validation of the version supplied is performed.

NOTE: The library does not contain support for versions of HTTP other than
"HTTP/1.0" and "HTTP/1.1".
Specifying any other version may result in unspecified behavior.


== RETURN VALUES

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

== ERRORS

[horizontal]
`NNG_ENOMEM`:: Insufficient memory to perform the operation.
`NNG_ENOTSUP`:: No support for HTTP in the library.

== SEE ALSO

[.text-left]
<<nng_http_req_alloc.3http#,nng_http_req_alloc(3http)>>,
<<nng_http_req_get_version.3http#,nng_http_req_get_version(3http)>>,
<<nng.7#,nng(7)>>
