title: ZeroMQ setsockopt and getsockopt returing invalid argument
body: <pre><code>int main () 
  {
      zmq::context_t context(1);
  
      //  Socket to talk to clients
      zmq::socket_t push (context, ZMQ_PUSH);
      unsigned long long hwm;
      size_t hwmsz;
      push.getsockopt( ZMQ_HWM, &amp;hwm, &amp;hwmsz);
      cout &lt;&lt; "HWM:" &lt;&lt; hwm &lt;&lt; endl;
  }
  </code></pre>
  
  <p>Executing the above code is resulting in the following exception using zeromq version 4.1.4. Any socket option is resulting in invalid argument for both <code>setsockopt()</code> and <code>getsockopt()</code>.</p>
  
  <pre><code>terminate called after throwing an instance of 'zmq::error_t'
    what():  Invalid argument
  Aborted (core dumped)
  </code></pre>