aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Compilation fixes for Windows.Garrett D'Amore2017-12-27
|
* fixes #180 add websocket header propertiesGarrett D'Amore2017-12-27
|
* fixes #165 Add address properties for websocket pipesGarrett D'Amore2017-12-26
|
* fixes #2 Websocket transportGarrett D'Amore2017-12-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a rather large changeset -- it fundamentally adds websocket transport, but as part of this changeset we added a generic framework for both HTTP and websocket. We also made some supporting changes to the core, such as changing the way timeouts work for AIOs and adding additional state keeping for AIOs, and adding a common framework for deferred finalization (to avoid certain kinds of circular deadlocks during resource cleanup). We also invented a new initialization framework so that we can avoid wiring in knowledge about them into the master initialization framework. The HTTP framework is not yet complete, but it is good enough for simple static serving and building additional services on top of -- including websocket. We expect both websocket and HTTP support to evolve considerably, and so these are not part of the public API yet. Property support for the websocket transport (in particular address properties) is still missing, as is support for TLS. The websocket transport here is a bit more robust than the original nanomsg implementation, as it supports multiple sockets listening at the same port sharing the same HTTP server instance, discriminating between them based on URI (and possibly the virtual host). Websocket is enabled by default at present, and work to conditionalize HTTP and websocket further (to minimize bloat) is still pending.
* Fix sha1 prototype.Garrett D'Amore2017-12-26
|
* Added SHA1 implementation and test suite.Garrett D'Amore2017-12-26
|
* Added base64 implementation, needed by websocket.Garrett D'Amore2017-12-26
|
* Fix cut'n'paste typoAndy Kirkham2017-12-12
|
* Minor markup tweaks to code-of-conduct.Garrett D'Amore2017-11-27
|
* Add code of conduct.Garrett D'Amore2017-11-27
|
* Minor README updates, including commercial support options.Garrett D'Amore2017-11-27
|
* fixes #160 Convert TLS url from tls:// to tls+tcp://Garrett D'Amore2017-11-27
|
* Minor language fix.0.1Garrett D'Amore2017-11-21
|
* Cope better with the net.h rename in mbedTLS 2.4.0.Garrett D'Amore2017-11-21
|
* Fixes for Circle environment.Garrett D'Amore2017-11-21
| | | | | | | | | The test suites run as root inside docker (?), so the files permission test needs to be skipped. Circle, like Travis, lacks support correct IPv6. I think this is because of basic deficiency in Amazon's EC2 product. Come on Amazon, it's 2017, you have to support IPv6!
* Another CircleCI swag.Garrett D'Amore2017-11-21
|
* More CircleCI tweaks.Garrett D'Amore2017-11-21
|
* Fix up YAML syntax for CircleCI.Garrett D'Amore2017-11-21
|
* Initial swag at circle CI integration.Garrett D'Amore2017-11-21
|
* Add a reference for nng_tls.Garrett D'Amore2017-11-21
|
* fixes #3 TLS transportGarrett D'Amore2017-11-20
| | | | | | | | | | | | | | | | | | | This introduces a new transport (compatible with the TLS transport from mangos), using TLS v1.2. To use the new transport, you must have the mbed TLS library available on your system (Xenial libmbedtls-dev). You can use version 2.x or newer -- 1.3.x and PolarSSL versions are not supported. You enable the TLS transport with -DNNG_TRANSPORT_TLS=ON in the CMake configuration. You must configure the server certificate by default, and this can only be done using nng options. See the nng_tls man page for details. This work is experimental, and was made possible by Capitar IT Group BV, and Staysail Systems, Inc.
* fixes #154 underlyng TCP & IPC transports should support partial recv/sendGarrett D'Amore2017-11-13
| | | | fixes #155 POSIX TCP & IPC could avoid a lot of context switches
* Add pipeline test to the multistress test.Garrett D'Amore2017-11-06
|
* Add multiprotocol/multitransport stress test.Garrett D'Amore2017-11-05
|
* fixes #150 IPC error during Bus testsGarrett D'Amore2017-11-05
|
* Closed socket returns NNG_ENOENT instead of NNG_ECLOSED.Garrett D'Amore2017-11-05
|
* Darwin needs to use SO_NOSIGPIPE.Garrett D'Amore2017-11-04
|
* fixes #149 remove AUTHOR section from man pagesGarrett D'Amore2017-11-04
|
* fixes #148 man pages for req/rep protocol neededGarrett D'Amore2017-11-04
|
* fixes #146 man pages for surveyor protocol neededGarrett D'Amore2017-11-03
|
* fixes #147 surveyor protocol needs NNG_OPT_MAXTTLGarrett D'Amore2017-11-03
|
* fixes #143 Protocols and transports should be "configurable"Garrett D'Amore2017-11-02
| | | | | | | | | | | | | | | | | | | | This makes all the protocols and transports optional. All of them except ZeroTier are enabled by default, but you can now disable them (remove from the build) with cmake options. The test suite is modified so that tests still run as much as they can, but skip over things caused by missing functionality from the library (due to configuration). Further, the constant definitions and prototypes for functions that are specific to transports or protocols are moved into appropriate headers, which should be included directly by applications wishing to use these. We have also added and improved documentation -- all of the transports are documented, and several more man pages for protocols have been added. (Req/Rep and Surveyor are still missing.)
* Add nng_bus man page.Garrett D'Amore2017-10-31
|
* fixes #137 Remove public access to numeric protocolsGarrett D'Amore2017-10-31
|
* Fix front matter for man pages.Garrett D'Amore2017-10-30
|
* Updated links to docs.Garrett D'Amore2017-10-30
|
* Minor markup fixes.Garrett D'Amore2017-10-30
|
* New strerror document.Garrett D'Amore2017-10-30
|
* Start of API landing page.Garrett D'Amore2017-10-30
|
* fixes #136 consider eliminating nng_shutdownGarrett D'Amore2017-10-30
|
* Simplify pollq_add, use SO_NOSIGNAL option on macOS.Garrett D'Amore2017-10-30
|
* Add conceptual overview doc.Garrett D'Amore2017-10-26
|
* Eliminate the unused DRYRUN flag.Garrett D'Amore2017-10-26
|
* Minor format changes, tie the sleep in preview to script exit.Garrett D'Amore2017-10-26
|
* Documentation updates.Garrett D'Amore2017-10-26
| | | | | | | | | This adds a few man pages, fixes the content and formatting on a few others. It also adds two utility scripts for me to use, publish.sh, which I use to publish updates to the gh-pages branch, and preview.sh, which I use to look at markup without cluttering my work directory.
* fixes #46 make device() use aios directlyGarrett D'Amore2017-10-26
| | | | | | | | | | This eliminates the separate threads used for devices, letting them benefit from the new aio framework. It also eliminates the legacy nni_sock_sendmsg and nni_sock_recvmsg internal APIs. It would appear that there is an opportunity here to provide asynchronous device support out to userland as well, exposing an aio to them. That work is deferred to later.
* fixes #45 expose aio to applicationsGarrett D'Amore2017-10-25
| | | | | | | | | | While here we added a test for the aio stuff, and cleaned up some dead code for the old fd notifications. There were a few improvements to shorten & clean code elsewhere, such as short-circuiting task wait when the task has no callback. The legacy sendmsg() and recvmsg() APIs are still in the socket core until we convert the device code to use the aios.
* Spelling fixes (thanks ispell).Garrett D'Amore2017-10-24
|
* Various man page fixups, add inproc header.Garrett D'Amore2017-10-24
| | | | | | | We added nng_inproc man page, and a header with an explicit registration method for it. We also fixed up the markup on several other pages, and corrected the include statements for nng_zerotier.
* fixes #132 Implement saner notification for file descriptorsGarrett D'Amore2017-10-24
| | | | | | | | | This eliminates the "quasi-functional" notify API altogether. The aio framework will be coming soon to replace it. As a bonus, apps (legacy apps) that use the notification FDs will see improved performance, since we don't have to context switch to give them a notification.