From a34ea4d80609395150742259fd8c9caa4409e961 Mon Sep 17 00:00:00 2001
From: Martin Lucina <martin@lucina.net>
Date: Sun, 20 May 2012 07:40:11 +0200
Subject: 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>
---
 include/xs/xs.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

(limited to 'include/xs')

diff --git a/include/xs/xs.h b/include/xs/xs.h
index 56efa52..9b09812 100644
--- a/include/xs/xs.h
+++ b/include/xs/xs.h
@@ -206,8 +206,9 @@ XS_EXPORT int xs_setctxopt (void *context, int option, const void *optval,
 #define XS_SNDTIMEO 28
 #define XS_IPV4ONLY 31
 #define XS_KEEPALIVE 32
-#define XS_PROTOCOL 33
+#define XS_PATTERN_VERSION 33
 #define XS_SURVEY_TIMEOUT 35
+#define XS_SERVICE_ID 36
 
 /*  Message options                                                           */
 #define XS_MORE 1
-- 
cgit v1.2.3