aboutsummaryrefslogtreecommitdiff
path: root/docs
Commit message (Collapse)AuthorAge
* http: The big HTTP API refactoring of January 2025.v2.0.0-alpha.3http-client-transGarrett D'Amore2025-01-09
| | | | | | | | | | | | | | | | | | | | | | This represents a major change in the HTTP code base, consisting of a complete revamp of the HTTP API. The changes here are too numerous to mention, but the end result should be a vastly simpler API for both server and client applications. Many needless allocations were removed by providing fixed buffers for various parameters and headers when possible. A few bugs were fixed. Most especially we have fixed some bugs around very large URIs and headers, and we have also addressed conformance bugs to more closely conform to RFCs 9110 and 9112. As part of this work, the APIs for WebSockets changed slightly as well. In particular the properties available for accessing headers have changed. There is still documentation conversion work to do, and additional functionality (such as proper support for chunked transfers), but this is a big step in the right direction.
* http: server callback API simplifiedGarrett D'Amore2025-01-06
| | | | | | | | | | This simplified API lets callbacks obtain the response from the connection objection directly, and does not require the aio to carry it as a parameter. Further, the request and response are both stored inline in the connection, reducing allocations. This is at present only for the server; the client will get a similar set of changes.
* args: Convert nng_opts_parse into a header only library using `nng_args_parse`.Garrett D'Amore2025-01-04
| | | | | | | | The API is identical, except that some names have changed, and this is now a header library in `nng/args.h` - so the core library does not need to carry this code in binaries. Being a header library also means it is not necessary to link against NNG, and it does not include any parts of NNG; it only depends on a standard C99 or C11 environment.
* api: Promote idhash supplemental API to coreGarrett D'Amore2025-01-04
|
* api: remove the supplemental platform.h headerGarrett D'Amore2025-01-04
|
* docs: remove converted nng_socket.7 docGarrett D'Amore2025-01-04
|
* docs: remove tls_engine stub docGarrett D'Amore2025-01-04
|
* api: fold TLS supplemental headers into nng.hGarrett D'Amore2025-01-04
|
* docs: minor revisions for migration guideGarrett D'Amore2025-01-04
|
* api: remove old protocol headersGarrett D'Amore2025-01-04
|
* api: rename nng_send_aio and nng_recv_aio to nng_socket_send and nng_socket_recvGarrett D'Amore2025-01-04
| | | | This aligns more closely with the nng_ctx functions.
* api: drop the 64-bit option accessors (no more 64-bit option types)Garrett D'Amore2025-01-03
|
* fixes #2061 Move IPC parameters from uint64 to intGarrett D'Amore2025-01-03
|
* docs: make the Staysail logo inline, with currentColorGarrett D'Amore2025-01-02
| | | | This makes it work better with different mdbook color schemes.
* docs: more transport doc updatesGarrett D'Amore2025-01-02
|
* docs: update some transport option docsGarrett D'Amore2025-01-02
|
* docs: remove references to asterisk wildcard, other tweaksGarrett D'Amore2025-01-02
|
* docs: document NNG_OPT_MAXTTL, other cleanupsGarrett D'Amore2025-01-02
|
* api: remove unused _uint64 options accessors for contexts and socketsGarrett D'Amore2025-01-01
| | | | Also, clarification and add socket option docs for MAXRECVSZ, RECONNMINT, RECONNMAXT
* docs: convert socket options to mdbookGarrett D'Amore2025-01-01
|
* docs: convert the context docs to mdbookGarrett D'Amore2025-01-01
|
* api: Remove the NNG_FLAG_ALLOCGarrett D'Amore2025-01-01
| | | | | | | | This flag failed to provide real zero copy that it was intended for, and it also involved extra allocations. Further, the API for it was brittle and error prone. Modern code should just work directly with nng_msg structures.
* sha1: move this to private websocket APIGarrett D'Amore2025-01-01
| | | | | | Nothing else uses it, and nothing else *should* use it because SHA1 is insecure. WebSockets have to use it by definition, unfortunately. The implementation is not very fast, but doesn't have to be for the use case of websocket keying.
* docs: remove some converted contentGarrett D'Amore2025-01-01
|
* docs: add missing msg header prototypesGarrett D'Amore2025-01-01
|
* docs: Hello 2025!Garrett D'Amore2025-01-01
|
* docs: converted and improved stream factory docsGarrett D'Amore2025-01-01
|
* docs: add an example of nng_recv_aio with subv2.0.0-alpha.2Garrett D'Amore2024-12-31
|
* docs: remove some old converted contentGarrett D'Amore2024-12-31
|
* docs: convert socket receive docsGarrett D'Amore2024-12-31
|
* doc: document socket send API, including an exampleGarrett D'Amore2024-12-31
|
* docs: remove stray backtickGarrett D'Amore2024-12-31
|
* docs: convert nng_stream_get familyGarrett D'Amore2024-12-31
|
* docs: nanomsg transition guide - set up linksGarrett D'Amore2024-12-31
| | | | | Most of these links don't go anywhere yet (waiting to be fleshed out), but at least they are filled out by the xrefs.md file.
* docs: clean up some old stuffGarrett D'Amore2024-12-31
|
* docs: drop old nng_iov content (converted)Garrett D'Amore2024-12-31
|
* api: add NNG1_MIGRATION transition assistance macroGarrett D'Amore2024-12-31
|
* socket: rename nng_close to nng_socket_closeGarrett D'Amore2024-12-31
|
* docs: progress on socket document conversionGarrett D'Amore2024-12-31
|
* docs: remove converted nng_stats_free old docGarrett D'Amore2024-12-31
|
* .gitignore updatesGarrett D'Amore2024-12-31
|
* docs: start of streams API documentationGarrett D'Amore2024-12-31
|
* docs: API chapter index fixesGarrett D'Amore2024-12-31
|
* docs: add xrefs for URL apiGarrett D'Amore2024-12-31
|
* docs: statistics updates, document nng_stat_parent (fixes #1896)Garrett D'Amore2024-12-31
|
* docs: fix URL documentationGarrett D'Amore2024-12-31
| | | | | | Document `nng_url_resolve_port`, make the structure opaque, fix port numbers to be uint32 (needed for some cases), and fix a missing `const` specifier.
* fixes #863 socket activation: for TCP and IPC (POSIX only)Garrett D'Amore2024-12-30
| | | | | | | | | This introduces a new option "NNG_OPT_LISTEN_FD", understood by TCP, TLS, and (on POSIX systems) IPC. This option is used to pass a file descriptor or handle (Windows) that is already listening (ready for ACCEPT to be called). For TCP and TLS, the socket must be of type AF_INET or AF_INET6, and for IPC it must be of type AF_UNIX.
* zerotier: removedGarrett D'Amore2024-12-26
| | | | | | | | | | All vestiges of ZeroTier have been removed. Also, as consequence, some binary values have changed (specifically the number of the address family used for NNG_AF_ABSTRACT.) We may create a new ZeroTier transport that makes use of lwIP to provide for ZeroTier and native host network coexistence, without requiring ZeroTier to participate in the native networking stack.
* aio: nng_aio_defer replaced by nng_aio_startGarrett D'Amore2024-12-26
| | | | | This represents an API change, and we remove the nng_aio_begin function as well, introducing the lightweight nng_aio_reset instead.
* aio: introduce NNG_ESTOPPEDGarrett D'Amore2024-12-26
| | | | | | | | | | | This error code results when an AIO is stopped permanently, as a result of nni_aio_close or nni_aio_stop. The associated AIO object cannot be used again. This discrimantes against a file being closed, or a temporary cancellation which might allow the aio to be reused. Consumers must check for this error status in their callbacks, and not resubmit an operation that failed with this error. Doing so, will result in an infinite loop of submit / errors.