diff options
author | Martin Sustrik <sustrik@250bpm.com> | 2012-04-02 11:47:40 +0200 |
---|---|---|
committer | Martin Sustrik <sustrik@250bpm.com> | 2012-04-04 04:35:19 +0200 |
commit | 7cfd1c58ba244ee0185043c3dac0617bd7a7b938 (patch) | |
tree | c4e04349b34efe72ea7bbf7f9bca46e721ef8f2d /src/xpub.cpp | |
parent | 01fc5978d3e81bd488762937e9302cc6baf69a20 (diff) |
0MQ/2.1 wire format compatibility implemented
- XS_PROTOCOL option added
- libxs ignores when unused flags are set to 1 (0MQ/2.1 bug)
- compatibility tests added
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Diffstat (limited to 'src/xpub.cpp')
-rw-r--r-- | src/xpub.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/xpub.cpp b/src/xpub.cpp index 29dd079..255c063 100644 --- a/src/xpub.cpp +++ b/src/xpub.cpp @@ -42,9 +42,11 @@ void xs::xpub_t::xattach_pipe (pipe_t *pipe_, bool icanhasall_) xs_assert (pipe_); dist.attach (pipe_); - // If icanhasall_ is specified, the caller would like to subscribe - // to all data on this pipe, implicitly. - if (icanhasall_) + // If icanhasall_ is specified, the caller would like to subscribe + // to all data on this pipe, implicitly. Also, if we are using + // 0MQ/2.1-style protocol, there's no subscription forwarding. Thus, + // we need to subscribe for all messages automatically. + if (icanhasall_ || pipe_->get_protocol () == 1) subscriptions.add (NULL, 0, pipe_); // The pipe is active when attached. Let's read the subscriptions from |