func (s *zmqSocket) GetSockOptBool(option BoolSocketOption) (value bool, err error) { size := C.size_t(unsafe.Sizeof(value)) if C.zmq_getsockopt(s.s, C.int(option), unsafe.Pointer(&value), &size) != 0 { err = errno() return } return }
/* ZMQ_FD: Retrieve file descriptor associated with the socket See: http://api.zeromq.org/4-1:zmq-getsockopt#toc9 */ func (soc *Socket) GetFd() (uintptr, error) { value := C.SOCKET(0) size := C.size_t(unsafe.Sizeof(value)) if i, err := C.zmq_getsockopt(soc.soc, C.ZMQ_FD, unsafe.Pointer(&value), &size); i != 0 { return uintptr(0), errget(err) } return uintptr(value), nil }
func (soc *Socket) getUInt64(opt C.int) (uint64, error) { value := C.uint64_t(0) size := C.size_t(unsafe.Sizeof(value)) if i, err := C.zmq_getsockopt(soc.soc, opt, unsafe.Pointer(&value), &size); i != 0 { return 0, errget(err) } return uint64(value), nil }
func (soc *Socket) getString(opt C.int, bufsize int) (string, error) { value := make([]byte, bufsize) size := C.size_t(bufsize) if i, err := C.zmq_getsockopt(soc.soc, opt, unsafe.Pointer(&value[0]), &size); i != 0 { return "", errget(err) } return string(value[:int(size)]), nil }
// Get a uint64 option from the socket. // int zmq_getsockopt (void *s, int option, void *optval, size_t *optvallen); func (s *zmqSocket) GetSockOptUInt64(option UInt64SocketOption) (value uint64, err os.Error) { size := C.size_t(unsafe.Sizeof(value)) if C.zmq_getsockopt(s.s, C.int(option), unsafe.Pointer(&value), &size) != 0 { err = errno() return } return }
func (s *Socket) GetSockOptBool(option BoolSocketOption) (value bool, err error) { size := C.size_t(unsafe.Sizeof(value)) var rc C.int if rc, err = C.zmq_getsockopt(s.s, C.int(option), unsafe.Pointer(&value), &size); rc != 0 { err = casterr(err) return } return }
// Get a uint64 option from the socket. // int zmq_getsockopt (void *s, int option, void *optval, size_t *optvallen); func (s *Socket) GetSockOptUInt64(option UInt64SocketOption) (value uint64, err error) { size := C.size_t(unsafe.Sizeof(value)) var rc C.int if rc, err = C.zmq_getsockopt(s.s, C.int(option), unsafe.Pointer(&value), &size); rc != 0 { println("GetSockOptUInt64:", err.Error()) err = casterr(err) return } return }
// Get a string option from the socket. // int zmq_getsockopt (void *s, int option, void *optval, size_t *optvallen); func (s *zmqSocket) GetSockOptString(option StringSocketOption) (value string, err error) { var buffer [1024]byte var size C.size_t = 1024 if C.zmq_getsockopt(s.s, C.int(option), unsafe.Pointer(&buffer), &size) != 0 { err = errno() return } value = string(buffer[:size]) return }
func (soc *Socket) getUInt32(opt C.int) (uint32, error) { if !soc.opened { return 0, ErrorSocketClosed } value := C.uint32_t(0) size := C.size_t(unsafe.Sizeof(value)) if i, err := C.zmq_getsockopt(soc.soc, opt, unsafe.Pointer(&value), &size); i != 0 { return 0, errget(err) } return uint32(value), nil }
func (soc *Socket) getString(opt C.int, bufsize int) (string, error) { if !soc.opened { return "", ErrorSocketClosed } value := make([]byte, bufsize) size := C.size_t(bufsize) if i, err := C.zmq_getsockopt(soc.soc, opt, unsafe.Pointer(&value[0]), &size); i != 0 { return "", errget(err) } return strings.TrimRight(string(value[:int(size)]), "\x00"), nil }
// Get a string option from the socket. // int zmq_getsockopt (void *s, int option, void *optval, size_t *optvallen); func (s *Socket) GetSockOptString(option StringSocketOption) (value string, err error) { var buffer [1024]byte var size C.size_t = 1024 var rc C.int if rc, err = C.zmq_getsockopt(s.s, C.int(option), unsafe.Pointer(&buffer), &size); rc != 0 { err = casterr(err) return } value = string(buffer[:size]) return }