<!-- NOTE: This assumes that any page referencing this is located
     in a directory two levels down.  Meaning ./api/somefile.md or
     similar.  mdbook cannot accommodate links that are called from
     different levels in the hierarchy. -->

<!-- Symbol cross reference -->

[`nng_alloc`]: ../api/memory.md#allocate-memory
[`nng_free`]: ../api/memory.md#deallocate-memory
[`nng_strdup`]: ../api/memory.md#duplicate-string
[`nng_strfree`]: ../api/memory.md#free-string
[`nng_time`]: ../api/time.md#time-type
[`nng_duration`]: ../api/time.md#duration-type
[`nng_clock`]: ../api/time.md#get-the-current-time
[`nng_msleep`]: ../api/time.md#wait-for-duration
[`nng_msg`]: ../api/msg.md#message-structure
[`nng_msg_alloc`]: ../api/msg.md#create-a-message
[`nng_msg_free`]: ../api/msg.md#destroy-a-message
[`nng_msg_body`]: ../api/msg.md#message-body
[`nng_msg_len`]: ../api/msg.md#message-body
[`nng_msg_clear`]: ../api/msg.md#clear-the-body
[`nng_msg_capacity`]: ../api/msg.md#message-size-and-capacity
[`nng_msg_realloc`]: ../api/msg.md#message-size-and-capacity
[`nng_msg_reserve`]: ../api/msg.md#message-size-and-capacity
[`nng_msg_append`]: ../api/msg.md#add-to-body
[`nng_msg_insert`]: ../api/msg.md#add-to-body
[`nng_msg_chop`]: ../api/msg.md#consume-from-body
[`nng_msg_trim`]: ../api/msg.md#consume-from-body
[`nng_msg_header`]: ../api/msg.md#message-header
[`nng_msg_header_len`]: ../api/msg.md#message-header
[`nng_msg_header_append`]: ../api/msg.md#append-or-insert-header
[`nng_msg_header_insert`]: ../api/msg.md#append-or-insert-header
[`nng_msg_header_clear`]: ../api/msg.md#clear-the-header
[`nng_msg_pipe`]: ../api/msg.md#message-pipe
[`nng_msg_get_pipe`]: ../api/msg.md#message-pipe
[`nng_msg_set_pipe`]: ../api/msg.md#message-pipe
[`nng_url`]: ../api/url.md#url-structure
[`nng_url_parse`]: ../api/url.md#parse-a-url
[`nng_url_free`]: ../api/url.md#destroy-a-url
[`nng_url_sprintf`]: ../api/url.md#format-a-url
[`nng_url_scheme`]: ../api/url.md#url-fields
[`nng_url_userinfo`]: ../api/url.md#url-fields
[`nng_url_hostname`]: ../api/url.md#url-fields
[`nng_url_port`]: ../api/url.md#url-fields
[`nng_url_path`]: ../api/url.md#url-fields
[`nng_url_query`]: ../api/url.md#url-fields
[`nng_url_fragment`]: ../api/url.md#url-fields
[`nng_url_clone`]: ../api/url.md#clone-a-url
[`nng_url_free`]: ../api/url.md#destroy-a-url
[`nng_url_resolve_port`]: ../api/url.md#update-a-url-port
[`nng_socket_pair`]: ../api/misc.md#create-socket-pair
[`nng_random`]: ../api/misc.md#get-random-number
[`nng_version`]: ../api/misc.md#report-library-version
[`nng_mtx`]: ../api/synch.md#mutual-exclusion-lock
[`nng_mtx_alloc`]: ../api/synch.md#creating-a-mutex
[`nng_mtx_free`]: ../api/synch.md#destroying-a-mutex
[`nng_mtx_lock`]: ../api/synch.md#acquiring-a-mutex
[`nng_mtx_unlock`]: ../api/synch.md#releasing-a-mutex
[`nng_cv`]: ../api/synch.md#condition-variable
[`nng_cv_alloc`]: ../api/synch.md#creating-a-condition-variable
[`nng_cv_free`]: ../api/synch.md#destroy-a-condition-variable
[`nng_cv_until`]: ../api/synch.md#waiting-for-the-condition
[`nng_cv_wait`]: ../api/synch.md#waiting-for-the-condition
[`nng_cv_wake`]: ../api/synch.md#signaling-the-condition
[`nng_cv_wake1`]: ../api/synch.md#signaling-the-condition
[`nng_stat`]: ../api/stats.md#statistic-structure
[`nng_stats_get`]: ../api/stats.md#collecting-a-snapshot
[`nng_stats_free`]: ../api/stats.md#freeing-a-snapshot
[`nng_stat_find`]: ../api/stats.md#finding-a-statistic
[`nng_stat_find_dialer`]: ../api/stats.md#finding-a-statistic
[`nng_stat_find_listener`]: ../api/stats.md#finding-a-statistic
[`nng_stat_find_socket`]: ../api/stats.md#finding-a-statistic
[`nng_stat_name`]: ../api/stats.md#statistic-identification
[`nng_stat_desc`]: ../api/stats.md#statistic-identification
[`nng_stat_type`]: ../api/stats.md#statistic-type
[`nng_stats_free`]: ../api/stats.md#freeing-a-snapshot
[`nng_stat_value`]: ../api/stats.md#statistic-value
[`nng_stat_bool`]: ../api/stats.md#statistic-value
[`nng_stat_string`]: ../api/stats.md#statistic-value
[`nng_stat_unit`]: ../api/stats.md#statistic-units
[`nng_stat_next`]: ../api/stats.md#traversing-the-three
[`nng_stat_child`]: ../api/stats.md#traversing-the-tree
[`nng_stat_parent`]: ../api/stats.md#traversing-the-tree
[`nng_stat_timestamp`]: ../api/stats.md#statistic-timestamp
[`nng_id_set`]: ../api/id_map.md#store-a-value
[`nng_strerror`]: ../api/errors.md#human-readable-error-message
[`nng_aio`]: ../api/aio.md#asynchronous-io-handle
[`nng_aio_alloc`]: ../api/aio.md#create-handle
[`nng_aio_free`]: ../api/aio.md#destroy-handle
[`nng_sleep_aio`]: ../api/time.md@wait-asynchronously
[`nng_aio`]: ../api/aio.md#asynchronous-i-o-handle
[`nng_aio_cancel`]: ../api/aio.md#cancellation
[`nng_aio_abort`]: ../api/aio.md#cancellation
[`nng_aio_stop`]: ../api/aio.md#cancellation
[`nng_aio_wait`]: ../api/aio.md#wait-for-completion
[`nng_aio_busy`]: ../api/aio.md#test-for-completion
[`nng_aio_result`]: ../api/aio.md#result-of-operation
[`nng_aio_get_msg`]: ../api/aio.md#messages
[`nng_aio_set_msg`]: ../api/aio.md#messages
[`nng_aio_count`]: ../api/aio.md#result-of-operation
[`nng_aio_set_timeout`]: ../api/aio.md#set-timeout
[`nng_aio_set_iov`]: ../api/aio.md#scatter-gather-vectors
[`nng_aio_get_output`]: ../api/aio.md#inputs-and-outputs
[`nng_aio_get_input`]: ../api/aio.md#inputs-and-outputs
[`nng_aio_set_input`]: ../api/aio.md#inputs-and-outputs
[`nng_aio_set_output`]: ../api/aio.md#inputs-and-outputs
[`nng_iov`]: ../api/aio.md#scatter-gather-vectors
[`nng_socket_id`]: ../api/sock.md#socket-identity
[`nng_socket_raw`]: ../api/sock.md#socket-identity
[`nng_socket_close`]: ../api/sock.md#closing-a-socket
[`nng_socket_proto_id`]: ../api/sock.md#socket-identity
[`nng_socket_proto_name`]: ../api/sock.md#socket-identity
[`nng_socket_peer_id`]: ../api/sock.md#socket-identity
[`nng_socket_peer_name`]: ../api/sock.md#socket-identity
[`nng_socket_get_recv_poll_fd`]: ../api/sock.md#polling-socket-events
[`nng_socket_get_send_poll_fd`]: ../api/sock.md#polling-socket-events
[`nng_stream`]: ../api/stream.md#stream-type
[`nng_stream_send`]: ../api/stream.md#sending-and-receiving-data
[`nng_stream_recv`]: ../api/stream.md#sending-and-receiving-data
[`nng_stream_close`]: ../api/stream.md#closing-a-stream
[`nng_stream_stop`]: ../api/stream.md#closing-a-stream
[`nng_stream_free`]: ../api/stream.md#closing-a-stream
[`nng_stream_get`]: ../api/stream.md#getting-stream-options
[`nng_stream_get_bool`]: ../api/stream.md#getting-stream-options
[`nng_stream_get_int`]: ../api/stream.md#getting-stream-options
[`nng_stream_get_ms`]: ../api/stream.md#getting-stream-options
[`nng_stream_get_size`]: ../api/stream.md#getting-stream-options
[`nng_stream_get_string`]: ../api/stream.md#getting-stream-options
[`nng_stream_dialer`]: ../api/stream.md#stream-factories
[`nng_stream_listener`]: ../api/stream.md#stream-factories
[`nng_stream_dialer_alloc`]: ../api/stream.md#creating-a-stream-factory
[`nng_stream_dialer_alloc_url`]: ../api/stream.md#creating-a-stream-factory
[`nng_stream_listener_alloc`]: ../api/stream.md#creating-a-stream-factory
[`nng_stream_listener_alloc_url`]: ../api/stream.md#creating-a-stream-factory
[`nng_stream_dialer_close`]: ../api/stream.md#closing-a-stream-factory
[`nng_stream_dialer_stop`]: ../api/stream.md#closing-a-stream-factory
[`nng_stream_dialer_free`]: ../api/stream.md#closing-a-stream-factory
[`nng_stream_listener_close`]: ../api/stream.md#closing-a-stream-factory
[`nng_stream_listener_stop`]: ../api/stream.md#closing-a-stream-factory
[`nng_stream_listener_free`]: ../api/stream.md#closing-a-stream-factory
[`nng_stream_dialer_dial`]: ../api/stream.md#making-outgoing-connections
[`nng_stream_listener_listen`]: ../api/stream.md#accepting-incoming-connections
[`nng_stream_listener_accept`]: ../api/stream.md#accepting-incoming-connections
[`nng_stream_listener_set_tls`]: ../api/stream.md#tls-configuration
[`nng_stream_listener_get_tls`]: ../api/stream.md#tls-configuration
[`nng_stream_dialer_set_tls`]: ../api/stream.md#tls-configuration
[`nng_stream_dialer_get_tls`]: ../api/stream.md#tls-configuration
[`nng_stream_dialer_get_bool`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_get_int`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_get_ms`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_get_size`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_get_string`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_set_bool`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_set_int`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_set_ms`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_set_size`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_set_addr`]: ../api/stream.md#stream-factory-options
[`nng_stream_dialer_set_string`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_get_bool`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_get_int`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_get_ms`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_get_size`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_get_string`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_set_bool`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_set_int`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_set_ms`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_set_size`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_set_addr`]: ../api/stream.md#stream-factory-options
[`nng_stream_listener_set_string`]: ../api/stream.md#stream-factory-options
[`nng_stream_peer_addr`]: ../api/stream.md#stream-addresses
[`nng_stream_self_addr`]: ../api/stream.md#stream-addresses
[`nng_init`]: ../api/init.md#initialization
[`nng_fini`]: ../api/init.md#finalization
[`nng_sub0_ctx_subscribe`]: ../proto/sub.md#context-operations
[`nng_sub0_ctx_unsubscribe`]: ../proto/sub.md#context-operations
[`nng_sub0_socket_subscribe`]: ../proto/sub.md#socket-operations
[`nng_sub0_socket_unsubscribe`]: ../proto/sub.md#socket-operations
[`nng_bus0_open`]: ../api/sock.md#opening-a-socket
[`nng_pair_open`]: ../api/sock.md#opening-a-socket
[`nng_pair0_open`]: ../api/sock.md#opening-a-socket
[`nng_pair1_open`]: ../api/sock.md#opening-a-socket
[`nng_pair1_open_poly`]: ../api/sock.md#opening-a-socket
[`nng_pub0_open`]: ../api/sock.md#opening-a-socket
[`nng_pull0_open`]: ../api/sock.md#opening-a-socket
[`nng_push0_open`]: ../api/sock.md#opening-a-socket
[`nng_rep0_open`]: ../api/sock.md#opening-a-socket
[`nng_req0_open`]: ../api/sock.md#opening-a-socket
[`nng_respondent0_open`]: ../api/sock.md#opening-a-socket
[`nng_sub0_open`]: ../api/sock.md#opening-a-socket
[`nng_surveyor0_open`]: ../api/sock.md#opening-a-socket
[`nng_bus0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_pub0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_pair0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_pair1_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_pull0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_push0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_rep0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_req0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_sub0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_surveyor0_open_raw`]: ../api/sock.md#raw-mode-sockets
[`nng_dialer_set_tls`]: ../TODO.md
[`nng_dialer_get_tls`]: ../TODO.md
[`nng_listener_set_tls`]: ../TODO.md
[`nng_listener_get_tls`]: ../TODO.md
[`nng_args_parse`]: ../api/args.md#parse-command-line-arguments
[`nng_aio_finish`]: ../api/aio.md#finishing-an-operation
[`nng_aio_reset`]: ../api/aio.md#starting-an-operation
[`nng_aio_start`]: ../api/aio.md#starting-an-operation
[`nng_recv`]: ../TODO.md
[`nng_listener_get_url`]: ../TODO.md
[`nng_dialer_get_url`]: ../TODO.md
[`nng_tls_config`]: ../TODO.md
[`nng_tls_config_own_cert`]: ../TODO.md
[`nng_listener_set_security_descriptor`]: ../TODO.md
[`nng_device`]: ../TODO.md
[`nng_dial`]: ../TODO.md
[`nng_dialer_create`]: ../TODO.md
[`nng_dialer_close`]: ../TODO.md
[`nng_dialer_set`]: ../TODO.md
[`nng_listen`]: ../TODO.md
[`nng_listener_create`]: ../TODO.md
[`nng_listener_close`]: ../TODO.md
[`nng_listener_set`]: ../TODO.md
[`nng_socket_set_bool`]: ../api/sock.md#socket-options
[`nng_socket_set_int`]: ../api/sock.md#socket-options
[`nng_socket_set_ms`]: ../api/sock.md#socket-options
[`nng_socket_set_size`]: ../api/sock.md#socket-options
[`nng_socket_get_bool`]: ../api/sock.md#socket-options
[`nng_socket_get_int`]: ../api/sock.md#socket-options
[`nng_socket_get_ms`]: ../api/sock.md#socket-options
[`nng_socket_get_size`]: ../api/sock.md#socket-options
[`nng_send`]: ../api/sock.md#nng_send
[`nng_sendmsg`]: ../api/sock.md#nng_sendmsg
[`nng_socket_send`]: ../api/sock.md#nng_socket_send
[`nng_recv`]: ../api/sock.md#nng_recv
[`nng_recvmsg`]: ../api/sock.md#nng_recvmsg
[`nng_socket_recv`]: ../api/sock.md#nng_socket_recv
[`nng_ctx_open`]: ../api/ctx.md#creating-a-context
[`nng_ctx_id`]: ../api/ctx.md#context-identity
[`nng_ctx_close`]: ../api/ctx.md#closing-a-context
[`nng_ctx_sendmsg`]: ../api/ctx.md#nng_ctx_sendmsg
[`nng_ctx_send`]: ../api/ctx.md#nng_ctx_send
[`nng_ctx_recvmsg`]: ../api/ctx.md#nng_ctx_recvmsg
[`nng_ctx_recv`]: ../api/ctx.md#nng_ctx_recv
[`nng_pipe`]: ../api/pipe.md#pipes
[`nng_pipe_id`]: ../api/pipe.md#pipe-identity
[`nng_pipe_close`]: ../api/pipe.md#closing-a-pipe
[`nng_pipe_dialer`]: ../api/pipe.md#pipe-creator
[`nng_pipe_listener`]: ../api/pipe.md#pipe-creator
[`nng_pipe_socket`]: ../api/pipe.md#pipe-creator
[`nng_pipe_get_bool`]: ../api/pipe.md#pipe-options
[`nng_pipe_get_int`]: ../api/pipe.md#pipe-options
[`nng_pipe_get_ms`]: ../api/pipe.md#pipe-options
[`nng_pipe_get_size`]: ../api/pipe.md#pipe-options
[`nng_pipe_get_string`]: ../api/pipe.md#pipe-options
[`nng_pipe_notify`]: ../api/pipe.md#pipe-notifications
[`nng_pipe_peer_addr`]: ../api/pipe.md#pipe-socket-addresses
[`nng_pipe_self_addr`]: ../api/pipe.md#pipe-socket-addresses
[`nng_sockaddr`]: ../TODO.md
[`nng_sockaddr_in`]: ../TODO.md
[`nng_sockaddr_in6`]: ../TODO.md
[`nng_sockaddr_ipc`]: ../TODO.md
[`nng_sockaddr_inproc`]: ../TODO.md
[`nng_sockaddr_abstract`]: ../TODO.md

<!-- HTTP -->

[`nng_http_client`]: ../api/http.md#client-object
[`nng_http`]: ../api/http.md#connection-object
[`nng_http_client_alloc`]: ../api/http.md#create-a-client
[`nng_http_client_free`]: ../api/http.md#destroy-a-client
[`nng_http_client_connect`]: ../api/http.md#creating-connections
[`nng_http_client_set_tls`]: ../api/http.md#client-tls
[`nng_http_client_get_tls`]: ../api/http.md#client-tls
[`nng_http_close`]: ../api/http.md#closing-the-connection
[`nng_http_reset`]: ../api/http.md#reset-connection-state
[`nng_http_get_version`]: ../api/http.md#http-protocol-versions
[`nng_http_set_version`]: ../api/http.md#http-protocol-versions
[`nng_http_get_method`]: ../api/http.md#http-method
[`nng_http_set_method`]: ../api/http.md#http-method
[`nng_http_set_uri`]: ../api/http.md#http-uri
[`nng_http_get_uri`]: ../api/http.md#http-uri
[`nng_http_get_reason`]: ../api/http.md#http-status
[`nng_http_status`]: ../api/http.md#http-status
[`nng_http_get_status`]: ../api/http.md#http-status
[`nng_http_set_status`]: ../api/http.md#http-status
[`nng_http_hijack`]: ../api/http.md#hijacking-connections
[`nng_http_get_header`]: ../api/http.md#retrieving-headers
[`nng_http_next_header`]: ../api/http.md#retrieving-headers
[`nng_http_add_header`]: ../api/http.md#modifying-headers
[`nng_http_set_header`]: ../api/http.md#modifying-headers
[`nng_http_del_header`]: ../api/http.md#modifying-headers
[`nng_http_copy_body`]: ../api/http.md#storing-body-content
[`nng_http_set_body`]: ../api/http.md#storing-body-content
[`nng_http_get_body`]: ../api/http.md#retrieving-body-content
[`nng_http_read_response_body`]: ../TODO.md
[`nng_http_read_request_body`]: ../TODO.md
[`nng_http_server_set_error`]: ../TODO.md
[`nng_http_server_set_redirect`]: ../TODO.md
[`nng_http_read`]: ../api/http.md#direct-read-and-write
[`nng_http_read`]: ../api/http.md#direct-read-and-write
[`nng_http_read_all`]: ../api/http.md#direct-read-and-write
[`nng_http_write`]: ../api/http.md#direct-read-and-write
[`nng_http_write_all`]: ../api/http.md#direct-read-and-write
[`nng_http_handler`]: ../api/http.md#handlers
[`nng_http_handler_alloc`]: ../api/http.md#handlers
[`nng_http_handler_free`]: ../api/http.md#freeing-handler
[`nng_http_write_response`]: ../api/http.md#sending-the-response-explicitly
[`nng_http_handler_collect_body`]: ../api/http.md#collecting-request-body
[`nng_http_handler_set_host`]: ../api/http.md#filtering-byt-host
[`nng_http_handler_set_method`]: ../api/http.md#setting-the-method
[`nng_http_handler_set_data`]: ../api/http.md#setting-the-callback-argument
[`nng_http_handler_set_tree`]: ../api/http.md#handling-an-entire-tree
[`nng_http_transact`]: ../api/http.md#submitting-the-transaction
[`nng_http_local_address`]: ../api/http.md#socket-addresses
[`nng_http_remote_address`]: ../api/http.md#socket-addresses

<!-- HTTP Status -->

[`NNG_HTTP_STATUS_CONTINUE`]: ../api/http.md#NNG_HTTP_STATUS_CONTINUE
[`NNG_HTTP_STATUS_SWITCHING`]: ../api/http.md#NNG_HTTP_STATUS_SWITCHING
[`NNG_HTTP_STATUS_PROCESSING`]: ../api/http.md#NNG_HTTP_STATUS_PROCESSING
[`NNG_HTTP_STATUS_OK`]: ../api/http.md#NNG_HTTP_STATUS_OK
[`NNG_HTTP_STATUS_CREATED`]: ../api/http.md#NNG_HTTP_STATUS_CREATED
[`NNG_HTTP_STATUS_ACCEPTED`]: ../api/http.md#NNG_HTTP_STATUS_ACCEPTED
[`NNG_HTTP_STATUS_NOT_AUTHORITATIVE`]: ../api/http.md#NNG_HTTP_STATUS_NOT_AUTHORITATIVE
[`NNG_HTTP_STATUS_NO_CONTENT`]: ../api/http.md#NNG_HTTP_STATUS_NO_CONTENT
[`NNG_HTTP_STATUS_RESET_CONTENT`]: ../api/http.md#NNG_HTTP_STATUS_RESET_CONTENT
[`NNG_HTTP_STATUS_PARTIAL_CONTENT`]: ../api/http.md#NNG_HTTP_STATUS_PARTIAL_CONTENT
[`NNG_HTTP_STATUS_MULTI_STATUS`]: ../api/http.md#NNG_HTTP_STATUS_MULTI_STATUS
[`NNG_HTTP_STATUS_ALREADY_REPORTED`]: ../api/http.md#NNG_HTTP_STATUS_ALREADY_REPORTED
[`NNG_HTTP_STATUS_IM_USED`]: ../api/http.md#NNG_HTTP_STATUS_IM_USED
[`NNG_HTTP_STATUS_MULTIPLE_CHOICES`]: ../api/http.md#NNG_HTTP_STATUS_MULTIPLE_CHOICES
[`NNG_HTTP_STATUS_MOVED_PERMANENTLY`]: ../api/http.md#NNG_HTTP_STATUS_MOVED_PERMANENTLY
[`NNG_HTTP_STATUS_FOUND`]: ../api/http.md#NNG_HTTP_STATUS_FOUND
[`NNG_HTTP_STATUS_SEE_OTHER`]: ../api/http.md#NNG_HTTP_STATUS_SEE_OTHER
[`NNG_HTTP_STATUS_NOT_MODIFIED`]: ../api/http.md#NNG_HTTP_STATUS_NOT_MODIFIED
[`NNG_HTTP_STATUS_USE_PROXY`]: ../api/http.md#NNG_HTTP_STATUS_USE_PROXY
[`NNG_HTTP_STATUS_TEMPORARY_REDIRECT`]: ../api/http.md#NNG_HTTP_STATUS_TEMPORARY_REDIRECT
[`NNG_HTTP_STATUS_PERMANENT_REDIRECT`]: ../api/http.md#NNG_HTTP_STATUS_PERMANENT_REDIRECT
[`NNG_HTTP_STATUS_BAD_REQUEST`]: ../api/http.md#NNG_HTTP_STATUS_BAD_REQUEST
[`NNG_HTTP_STATUS_UNAUTHORIZED`]: ../api/http.md#NNG_HTTP_STATUS_UNAUTHORIZED
[`NNG_HTTP_STATUS_PAYMENT_REQUIRED`]: ../api/http.md#NNG_HTTP_STATUS_PAYMENT_REQUIRED
[`NNG_HTTP_STATUS_FORBIDDEN`]: ../api/http.md#NNG_HTTP_STATUS_FORBIDDEN
[`NNG_HTTP_STATUS_NOT_FOUND`]: ../api/http.md#NNG_HTTP_STATUS_NOT_FOUND
[`NNG_HTTP_STATUS_METHOD_NOT_ALLOWED`]: ../api/http.md#NNG_HTTP_STATUS_METHOD_NOT_ALLOWED
[`NNG_HTTP_STATUS_METHOD_NOT_ACCEPTABLE`]: ../api/http.md#NNG_HTTP_STATUS_METHOD_NOT_ACCEPTABLE
[`NNG_HTTP_STATUS_METHOD_PROXY_AUTH_REQUIRED`]: ../api/http.md#NNG_HTTP_STATUS_METHOD_PROXY_AUTH_REQUIRED
[`NNG_HTTP_STATUS_REQUEST_TIMEOUT`]: ../api/http.md#NNG_HTTP_STATUS_REQUEST_TIMEOUT
[`NNG_HTTP_STATUS_CONFLICT`]: ../api/http.md#NNG_HTTP_STATUS_CONFLICT
[`NNG_HTTP_STATUS_GONE`]: ../api/http.md#NNG_HTTP_STATUS_GONE
[`NNG_HTTP_STATUS_LENGTH_REQUIRED`]: ../api/http.md#NNG_HTTP_STATUS_LENGTH_REQUIRED
[`NNG_HTTP_STATUS_PRECONDITION_FAILED`]: ../api/http.md#NNG_HTTP_STATUS_PRECONDITION_FAILED
[`NNG_HTTP_STATUS_CONTENT_TOO_LARGE`]: ../api/http.md#NNG_HTTP_STATUS_CONTENT_TOO_LARGE
[`NNG_HTTP_STATUS_URI_TOO_LONG`]: ../api/http.md#NNG_HTTP_STATUS_URI_TOO_LONG
[`NNG_HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE`]: ../api/http.md#NNG_HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE
[`NNG_HTTP_STATUS_RANGE_NOT_SATISFIABLE`]: ../api/http.md#NNG_HTTP_STATUS_RANGE_NOT_SATISFIABLE
[`NNG_HTTP_STATUS_EXPECTATION_FAILED`]: ../api/http.md#NNG_HTTP_STATUS_EXPECTATION_FAILED
[`NNG_HTTP_STATUS_TEAPOT`]: ../api/http.md#NNG_HTTP_STATUS_TEAPOT
[`NNG_HTTP_STATUS_UNPROCESSABLE_ENTITY`]: ../api/http.md#NNG_HTTP_STATUS_UNPROCESSABLE_ENTITY
[`NNG_HTTP_STATUS_LOCKED`]: ../api/http.md#NNG_HTTP_STATUS_LOCKED
[`NNG_HTTP_STATUS_FAILED_DEPENDENCY`]: ../api/http.md#NNG_HTTP_STATUS_FAILED_DEPENDENCY
[`NNG_HTTP_STATUS_TOO_EARLY`]: ../api/http.md#NNG_HTTP_STATUS_TOO_EARLY
[`NNG_HTTP_STATUS_UPGRADE_REQUIRED`]: ../api/http.md#NNG_HTTP_STATUS_UPGRADE_REQUIRED
[`NNG_HTTP_STATUS_PRECONDITION_REQUIRED`]: ../api/http.md#NNG_HTTP_STATUS_PRECONDITION_REQUIRED
[`NNG_HTTP_STATUS_TOO_MANY_REQUESTS`]: ../api/http.md#NNG_HTTP_STATUS_TOO_MANY_REQUESTS
[`NNG_HTTP_STATUS_HEADERS_TOO_LARGE`]: ../api/http.md#NNG_HTTP_STATUS_HEADERS_TOO_LARGE
[`NNG_HTTP_STATUS_UNAVAIL_LEGAL_REASONS`]: ../api/http.md#NNG_HTTP_STATUS_UNAVAIL_LEGAL_REASONS
[`NNG_HTTP_STATUS_INTERNAL_SERVER_ERROR`]: ../api/http.md#NNG_HTTP_STATUS_INTERNAL_SERVER_ERROR
[`NNG_HTTP_STATUS_NOT_IMPLEMENTED`]: ../api/http.md#NNG_HTTP_STATUS_NOT_IMPLEMENTED
[`NNG_HTTP_STATUS_BAD_GATEWAY`]: ../api/http.md#NNG_HTTP_STATUS_BAD_GATEWAY
[`NNG_HTTP_STATUS_SERVICE_UNAVAILABLE`]: ../api/http.md#NNG_HTTP_STATUS_SERVICE_UNAVAILABLE
[`NNG_HTTP_STATUS_GATEWAY_TIMEOUT`]: ../api/http.md#NNG_HTTP_STATUS_GATEWAY_TIMEOUT
[`NNG_HTTP_STATUS_HTTP_VERSION_NOT_SUPP`]: ../api/http.md#NNG_HTTP_STATUS_HTTP_VERSION_NOT_SUPP
[`NNG_HTTP_STATUS_VARIANT_ALSO_NEGOTIATES`]: ../api/http.md#NNG_HTTP_STATUS_VARIANT_ALSO_NEGOTIATES
[`NNG_HTTP_STATUS_INSUFFICIENT_STORAGE`]: ../api/http.md#NNG_HTTP_STATUS_INSUFFICIENT_STORAGE
[`NNG_HTTP_STATUS_LOOP_DETECTED`]: ../api/http.md#NNG_HTTP_STATUS_LOOP_DETECTED
[`NNG_HTTP_STATUS_NOT_EXTENDED`]: ../api/http.md#NNG_HTTP_STATUS_NOT_EXTENDED
[`NNG_HTTP_STATUS_NETWORK_AUTH_REQUIRED`]: ../api/http.md#NNG_HTTP_STATUS_NETWORK_AUTH_REQUIRED

<!-- TLS -->

[`nng_tls_cert`]: ../TODO.md
[`nng_tls_cert`]: ../TODO.md

<!-- Macros -->

[`NNG_OK`]: ../api/errors.md#NNG_OK
[`NNG_EINTR`]: ../api/errors.md#NNG_EINTR
[`NNG_ENOMEM`]: ../api/errors.md#NNG_ENOMEM
[`NNG_EINVAL`]: ../api/errors.md#NNG_EINVAL
[`NNG_EBUSY`]: ../api/errors.md#NNG_EBUSY
[`NNG_ETIMEDOUT`]: ../api/errors.md#NNG_ETIMEDOUT
[`NNG_ECONNREFUSED`]: ../api/errors.md#NNG_ECONNREFUSED
[`NNG_ECLOSED`]: ../api/errors.md#NNG_ECLOSED
[`NNG_EPROTO`]: ../api/errors.md#NNG_EPROTO
[`NNG_EAGAIN`]: ../api/errors.md#NNG_EAGAIN
[`NNG_ENOTSUP`]: ../api/errors.md#NNG_ENOTSUP
[`NNG_EADDRINUSE`]: ../api/errors.md#NNG_EADDRINUSE
[`NNG_ESTATE`]: ../api/errors.md#NNG_ESTATE
[`NNG_ENOENT`]: ../api/errors.md#NNG_ENOENT
[`NNG_EUNREACHABLE`]: ../api/errors.md#NNG_EUNREACHABLE
[`NNG_EADDRINVAL`]: ../api/errors.md#NNG_EADDRINVAL
[`NNG_EPERM`]: ../api/errors.md#NNG_EPERM
[`NNG_EMSGSIZE`]: ../api/errors.md#NNG_EMSGSIZE
[`NNG_ECONNABORTED`]: ../api/errors.md#NNG_ECONNABORTED
[`NNG_ECONNRESET`]: ../api/errors.md#NNG_ECONNRESET
[`NNG_ECANCELED`]: ../api/errors.md#NNG_ECANCELED
[`NNG_ENOFILES`]: ../api/errors.md#NNG_ENOFILES
[`NNG_ENOSPC`]: ../api/errors.md#NNG_ENOSPC
[`NNG_EEXIST`]: ../api/errors.md#NNG_EEXIST
[`NNG_EREADONLY`]: ../api/errors.md#NNG_EREADONLY
[`NNG_EWRITEONLY`]: ../api/errors.md#NNG_EWRITEONLY
[`NNG_ECRYPTO`]: ../api/errors.md#NNG_ECRYPTO
[`NNG_EPEERAUTH`]: ../api/errors.md#NNG_EPEERAUTH
[`NNG_EBADTYPE`]: ../api/errors.md#NNG_EBADTYPE
[`NNG_ECONNSHUT`]: ../api/errors.md#NNG_ECONNSHUT
[`NNG_EINTERNAL`]: ../api/errors.md#NNG_EINTERNAL
[`NNG_ESTOPPED`]: ../api/errors.md#NNG_ESTOPPED
[`NNG_ESYSERR`]: ../api/errors.md#NNG_ESYSERR
[`NNG_ETRANERR`]: ../api/errors.md#NNG_ETRANERR
[`NNG_DURATION_INFINITE`]: ../api/time.md#duration-type
[`NNG_DURATION_DEFAULT`]: ../api/time.md#duration-type
[`NNG_DURATION_ZERO`]: ../api/time.md#duration-type
[`NNG_MAJOR_VERSION`]: ../api/misc.md#report-library-version
[`NNG_MINOR_VERSION`]: ../api/misc.md#report-library-version
[`NNG_PATCH_VERSION`]: ../api/misc.md#report-library-version
[`NNG_STAT_ID`]: ../api/stats.md#NNG_STAT_ID
[`NNG_STAT_COUNTER`]: ../api/stats.md#NNG_STAT_COUNTER
[`NNG_STAT_LEVEL`]: ../api/stats.md#NNG_STAT_LEVEL
[`NNG_STAT_SCOPE`]: ../api/stats.md#NNG_STAT_SCOPE
[`NNG_STAT_STRING`]: ../api/stats.md#NNG_STAT_STRING
[`NNG_STAT_BOOLEAN`]: ../api/stats.md#NNG_STAT_BOOLEAN
[`NNG_UNIT_NONE`]: ../api/stats.md#statistic-units
[`NNG_UNIT_BYTES`]: ../api/stats.md#statistic-units
[`NNG_UNIT_MESSAGES`]: ../api/stats.md#statistic-units
[`NNG_UNIT_MILLIS`]: ../api/stats.md#statistic-units
[`NNG_UNIT_EVENTS`]: ../api/stats.md#statistic-units
[`NNG_FLAG_NONBLOCK`]: ../TODO.md
[`NNG_OPT_LISTEN_FD`]: ../api/streams.md#socket-activation
[`NNG_OPT_MAXTTL`]: ../api/sock.md#NNG_OPT_MAXTTL
[`NNG_OPT_RECONNMAXT`]: ../api/sock.md#NNG_OPT_RECONNMAXT
[`NNG_OPT_RECONNMINT`]: ../api/sock.md#NNG_OPT_RECONNMINT
[`NNG_OPT_SENDTIMEO`]: ../api/sock.md#NNG_OPT_SENDTIMEO
[`NNG_OPT_RECVTIMEO`]: ../api/sock.md#NNG_OPT_RECVTIMEO
[`NNG_OPT_SENDBUF`]: ../api/sock.md#NNG_OPT_SENDBUF
[`NNG_OPT_RECVBUF`]: ../api/sock.md#NNG_OPT_RECVBUF
[`NNG_OPT_RECVMAXSZ`]: ../api/sock.md#NNG_OPT_RECVMAXSZ
[`NNG_OPT_PEER_UID`]: ../tran/ipc.md#NNG_OPT_PEER_UID
[`NNG_OPT_PEER_GID`]: ../tran/ipc.md#NNG_OPT_PEER_GID
[`NNG_OPT_PEER_PID`]: ../tran/ipc.md#NNG_OPT_PEER_PID
[`NNG_OPT_PEER_ZONEID`]: ../tran/ipc.md#NNG_OPT_PEER_ZONEID
[`NNG_OPT_SUB_PREF_NEW`]: ../proto/sub.md#protocol-options
[`NNG_OPT_IPC_PERMISSIONS`]: ../tran/ipc.md#NNG_OPT_IPC_PERMISSIONS
[`NNG_SOCKET_INITIALIZER`]: ../api/sock.md#socket-structure
[`NNG_CTX_INITIALIZER`]: ../api/ctx.md#context-structure
[`NNG_PIPE_INITIALIZER`]: ../api/pipe.md#initialization
[`NNG_PIPE_EV_ADD_PRE`]: ../api/pipe.md#NNG_PIPE_EV_ADD_PRE
[`NNG_PIPE_EV_ADD_POST`]: ../api/pipe.md#NNG_PIPE_EV_ADD_POST
[`NNG_PIPE_EV_REM_POST`]: ../api/pipe.md#NNG_PIPE_EV_REM_POST

<!-- Protocols -->

[bus]: ../proto/bus.md
[pair]: ../proto/pair.md
[pub]: ../proto/pub.md
[sub]: ../proto/sub.md
[pull]: ../proto/pull.md
[push]: ../proto/push.md
[req]: ../proto/req.md
[rep]: ../proto/rep.md
[surveyor]: ../proto/surveyor.md
[respondent]: ../proto/respondent.md

<!-- Transports -->

[socktran]: ../tran/socket.md
[ipc]: ../tran/ipc.md
[inproc]: ../tran/inproc.md
[tcp]: ../tran/tcp.md
[udp]: ../tran/udp.md

<!-- Concept index -->

[aio]: ../api/aio.md
[cooked]: ../api/sock.md#raw-mode-sockets
[raw]: ../api/sock.md#raw-mode-sockets
[pipe]: ../api/pipe.md
[socket]: ../api/sock.md
[context]: ../api/ctx.md
[device]: ../TODO.md
[dialer]: ../TODO.md
[listener]: ../TODO.md
[message]: ../api/msg.md
[stream]: ../api/stream.md
[message-body]: ../api/msg.md#message-body
[message-header]: ../api/msg.md#message-header
[synchronization]: ../api/synch.md
[mutex]: ../api/synch.md#mutual-exclusion-lock
[condvar]: ../api/synch.md#condition-variable
[thread]: ../api/thread.md
[statistic]: ../api/stats.md
[time]: ../api/time.md
[error]: ../api/errors.md
[duration]: ../api/time.md#duration-type
[polyamorous]: ../proto/pair.md#polyamorous-mode
[libnanomsg]: https://github.com/nanomsg/nanomsg
[mangos]: https://github.com/nanomsg/mangos
[I/O provider]: ../api/aio.md#io-providers
