summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2018-01-28 11:40:38 +0100
committerAlexis Ballier <aballier@gentoo.org>2018-01-28 13:54:33 +0100
commite87f8f5cbda5afd7f123a0b9a52ecb162258f7d9 (patch)
treed9ca4c2731a6765ac739b649995980d235021636 /net-libs/ignition-transport/files
parentdev-util/ignition-cmake: bump to 0.4.0 (diff)
downloadgentoo-e87f8f5cbda5afd7f123a0b9a52ecb162258f7d9.tar.gz
gentoo-e87f8f5cbda5afd7f123a0b9a52ecb162258f7d9.tar.bz2
gentoo-e87f8f5cbda5afd7f123a0b9a52ecb162258f7d9.zip
net-libs/ignition-transport: bump to 4.0.0
Package-Manager: Portage-2.3.20, Repoman-2.3.6
Diffstat (limited to 'net-libs/ignition-transport/files')
-rw-r--r--net-libs/ignition-transport/files/zmq.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/net-libs/ignition-transport/files/zmq.patch b/net-libs/ignition-transport/files/zmq.patch
new file mode 100644
index 000000000000..ddbf8f113064
--- /dev/null
+++ b/net-libs/ignition-transport/files/zmq.patch
@@ -0,0 +1,31 @@
+Index: ignition-transport4-4.0.0/src/NodeShared.cc
+===================================================================
+--- ignition-transport4-4.0.0.orig/src/NodeShared.cc
++++ ignition-transport4-4.0.0/src/NodeShared.cc
+@@ -92,7 +92,8 @@ bool userPass(std::string &_user, std::s
+ // Helper to send messages
+ int sendHelper(zmq::socket_t &_pub, const std::string &_data, int _type)
+ {
+- zmq::message_t msg(_data.data(), _data.size());
++ zmq::message_t msg(_data.size());
++ memcpy(msg.data(), _data.data(), _data.size());
+ return _pub.send(msg, _type);
+ }
+
+@@ -278,10 +279,13 @@ bool NodeShared::Publish(
+ {
+ // Create the messages.
+ // Note that we use zero copy for passing the message data (msg2).
+- zmq::message_t msg0(_topic.data(), _topic.size()),
+- msg1(this->myAddress.data(), this->myAddress.size()),
++ zmq::message_t msg0(_topic.size()),
++ msg1(this->myAddress.size()),
+ msg2(_data, _dataSize, _ffn, nullptr),
+- msg3(_msgType.data(), _msgType.size());
++ msg3(_msgType.size());
++ memcpy(msg0.data(), _topic.data(), _topic.size());
++ memcpy(msg1.data(), this->myAddress.data(), this->myAddress.size());
++ memcpy(msg3.data(), _msgType.data(), _msgType.size());
+
+ // Send the messages
+ std::lock_guard<std::recursive_mutex> lock(this->mutex);