Fixed a long-standing hack to open symbolic link objects.
authorEric Kohl <eric.kohl@reactos.org>
Thu, 20 Jun 2002 21:31:39 +0000 (21:31 +0000)
committerEric Kohl <eric.kohl@reactos.org>
Thu, 20 Jun 2002 21:31:39 +0000 (21:31 +0000)
svn path=/trunk/; revision=3133

reactos/include/ddk/obtypes.h
reactos/ntoskrnl/cm/cm.h
reactos/ntoskrnl/cm/regobj.c
reactos/ntoskrnl/ex/win32k.c
reactos/ntoskrnl/io/arcname.c
reactos/ntoskrnl/io/symlink.c
reactos/ntoskrnl/ke/main.c
reactos/ntoskrnl/ob/namespc.c
reactos/ntoskrnl/ob/object.c

index 39e2d0d..74c3f45 100644 (file)
@@ -1,6 +1,6 @@
 #ifndef _INCLUDE_DDK_OBTYPES_H
 #define _INCLUDE_DDK_OBTYPES_H
-/* $Id: obtypes.h,v 1.14 2001/12/05 01:40:23 dwelch Exp $ */
+/* $Id: obtypes.h,v 1.15 2002/06/20 21:28:55 ekohl Exp $ */
 struct _DIRECTORY_OBJECT;
 struct _OBJECT_ATTRIBUTES;
 
@@ -93,7 +93,6 @@ typedef struct _OBJECT_TYPE
                             PVOID *NextObject,
                             PUNICODE_STRING FullPath,
                             PWSTR *Path,
-                            struct _OBJECT_TYPE* ObjectType,
                             ULONG Attributes);
   
    /*
index 0c208e6..2299fb8 100644 (file)
@@ -349,7 +349,6 @@ CmiObjectParse(IN PVOID  ParsedObject,
               OUT PVOID  *NextObject,
               IN PUNICODE_STRING  FullPath,
               IN OUT PWSTR  *Path,
-              IN POBJECT_TYPE  ObjectType,
               IN ULONG  Attribute);
 
 NTSTATUS STDCALL
index e7b9c30..41cfcbd 100644 (file)
@@ -33,7 +33,6 @@ CmiObjectParse(PVOID ParsedObject,
               PVOID *NextObject,
               PUNICODE_STRING FullPath,
               PWSTR *Path,
-              POBJECT_TYPE ObjectType,
               ULONG Attributes)
 {
   BLOCK_OFFSET BlockOffset;
index 4322660..7ecda32 100644 (file)
@@ -163,7 +163,6 @@ ExpWinStaObjectParse(PVOID Object,
                     PVOID *NextObject,
                     PUNICODE_STRING FullPath,
                     PWSTR *Path,
-                    POBJECT_TYPE ObjectType,
                     ULONG Attributes)
 {
   PVOID FoundObject;
index 361f31d..832ef95 100644 (file)
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: arcname.c,v 1.3 2002/05/05 14:57:43 chorns Exp $
+/* $Id: arcname.c,v 1.4 2002/06/20 21:30:33 ekohl Exp $
  *
  * COPYRIGHT:       See COPYING in the top level directory
  * PROJECT:         ReactOS kernel
@@ -232,7 +232,7 @@ IoCreateSystemRootLink(PCHAR ParameterLine)
 
   InitializeObjectAttributes(&ObjectAttributes,
                             &ArcName,
-                            0,
+                            OBJ_OPENLINK,
                             NULL,
                             NULL);
 
index de678b3..4521d24 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: symlink.c,v 1.26 2002/04/15 12:38:01 ekohl Exp $
+/* $Id: symlink.c,v 1.27 2002/06/20 21:30:33 ekohl Exp $
  *
  * COPYRIGHT:       See COPYING in the top level directory
  * PROJECT:         ReactOS kernel
@@ -82,7 +82,6 @@ IopParseSymbolicLink(PVOID Object,
                     PVOID * NextObject,
                     PUNICODE_STRING FullPath,
                     PWSTR * RemainingPath,
-                    POBJECT_TYPE ObjectType,
                     ULONG Attributes)
 {
    PSYMLNK_OBJECT SymlinkObject = (PSYMLNK_OBJECT) Object;
@@ -94,7 +93,7 @@ IopParseSymbolicLink(PVOID Object,
     * the desired object is a symbolic link object.
     */
    if (((*RemainingPath == NULL) || (**RemainingPath == 0)) &&
-       (ObjectType == IoSymbolicLinkType))
+       (Attributes & OBJ_OPENLINK))
      {
        DPRINT("Parsing stopped!\n");
        *NextObject = NULL;
index 66855e1..0b9f613 100644 (file)
@@ -16,7 +16,7 @@
  *  along with this program; if not, write to the Free Software
  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
-/* $Id: main.c,v 1.126 2002/06/17 22:16:33 joeg Exp $
+/* $Id: main.c,v 1.127 2002/06/20 21:31:01 ekohl Exp $
  *
  * PROJECT:         ReactOS kernel
  * FILE:            ntoskrnl/ke/main.c
@@ -182,7 +182,7 @@ InitSystemSharedUserPage (PCSZ ParameterLine)
 
    InitializeObjectAttributes (&ObjectAttributes,
                               &ArcName,
-                              0,
+                              OBJ_OPENLINK,
                               NULL,
                               NULL);
 
@@ -229,7 +229,7 @@ InitSystemSharedUserPage (PCSZ ParameterLine)
 
        InitializeObjectAttributes (&ObjectAttributes,
                                    &DriveName,
-                                   0,
+                                   OBJ_OPENLINK,
                                    NULL,
                                    NULL);
 
index 1abe482..65b3299 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: namespc.c,v 1.30 2002/03/06 12:40:47 ekohl Exp $
+/* $Id: namespc.c,v 1.31 2002/06/20 21:31:39 ekohl Exp $
  *
  * COPYRIGHT:      See COPYING in the top level directory
  * PROJECT:        ReactOS kernel
@@ -248,7 +248,6 @@ ObpParseDirectory(PVOID Object,
                  PVOID * NextObject,
                  PUNICODE_STRING FullPath,
                  PWSTR * Path,
-                 POBJECT_TYPE ObjectType,
                  ULONG Attributes)
 {
    PWSTR end;
index 832f216..de46ed3 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: object.c,v 1.50 2002/06/05 19:37:12 hbirr Exp $
+/* $Id: object.c,v 1.51 2002/06/20 21:31:39 ekohl Exp $
  * 
  * COPYRIGHT:     See COPYING in the top level directory
  * PROJECT:       ReactOS kernel
@@ -185,7 +185,6 @@ NTSTATUS ObFindObject(POBJECT_ATTRIBUTES ObjectAttributes,
                                                  &NextObject,
                                                  &PathString,
                                                  &current,
-                                                 ObjectType,
                                                  ObjectAttributes->Attributes);
        if (Status == STATUS_REPARSE)
          {