MCPcopy Create free account
hub / github.com/PCSX2/pcsx2 / WriteBytes

Method WriteBytes

pcsx2/DEV9/PacketReader/IP/TCP/TCP_Packet.cpp:194–218  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

192 }
193
194 void TCP_Packet::WriteBytes(u8* buffer, int* offset)
195 {
196 const int startOff = *offset;
197 NetLib::WriteUInt16(buffer, offset, sourcePort);
198 NetLib::WriteUInt16(buffer, offset, destinationPort);
199 NetLib::WriteUInt32(buffer, offset, sequenceNumber);
200 NetLib::WriteUInt32(buffer, offset, acknowledgementNumber);
201 NetLib::WriteByte08(buffer, offset, dataOffsetAndNS_Flag);
202 NetLib::WriteByte08(buffer, offset, flags);
203 NetLib::WriteUInt16(buffer, offset, windowSize);
204 NetLib::WriteUInt16(buffer, offset, checksum);
205 NetLib::WriteUInt16(buffer, offset, urgentPointer);
206
207 //options
208 for (size_t i = 0; i < options.size(); i++)
209 options[i]->WriteBytes(buffer, offset);
210
211 //Zero alignment bytes
212 if (*offset != startOff + headerLength)
213 memset(&buffer[*offset], 0, startOff + headerLength - *offset);
214
215 *offset = startOff + headerLength;
216
217 payload->WriteBytes(buffer, offset);
218 }
219
220 TCP_Packet* TCP_Packet::Clone() const
221 {

Callers

nothing calls this directly

Calls 4

WriteUInt16Function · 0.85
WriteUInt32Function · 0.85
WriteByte08Function · 0.85
sizeMethod · 0.45

Tested by

no test coverage detected