mirror of https://github.com/arendst/Tasmota.git
Fix scripter buffer overflow (#20303)
This commit is contained in:
parent
b7b83eaaaa
commit
c744612a29
|
@ -9349,8 +9349,10 @@ bool Script_SubCmd(void) {
|
|||
cp += tlen;
|
||||
if (XdrvMailbox.data_len > 0) {
|
||||
*cp++ = '(';
|
||||
strncpy(cp, XdrvMailbox.data,XdrvMailbox.data_len);
|
||||
cp += XdrvMailbox.data_len;
|
||||
uint32_t max_space = sizeof(cmdbuff) - tlen - 4; // 4 = #()0
|
||||
uint32_t max_len = min(XdrvMailbox.data_len, max_space);
|
||||
strncpy(cp, XdrvMailbox.data, max_len);
|
||||
cp += max_len;
|
||||
*cp++ = ')';
|
||||
*cp = 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue