|
|
| 359 |
uint32_t |
359 |
uint32_t |
| 360 |
TcpHeader::Deserialize (Buffer::Iterator start) |
360 |
TcpHeader::Deserialize (Buffer::Iterator start) |
| 361 |
{ |
361 |
{ |
|
|
362 |
m_optionsLen = 0; |
| 362 |
Buffer::Iterator i = start; |
363 |
Buffer::Iterator i = start; |
| 363 |
m_sourcePort = i.ReadNtohU16 (); |
364 |
m_sourcePort = i.ReadNtohU16 (); |
| 364 |
m_destinationPort = i.ReadNtohU16 (); |
365 |
m_destinationPort = i.ReadNtohU16 (); |
|
|
| 404 |
optionLen -= optionSize; |
405 |
optionLen -= optionSize; |
| 405 |
i.Next (optionSize); |
406 |
i.Next (optionSize); |
| 406 |
m_options.push_back (op); |
407 |
m_options.push_back (op); |
|
|
408 |
m_optionsLen += optionSize; |
| 407 |
} |
409 |
} |
| 408 |
else |
410 |
else |
| 409 |
{ |
411 |
{ |
|
|
| 417 |
// Discard padding bytes without adding to option list |
419 |
// Discard padding bytes without adding to option list |
| 418 |
i.Next (1); |
420 |
i.Next (1); |
| 419 |
--optionLen; |
421 |
--optionLen; |
|
|
422 |
++m_optionsLen; |
| 420 |
} |
423 |
} |
| 421 |
} |
424 |
} |
| 422 |
} |
425 |
} |