<div dir="ltr">Hi all,<br><br>I added a new field to Interest packet by following the discussions: <a href="http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-July/002044.html">http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-July/002044.html</a> and <a href="http://www.lists.cs.ucla.edu/pipermail/ndnsim/2017-March/003481.html">http://www.lists.cs.ucla.edu/pipermail/ndnsim/2017-March/003481.html</a>.<br><br>I created the field "NextForwarder" to point what node is the next forwarder to the interest. This field should be updated at every node (here is the problem). <br><br>However, the alterations aren't persistent. The field value turns into "0" no matter what value I set.<br><br>Here goes my modifications:<br><br><b>    src/Interest.cpp: </b><br>                <br>    Interest&<br>    Interest::setNextForwarder(uint32_t next) {<br>           if (m_wire.hasWire() && m_nextForwarder.value_size() == sizeof(uint32_t)) {<br>            std::memcpy(const_cast<uint8_t*>(m_nextForwarder.value()), &next, sizeof(next));<br>  }<br>  else {<br>    m_nextForwarder = makeBinaryBlock(tlv::NextForwarder,<br>                              reinterpret_cast<const uint8_t*>(&next),<br>                              sizeof(next));<br>    m_wire.reset();<br>  }<br>  return *this;<br>}<br><br>uint32_t<br>Interest::getNextForwarder() const{<br>  if (!m_nextForwarder.hasWire())<br>    const_cast<Interest*>(this)->setNextForwarder(9999);<br><br>  if (m_nextForwarder.value_size() == sizeof(uint32_t))<br>    return *reinterpret_cast<const uint32_t*>(m_nextForwarder.value());<br>  else {<br>    return readNonNegativeInteger(m_nextForwarder);<br>  }<br>}<br><br><br><b>    encoding/tlv.h</b><br>          NextForwarder = 33, // X- Mateus<br><br><br>Thanks in advance.<br></div>