summaryrefslogtreecommitdiff
path: root/src/PeerMessageUtil.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/PeerMessageUtil.cc')
-rw-r--r--src/PeerMessageUtil.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/PeerMessageUtil.cc b/src/PeerMessageUtil.cc
index c342aec3..74a00037 100644
--- a/src/PeerMessageUtil.cc
+++ b/src/PeerMessageUtil.cc
@@ -125,3 +125,17 @@ void PeerMessageUtil::createPeerMessageString(unsigned char* msg,
setIntParam(msg, payloadLength);
msg[4] = messageId;
}
+
+bool PeerMessageUtil::createcompact(char* compact, const string& addr, uint16_t port)
+{
+ struct in_addr in;
+ if(inet_aton(addr.c_str(), &in) == 0) {
+ return false;
+ }
+ uint32_t* addrp = (uint32_t*)compact;
+ *addrp = in.s_addr;
+ uint16_t* portp = (uint16_t*)(compact+4);
+ *portp = htons(port);
+ return true;
+}
+