タグ

C言語に関するSHIN-PONのブックマーク (1)

  • 静的解析に引っかからなかったメモリ破壊の話 - Qiita

    リセットされるカウンタは g_loop_counter です。 いったい何がいけないのか、わかりますか? mapファイルで確認すると、g_loop_counter は g_is_error_flg の次のアドレスでした。 ステップ実行して g_is_error_flg = false; で g_loop_counter に 0 が書き込まれるのを確認できました。 ただ、g_is_error_flg = false; の何がいけないのか、しばらくは分かりませんでした。 mogemoge.c から見ると、g_is_error_flg の宣言はどっか別の所にあって、mogemoge.c 内では unsigned int として扱うしかない訳です。 ところが、アドレスの割り付けとしてはg_is_error_flg と g_loop_counter で1バイトずつでしか割り当てられていない訳で。 困

    静的解析に引っかからなかったメモリ破壊の話 - Qiita
    SHIN-PON
    SHIN-PON 2013/12/01
    リアルでちょっと恐い話。
  • 1