PageRenderTime 41ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/zmqgen_4_0.go

http://github.com/alecthomas/gozmq
Go | 627 lines | 252 code | 78 blank | 297 comment | 10 complexity | 1b368cb96f7b91c874f9adafedc6c6c7 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. // +build zmq_4_x
  2. //
  3. package gozmq
  4. import (
  5. "time"
  6. )
  7. // This file was generated automatically. Changes made here will be lost.
  8. // Socket Option Getters
  9. // ZMQ_TYPE: Retrieve socket type.
  10. //
  11. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc3
  12. //
  13. func (s *Socket) Type() (SocketType, error) {
  14. value, err := s.GetSockOptUInt64(TYPE)
  15. return SocketType(value), err
  16. }
  17. // ZMQ_RCVMORE: More message data parts to follow.
  18. //
  19. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc4
  20. //
  21. func (s *Socket) RcvMore() (bool, error) {
  22. value, err := s.GetSockOptInt(RCVMORE)
  23. return value != 0, err
  24. }
  25. // ZMQ_SNDHWM: Retrieves high water mark for outbound messages.
  26. //
  27. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc5
  28. //
  29. func (s *Socket) SndHWM() (int, error) {
  30. return s.GetSockOptInt(SNDHWM)
  31. }
  32. // ZMQ_RCVHWM: Retrieve high water mark for inbound messages.
  33. //
  34. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc6
  35. //
  36. func (s *Socket) RcvHWM() (int, error) {
  37. return s.GetSockOptInt(RCVHWM)
  38. }
  39. // ZMQ_AFFINITY: Retrieve I/O thread affinity.
  40. //
  41. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc7
  42. //
  43. func (s *Socket) Affinity() (uint64, error) {
  44. return s.GetSockOptUInt64(AFFINITY)
  45. }
  46. // ZMQ_IDENTITY: Retrieve socket identity.
  47. //
  48. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc8
  49. //
  50. func (s *Socket) Identity() (string, error) {
  51. return s.GetSockOptString(IDENTITY)
  52. }
  53. // ZMQ_RATE: Retrieve multicast data rate.
  54. //
  55. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc9
  56. //
  57. func (s *Socket) Rate() (int64, error) {
  58. return s.GetSockOptInt64(RATE)
  59. }
  60. // ZMQ_RECOVERY_IVL: Get multicast recovery interval.
  61. //
  62. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc10
  63. //
  64. func (s *Socket) RecoveryIvl() (time.Duration, error) {
  65. ms, err := s.GetSockOptInt64(RECOVERY_IVL)
  66. return time.Duration(ms) * time.Millisecond, err
  67. }
  68. // ZMQ_SNDBUF: Retrieve kernel transmit buffer size.
  69. //
  70. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc11
  71. //
  72. func (s *Socket) SndBuf() (uint64, error) {
  73. return s.GetSockOptUInt64(SNDBUF)
  74. }
  75. // ZMQ_RCVBUF: Retrieve kernel receive buffer size.
  76. //
  77. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc12
  78. //
  79. func (s *Socket) RcvBuf() (uint64, error) {
  80. return s.GetSockOptUInt64(RCVBUF)
  81. }
  82. // ZMQ_LINGER: Retrieve linger period for socket shutdown.
  83. //
  84. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc13
  85. //
  86. func (s *Socket) Linger() (time.Duration, error) {
  87. ms, err := s.GetSockOptInt(LINGER)
  88. return time.Duration(ms) * time.Millisecond, err
  89. }
  90. // ZMQ_RECONNECT_IVL: Retrieve reconnection interval.
  91. //
  92. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc14
  93. //
  94. func (s *Socket) ReconnectIvl() (time.Duration, error) {
  95. ms, err := s.GetSockOptInt(RECONNECT_IVL)
  96. return time.Duration(ms) * time.Millisecond, err
  97. }
  98. // ZMQ_RECONNECT_IVL_MAX: Retrieve maximum reconnection interval.
  99. //
  100. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc15
  101. //
  102. func (s *Socket) ReconnectIvlMax() (time.Duration, error) {
  103. ms, err := s.GetSockOptInt(RECONNECT_IVL_MAX)
  104. return time.Duration(ms) * time.Millisecond, err
  105. }
  106. // ZMQ_BACKLOG: Retrieve maximum length of the queue of outstanding connections.
  107. //
  108. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc16
  109. //
  110. func (s *Socket) Backlog() (int, error) {
  111. return s.GetSockOptInt(BACKLOG)
  112. }
  113. // ZMQ_MAXMSGSIZE: Maximum acceptable inbound message size.
  114. //
  115. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc17
  116. //
  117. func (s *Socket) MaxMsgSize() (int64, error) {
  118. return s.GetSockOptInt64(MAXMSGSIZE)
  119. }
  120. // ZMQ_RCVTIMEO: Maximum time before a socket operation returns with EAGAIN.
  121. //
  122. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc19
  123. //
  124. func (s *Socket) RcvTimeout() (time.Duration, error) {
  125. ms, err := s.GetSockOptInt(RCVTIMEO)
  126. return time.Duration(ms) * time.Millisecond, err
  127. }
  128. // ZMQ_SNDTIMEO: Maximum time before a socket operation returns with EAGAIN.
  129. //
  130. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc20
  131. //
  132. func (s *Socket) SndTimeout() (time.Duration, error) {
  133. ms, err := s.GetSockOptInt(SNDTIMEO)
  134. return time.Duration(ms) * time.Millisecond, err
  135. }
  136. // ZMQ_IPV6: Retrieve IPv6 socket status.
  137. //
  138. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc21
  139. //
  140. func (s *Socket) Ipv6() (bool, error) {
  141. value, err := s.GetSockOptInt(IPV6)
  142. return value != 0, err
  143. }
  144. // ZMQ_IPV4ONLY: Retrieve IPv4-only socket override status.
  145. //
  146. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc22
  147. //
  148. func (s *Socket) IPv4Only() (bool, error) {
  149. value, err := s.GetSockOptInt(IPV4ONLY)
  150. return value != 0, err
  151. }
  152. // ZMQ_IMMEDIATE: Retrieve attach-on-connect value.
  153. //
  154. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc23
  155. //
  156. func (s *Socket) Immediate() (bool, error) {
  157. value, err := s.GetSockOptInt(IMMEDIATE)
  158. return value != 0, err
  159. }
  160. // ZMQ_EVENTS: Retrieve socket event state.
  161. //
  162. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc25
  163. //
  164. func (s *Socket) Events() (uint64, error) {
  165. return s.GetSockOptUInt64(EVENTS)
  166. }
  167. // ZMQ_TCP_KEEPALIVE: Override SO_KEEPALIVE socket option.
  168. //
  169. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc27
  170. //
  171. func (s *Socket) TCPKeepalive() (int, error) {
  172. return s.GetSockOptInt(TCP_KEEPALIVE)
  173. }
  174. // ZMQ_TCP_KEEPALIVE_IDLE: Override TCP_KEEPCNT(or TCP_KEEPALIVE on some OS).
  175. //
  176. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc28
  177. //
  178. func (s *Socket) TCPKeepaliveIdle() (int, error) {
  179. return s.GetSockOptInt(TCP_KEEPALIVE_IDLE)
  180. }
  181. // ZMQ_TCP_KEEPALIVE_CNT: Override TCP_KEEPCNT socket option.
  182. //
  183. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc29
  184. //
  185. func (s *Socket) TCPKeepaliveCnt() (int, error) {
  186. return s.GetSockOptInt(TCP_KEEPALIVE_CNT)
  187. }
  188. // ZMQ_TCP_KEEPALIVE_INTVL: Override TCP_KEEPINTVL socket option.
  189. //
  190. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc30
  191. //
  192. func (s *Socket) TCPKeepaliveIntvl() (int, error) {
  193. return s.GetSockOptInt(TCP_KEEPALIVE_INTVL)
  194. }
  195. // ZMQ_MECHANISM: Retrieve current security mechanism.
  196. //
  197. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc31
  198. //
  199. func (s *Socket) Mechanism() (int, error) {
  200. return s.GetSockOptInt(MECHANISM)
  201. }
  202. // ZMQ_PLAIN_SERVER: Retrieve current PLAIN server role.
  203. //
  204. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc32
  205. //
  206. func (s *Socket) PlainServer() (int, error) {
  207. return s.GetSockOptInt(PLAIN_SERVER)
  208. }
  209. // ZMQ_PLAIN_USERNAME: Retrieve current PLAIN username.
  210. //
  211. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc33
  212. //
  213. func (s *Socket) PlainUsername() (string, error) {
  214. return s.GetSockOptString(PLAIN_USERNAME)
  215. }
  216. // ZMQ_PLAIN_PASSWORD: Retrieve current password.
  217. //
  218. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc34
  219. //
  220. func (s *Socket) PlainPassword() (string, error) {
  221. return s.GetSockOptString(PLAIN_PASSWORD)
  222. }
  223. // ZMQ_CURVE_PUBLICKEY: Retrieve current CURVE public key.
  224. //
  225. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc35
  226. //
  227. func (s *Socket) CurvePublickey() (string, error) {
  228. return s.GetSockOptString(CURVE_PUBLICKEY)
  229. }
  230. // ZMQ_CURVE_SECRETKEY: Retrieve current CURVE secret key.
  231. //
  232. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc36
  233. //
  234. func (s *Socket) CurveSecretkey() (string, error) {
  235. return s.GetSockOptString(CURVE_SECRETKEY)
  236. }
  237. // ZMQ_CURVE_SERVERKEY: Retrieve current CURVE server key.
  238. //
  239. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc37
  240. //
  241. func (s *Socket) CurveServerkey() (string, error) {
  242. return s.GetSockOptString(CURVE_SERVERKEY)
  243. }
  244. // ZMQ_ZAP_DOMAIN: Retrieve RFC 27 authentication domain.
  245. //
  246. // See: http://api.zeromq.org/4.0:zmq-getsockopt#toc38
  247. //
  248. func (s *Socket) ZapDomain() (string, error) {
  249. return s.GetSockOptString(ZAP_DOMAIN)
  250. }
  251. // Socket Option Setters
  252. // ZMQ_SNDHWM: Set high water mark for outbound messages.
  253. //
  254. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc3
  255. //
  256. func (s *Socket) SetSndHWM(value int) error {
  257. return s.SetSockOptInt(SNDHWM, value)
  258. }
  259. // ZMQ_RCVHWM: Set high water mark for inbound messages.
  260. //
  261. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc4
  262. //
  263. func (s *Socket) SetRcvHWM(value int) error {
  264. return s.SetSockOptInt(RCVHWM, value)
  265. }
  266. // ZMQ_AFFINITY: Set I/O thread affinity.
  267. //
  268. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc5
  269. //
  270. func (s *Socket) SetAffinity(value uint64) error {
  271. return s.SetSockOptUInt64(AFFINITY, value)
  272. }
  273. // ZMQ_SUBSCRIBE: Establish message filter.
  274. //
  275. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc6
  276. //
  277. func (s *Socket) SetSubscribe(value string) error {
  278. return s.SetSockOptString(SUBSCRIBE, value)
  279. }
  280. // ZMQ_UNSUBSCRIBE: Remove message filter.
  281. //
  282. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc7
  283. //
  284. func (s *Socket) SetUnsubscribe(value string) error {
  285. return s.SetSockOptString(UNSUBSCRIBE, value)
  286. }
  287. // ZMQ_IDENTITY: Set socket identity.
  288. //
  289. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc8
  290. //
  291. func (s *Socket) SetIdentity(value string) error {
  292. return s.SetSockOptString(IDENTITY, value)
  293. }
  294. // ZMQ_RATE: Set multicast data rate.
  295. //
  296. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc9
  297. //
  298. func (s *Socket) SetRate(value int64) error {
  299. return s.SetSockOptInt64(RATE, value)
  300. }
  301. // ZMQ_RECOVERY_IVL: Set multicast recovery interval.
  302. //
  303. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc10
  304. //
  305. func (s *Socket) SetRecoveryIvl(value time.Duration) error {
  306. return s.SetSockOptInt64(RECOVERY_IVL, int64(value/time.Millisecond))
  307. }
  308. // ZMQ_SNDBUF: Set kernel transmit buffer size.
  309. //
  310. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc11
  311. //
  312. func (s *Socket) SetSndBuf(value uint64) error {
  313. return s.SetSockOptUInt64(SNDBUF, value)
  314. }
  315. // ZMQ_RCVBUF: Set kernel receive buffer size.
  316. //
  317. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc12
  318. //
  319. func (s *Socket) SetRcvBuf(value uint64) error {
  320. return s.SetSockOptUInt64(RCVBUF, value)
  321. }
  322. // ZMQ_LINGER: Set linger period for socket shutdown.
  323. //
  324. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc13
  325. //
  326. func (s *Socket) SetLinger(value time.Duration) error {
  327. return s.SetSockOptInt(LINGER, int(value/time.Millisecond))
  328. }
  329. // ZMQ_RECONNECT_IVL: Set reconnection interval.
  330. //
  331. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc14
  332. //
  333. func (s *Socket) SetReconnectIvl(value time.Duration) error {
  334. return s.SetSockOptInt(RECONNECT_IVL, int(value/time.Millisecond))
  335. }
  336. // ZMQ_RECONNECT_IVL_MAX: Set maximum reconnection interval.
  337. //
  338. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc15
  339. //
  340. func (s *Socket) SetReconnectIvlMax(value time.Duration) error {
  341. return s.SetSockOptInt(RECONNECT_IVL_MAX, int(value/time.Millisecond))
  342. }
  343. // ZMQ_BACKLOG: Set maximum length of the queue of outstanding connections.
  344. //
  345. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc16
  346. //
  347. func (s *Socket) SetBacklog(value int) error {
  348. return s.SetSockOptInt(BACKLOG, value)
  349. }
  350. // ZMQ_MAXMSGSIZE: Maximum acceptable inbound message size.
  351. //
  352. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc17
  353. //
  354. func (s *Socket) SetMaxMsgSize(value int64) error {
  355. return s.SetSockOptInt64(MAXMSGSIZE, value)
  356. }
  357. // ZMQ_RCVTIMEO: Maximum time before a recv operation returns with EAGAIN.
  358. //
  359. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc19
  360. //
  361. func (s *Socket) SetRcvTimeout(value time.Duration) error {
  362. return s.SetSockOptInt(RCVTIMEO, int(value/time.Millisecond))
  363. }
  364. // ZMQ_SNDTIMEO: Maximum time before a send operation returns with EAGAIN.
  365. //
  366. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc20
  367. //
  368. func (s *Socket) SetSndTimeout(value time.Duration) error {
  369. return s.SetSockOptInt(SNDTIMEO, int(value/time.Millisecond))
  370. }
  371. // ZMQ_IPV6: Enable IPv6 on socket.
  372. //
  373. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc21
  374. //
  375. func (s *Socket) SetIpv6(value bool) error {
  376. if value {
  377. return s.SetSockOptInt(IPV6, 1)
  378. }
  379. return s.SetSockOptInt(IPV6, 0)
  380. }
  381. // ZMQ_IPV4ONLY: Use IPv4-only on socket.
  382. //
  383. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc22
  384. //
  385. func (s *Socket) SetIPv4Only(value bool) error {
  386. if value {
  387. return s.SetSockOptInt(IPV4ONLY, 1)
  388. }
  389. return s.SetSockOptInt(IPV4ONLY, 0)
  390. }
  391. // ZMQ_IMMEDIATE: Queue messages only to completed connections.
  392. //
  393. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc23
  394. //
  395. func (s *Socket) SetImmediate(value bool) error {
  396. if value {
  397. return s.SetSockOptInt(IMMEDIATE, 1)
  398. }
  399. return s.SetSockOptInt(IMMEDIATE, 0)
  400. }
  401. // ZMQ_ROUTER_MANDATORY: accept only routable messages on ROUTER sockets.
  402. //
  403. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc24
  404. //
  405. func (s *Socket) SetROUTERMandatory(value bool) error {
  406. if value {
  407. return s.SetSockOptInt(ROUTER_MANDATORY, 1)
  408. }
  409. return s.SetSockOptInt(ROUTER_MANDATORY, 0)
  410. }
  411. // ZMQ_ROUTER_RAW: switch ROUTER socket to raw mode.
  412. //
  413. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc25
  414. //
  415. func (s *Socket) SetROUTERRaw(value int) error {
  416. return s.SetSockOptInt(ROUTER_RAW, value)
  417. }
  418. // ZMQ_PROBE_ROUTER: bootstrap connections to ROUTER sockets.
  419. //
  420. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc26
  421. //
  422. func (s *Socket) SetProbeROUTER(value int) error {
  423. return s.SetSockOptInt(PROBE_ROUTER, value)
  424. }
  425. // ZMQ_XPUB_VERBOSE: provide all subscription messages on XPUB sockets.
  426. //
  427. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc27
  428. //
  429. func (s *Socket) SetXPUBVerbose(value bool) error {
  430. if value {
  431. return s.SetSockOptInt(XPUB_VERBOSE, 1)
  432. }
  433. return s.SetSockOptInt(XPUB_VERBOSE, 0)
  434. }
  435. // ZMQ_REQ_CORRELATE: match replies with requests.
  436. //
  437. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc28
  438. //
  439. func (s *Socket) SetReqCorrelate(value int) error {
  440. return s.SetSockOptInt(REQ_CORRELATE, value)
  441. }
  442. // ZMQ_REQ_RELAXED: relax strict alternation between request and reply.
  443. //
  444. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc29
  445. //
  446. func (s *Socket) SetReqRelaxed(value int) error {
  447. return s.SetSockOptInt(REQ_RELAXED, value)
  448. }
  449. // ZMQ_TCP_KEEPALIVE: Override SO_KEEPALIVE socket option.
  450. //
  451. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc30
  452. //
  453. func (s *Socket) SetTCPKeepalive(value int) error {
  454. return s.SetSockOptInt(TCP_KEEPALIVE, value)
  455. }
  456. // ZMQ_TCP_KEEPALIVE_IDLE: Override TCP_KEEPCNT (or TCP_KEEPALIVE on some OS).
  457. //
  458. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc31
  459. //
  460. func (s *Socket) SetTCPKeepaliveIdle(value int) error {
  461. return s.SetSockOptInt(TCP_KEEPALIVE_IDLE, value)
  462. }
  463. // ZMQ_TCP_KEEPALIVE_CNT: Override TCP_KEEPCNT socket option.
  464. //
  465. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc32
  466. //
  467. func (s *Socket) SetTCPKeepaliveCnt(value int) error {
  468. return s.SetSockOptInt(TCP_KEEPALIVE_CNT, value)
  469. }
  470. // ZMQ_TCP_KEEPALIVE_INTVL: Override TCP_KEEPINTVL socket option.
  471. //
  472. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc33
  473. //
  474. func (s *Socket) SetTCPKeepaliveIntvl(value int) error {
  475. return s.SetSockOptInt(TCP_KEEPALIVE_INTVL, value)
  476. }
  477. // ZMQ_TCP_ACCEPT_FILTER: Assign filters to allow new TCP connections.
  478. //
  479. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc34
  480. //
  481. func (s *Socket) SetTCPAcceptFilter(value string) error {
  482. return s.SetSockOptString(TCP_ACCEPT_FILTER, value)
  483. }
  484. // ZMQ_PLAIN_SERVER: Set PLAIN server role.
  485. //
  486. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc35
  487. //
  488. func (s *Socket) SetPlainServer(value int) error {
  489. return s.SetSockOptInt(PLAIN_SERVER, value)
  490. }
  491. // ZMQ_PLAIN_USERNAME: Set PLAIN security username.
  492. //
  493. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc36
  494. //
  495. func (s *Socket) SetPlainUsername(value string) error {
  496. return s.SetSockOptString(PLAIN_USERNAME, value)
  497. }
  498. // ZMQ_PLAIN_PASSWORD: Set PLAIN security password.
  499. //
  500. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc37
  501. //
  502. func (s *Socket) SetPlainPassword(value string) error {
  503. return s.SetSockOptString(PLAIN_PASSWORD, value)
  504. }
  505. // ZMQ_CURVE_SERVER: Set CURVE server role.
  506. //
  507. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc38
  508. //
  509. func (s *Socket) SetCurveServer(value int) error {
  510. return s.SetSockOptInt(CURVE_SERVER, value)
  511. }
  512. // ZMQ_CURVE_PUBLICKEY: Set CURVE public key.
  513. //
  514. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc39
  515. //
  516. func (s *Socket) SetCurvePublickey(value string) error {
  517. return s.SetSockOptString(CURVE_PUBLICKEY, value)
  518. }
  519. // ZMQ_CURVE_SECRETKEY: Set CURVE secret key.
  520. //
  521. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc40
  522. //
  523. func (s *Socket) SetCurveSecretkey(value string) error {
  524. return s.SetSockOptString(CURVE_SECRETKEY, value)
  525. }
  526. // ZMQ_CURVE_SERVERKEY: Set CURVE server key.
  527. //
  528. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc41
  529. //
  530. func (s *Socket) SetCurveServerkey(value string) error {
  531. return s.SetSockOptString(CURVE_SERVERKEY, value)
  532. }
  533. // ZMQ_ZAP_DOMAIN: Set RFC 27 authentication domain.
  534. //
  535. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc42
  536. //
  537. func (s *Socket) SetZapDomain(value string) error {
  538. return s.SetSockOptString(ZAP_DOMAIN, value)
  539. }
  540. // ZMQ_CONFLATE: Keep only last message.
  541. //
  542. // See: http://api.zeromq.org/4.0:zmq-setsockopt#toc43
  543. //
  544. func (s *Socket) SetConflate(value bool) error {
  545. if value {
  546. return s.SetSockOptInt(CONFLATE, 1)
  547. }
  548. return s.SetSockOptInt(CONFLATE, 0)
  549. }