nanomsg next generation NNG  
Home GitHub Documentation

This documentation is for version v1.2.2 of nng, but the latest released version is v1.3.2. see the documentation for v1.3.2 for the most up-to-date information.


#include <nanomsg/nn.h>

int nn_device(int sock1, int sock2);


The nn_device() function is used to create a forwarder, where messages received on one of the two sockets sock1 and sock2 are forwarded to the other.

This function is provided for API compatibility with legacy libnanomsg. Consider using the relevant modern API instead.

The two sockets must be compatible, and must be raw mode sockets. More detail about devices and how they can be used is available in the new style nng_device() documentation.


This function blocks forever, and will return -1 only when one of the sockets is closed or an error occurs.



One of the two sockets is invalid or not open, or has


The sockets are not compatible with each other, or not both raw.


Insufficient memory is available.

NNG Reference Manual vv1.2.2 © 2019 Staysail Systems, Inc, © 2018 Capitar IT Group BV
This document is supplied under the MIT License.
nanomsg™ and nng™ are trademarks of Garrett D'Amore.