| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
| |
More direct access methods are provided instead.
This results in much lower friction when using, and is a step on the path
to removing NNG_OPT_LOCADDR as well.
We need to figure a solution for NNG_OPT_LOCADDR for dialers; for
listeners there is little use in it either, and it will be removed.
(Dialers will probably get a new NNG_OPT_BIND_IP option.)
|
| |
|
|
| |
transport markdown.
|
| | |
|
| |
|
|
|
|
|
|
| |
This functionality was provided principally for libnanomsg compatibility.
This saves some memory and eliminates some pointless functionality.
While here, updated the socket options documentation to remove references
to options already removed.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This transport only listens, and creates connections when
the application calls setopt on the lister with NNG_OPT_SOCKET_FD,
to pass a file descriptor. The FD is turned into an nng_stream,
and utilized for SP. The protocol over the descriptor is identical
to the TCP protocol (not the IPC protocol).
The options for peer information are borrowed from the IPC transport,
as they may be useful for these purposes.
This includes a test suite and full documentation.
|
| |
|
|
|
| |
Also this fixes problems with uninitialized socket names, and the
socket name stat not being adjusted correctly when set via API.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a sweeping cleanup of the transport logic around options,
and also harmonizes the names used when setting or getting options.
Additionally, legacy methods are now moved into a separate file and
can be elided via CMake or a preprocessor define.
Fundamentally, the ability to set to transport options via the socket
is deprecated; there are numerous problems with this and my earlier
approaches to deal with this have been somewhat misguided. Further
these approaches will not work with future protocol work that is
planned (were some options need to be negotiated with peers at the
time of connection establishment.)
Documentation has been updated to reflect this. The test suites still
make rather broad use of the older APIs, and will be converted later.
|
| |
|
|
|
| |
NNG is always a noun, never an adjective, and should always
be capitalized. We also reduced some unnecessary usages of it.
|
| |
|
|
|
|
| |
Mostly this is removal of the smart quotes, which were
over-used, and misused, and could have been mistaken to
be pejorative. A few other minor nits were fixed while here.
|
| |
|
|
|
|
|
| |
This gets near 100% coverage of the PUB/SUB protocols.
The remaining uncovered bits will need to have a mock protocol that
runs slower, so that we can inject both back pressure, and also so
that we can inject "erroroneous" messages.
|
| |
|
|
|
|
| |
This removes the default 1MB limit on maximum receive sizes.
Applications intended for deployment in insecure or hostile
environments should choose a sensible default for NNG_OPT_RECVMAXSZ.
|
| | |
|
| | |
|
| |
|
|
|
| |
While here, also updated the markup for those man pages to use the
current non-ambiguous cross reference syntax.
|
| |
|
|
|
|
|
| |
This also includes a number of the documentation improvements.
The options document has been broken up into separate pages for
each of the transport specific options. We have made various
other minor improvements, fixes to markup, and cross-references.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
These were found with the help of "aspell".
Additionally, while reviewing the output from the spell checker,
several content errors were noticed and fixed.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
fixes #494 ERRORS section should use [horizontal]
These changes address some basic formatting consistency things,
and ultimately (when combined with other tooling changes that are
not part of this repo) lead to vastly improved layout in the
printed documentation.
While here we removed trailing whitespace, and did certain other
minor markup tweaks.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
It turns out that when creating cross references, we need to
make any text styling (generally literal characters) outside of
the link, to avoid having the styling override the link color.
(We prefer to have links colored for ease of use.)
While here a few other markup, and actual content, errors were fixed.
|
| | |
|
| |
|
|
| |
fixes #106 TCP keepalive tuning
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ultimately, this just removes the support for lingering altogether.
Based on prior experience, lingering has always been unreliable, and
was removed in legacy libnanomsg ages ago.
The problem is that operating system support for lingering is very
inconsistent at best, and for some transports the very concept is somewhat
meaningless.
Making things worse, we were never able to adequately capture an exit()
event from another thread -- so lingering was always a false promise.
Applications that need to be sure that messages are delivered should
either include an ack in their protocol, use req/rep (which has an ack),
or inject a suitable delay of their own.
For things going over local networks, an extra delay of 100 msec should
be sufficient *most of the time*.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This makes the raw mode something that is immutable, determined
at socket construction. This is an enabling change for the
separate context support coming soon.
As a result, this is an API breaking change for users of the raw
mode option (NNG_OPT_RAW). There aren't many of them out there.
Cooked mode is entirely unaffected.
There are changes to tests and documentation included.
|
|
|
fixes #279 consider restructuring man sections
This represents a rather significant rework, and major editing
effort, for the entire set of manual pages.
All of the pages now have a section number in their filename;
this assists in some other tooling, particularly ebook generation
as every link needs to be programmatically modified when combined
into an ebook.
Section 5 is introduced, and populated with pages for the main
types, and all options are now documented.
Numerous errors have been corrected, including rewriting certain
portions such as the header section of the surveyor protocol.
Much work has been done to facilitate index generation, although
certainly more work remains here.
Every internal link within these pages now resolves; there are no
more dead links. (This is required to generate Kindle format books.)
|