nn_symbol_info man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

NN_SYMBOL_INFO(3)		nanomsg manual		     NN_SYMBOL_INFO(3)

NAME
       nn_symbol_info - query the names and properties of nanomsg symbols

SYNOPSIS
       #include <nanomsg/nn.h>

       int nn_symbol_info (int i, struct nn_symbol_properties *buf, int
       buflen);

DESCRIPTION
       Retrieves the symbol name and value at index i. Indices start at 0. An
       index has no significance to its associated symbol; the mappings may
       change between library versions.

       The nn_symbol_properties has the following definition:

	   struct nn_symbol_properties {

	       /*  The constant value  */
	       int value;

	       /*  The constant name  */
	       const char* name;

	       /*  The constant namespace, or zero for namespaces themselves */
	       int ns;

	       /*  The option type for socket option constants	*/
	       int type;

	       /*  The unit for the option value for socket option constants  */
	       int unit;
	   };

       More structure members may be added in future, but input pointer will
       be written only up to buflen so ABI is forward-compatible.

       Typically a client will iterate through the symbols until
       nn_symbol_info returns NULL in order to collect all the symbols.

       All symbols exposed by nn_symbol_info are available directly in the C
       API, generally as preprocessor macros. Thus, this function is useful
       mostly for language bindings that can’t parse the header file and rely
       on retrieving the symbols in the runtime.

       Note that the NN_MSG symbol is not exported by the nn_symbol_info
       function. First, it is a pointer rather than an integer; second, the
       symbol is not supposed to be exported from language bindings to the
       user. Instead, language bindings should provide the zero-copy
       functionality in a language-specific way, if at all (zero-copy
       functionality may not make sense for some languages/bindings).

AVAILABLE NAMESPACES
       NN_NS_NAMESPACE
	   Equals to zero and denotes the NN_NS_* constants themselves

       NN_NS_VERSION
	   Nanomsg version constants

       NN_NS_DOMAIN
	   Socket domain (or address family) constants AF_SP, AF_SP_RAW

       NN_NS_TRANSPORT
	   Transport name constants (used for socket options mainly)

       NN_NS_PROTOCOL
	   Socket protocol constants

       NN_NS_OPTION_LEVEL
	   Socket option level constants (NN_SOL_SOCKET)

       NN_NS_SOCKET_OPTION
	   Socket options for NN_SOL_SOCKET level

       NN_NS_TRANSPORT_OPTION
	   Socket options for transport level (used with transport constants)

       NN_NS_OPTION_TYPE
	   The option types (described below)

       NN_NS_FLAG
	   The nn_send/nn_recv flags (only NN_DONTWAIT for now)

       NN_NS_ERROR
	   The errno values

       NN_NS_LIMIT
	   Various nanomsg limits (only NN_SOCKADDR_MAX for now)

       NN_NS_EVENT
	   Event flags (bit mask) for use with nn_poll (NN_POLLIN, NN_POLLOUT)

AVAILABLE OPTION TYPES
       NN_TYPE_NONE
	   No type, is returned for constants that are not socket options

       NN_TYPE_INT
	   The integer type

       NN_TYPE_STR
	   String (char *) type

       More types may be added in future nanomsg. You may enumerate all of
       them using the nn_symbol_info itself by checking NN_NS_OPTION_TYPE
       namespace.

AVAILABLE OPTION UNITS
       NN_UNIT_NONE
	   No unit, is returned for constants that are not socket options, or
	   do not have any meaningful unit (strings, integer values)

       NN_UNIT_BYTES
	   The option value is expressed in bytes

       NN_UNIT_MILLISECONDS
	   The option value is expressed in milliseconds

       NN_UNIT_PRIORITY
	   The option value is a priority, an integer from 1 to 16

       NN_UNIT_BOOLEAN
	   The option value is boolean, an integer 0 or 1

       More types may be added in future nanomsg. You may enumerate all of
       them using the nn_symbol_info itself by checking NN_NS_OPTION_TYPE
       namespace.

RETURN VALUE
       If i is valid, returns the number of bytes stored at the structure. The
       maximum value that can be returned is buflen.

       If i is out-of-range, nn_symbol_info returns zero.

EXAMPLE
	   int i;
	   for (i = 0; ; ++i) {
	       struct nn_symbol_properties sym;
	       int rc = nn_symbol_info (i, &sym, sizeof (sym));
	       if(rc == 0)
		   break;
	       assert (rc == sizeof (sym));
	       printf ("'%s' = %d\n", sym.name, sym.value);
	   }

SEE ALSO
       nn_symbol(3) nn_errno(3) nn_strerror(3) nanomsg(7)

AUTHORS
       Paul Colomiets <paul@colomiets.name[1]> Garrett D’Amore
       <garrett@damore.org[2]>

NOTES
	1. paul@colomiets.name
	   mailto:paul@colomiets.name

	2. garrett@damore.org
	   mailto:garrett@damore.org

nanomsg Unknown			  12/23/2015		     NN_SYMBOL_INFO(3)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net