aboutsummaryrefslogtreecommitdiff
path: root/src/sp
Commit message (Collapse)AuthorAge
* Various header file fixes... also fix compilation errors when HTTP is disabled.v2.0.0-alpha.6Garrett D'Amore2025-10-05
| | | | | | Also, some instances nni_aio are changed to nng_aio. We think we want to harmonize some of these types going forward as it will reduce the need to include headers hopefully letting us get away with just "defs.h" in more places.
* fixes #2158 Implement support for NNG_OPT_TLS_PEER_CN for WolfSSLGarrett D'Amore2025-10-05
| | | | | | | This also provides an implementation for getting ALT names, although nothing uses that yet. We plan to provide a new certificate API to replace these with a nicer API, as obtaining the full list of certs may be unreasonable.
* dtls: Add a test for "large" (1K) messagesGarrett D'Amore2025-09-28
|
* Fix dtls reconnect attempts.Garrett D'Amore2025-09-14
| | | | | | Once a DTLS client is started and has reasonably resolved things, it will restart message connections; this way we can restart after a failed connection attempt (e.g. if the CERT was bad or something.)
* dtls - additional test casesGarrett D'Amore2025-09-14
|
* dtls: use nng_err instead of int everywhereGarrett D'Amore2025-09-14
|
* Bump socket common socket stats for PUBGarrett D'Amore2025-09-09
|
* Add zone.h for illumos zones.Garrett D'Amore2025-08-24
|
* fixes #2146 need statistics for PUB protocolGarrett D'Amore2025-08-24
|
* dtls: only run the completion if we actually cancelledv2.0.0-alpha.5Garrett D'Amore2025-07-13
|
* DTLS: hold tls configurationGarrett D'Amore2025-07-13
|
* Hold the pipe across for the DTLS rx cb.Garrett D'Amore2025-06-22
|
* dtls: stop the pipe to solve use after freeGarrett D'Amore2025-06-21
|
* UDP: Signficant refactoring and simplification.Garrett D'Amore2025-06-08
| | | | | | | | | | | | | | This work is inspired by the DTLS work, and harmonizes the UDP implementation with DTLS somewhat. This should make it more resilient to failures, although there is no longer any attempt to guard against sequencing (reorders, dupes) errors. Applications that need such protection should either add it themselves, or use a transport which provides that guarantee (such as TCP). Note that with devices and and such in the way, such guarantees have never been perfect with SP anyway. The UDP transport header sizes for this are now just 8 bytes (beyond the UDP header itself.
* UDP: constify sockaddrs in some placesGarrett D'Amore2025-06-07
|
* Fix typos across docs, comments, and CMakemochalins2025-06-02
|
* Introduce DTLS transport for NNG.Garrett D'Amore2025-06-01
| | | | | | | | | | | | | This introduces a new experimental transport for DTLS, that provides encryption over UDP. It has a simpler protocol than the current UDP SP protocol (but we intend to fix that by making the UDP transport simpler in a follow up!) There are a few other fixes in the TLS layer itself, and in the build, that were needed to accomplish this work. Also there was an endianness bug in the UDP protocol handling, which is fixed here.
* Fix valgrind uninitialized complaint in UDP test.Garrett D'Amore2025-05-26
|
* Converted rest of transports to nng_err.Garrett D'Amore2025-04-27
|
* Converted property functions to use nng_err.Garrett D'Amore2025-04-27
|
* Transport listen: use nng_errGarrett D'Amore2025-04-27
|
* AIO: Use nng_err for cancellation callback instead of int.Garrett D'Amore2025-04-27
| | | | | | This is part of our work to improve type safety/awareness, and also improve debugger support, for NNG error codes. There are still quite a few more but this should help.
* tests: Add wss_test following pattern of TLS test.Garrett D'Amore2025-04-27
| | | | This replaces the convey style test.
* Fix typos in TLS test names.Garrett D'Amore2025-04-27
|
* Set server name for TLS test.Garrett D'Amore2025-04-19
|
* fix source formattingshikokuchuo2025-03-16
|
* req protocol: free msg early if no retriesshikokuchuo2025-03-16
|
* api: pipes should use nng_errGarrett D'Amore2025-01-14
|
* 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.
* platform: remove reader/writer locksGarrett D'Amore2025-01-05
| | | | | | The only thing using this was the transport lookups, but as those transports are now fully initialized in nng_init, we no longer need to lock that at all.
* Liberally apply some UWYI (use what you include) to header filesGarrett D'Amore2025-01-05
|
* 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.
* tests: TLS transport test resilience against EADDRINUSEGarrett D'Amore2025-01-04
| | | | This was occasionally causing "sigabrt" and similar failures in the tests.
* api: fold TLS supplemental headers into nng.hGarrett 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.
* ipc: minor adjustments for ECLOSED and loggingGarrett D'Amore2025-01-03
|
* fixes #2061 Move IPC parameters from uint64 to intGarrett D'Amore2025-01-03
|
* 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.
* protocols: move content from the protocols to nng.hGarrett D'Amore2025-01-01
| | | | | This should simplify things for developers. Just one header to include in most cases now.
* socket: rename nng_close to nng_socket_closeGarrett D'Amore2024-12-31
|
* websocket tests: more resilience against EADDRINUSEGarrett D'Amore2024-12-31
|
* udp: use a bounce buffer if we lack sendmsg or recvmsgGarrett D'Amore2024-12-29
| | | | | This includes checks to determine if those functions are present, and a test case to verify that scatter gather with UDP works.
* resolver: use explicit resolver item provided by callerGarrett D'Amore2024-12-28
| | | | | | This avoids the need to perform multiple allocations for dialing, eliminating additional potential failures. Cancellation is also made simpler and more perfectly robust.
* 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.
* fix for potential leaking connectionsGarrett D'Amore2024-12-26
|
* pipeline: use nni_aio_startGarrett D'Amore2024-12-26
|
* sub: remove some calls to nni_aio_beginGarrett D'Amore2024-12-26
|
* pair0: use nni_aio_startGarrett D'Amore2024-12-26
|
* pair1: use nni_aio_startGarrett D'Amore2024-12-26
|