| Commit message (Collapse) | Author | Age | |
|---|---|---|---|
| * | Fixes for 32-bit Windows compilation. | Garrett D'Amore | 2017-01-16 |
| | | |||
| * | Various complaints found in AppVeyor build. | Garrett D'Amore | 2017-01-16 |
| | | |||
| * | Compile static *and* shared libraries. | Garrett D'Amore | 2017-01-15 |
| | | | | | | Test code needs to use the static libraries so that they can get access to the entire set of symbols, including private ones that are not exported. | ||
| * | Cleanup winsock somewhat. | Garrett D'Amore | 2017-01-15 |
| | | | | | | | It turns out that I didn't quite understand overlapped I/O. We can and should always do the GetOverlappedResult(), regardless of how the routine returns. | ||
| * | Windows IPC works now. | Garrett D'Amore | 2017-01-15 |
| | | |||
| * | Use Windows tick clock instead of Performance counters. | Garrett D'Amore | 2017-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.) | ||
| * | Windows TCP now working. | Garrett D'Amore | 2017-01-14 |
| | | | | | | | | There are lots of changes here, mostly stuff we did in support of Windows TCP. However, there are some bugs that were fixed, and we added some new error codes, and generalized the handling of some failures during accept. Windows IPC (NamedPipes) is still missing. | ||
| * | Many fixes for Windows. It compiles, and some tests work. | Garrett D'Amore | 2017-01-13 |
| | | | | | | | Windows is getting there. Needs a couple of more more hours to enable everything, especially IPC, and most of the work at this point is probably some combination of debug and tweaking things like error handling. | ||
| * | Initial swag at Win32. Much to do still. | Garrett D'Amore | 2017-01-12 |
| | | |||
| * | Pull out the posix clock stuff for plat_clock. | Garrett D'Amore | 2017-01-12 |
| | | |||
| * | Block SIGPIPE. Ewww... | Garrett D'Amore | 2017-01-12 |
| | | |||
| * | Add IPC (UNIX domain sockets) for POSIX, and test suite. | Garrett D'Amore | 2017-01-12 |
| | | |||
| * | POSIX /dev/urandom compilation bug. | Garrett D'Amore | 2017-01-08 |
| | | |||
| * | New ISAAC pRNG. This replaces other local hacks for random data. | Garrett D'Amore | 2017-01-08 |
| | | | | | | | Platforms must seed the pRNGs by offering an nni_plat_seed_prng() routine. Implementations for POSIX using various options (including the /dev/urandom device) are supplied. | ||
| * | Change a bunch of copyrights to 2017 for work done since the 1st. | Garrett D'Amore | 2017-01-05 |
| | | |||
| * | Recv returns 0 on EOF. | Garrett D'Amore | 2017-01-04 |
| | | |||
| * | Fix close related races (POSIX close is a PITA). | Garrett D'Amore | 2017-01-04 |
| | | |||
| * | Compilation fixes for Linux. | Garrett D'Amore | 2017-01-04 |
| | | |||
| * | TCP listen and accept test. | Garrett D'Amore | 2017-01-04 |
| | | | | | There is an occasional use-after-free bug we need to fix still. | ||
| * | Initial cut at TCP, totally untested beyond compilation. | Garrett D'Amore | 2017-01-04 |
| | | | | | | This also adds checks in the protocols to verify that pipe peers are of the proper protocol. | ||
| * | Working towards TCP support. | Garrett D'Amore | 2017-01-03 |
| | | |||
| * | Fixes to enable REQ/REP to operate. | Garrett D'Amore | 2017-01-02 |
| | | | | | | | | This uncovered a few problems - inproc was not moving the headers to the body on transmit, and the message chunk allocator had a serious bug leading to memory corruption. I've also added a message dumper, which turns out to be incredibly useful during debugging. | ||
| * | Stack related fixes for valgrind platform test. | Garrett D'Amore | 2017-01-01 |
| | | |||
| * | Final purge of old threading & synch stuff. | Garrett D'Amore | 2017-01-01 |
| | | |||
| * | Pipe simplifications for thread management. | Garrett D'Amore | 2017-01-01 |
| | | | | | | | | This may also address a race in closing down pipes. Now pipes are always registered with the socket. They also always have both a sender and receiver thread. If the protocol doesn't need one or the other, the stock thread just exits early. | ||
| * | New thread infrastructure -- not used anywhere yet, but tested. | Garrett D'Amore | 2017-01-01 |
| | | |||
| * | Condvars on MacOS X (even 10.12) don't work with monotonic times. | Garrett D'Amore | 2016-12-27 |
| | | |||
| * | Substantial fixes for listen & dialers. | Garrett D'Amore | 2016-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.) | ||
| * | Mix the PID into our random number seed. | Garrett D'Amore | 2016-12-25 |
| | | |||
| * | Fix for incorrect nni_usleep(), found with newly created platform tests. | Garrett D'Amore | 2016-12-23 |
| | | |||
| * | Fix incorrect timeouts on platforms without clock_gettime(). | Garrett D'Amore | 2016-12-23 |
| | | |||
| * | Try to satisfy uncrustify version differences. Make test use verbose by ↵ | Garrett D'Amore | 2016-12-23 |
| | | | | | default. | ||
| * | Uncrustify fixes. | Garrett D'Amore | 2016-12-23 |
| | | |||
| * | Initial tests -- open & close work (no pipes or endpoints yet). | Garrett D'Amore | 2016-12-23 |
| | | |||
| * | Endpoint dialer implemented. | Garrett D'Amore | 2016-12-22 |
| | | |||
| * | Inline locks (fewer allocs), simpler absolute times for wakeups. nn_sock_recv. | Garrett D'Amore | 2016-12-22 |
| | | |||
| * | Synchronization enhancements - inproc & msgqueue. Absolute waits... | Garrett D'Amore | 2016-12-22 |
| | | |||
| * | Start of work to inline mutexes and condition variables. | Garrett D'Amore | 2016-12-22 |
| | | |||
| * | Use C99 structure initializers FTW. Various other changes. | Garrett D'Amore | 2016-12-22 |
| | | |||
| * | Older Darwin lacks clock_gettime(); we need poll.h to use poll(). | Garrett D'Amore | 2016-12-21 |
| | | |||
| * | Ditch our own snprintf/vsnprintf (C99). Symbol naming fixes for inproc. | Garrett D'Amore | 2016-12-21 |
| | | |||
| * | Uncrustify configuration, and shorter copyright banners, plus reformat | Garrett D'Amore | 2016-12-21 |
| | | | | | code with uncrustify. (Minor adjustments.) No more arguments! | ||
| * | More robust platform definition support. | Garrett D'Amore | 2016-12-14 |
| | | | | | | | | The idea is that someday it will be possible to just concatenate the entire set of source files into a single giant source file, for systems that want to work this way. As a result, the build system now compiles every file, although some of them will not have any definitions. | ||
| * | More comments, and detection of fork-reentrancy. Much effort was spent | Garrett D'Amore | 2016-12-13 |
| | | | | | trying to come to a fork-safe solution, but ultimately we gave up. | ||
| * | Added threading primitives, more complete transport API. | Garrett D'Amore | 2016-12-12 |
| | | |||
| * | New inproc transport. | Garrett D'Amore | 2016-12-12 |
| | | | | | Lots of supporting changes. | ||
| * | New msgqueue implementation, use CLOCK_MONOTONIC if available. | Garrett D'Amore | 2016-12-11 |
| | | | | | Start of socket definitions. | ||
| * | Condition variable implementation. | Garrett D'Amore | 2016-12-10 |
| | | |||
| * | Initial commit. This is not going to be useful to you for anything. | Garrett D'Amore | 2016-12-10 |
