int func(char* str)
{
char buffer[100];
unsigned short len = strlen(str);
if(len >= 100)
{
return (-1);
}
strncpy(buffer,str,strlen(str));
return 0;
}
此代码容易受到缓冲区溢出攻击,我正在try 找出原因.我认为这与len
分被宣布为short
分有关,而不是int
分,但我不太确定.
Any ideas?