errno errors reported in tests

Till now when a test failed the value or errno haven't
been reported. This patch fixes the problem.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
atomic_ptr: Add IT instruction for arm-thumb2

Add IT instruction prior to strexeq to fix compilation in thumb mode.

Signed-off-by: Patrick Trantham <patrick.trantham@fuel7.com>
Simplify error translation on Windows

Till now there was a XS function that translated error code
into its textual description. This patch delegated the translation
to the operating  system.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Added textual descriptions for several unknown errors.
Error message cleanup

1. Error messages were altered to match those used by POSIX standard
2. EMTHREAD error message was removed as the error code is not used
   any more.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Implement SP wire protocol

Implements the SP wire protocol, and infrastructure for legacy wire
protocol support.

Also added an XS_SERVICE_ID socket option to set the service id and renamed
the XS_PROTOCOL option to XS_PATTERN_VERSION.

The following pattern versions are supported:

PAIR:     v3
PUBSUB:   v1 (legacy), v4
REQREP:   v2
PIPELINE: v3
SURVEY:   v2

Note that all existing pattern versions have been bumped by 1 to allow for
use of legacy protocols (otherwise there would be no way to distinguish
between e.g. PUBSUB v3 and PUBSUB v3 using SP).

Signed-off-by: Martin Lucina <martin@lucina.net>
Request ID added to REQ/REP wire protocol

New version of REQ/REP protocol (v3) contains request ID
just before the bactrace stack delimiter (empty message part).

If reply with non-matching request ID is received, it is
silently ignored.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Fix a bug in trie implementation

When removing keys for a specified value, make sure we drop
empty node table. Failing to do this can lead to asserion failure.
Hang up during context initialisation fixed

The global event used on Windows to synchronise access to port
5905 (emulating socketpair) was not set in case of error. That
in turn caused global hang-up.

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Freenode verification file added

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Converted the build system to non-recursive automake

Signed-off-by: Gabriele Svelto <gsvelto@mozilla.com>
Reworked the rules to build the manpages and extra documentation

- Man-files renaming is now handled automatically by automake
- The rules for building XML/HTML documentation would often work
  erratically, now they're invoked only as part of the dist targets
- Added quiet rules for asciidoc invocations

Signed-off-by: Gabriele Svelto <gsvelto@mozilla.com>
Fixed out-of-tree builds when using the included openpgm library

Signed-off-by: Gabriele Svelto <gsvelto@mozilla.com>
dummy commit to test CI

Signed-off-by: Martin Sustrik <sustrik@250bpm.com>