From 17800ac85e667d18124d0e90f9387d6c90887570 Mon Sep 17 00:00:00 2001 From: malosek Date: Wed, 16 Sep 2009 14:25:49 +0200 Subject: setsockopt cleanup in pyzmq.cpp --- python/pyzmq.cpp | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) (limited to 'python') diff --git a/python/pyzmq.cpp b/python/pyzmq.cpp index c550eb5..47478e0 100644 --- a/python/pyzmq.cpp +++ b/python/pyzmq.cpp @@ -140,14 +140,29 @@ PyObject *socket_setsockopt (socket_t *self, PyObject *args, PyObject *kwdict) } int rc; - if (PyInt_Check (optval)) { - int val = PyInt_AsLong (optval); - rc = zmq_setsockopt (self->handle, option, &val, sizeof (int)); - } - if (PyString_Check (optval)) - rc = zmq_setsockopt (self->handle, option, PyString_AsString (optval), - PyString_Size (optval)); - else { + + switch (option) { + case ZMQ_HWM: + case ZMQ_LWM: + case ZMQ_SWAP: + case ZMQ_AFFINITY: + case ZMQ_RATE: + case ZMQ_RECOVERY_IVL: + case ZMQ_MCAST_LOOP: + { + int val = PyInt_AsLong (optval); + rc = zmq_setsockopt (self->handle, option, &val, sizeof (int)); + break; + } + case ZMQ_IDENTITY: + case ZMQ_SUBSCRIBE: + case ZMQ_UNSUBSCRIBE: + + rc = zmq_setsockopt (self->handle, option, PyString_AsString (optval), + PyString_Size (optval)); + break; + + default: rc = -1; errno = EINVAL; } -- cgit v1.2.3 From c6665f46be7eb701866441087c35cdb1a08fc641 Mon Sep 17 00:00:00 2001 From: malosek Date: Wed, 16 Sep 2009 14:57:22 +0200 Subject: set rc to 0 in its declaration (pyzmq.cpp) --- python/pyzmq.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'python') diff --git a/python/pyzmq.cpp b/python/pyzmq.cpp index 47478e0..628d037 100644 --- a/python/pyzmq.cpp +++ b/python/pyzmq.cpp @@ -139,7 +139,7 @@ PyObject *socket_setsockopt (socket_t *self, PyObject *args, PyObject *kwdict) return NULL; } - int rc; + int rc = 0; switch (option) { case ZMQ_HWM: -- cgit v1.2.3