diff options
Diffstat (limited to 'third_party/libwebrtc/net/dcsctp/rx/traditional_reassembly_streams.h')
-rw-r--r-- | third_party/libwebrtc/net/dcsctp/rx/traditional_reassembly_streams.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/third_party/libwebrtc/net/dcsctp/rx/traditional_reassembly_streams.h b/third_party/libwebrtc/net/dcsctp/rx/traditional_reassembly_streams.h index d355c599ae..9214a9bc9a 100644 --- a/third_party/libwebrtc/net/dcsctp/rx/traditional_reassembly_streams.h +++ b/third_party/libwebrtc/net/dcsctp/rx/traditional_reassembly_streams.h @@ -55,6 +55,7 @@ class TraditionalReassemblyStreams : public ReassemblyStreams { : parent_(*parent) {} size_t AssembleMessage(ChunkMap::iterator start, ChunkMap::iterator end); + size_t AssembleMessage(UnwrappedTSN tsn, Data data); TraditionalReassemblyStreams& parent_; }; @@ -101,6 +102,11 @@ class TraditionalReassemblyStreams : public ReassemblyStreams { // Returns the number of bytes assembled if a message was assembled. size_t TryToAssembleMessage(); size_t TryToAssembleMessages(); + // Same as above but when inserting the first complete message avoid + // insertion into the map. + size_t TryToAssembleMessagesFastpath(UnwrappedSSN ssn, + UnwrappedTSN tsn, + Data data); // This must be an ordered container to be able to iterate in SSN order. std::map<UnwrappedSSN, ChunkMap> chunks_by_ssn_; UnwrappedSSN::Unwrapper ssn_unwrapper_; |