aboutsummaryrefslogtreecommitdiffstats
path: root/icnet/ccnx/icnet_ccnx_interest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'icnet/ccnx/icnet_ccnx_interest.cc')
-rw-r--r--icnet/ccnx/icnet_ccnx_interest.cc12
1 files changed, 10 insertions, 2 deletions
diff --git a/icnet/ccnx/icnet_ccnx_interest.cc b/icnet/ccnx/icnet_ccnx_interest.cc
index 6b0f92cb..d578d550 100644
--- a/icnet/ccnx/icnet_ccnx_interest.cc
+++ b/icnet/ccnx/icnet_ccnx_interest.cc
@@ -117,6 +117,13 @@ bool Interest::setPayload(const PARCBuffer *payload) {
return ccnxInterest_SetPayload(interest_, payload);
}
+bool Interest::setPayload(const uint8_t *buffer, std::size_t size) {
+ PARCBuffer *pbuffer = parcBuffer_CreateFromArray(buffer, size);
+ bool ret = setPayload(pbuffer);
+ parcBuffer_Release(&pbuffer);
+ return ret;
+}
+
bool Interest::setPayloadAndId(const PARCBuffer *payload) {
return ccnxInterest_SetPayloadAndId(interest_, payload);
}
@@ -125,8 +132,9 @@ bool Interest::setPayloadWithId(const PARCBuffer *payload, const CCNxInterestPay
return ccnxInterest_SetPayloadWithId(interest_, payload, payload_id);
}
-PARCBuffer *Interest::getPayload() {
- return ccnxInterest_GetPayload(interest_);
+utils::Array Interest::getPayload() const {
+ PARCBuffer *buffer = ccnxInterest_GetPayload(interest_);
+ return utils::Array(parcBuffer_Overlay(buffer, 0), parcBuffer_Remaining(buffer));
}
void Interest::setHopLimit(uint32_t hop_limit) {