]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
fts: Fix double-free with conflicting concurrent modifications.
authorjilles <jilles@FreeBSD.org>
Fri, 7 Feb 2014 13:40:22 +0000 (13:40 +0000)
committerjilles <jilles@FreeBSD.org>
Fri, 7 Feb 2014 13:40:22 +0000 (13:40 +0000)
commit8479f1f726231aa2254c246e4b505d17ad724234
treed44fb10280f0cdfd1f165f45ddbb26e53b536712
parent3fd6ea64d7c6ad6dfd667d4f2e59083edd9fce71
fts: Fix double-free with conflicting concurrent modifications.

If rare conditions such as concurrent conflicting manipulation of the
filesystem occur, fts_read() frees the current FTSENT without adjusting
the pointers in the FTS accordingly. A later fts_close() then frees the
same FTSENT again.

Reported by: pho
Tested by: pho
MFC after: 1 week
lib/libc/gen/fts.c