libzmq: Problem: CurveZMQ connection fails without ZAP
In commit a0ccdc866efbac5889d8872c7f27c53e9c0a7c5b from #2482 the logic of curve_server.cpp was changed so that zmq::curve_server_t::process_initiate returns -1 if zap_connect fails. Previously, this was allowed and the ZAP logic was only processed if that returned 0. Was this deliberate? Is ZAP mandatory now?
About this issue
- Original URL
- State: closed
- Created 7 years ago
- Comments: 17 (17 by maintainers)
Commits related to this issue
- Problem: CURVE can no longer be used without ZAP Solution: revert change that made ZAP mandatory. The "Stonehouse" pattern, where CURVE is used only for encryption and without authentication, is a va... — committed to bluca/libzmq by bluca 7 years ago
- Problem: CURVE can no longer be used without ZAP Solution: revert change that made ZAP mandatory. The "Stonehouse" pattern, where CURVE is used only for encryption and without authentication, is a va... — committed to bluca/libzmq by bluca 7 years ago
It’s an inproc socket, and those are local to a context:
https://github.com/zeromq/libzmq/blob/master/src/session_base.cpp#L322
If you had the need to do that, the recommendation would probably be to use two different contexts, since the
inprocsocket used by ZAP is local to a single context.