Skip to content

Commit 8a1b62f

Browse files
add sanity checks
1 parent 52e4e32 commit 8a1b62f

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

src/internal.c

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15720,16 +15720,22 @@ int wolfSSH_GetPath(const char* defaultPath, byte* in, word32 inSz,
1572015720
}
1572115721

1572215722
if (out != NULL) {
15723-
WMEMCPY(out + curSz, in, inSz);
15723+
if (curSz + inSz < *outSz) {
15724+
WMEMCPY(out + curSz, in, inSz);
15725+
}
1572415726
}
1572515727
curSz += inSz;
1572615728
if (out != NULL) {
1572715729
if (!WOLFSSH_SFTP_IS_DELIM(out[0])) {
15728-
WMEMMOVE(out+1, out, curSz);
15729-
out[0] = '/';
15730+
if (curSz + 1 < *outSz) {
15731+
WMEMMOVE(out+1, out, curSz);
15732+
out[0] = '/';
15733+
}
1573015734
curSz++;
1573115735
}
15732-
out[curSz] = 0;
15736+
if (curSz < *outSz) {
15737+
out[curSz] = 0;
15738+
}
1573315739
}
1573415740
*outSz = curSz;
1573515741

0 commit comments

Comments
 (0)