1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
|
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
|
+
+
+
|
st->payload = st->len - st->pad - 1;
st->pktin->length = st->payload + 5;
st->pktin->encrypted_len = st->packetlen;
st->pktin->sequence = st->incoming_sequence++;
st->pktin->length = st->packetlen - st->pad;
assert(st->pktin->length >= 0);
/*
* Decompress packet payload.
*/
{
unsigned char *newpayload;
int newlen;
if (ssh->sccomp &&
|
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
|
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
|
-
+
|
/*
* pktin->body and pktin->length should identify the semantic
* content of the packet, excluding the initial type byte.
*/
st->pktin->type = st->pktin->data[5];
st->pktin->body = st->pktin->data + 6;
st->pktin->length = st->packetlen - 6 - st->pad;
st->pktin->length -= 6;
assert(st->pktin->length >= 0); /* one last double-check */
if (ssh->logctx)
ssh2_log_incoming_packet(ssh, st->pktin);
st->pktin->savedpos = 0;
|