Author: fireball Date: Tue May 10 15:43:55 2011 New Revision: 51666
URL: http://svn.reactos.org/svn/reactos?rev=51666&view=rev Log: [NTOSKRNL] - Sam Arun Raj Seeniraj: ObpLookupObjectName() used to reparse endlessly when a symlink points to itself, preventing this by limiting number of reparse attemtps. See issue #993 for more details.
Modified: trunk/reactos/ntoskrnl/ob/obname.c
Modified: trunk/reactos/ntoskrnl/ob/obname.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ob/obname.c?rev=51... ============================================================================== --- trunk/reactos/ntoskrnl/ob/obname.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/ob/obname.c [iso-8859-1] Tue May 10 15:43:55 2011 @@ -544,7 +544,7 @@ }
/* Reparse */ - while (Reparse) + while (Reparse && MaxReparse) { /* Get the name */ RemainingName = *ObjectName; @@ -795,6 +795,7 @@ { /* Reparse again */ Reparse = TRUE; + --MaxReparse;
/* Start over from root if we got sent back there */ if ((Status == STATUS_REPARSE_OBJECT) ||