Skip to content

Commit 17712b2

Browse files
committed
ISAKMP: Fix printing Delete payload SPI when size is zero
Print Security Parameter Index(es) only if the SPI Size is non zero.
1 parent ff54b28 commit 17712b2

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

print-isakmp.c

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1884,14 +1884,16 @@ ikev1_d_print(netdissect_options *ndo, u_char tpay _U_,
18841884
ND_PRINT(" spilen=%u", spi_size);
18851885
num_spi = GET_BE_U_2(p->num_spi);
18861886
ND_PRINT(" nspi=%u", num_spi);
1887-
ND_PRINT(" spi=");
18881887
q = (const uint8_t *)(p + 1);
1889-
for (i = 0; i < num_spi; i++) {
1890-
if (i != 0)
1891-
ND_PRINT(",");
1892-
if (!rawprint(ndo, (const uint8_t *)q, spi_size))
1893-
goto trunc;
1894-
q += spi_size;
1888+
if (spi_size) {
1889+
ND_PRINT(" spi=");
1890+
for (i = 0; i < num_spi; i++) {
1891+
if (i != 0)
1892+
ND_PRINT(",");
1893+
if (!rawprint(ndo, (const uint8_t *)q, spi_size))
1894+
goto trunc;
1895+
q += spi_size;
1896+
}
18951897
}
18961898
return q;
18971899
trunc:

0 commit comments

Comments
 (0)