2011-02-21 3 views

答えて

1

if(recvfrom(temp->sockfd, sendHostIP, BUFFER_LEN, 0, (struct sockaddr *)&recvAddr, &recvLen) < 0) 
    errorMsg("recvfrom"); 

あなたは長さ(256)としてBUFFER_LENを渡すが、sendHostIPのみ長MAXHOSTNAMELEN(64)です。

これにより、recvfrom()はそのバッファーをオーバーフローさせます。同じ問題は、localHostIPに読み込んだときに発生します。

+0

ああ、そうです。私は間違って配列のサイズをコピー/貼り付けする必要があります。ありがとう! – 235711131719

関連する問題