RE: cu coredumps

看板DFBSD_bugs作者時間21年前 (2004/10/28 02:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/3 (看更多)
> tmp_cp = malloc(sizeof(char) * 10); > cp = tmp_cp > free(tmp_cp); > tmp_cp = NULL; > > then cp would now be pointing to a block of memory that could be used by > some other process/overwritten? Would that not make it impossible for me > to actually free tmp_cp, as cp needs it? This frees the memory that tmp_cp && cp both *point to*. From that point on, if you reference cp you'll hopefully segfault because you're referencing garbage. Worst case, someone will put some malicious code at that memory location and 0wn3 your box. Also if this is a local function, pointing tmp_cp to NULL does nothing useful except give you a clean stack. That practice is most beneficial when using global/member variables. Adrian
文章代碼(AID): #11V-A500 (DFBSD_bugs)
文章代碼(AID): #11V-A500 (DFBSD_bugs)