3

heartbleed エクスプロイトについて読みましたが、これは memcpy の間違いでした。

void * memcpy( void * dest, const void *src, size_t len );

memcpy の適切な呼び出しは次のようになります。

int a[4711] [4711];
 int b[4711] [4711];
/* initialize a */
(void) memcpy( &b [0] [0], &a [0] [0], sizeof( a ) );

しかし、なぜ 3 番目のパラメーターが src のサイズと異なるのでしょうか? dest サイズが使用されている他の例を見てきましたが、いつそれを行う必要がありますか?

4

3 に答える 3