Cの中で安全でないsprintfとstrcpyを深く分析します
651 ワード
追跡デバッグを経て、sprintfやstrcpyのようなバッファオーバーフローの可能性のある関数から多くのバグが発生した.すべてのsprintfをsnprintfで置き換え、strcpyをstrncpyで置き換える必要があります.
1、配列使用前初期化0【20150423 pm add】
2、末尾バイトを'0'に設定.
1、配列使用前初期化0【20150423 pm add】
2、末尾バイトを'0'に設定.
memset(path_name->path, 0, sizeof(path_name->path));
for(i = 0;i <= DelimiterPos;i++)
path_name->path[i] = path[i];
path_name->path[i] = '\0';