From 63422dfdcb1cd6827e76440cc147c9eac415952a Mon Sep 17 00:00:00 2001 From: Mauro Sardara Date: Mon, 8 Jul 2019 15:00:58 +0200 Subject: [HICN-242] Perform only one allocation for the whole buffer passed to produce() Change-Id: Ib4628d0a7711e2d7175b3dbb5c152dd22616ff32 Signed-off-by: Mauro Sardara --- libtransport/src/hicn/transport/interfaces/socket_producer.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'libtransport/src/hicn/transport/interfaces/socket_producer.h') diff --git a/libtransport/src/hicn/transport/interfaces/socket_producer.h b/libtransport/src/hicn/transport/interfaces/socket_producer.h index 744ddd86d..cd1c5a374 100644 --- a/libtransport/src/hicn/transport/interfaces/socket_producer.h +++ b/libtransport/src/hicn/transport/interfaces/socket_producer.h @@ -51,6 +51,12 @@ class ProducerSocket : public Socket, void connect() override; uint32_t produce(Name content_name, const uint8_t *buffer, size_t buffer_size, + bool is_last = true, uint32_t start_offset = 0) { + return produce(content_name, utils::MemBuf::copyBuffer(buffer, buffer_size), + is_last, start_offset); + } + + uint32_t produce(Name content_name, std::unique_ptr &&buffer, bool is_last = true, uint32_t start_offset = 0); void produce(ContentObject &content_object); -- cgit 1.2.3-korg