aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/netaddr.cpp10
-rw-r--r--src/network.cpp4
-rw-r--r--src/stream.cpp9
3 files changed, 16 insertions, 7 deletions
diff --git a/src/netaddr.cpp b/src/netaddr.cpp
index 109a6ac..1387b84 100644
--- a/src/netaddr.cpp
+++ b/src/netaddr.cpp
@@ -30,6 +30,16 @@ uint32_t netaddr_get_ip(const netaddr_t *self) { return self->ip; }
uint16_t netaddr_get_port(const netaddr_t *self) { return self->port; }
+netaddr_array_t *netaddr_array_new() { return new netaddr_array_t(); }
+netaddr_array_t *netaddr_array_new_from_addrs(const netaddr_t * const *addrs, size_t naddrs) {
+ auto res = new netaddr_array_t();
+ for (size_t i = 0; i < naddrs; i++)
+ (*res)[i] = *addrs[i];
+ return res;
+}
+
+void netaddr_array_free(netaddr_array_t *self) { delete self; }
+
}
#endif
diff --git a/src/network.cpp b/src/network.cpp
index 673cc24..39eec4c 100644
--- a/src/network.cpp
+++ b/src/network.cpp
@@ -111,8 +111,8 @@ void peernetwork_send_msg(peernetwork_t *self,
void peernetwork_multicast_msg(peernetwork_t *self,
msg_t *_moved_msg,
- const netaddr_t *paddrs, size_t npaddrs) {
- self->_multicast_msg(std::move(*_moved_msg), paddrs, npaddrs);
+ const netaddr_array_t *paddrs) {
+ self->multicast_msg(std::move(*_moved_msg), *paddrs);
delete _moved_msg;
}
diff --git a/src/stream.cpp b/src/stream.cpp
index 3e24292..b14bd6a 100644
--- a/src/stream.cpp
+++ b/src/stream.cpp
@@ -24,8 +24,8 @@ void uint256_unserialize(uint256_t *self, datastream_t *s) {
}
datastream_t *datastream_new() { return new datastream_t(); }
-datastream_t *datastream_new_from_bytes(const uint8_t *begin, const uint8_t *end) {
- return new datastream_t(begin, end);
+datastream_t *datastream_new_from_bytes(const uint8_t *base, size_t size) {
+ return new datastream_t(base, base + size);
}
void datastream_free(const datastream_t *self) { delete self; }
@@ -54,9 +54,8 @@ void datastream_put_i16(datastream_t *self, int16_t val) { *self << val; }
void datastream_put_i32(datastream_t *self, int32_t val) { *self << val; }
void datastream_put_i64(datastream_t *self, int64_t val) { *self << val; }
-void datastream_put_data(datastream_t *self,
- const uint8_t *begin, const uint8_t *end) {
- self->put_data(begin, end);
+void datastream_put_data(datastream_t *self, const uint8_t *base, size_t size) {
+ self->put_data(base, base + size);
}
uint8_t datastream_get_u8(datastream_t *self) { uint8_t val; *self >> val; return val; }