diff --git a/src/network/model/byte-tag-list.cc b/src/network/model/byte-tag-list.cc index 83ccae8b1..e79ebd5ba 100644 --- a/src/network/model/byte-tag-list.cc +++ b/src/network/model/byte-tag-list.cc @@ -274,10 +274,9 @@ ByteTagList::Begin (int32_t offsetStart, int32_t offsetEnd) const } void -ByteTagList::AddAtEnd (int32_t adjustment, int32_t appendOffset) +ByteTagList::AddAtEnd (int32_t appendOffset) { - NS_LOG_FUNCTION (this << adjustment << appendOffset); - m_adjustment += adjustment; + NS_LOG_FUNCTION (this << appendOffset); if (m_maxEnd <= appendOffset - m_adjustment) { return; @@ -307,10 +306,9 @@ ByteTagList::AddAtEnd (int32_t adjustment, int32_t appendOffset) } void -ByteTagList::AddAtStart (int32_t adjustment, int32_t prependOffset) +ByteTagList::AddAtStart (int32_t prependOffset) { - NS_LOG_FUNCTION (this << adjustment << prependOffset); - m_adjustment += adjustment; + NS_LOG_FUNCTION (this << prependOffset); if (m_minStart >= prependOffset - m_adjustment) { return; diff --git a/src/network/model/byte-tag-list.h b/src/network/model/byte-tag-list.h index a78f775f2..bf136f8b3 100644 --- a/src/network/model/byte-tag-list.h +++ b/src/network/model/byte-tag-list.h @@ -207,26 +207,29 @@ private: */ ByteTagList::Iterator Begin (int32_t offsetStart, int32_t offsetEnd) const; + /* + * Adjust the offsets stored internally by the adjustment delta. + * + * \param adjustment value to change stored offsets by + */ + inline void Adjust (int32_t adjustment); + /** - * Adjust the offsets stored internally by the adjustment delta and - * make sure that all offsets are smaller than appendOffset which represents + * Make sure that all offsets are smaller than appendOffset which represents * the location where new bytes have been added to the byte buffer. * - * \param adjustment value to change stored offsets by * \param appendOffset maximum offset value * */ - void AddAtEnd (int32_t adjustment, int32_t appendOffset); + void AddAtEnd (int32_t appendOffset); /** - * Adjust the offsets stored internally by the adjustment delta and - * make sure that all offsets are bigger than prependOffset which represents + * Make sure that all offsets are bigger than prependOffset which represents * the location where new bytes have been added to the byte buffer. * - * \param adjustment value to change stored offsets byte * \param prependOffset minimum offset value * */ - void AddAtStart (int32_t adjustment, int32_t prependOffset); + void AddAtStart (int32_t prependOffset); private: /** @@ -256,6 +259,12 @@ private: struct ByteTagListData *m_data; //!< the ByteTagListData structure }; +void +ByteTagList::Adjust (int32_t adjustment) +{ + m_adjustment += adjustment; +} + } // namespace ns3 #endif /* BYTE_TAG_LIST_H */ diff --git a/src/network/model/packet.cc b/src/network/model/packet.cc index 34f81091b..a1026002e 100644 --- a/src/network/model/packet.cc +++ b/src/network/model/packet.cc @@ -256,8 +256,8 @@ Packet::AddHeader (const Header &header) NS_LOG_FUNCTION (this << header.GetInstanceTypeId ().GetName () << size); uint32_t orgStart = m_buffer.GetCurrentStartOffset (); m_buffer.AddAtStart (size); - m_byteTagList.AddAtStart (m_buffer.GetCurrentStartOffset () + size - orgStart, - m_buffer.GetCurrentStartOffset () + size); + m_byteTagList.Adjust (m_buffer.GetCurrentStartOffset () + size - orgStart); + m_byteTagList.AddAtStart (m_buffer.GetCurrentStartOffset () + size); header.Serialize (m_buffer.Begin ()); m_metadata.AddHeader (header, size); } @@ -284,8 +284,8 @@ Packet::AddTrailer (const Trailer &trailer) NS_LOG_FUNCTION (this << trailer.GetInstanceTypeId ().GetName () << size); uint32_t orgStart = m_buffer.GetCurrentStartOffset (); m_buffer.AddAtEnd (size); - m_byteTagList.AddAtEnd (m_buffer.GetCurrentStartOffset () - orgStart, - m_buffer.GetCurrentEndOffset () - size); + m_byteTagList.Adjust (m_buffer.GetCurrentStartOffset () - orgStart); + m_byteTagList.AddAtEnd (m_buffer.GetCurrentEndOffset () - size); Buffer::Iterator end = m_buffer.End (); trailer.Serialize (end); m_metadata.AddTrailer (trailer, size); @@ -315,11 +315,11 @@ Packet::AddAtEnd (Ptr packet) uint32_t bEnd = packet->m_buffer.GetCurrentEndOffset (); m_buffer.AddAtEnd (packet->m_buffer); uint32_t appendPrependOffset = m_buffer.GetCurrentEndOffset () - packet->m_buffer.GetSize (); - m_byteTagList.AddAtEnd (m_buffer.GetCurrentStartOffset () - aStart, - appendPrependOffset); + m_byteTagList.Adjust (m_buffer.GetCurrentStartOffset () - aStart); + m_byteTagList.AddAtEnd (appendPrependOffset); ByteTagList copy = packet->m_byteTagList; - copy.AddAtStart (m_buffer.GetCurrentEndOffset () - bEnd, - appendPrependOffset); + copy.Adjust (m_buffer.GetCurrentEndOffset () - bEnd); + copy.AddAtStart (appendPrependOffset); m_byteTagList.Add (copy); m_metadata.AddAtEnd (packet->m_metadata); } @@ -329,8 +329,8 @@ Packet::AddPaddingAtEnd (uint32_t size) NS_LOG_FUNCTION (this << size); uint32_t orgStart = m_buffer.GetCurrentStartOffset (); m_buffer.AddAtEnd (size); - m_byteTagList.AddAtEnd (m_buffer.GetCurrentStartOffset () - orgStart, - m_buffer.GetCurrentEndOffset () - size); + m_byteTagList.Adjust (m_buffer.GetCurrentStartOffset () - orgStart); + m_byteTagList.AddAtEnd (m_buffer.GetCurrentEndOffset () - size); m_metadata.AddPaddingAtEnd (size); } void