var_dump.argv[i] = tmpstr;
/* copy the string */
+ // this is guaranteed to alwys null terminate tmpstr
strncpy(tmpstr, (char*)argvn, strlen((char*)argvn) + 1);
+
i++;
cursor += 4;
bytes += strlen((char*)argvn) + 1;
return -1;
}
+ // will always null-terminate tmpstr
strncpy(tmpstr, argstrs[i], strlen(argstrs[j]) + 1);
var_dump.argv[i] = tmpstr;
bytes += strlen(argstrs[j]) + 1;
var_dump.envp[i] = tmpstr;
/* deepcopy the string */
+ // will always null-terminate tmpstr
strncpy(tmpstr, (char*)envpn, strlen((char*)envpn) + 1);
i++;
cursor += 4;
PrintError(core->vm_info, core, "Cannot allocate temp string\n");
return -1;
}
-
+ // will always null-terminate tmpstr
strncpy(tmpstr, envstrs[j], strlen(envstrs[j]) + 1);
var_dump.envp[i] = tmpstr;
bytes += strlen(envstrs[j]) + 1;
var_dump.argv[i] = tmpstr;
/* copy the string */
+ // will always null-terminate tmpstr
strncpy(tmpstr, (char*)argvn, strlen((char*)argvn) + 1);
i++;
cursor += 8;
return -1;
}
+ // will always null-terminate tmpstr
strncpy(tmpstr, argstrs[j], strlen(argstrs[j]) + 1);
var_dump.argv[i] = tmpstr;
bytes += strlen(argstrs[j]) + 1;
var_dump.envp[i] = tmpstr;
/* deepcopy the string */
+ // will always null-terminate tmpstr
strncpy(tmpstr, (char*)envpn, strlen((char*)envpn) + 1);
i++;
cursor += 8;
PrintError(core->vm_info, core, "Cannot allocate temp string\n");
return -1;
}
-
+ // will always null-terminate tmpstr
strncpy(tmpstr, envstrs[i], strlen(envstrs[j]) + 1);
var_dump.envp[i] = tmpstr;
bytes += strlen(envstrs[j]) + 1;