summaryrefslogtreecommitdiff
path: root/src/lib/nanomsg.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2021-05-26 23:06:42 +0200
committerCarl Hetherington <cth@carlh.net>2021-05-26 23:06:42 +0200
commit6a458c24f4ebf1d654e036fbb839790080a25eff (patch)
tree337b68a3f2450cd60c3e647c61410265e7867558 /src/lib/nanomsg.cc
parent0ede9dccbebd6a95b18cb747d73c1dcefd859373 (diff)
Tidy up Nanomsg more correctly.
Diffstat (limited to 'src/lib/nanomsg.cc')
-rw-r--r--src/lib/nanomsg.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/lib/nanomsg.cc b/src/lib/nanomsg.cc
index 1180f6936..61e6c08ce 100644
--- a/src/lib/nanomsg.cc
+++ b/src/lib/nanomsg.cc
@@ -43,17 +43,24 @@ Nanomsg::Nanomsg (bool server)
throw runtime_error("Could not set up nanomsg socket");
}
if (server) {
- if (nn_bind(_socket, NANOMSG_URL) < 0) {
+ if ((_endpoint = nn_bind(_socket, NANOMSG_URL)) < 0) {
throw runtime_error(String::compose("Could not bind nanomsg socket (%1)", errno));
}
} else {
- if (nn_connect(_socket, NANOMSG_URL) < 0) {
+ if ((_endpoint = nn_connect(_socket, NANOMSG_URL)) < 0) {
throw runtime_error(String::compose("Could not connect nanomsg socket (%1)", errno));
}
}
}
+Nanomsg::~Nanomsg ()
+{
+ nn_shutdown (_socket, _endpoint);
+ nn_close (_socket);
+}
+
+
bool
Nanomsg::send (string s, int timeout)
{