53 if (p == NULL || seg == NULL) {
57 const uint8_t *seg_data;
60 if (seg_data == NULL || seg_datalen == 0)
68 }
else if (
SEQ_GT(pkt_seq, (seg->
seq + seg_datalen))) {
77 uint32_t seg_end = seg->
seq + seg_datalen;
78 SCLogDebug(
"pkt_end %u, seg_end %u", pkt_end, seg_end);
81 uint32_t end = (
SEQ_GT(pkt_end, seg_end)) ? seg_end : pkt_end;
87 uint32_t pkt_off =
seq - pkt_seq;
88 uint32_t seg_off =
seq - seg->
seq;
89 SCLogDebug(
"pkt_off %u, seg_off %u", pkt_off, seg_off);
91 uint32_t range = end -
seq;
119 uint32_t tseq = seg->
seq;
128 const uint8_t *seg_data;
129 uint32_t seg_datalen;
133 uint32_t tend = tseq + seg_datalen;
137 uint32_t end = (
SEQ_GT(pend, tend)) ? tend : pend;
139 uint32_t
seq = (
SEQ_LT(pseq, tseq)) ? tseq : pseq;
142 uint32_t poff =
seq - pseq;
143 uint32_t toff =
seq - tseq;
146 uint32_t range = end -
seq;
153 memcpy(p->
payload+poff, seg_data+toff, range);