summaryrefslogtreecommitdiff
path: root/tests/sock.c
Commit message (Collapse)AuthorAge
* Fix leaks in bus, socket leaks, tighten up close-side refcnting.Garrett D'Amore2017-01-21
| | | | | | | | | | | | | | This does a few things. First it closes some preexisting leaks. Second it tightens the overall close logic so that we automatically discard idhash resources (while keeping numeric values for next id etc. around) when the last socket is closed. This then eliminates the need for applications to ever explicitly terminate resources. It turns out platform-specific resources established at nni_init() time might still be leaked, but it's also the case that we now no longer dynamically allocate anything at platform initialization time. (This presumes that the platform doesn't do so under the hood when creating critical sections or mutexes for example.)
* Implement nng_send and nng_recv convenience routines.Garrett D'Amore2017-01-21
|
* Dangling compiler warnings from sock handle change.Garrett D'Amore2017-01-20
|
* fixes #18 Sockets should be uint32_t's (handles) not pointers.Garrett D'Amore2017-01-20
|
* Windows compilation fixes.Garrett D'Amore2017-01-18
|
* Fixes for valgrind issues.Garrett D'Amore2017-01-18
|
* Various complaints found in AppVeyor build.Garrett D'Amore2017-01-16
|
* Use Windows tick clock instead of Performance counters.Garrett D'Amore2017-01-14
| | | | | | | | | | | | Since we use the tick counter to sleep, we should use the same clock for validation. The problem is that the high performance tick counter on the CPU may be slightly out of agreement with the windows clock. Furthermore, the tick counter is probably lots faster to retrieve since it is already updated, and needn't be recalculated each time. (We should consider just switching to millisecond clock resolution internally as well. It turns out that I don't think that timers that are shorter than 1ms are very useful.)
* Fix for valgrind leak.Garrett D'Amore2017-01-06
|
* Bunch of copyright fixes.Garrett D'Amore2017-01-06
|
* Message API was awkward.Garrett D'Amore2017-01-06
| | | | | | | The use of a single function to get both size and length actually turned out to be awkward to use; better to have separate functions to get each. While here, disable some of the initialization/fork checks, because it turns out they aren't needed.
* Add nng_shutdown() for sockets to help avoid close race.Garrett D'Amore2017-01-05
| | | | Also we added a two phase shutdown for threads.
* Send and receive now work.Garrett D'Amore2016-12-27
| | | | | | This fixes a few core issues, and improves readability for the message queue code as well. inproc delivery of messages works now.
* Buffer resizing implemented. (Needed for single threaded inproc tests.)Garrett D'Amore2016-12-27
|
* Substantial fixes for listen & dialers.Garrett D'Amore2016-12-25
| | | | | | | | | | At this point listening and dialing operations appear to function properly. As part of this I had to break the close logic up since otherwise we had a loop trying to reap a thread from itself. So there is now a separate reaper thread for pipes per-socket. I also changed lists to be a bit more rigid, and allocations now zero memory initially. (We had bugs due to uninitialized memory, and rather than hunt them all down, lets just init them to sane zero values.)
* New dial/listen API. Dialing might work now.Garrett D'Amore2016-12-25
| | | | | | | | | In order to give control over synchronous vs. async dialing, we provide a flag to indicate synchronous dialing is desired. (Hmm. Should we reverse the default sense?) We extend listen to have the same flag. Logic is moved to endpt.c since dialing is really and endpoint specific operation. There are other minor related bug fixes here too.
* Expose nng_sendmsg.Garrett D'Amore2016-12-24
|
* Getopt implemented (and minimal test).Garrett D'Amore2016-12-24
|
* Fix for incorrect nni_usleep(), found with newly created platform tests.Garrett D'Amore2016-12-23
|
* nng_setopt works (rcvtimeout, etc.) External API adjustments.Garrett D'Amore2016-12-23
| | | | | | | The external API now uses simpler names for various things, notably we ditch the whole nng_socket_xx prefix. For example, intstead of nng_socket_create, we just use nng_open(). There are no more nng_socket_xxx calls.
* Try to satisfy uncrustify version differences. Make test use verbose by ↵Garrett D'Amore2016-12-23
| | | | default.
* Some tests around recvmsg (no senders yet). Fixes for some edge cases.Garrett D'Amore2016-12-23
|
* Initial tests -- open & close work (no pipes or endpoints yet).Garrett D'Amore2016-12-23