aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* Revert "fixes#1175 nng_listen occasionally fails when reusing ipc socket on ↵Garrett D'Amore2023-02-05
| | | | | | Windows (#1562)" This reverts commit 1892e1d6d102d1fbd37e2c3bbb59dc35d81c8b33.
* Don't bump error counters for NNG_ECLOSED.Garrett D'Amore2023-02-05
|
* src: sp: tcp: Finish receive aio on close (#1636)Dmitry Shifrin2023-02-05
| | | | Finish receive aio on tcp pipe close
* fixes#1175 nng_listen occasionally fails when reusing ipc socket on Windows ↵Garrett D'Amore2023-02-05
| | | | (#1562)
* fixes 1543 (#1616)josh salit2023-02-05
| | | fixes #1543 by aborting tasks that may have been prepped, but not yet started.
* Fix PAIR v0 not finalizing the pollables when closing socket (#1640)Ricardo Catalinas Jiménez2023-02-05
| | | | This function needs to be pretty much identical between PAIR v0 and v1, it was missing just the call to release the pollable resources.
* Fill NNG_PKGS to request nng dependencies from installed location. (#1641)Garrett D'Amore2023-02-05
| | | | Signed-off-by: Andrey Vostrikov <andrey.vostrikov@cogentembedded.com> Co-authored-by: Andrey Vostrikov <andrey.vostrikov@cogentembedded.com>
* Update idhash.c (#1638)shikokuchuo2023-02-05
| | | Fix for UBSAN error. As `id_reg_map` is initialised as NULL and passing NULL to `memcpy()` is undefined. Should make no difference to compiled code. Purely to appease the automated checks I have to deal with on my side. Thanks!
* Fixes for some security complaints.Garrett D'Amore2022-12-31
| | | | | | | None of these changes are actual security bugs, but GitHub's scanner reports false positives at Critical severity for them. (There are a number of complaints from that scanner, many of which we do not necessarily agree with.)
* Silence NNI_ASSERT warnings when building with NDEBUG (#1621) (#1622)Ruben Valls2022-10-18
|
* Fixes the call to setsockopt(SO_UPDATE_ACCEPT_CONTEXT) on Windows (#1604)Ruben Valls2022-07-15
| | | From the Windows docs, this option must receive as parameters the listener socket.
* Fixes compiling when NNG_ENABLE_STATS is OFF (#1600)Ruben Valls2022-06-20
| | | The socket member `st_name` is not available when NNG_ENABLE_STATS is OFF.
* Fix mingw atomics (#1601)Ruben Valls2022-06-20
| | | | | | | | | | * Fixes compiling on Windows with Mingw Fixes the build error: "InterlockedDecrementAcquire64 not defined" on Mingw * fixes semantics of InterlockedDecrementRelease64 on Mingw From Microsoft docs, InterlockedDecrementRelease64 returns the resulting decremented value. The equivalent function on Mingw is `__atomic_sub_fetch`, not `__atomic_fetch_sub` (which returns the previous value).
* Fix out-of-bounds error in http_uri_canonify(). (#1595)Manuel Saraiva2022-05-31
|
* fixes Undefined reference to nni_atomic_dec & nni_atomic_dec64 on Windows. ↵alvin12212022-05-29
| | | | (#1591)
* fixes #1586 Undefined reference to nni_atomic_swap & nni_atomic_cas(Built by ↵alvin12212022-05-29
| | | | gcc 4.8.5 ). (#1587)
* fixes #1574 Non-blocking version of nng_aio_wait / nng_aio_resultGarrett D'Amore2022-04-18
| | | | | | | This introduces a new API, nng_aio_busy(), that can be used to query the status of the aio without blocking. Some minor documentation fixes are included.
* fixes #1576 Fallback not used when clock_gettime is unavailable (crash on ↵Garrett D'Amore2022-04-18
| | | | OSX < 10.12)
* fixes #1577 nng_stat_find_socket always returns the same stats nodeGarrett D'Amore2022-04-16
| | | | | Also this fixes problems with uninitialized socket names, and the socket name stat not being adjusted correctly when set via API.
* Replace nni_aio_prov_set_extra with nni_aio_prov_set_data.Garrett D'Amore2021-12-31
| | | | | | This takes one less parameter, and is simpler. It will let us reclaim the aio_prov_extra data space as well, so that we can use it for other purposes.
* Fix leak of messages lost during device abort.Garrett D'Amore2021-12-29
|
* don't use deprecated functions in tests (#1560)Edward Rudd2021-12-29
|
* Bus socket converted to use lmq.Garrett D'Amore2021-12-27
| | | | | | | | | | This should give significant performance boosts to anyone using this protocol. Buffering on both the send and receive side is supported, with a default buffer size of 16 messages. This should help provide a reasonable default case for most users. While here updated the test for bus to much more complete NUTS style test framework, with increased coverage.
* Introduce nng_device_aio().Garrett D'Amore2021-12-27
| | | | | | This function is like nng_device(), but runs asynchronously. Also, this fixes #1503 nng_device causes nng_close to blocking
* Socket and context initialization never fails.Garrett D'Amore2021-12-25
| | | | | This makes these functions entirely bullet proof, and eliminates yet more error handling cases.
* Provide a tiny buf for lmq buffer by default.Garrett D'Amore2021-12-25
| | | | | This allows us to make nni_lmq_init() non-failing. (Although the buffer size requested at initialization might not be granted.)
* Fix possible crash in allocation failure path for LMQ.Garrett D'Amore2021-12-25
|
* Pollables can be completely inline.Garrett D'Amore2021-12-25
| | | | | This eliminates more failure paths, and brings us still closer to eliminating the possibility of failure during socket init.
* Bus aio's can be inline.Garrett D'Amore2021-12-25
|
* Restore legacy nng_getopt_ptr.Garrett D'Amore2021-12-25
| | | | closes #1553
* fixes #1552 Several warnings compiling in Windows with Visual Studio 2019Garrett D'Amore2021-12-25
| | | | | Note that one of these warning is a real bug that would prevent TLS from functioning properly on Windows.
* fixes #1550 GCC diagnostic inside functions not supported in older compilersGarrett D'Amore2021-12-25
|
* Could use GCC atomics for older versions of GCC.Garrett D'Amore2021-12-08
| | | | | | | | This should help greatly with performance on older systems such as CentOS 7 and GCC 4.8. Though, such folks really should update to newer compilers. Folks running version of GCC earlier than 4.7 will still pay a rather significant performance penalty, as they still implement atomics with a global mutex.
* Fixes compiling on windows 32-bit (#1549)Edward Rudd2021-12-08
| | | | | | | | * use correct LONG type for nni_atomic_flag on win32 * use InterlockExchangeAdd for nni_atomic_get_bool - this is equivelent to InterlockAdd for the purposes of this call (since it is adding 0) - this allows the code to compile on 32bit windows
* Compilation failure for atomics on legacy platforms (gcc 4.8, centos 7)Garrett D'Amore2021-12-08
|
* ID map static initialization support.Garrett D'Amore2021-12-06
| | | | This also arranges to clean up the maps at nng_fini time.
* Static condvar initialization.Garrett D'Amore2021-12-05
|
* Use static initialization for lists and mutexes.Garrett D'Amore2021-12-05
| | | | | | This eliminates some run-time initialization, moving it to compile time. Additional follow up work will expand on this to simplify initialization and reduce the need for certain locks.
* Provide atomic pointer support.Garrett D'Amore2021-12-05
| | | | | This is initially used for TLS to make loading the engine pointer faster, eliminating a much more expensive lock operation.
* fixes #1541 bug in nni_chunk_insertGarrett D'Amore2021-12-02
|
* Fix incorrect elides of deprecated code.Garrett D'Amore2021-11-29
| | | | | | (Note that this includes some incorrect formatting due to an apparent bug in clang-format 13. Hopefully they'll fix it later, but for now I'm preserving the bad whitespace.)
* fixes #1536 nng_sendmsg and nng_recvmsg could be fasterGarrett D'Amore2021-11-28
| | | | fixes #1535 Desire nng_ctx_sendmsg and nng_ctx_recvmsg
* Don't use deprecated function in test.Garrett D'Amore2021-11-28
|
* fixes #1526 NNG_USE_CLOCKID Bug?Garrett D'Amore2021-11-27
| | | | | | | This makes CLOCK_MONOTONIC the default (as it should have been) for platforms that have it defined, except for Apple platforms which lack support for using anything other than the real time clock with condition variables. (And unfortunately silently ignore attempts to do otherwise.)
* fix building with PAIR and PUBSUB disabled (#1530)Edward Rudd2021-11-26
| | | | | When building with PAIR and PUBSUB protocols disabled, the perf tools fail to compile. This makes some minor tweaks to correct that
* fixes #1346 windows ipc winsec fails frequently in CI/CDGarrett D'Amore2021-11-02
|
* Use env shebangs everywhere (#1515)Leonard Pollak2021-10-26
| | | | Change all shebangs to use '#!/usr/bin/env bash'. This increases portability to platforms which do not cohere to the FHS.
* fixes #1518 Disconnect during negotiation breaks listenerGarrett D'Amore2021-10-16
|
* Remove unused eq_len member.Garrett D'Amore2021-10-11
|
* Minor cleanups.Garrett D'Amore2021-09-06
|