fix indentation
Modified: trunk/reactos/drivers/fs/vfat/create.c

Modified: trunk/reactos/drivers/fs/vfat/create.c
--- trunk/reactos/drivers/fs/vfat/create.c	2005-11-04 00:03:34 UTC (rev 18979)
+++ trunk/reactos/drivers/fs/vfat/create.c	2005-11-04 00:07:47 UTC (rev 18980)
@@ -31,60 +31,61 @@
 
 /* FUNCTIONS *****************************************************************/
 
-void  vfat8Dot3ToString (PFAT_DIR_ENTRY pEntry, PUNICODE_STRING NameU)
+void
+vfat8Dot3ToString (PFAT_DIR_ENTRY pEntry, PUNICODE_STRING NameU)
 {
-  OEM_STRING StringA;
-  USHORT Length;
-  CHAR  cString[12];
-
-  RtlCopyMemory(cString, pEntry->ShortName, 11);
-  cString[11] = 0;
-  if (cString[0] == 0x05)
-    {
-      cString[0] = 0xe5;
-    }
-
-  StringA.Buffer = cString;
-  for (StringA.Length = 0;
-       StringA.Length < 8 && StringA.Buffer[StringA.Length] != ' ';
-       StringA.Length++);
-  StringA.MaximumLength = StringA.Length;
-
-  RtlOemStringToUnicodeString(NameU, &StringA, FALSE);
-
-  if (pEntry->lCase & VFAT_CASE_LOWER_BASE)
-    {
-      RtlDowncaseUnicodeString(NameU, NameU, FALSE);
-    }
-  if (cString[8] != ' ')
-    {
-      Length = NameU->Length;
-      NameU->Buffer += Length / sizeof(WCHAR);
-      if (!FAT_ENTRY_VOLUME(pEntry))
-        {
-	  Length += sizeof(WCHAR);
-          NameU->Buffer[0] = L'.';
-          NameU->Buffer++;
+	OEM_STRING StringA;
+	USHORT Length;
+	CHAR  cString[12];
+	
+	RtlCopyMemory(cString, pEntry->ShortName, 11);
+	cString[11] = 0;
+	if (cString[0] == 0x05)
+	{
+		cString[0] = 0xe5;
 	}
-      NameU->Length = 0;
-      NameU->MaximumLength -= Length;
-
-      StringA.Buffer = &cString[8];
-      for (StringA.Length = 0;
-           StringA.Length < 3 && StringA.Buffer[StringA.Length] != ' ';
-           StringA.Length++);
-      StringA.MaximumLength = StringA.Length;
-      RtlOemStringToUnicodeString(NameU, &StringA, FALSE);
-      if (pEntry->lCase & VFAT_CASE_LOWER_EXT)
-        {
-          RtlDowncaseUnicodeString(NameU, NameU, FALSE);
-        }
-      NameU->Buffer -= Length / sizeof(WCHAR);
-      NameU->Length += Length;
-      NameU->MaximumLength += Length;
-    }
-  NameU->Buffer[NameU->Length / sizeof(WCHAR)] = 0;
-  DPRINT("'%wZ'\n", NameU);
+	
+	StringA.Buffer = cString;
+	for (StringA.Length = 0;
+	StringA.Length < 8 && StringA.Buffer[StringA.Length] != ' ';
+	StringA.Length++);
+	StringA.MaximumLength = StringA.Length;
+	
+	RtlOemStringToUnicodeString(NameU, &StringA, FALSE);
+	
+	if (pEntry->lCase & VFAT_CASE_LOWER_BASE)
+	{
+		RtlDowncaseUnicodeString(NameU, NameU, FALSE);
+	}
+	if (cString[8] != ' ')
+	{
+		Length = NameU->Length;
+		NameU->Buffer += Length / sizeof(WCHAR);
+		if (!FAT_ENTRY_VOLUME(pEntry))
+		{
+			Length += sizeof(WCHAR);
+			NameU->Buffer[0] = L'.';
+			NameU->Buffer++;
+		}
+		NameU->Length = 0;
+		NameU->MaximumLength -= Length;
+		
+		StringA.Buffer = &cString[8];
+		for (StringA.Length = 0;
+		StringA.Length < 3 && StringA.Buffer[StringA.Length] != ' ';
+		StringA.Length++);
+		StringA.MaximumLength = StringA.Length;
+		RtlOemStringToUnicodeString(NameU, &StringA, FALSE);
+		if (pEntry->lCase & VFAT_CASE_LOWER_EXT)
+		{
+			RtlDowncaseUnicodeString(NameU, NameU, FALSE);
+		}
+		NameU->Buffer -= Length / sizeof(WCHAR);
+		NameU->Length += Length;
+		NameU->MaximumLength += Length;
+	}
+	NameU->Buffer[NameU->Length / sizeof(WCHAR)] = 0;
+	DPRINT("'%wZ'\n", NameU);
 }
 
 NTSTATUS
@@ -93,680 +94,685 @@
  * FUNCTION: Read the volume label
  */
 {
-  PVOID Context = NULL;
-  ULONG DirIndex = 0;
-  PDIR_ENTRY Entry;
-  PVFATFCB pFcb;
-  LARGE_INTEGER FileOffset;
-  UNICODE_STRING NameU;
-  ULONG SizeDirEntry;
-  ULONG EntriesPerPage;
-  OEM_STRING StringO;
-
-  NameU.Buffer = Vpb->VolumeLabel;
-  NameU.Length = 0;
-  NameU.MaximumLength = sizeof(Vpb->VolumeLabel);
-  *(Vpb->VolumeLabel) = 0;
-  Vpb->VolumeLabelLength = 0;
-
-  if (DeviceExt->Flags & VCB_IS_FATX)
-  {
-    SizeDirEntry = sizeof(FATX_DIR_ENTRY);
-    EntriesPerPage = FATX_ENTRIES_PER_PAGE;
-  }
-  else
-  {
-    SizeDirEntry = sizeof(FAT_DIR_ENTRY);
-    EntriesPerPage = FAT_ENTRIES_PER_PAGE;
-  }
-
-  ExAcquireResourceExclusiveLite (&DeviceExt->DirResource, TRUE);
-  pFcb = vfatOpenRootFCB (DeviceExt);
-  ExReleaseResourceLite (&DeviceExt->DirResource);
-
-  FileOffset.QuadPart = 0;
-  if (CcMapData(pFcb->FileObject, &FileOffset, PAGE_SIZE, TRUE, &Context, (PVOID*)&Entry))
-  {
-     while (TRUE)
-     {
-       if (ENTRY_VOLUME(DeviceExt, Entry))
-       {
-          /* copy volume label */
-          if (DeviceExt->Flags & VCB_IS_FATX)
-          {
-            StringO.Buffer = (PCHAR)Entry->FatX.Filename;
-            StringO.MaximumLength = StringO.Length = Entry->FatX.FilenameLength;
-            RtlOemStringToUnicodeString(&NameU, &StringO, FALSE);
-          }
-          else
-          {
-            vfat8Dot3ToString (&Entry->Fat, &NameU);
-          }
-          Vpb->VolumeLabelLength = NameU.Length;
-          break;
-       }
-       if (ENTRY_END(DeviceExt, Entry))
-       {
-          break;
-       }
-       DirIndex++;
-       Entry = (PDIR_ENTRY)((ULONG_PTR)Entry + SizeDirEntry);
-       if ((DirIndex % EntriesPerPage) == 0)
-       {
-	  CcUnpinData(Context);
-	  FileOffset.u.LowPart += PAGE_SIZE;
-	  if (!CcMapData(pFcb->FileObject, &FileOffset, PAGE_SIZE, TRUE, &Context, (PVOID*)&Entry))
-	  {
-	     Context = NULL;
-	     break;
-	  }
-       }
-     }
-     if (Context)
-     {
-       CcUnpinData(Context);
-     }
-  }
-  ExAcquireResourceExclusiveLite (&DeviceExt->DirResource, TRUE);
-  vfatReleaseFCB (DeviceExt, pFcb);
-  ExReleaseResourceLite (&DeviceExt->DirResource);
-
-  return STATUS_SUCCESS;
+	PVOID Context = NULL;
+	ULONG DirIndex = 0;
+	PDIR_ENTRY Entry;
+	PVFATFCB pFcb;
+	LARGE_INTEGER FileOffset;
+	UNICODE_STRING NameU;
+	ULONG SizeDirEntry;
+	ULONG EntriesPerPage;
+	OEM_STRING StringO;
+	
+	NameU.Buffer = Vpb->VolumeLabel;
+	NameU.Length = 0;
+	NameU.MaximumLength = sizeof(Vpb->VolumeLabel);
+	*(Vpb->VolumeLabel) = 0;
+	Vpb->VolumeLabelLength = 0;
+	
+	if (DeviceExt->Flags & VCB_IS_FATX)
+	{
+		SizeDirEntry = sizeof(FATX_DIR_ENTRY);
+		EntriesPerPage = FATX_ENTRIES_PER_PAGE;
+	}
+	else
+	{
+		SizeDirEntry = sizeof(FAT_DIR_ENTRY);
+		EntriesPerPage = FAT_ENTRIES_PER_PAGE;
+	}
+	
+	ExAcquireResourceExclusiveLite (&DeviceExt->DirResource, TRUE);
+	pFcb = vfatOpenRootFCB (DeviceExt);
+	ExReleaseResourceLite (&DeviceExt->DirResource);
+	
+	FileOffset.QuadPart = 0;
+	if (CcMapData(pFcb->FileObject, &FileOffset, PAGE_SIZE, TRUE, &Context, (PVOID*)&Entry))
+	{
+		while (TRUE)
+		{
+			if (ENTRY_VOLUME(DeviceExt, Entry))
+			{
+				/* copy volume label */
+				if (DeviceExt->Flags & VCB_IS_FATX)
+				{
+					StringO.Buffer = (PCHAR)Entry->FatX.Filename;
+					StringO.MaximumLength = StringO.Length = Entry->FatX.FilenameLength;
+					RtlOemStringToUnicodeString(&NameU, &StringO, FALSE);
+				}
+				else
+				{
+					vfat8Dot3ToString (&Entry->Fat, &NameU);
+				}
+				Vpb->VolumeLabelLength = NameU.Length;
+				break;
+			}
+			if (ENTRY_END(DeviceExt, Entry))
+			{
+				break;
+			}
+			DirIndex++;
+			Entry = (PDIR_ENTRY)((ULONG_PTR)Entry + SizeDirEntry);
+			if ((DirIndex % EntriesPerPage) == 0)
+			{
+				CcUnpinData(Context);
+				FileOffset.u.LowPart += PAGE_SIZE;
+				if (!CcMapData(pFcb->FileObject, &FileOffset, PAGE_SIZE, TRUE, &Context, (PVOID*)&Entry))
+				{
+					Context = NULL;
+					break;
+				}
+			}
+		}
+		if (Context)
+		{
+			CcUnpinData(Context);
+		}
+	}
+	ExAcquireResourceExclusiveLite (&DeviceExt->DirResource, TRUE);
+	vfatReleaseFCB (DeviceExt, pFcb);
+	ExReleaseResourceLite (&DeviceExt->DirResource);
+	
+	return STATUS_SUCCESS;
 }
 
 NTSTATUS
-FindFile (PDEVICE_EXTENSION DeviceExt,
-          PVFATFCB Parent,
-          PUNICODE_STRING FileToFindU,
-	  PVFAT_DIRENTRY_CONTEXT DirContext,
-	  BOOLEAN First)
+FindFile (
+	PDEVICE_EXTENSION DeviceExt,
+	PVFATFCB Parent,
+	PUNICODE_STRING FileToFindU,
+	PVFAT_DIRENTRY_CONTEXT DirContext,
+	BOOLEAN First)
 /*
  * FUNCTION: Find a file
  */
 {
-  PWCHAR PathNameBuffer;
-  USHORT PathNameBufferLength;
-  NTSTATUS Status;
-  PVOID Context = NULL;
-  PVOID Page;
-  PVFATFCB rcFcb;
-  BOOLEAN Found;
-  UNICODE_STRING PathNameU;
-  UNICODE_STRING FileToFindUpcase;
-  BOOLEAN WildCard;
-
-  DPRINT ("FindFile(Parent %x, FileToFind '%wZ', DirIndex: %d)\n",
-          Parent, FileToFindU, DirContext->DirIndex);
-  DPRINT ("FindFile: Path %wZ)\n",&Parent->PathNameU);
-
-  PathNameBufferLength = LONGNAME_MAX_LENGTH * sizeof(WCHAR);
-  PathNameBuffer = ExAllocatePool(NonPagedPool, PathNameBufferLength + sizeof(WCHAR));
-  if (!PathNameBuffer)
-  {
-    CHECKPOINT1;
-    return STATUS_INSUFFICIENT_RESOURCES;
-  }
-
-  PathNameU.Buffer = PathNameBuffer;
-  PathNameU.Length = 0;
-  PathNameU.MaximumLength = PathNameBufferLength;
-
-  DirContext->LongNameU.Length = 0;
-  DirContext->ShortNameU.Length = 0;
-
-  WildCard = FsRtlDoesNameContainWildCards(FileToFindU);
-
-  if (WildCard == FALSE)
-    {
-      /* if there is no '*?' in the search name, than look first for an existing fcb */
-      RtlCopyUnicodeString(&PathNameU, &Parent->PathNameU);
-      if (!vfatFCBIsRoot(Parent))
-        {
-          PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = L'\\';
-	  PathNameU.Length += sizeof(WCHAR);
-        }
-      RtlAppendUnicodeStringToString(&PathNameU, FileToFindU);
-      PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = 0;
-      rcFcb = vfatGrabFCBFromTable(DeviceExt, &PathNameU);
-      if (rcFcb)
-        {
-	  ULONG startIndex = rcFcb->startIndex;
-	  if ((rcFcb->Flags & FCB_IS_FATX_ENTRY) && !vfatFCBIsRoot(Parent))
-	    {
-	      startIndex += 2;
-	    }
-	  if(startIndex >= DirContext->DirIndex)
-	    {
-	      RtlCopyUnicodeString(&DirContext->LongNameU, &rcFcb->LongNameU);
-	      RtlCopyUnicodeString(&DirContext->ShortNameU, &rcFcb->ShortNameU);
-	      RtlCopyMemory(&DirContext->DirEntry, &rcFcb->entry, sizeof(DIR_ENTRY));
-	      DirContext->StartIndex = rcFcb->startIndex;
-	      DirContext->DirIndex = rcFcb->dirIndex;
-              DPRINT("FindFile: new Name %wZ, DirIndex %d (%d)\n",
-	             &DirContext->LongNameU, DirContext->DirIndex, DirContext->StartIndex);
-	      Status = STATUS_SUCCESS;
-	    }
-          else
-	    {
-	      CHECKPOINT1;
-	      Status = STATUS_UNSUCCESSFUL;
-	    }
-          vfatReleaseFCB(DeviceExt, rcFcb);
-	  ExFreePool(PathNameBuffer);
-	  return Status;
+	PWCHAR PathNameBuffer;
+	USHORT PathNameBufferLength;
+	NTSTATUS Status;
+	PVOID Context = NULL;
+	PVOID Page;
+	PVFATFCB rcFcb;
+	BOOLEAN Found;
+	UNICODE_STRING PathNameU;
+	UNICODE_STRING FileToFindUpcase;
+	BOOLEAN WildCard;
+	
+	DPRINT ("FindFile(Parent %x, FileToFind '%wZ', DirIndex: %d)\n",
+		Parent, FileToFindU, DirContext->DirIndex);
+	DPRINT ("FindFile: Path %wZ)\n",&Parent->PathNameU);
+	
+	PathNameBufferLength = LONGNAME_MAX_LENGTH * sizeof(WCHAR);
+	PathNameBuffer = ExAllocatePool(NonPagedPool, PathNameBufferLength + sizeof(WCHAR));
+	if (!PathNameBuffer)
+	{
+		CHECKPOINT1;
+		return STATUS_INSUFFICIENT_RESOURCES;
 	}
-    }
-
-  /* FsRtlIsNameInExpression need the searched string to be upcase,
-   * even if IgnoreCase is specified */
-  Status = RtlUpcaseUnicodeString(&FileToFindUpcase, FileToFindU, TRUE);
-  if (!NT_SUCCESS(Status))
-  {
-    CHECKPOINT;
-    ExFreePool(PathNameBuffer);
-    return Status;
-  }
-
-  while(TRUE)
-    {
-      Status = DeviceExt->GetNextDirEntry(&Context, &Page, Parent, DirContext, First);
-      First = FALSE;
-      if (Status == STATUS_NO_MORE_ENTRIES)
-        {
-	  break;
-        }
-      if (ENTRY_VOLUME(DeviceExt, &DirContext->DirEntry))
-        {
-          DirContext->DirIndex++;
-          continue;
-        }
-      if (WildCard)
-        {
-          Found = FsRtlIsNameInExpression(&FileToFindUpcase, &DirContext->LongNameU, TRUE, NULL) ||
-                  FsRtlIsNameInExpression(&FileToFindUpcase, &DirContext->ShortNameU, TRUE, NULL);
+	
+	PathNameU.Buffer = PathNameBuffer;
+	PathNameU.Length = 0;
+	PathNameU.MaximumLength = PathNameBufferLength;
+	
+	DirContext->LongNameU.Length = 0;
+	DirContext->ShortNameU.Length = 0;
+	
+	WildCard = FsRtlDoesNameContainWildCards(FileToFindU);
+	
+	if (WildCard == FALSE)
+	{
+		/* if there is no '*?' in the search name, than look first for an existing fcb */
+		RtlCopyUnicodeString(&PathNameU, &Parent->PathNameU);
+		if (!vfatFCBIsRoot(Parent))
+		{
+			PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = L'\\';
+			PathNameU.Length += sizeof(WCHAR);
+		}
+		RtlAppendUnicodeStringToString(&PathNameU, FileToFindU);
+		PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = 0;
+		rcFcb = vfatGrabFCBFromTable(DeviceExt, &PathNameU);
+		if (rcFcb)
+		{
+			ULONG startIndex = rcFcb->startIndex;
+			if ((rcFcb->Flags & FCB_IS_FATX_ENTRY) && !vfatFCBIsRoot(Parent))
+			{
+				startIndex += 2;
+			}
+			if(startIndex >= DirContext->DirIndex)
+			{
+				RtlCopyUnicodeString(&DirContext->LongNameU, &rcFcb->LongNameU);
+				RtlCopyUnicodeString(&DirContext->ShortNameU, &rcFcb->ShortNameU);
+				RtlCopyMemory(&DirContext->DirEntry, &rcFcb->entry, sizeof(DIR_ENTRY));
+				DirContext->StartIndex = rcFcb->startIndex;
+				DirContext->DirIndex = rcFcb->dirIndex;
+				DPRINT("FindFile: new Name %wZ, DirIndex %d (%d)\n",
+					&DirContext->LongNameU, DirContext->DirIndex, DirContext->StartIndex);
+				Status = STATUS_SUCCESS;
+			}
+			else
+			{
+				CHECKPOINT1;
+				Status = STATUS_UNSUCCESSFUL;
+			}
+			vfatReleaseFCB(DeviceExt, rcFcb);
+			ExFreePool(PathNameBuffer);
+			return Status;
+		}
 	}
-      else
-        {
-          Found = FsRtlAreNamesEqual(&DirContext->LongNameU, FileToFindU, TRUE, NULL) ||
-	          FsRtlAreNamesEqual(&DirContext->ShortNameU, FileToFindU, TRUE, NULL);
+	
+	/* FsRtlIsNameInExpression need the searched string to be upcase,
+	* even if IgnoreCase is specified */
+	Status = RtlUpcaseUnicodeString(&FileToFindUpcase, FileToFindU, TRUE);
+	if (!NT_SUCCESS(Status))
+	{
+		CHECKPOINT;
+		ExFreePool(PathNameBuffer);
+		return Status;
 	}
-
-      if (Found)
-        {
-	  if (WildCard)
-	    {
-              RtlCopyUnicodeString(&PathNameU, &Parent->PathNameU);
-              if (!vfatFCBIsRoot(Parent))
-                {
-                  PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = L'\\';
-	          PathNameU.Length += sizeof(WCHAR);
-                }
-              RtlAppendUnicodeStringToString(&PathNameU, &DirContext->LongNameU);
-              PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = 0;
-              rcFcb = vfatGrabFCBFromTable(DeviceExt, &PathNameU);
-	      if (rcFcb != NULL)
-	        {
-	          RtlCopyMemory(&DirContext->DirEntry, &rcFcb->entry, sizeof(DIR_ENTRY));
-                  vfatReleaseFCB(DeviceExt, rcFcb);
+	
+	while(TRUE)
+	{
+		Status = DeviceExt->GetNextDirEntry(&Context, &Page, Parent, DirContext, First);
+		First = FALSE;
+		if (Status == STATUS_NO_MORE_ENTRIES)
+		{
+			break;
 		}
-	    }
-          DPRINT("%d\n", DirContext->LongNameU.Length);
-          DPRINT("FindFile: new Name %wZ, DirIndex %d\n",
-	         &DirContext->LongNameU, DirContext->DirIndex);
-
-          if (Context)
-	    {
-              CcUnpinData(Context);
-	    }
-          RtlFreeUnicodeString(&FileToFindUpcase);
-          ExFreePool(PathNameBuffer);
-          return STATUS_SUCCESS;
+		if (ENTRY_VOLUME(DeviceExt, &DirContext->DirEntry))
+		{
+			DirContext->DirIndex++;
+			continue;
+		}
+		if (WildCard)
+		{
+			Found = FsRtlIsNameInExpression(&FileToFindUpcase, &DirContext->LongNameU, TRUE, NULL) ||
+				FsRtlIsNameInExpression(&FileToFindUpcase, &DirContext->ShortNameU, TRUE, NULL);
+		}
+		else
+		{
+			Found = FsRtlAreNamesEqual(&DirContext->LongNameU, FileToFindU, TRUE, NULL) ||
+				FsRtlAreNamesEqual(&DirContext->ShortNameU, FileToFindU, TRUE, NULL);
+		}
+		
+		if (Found)
+		{
+			if (WildCard)
+			{
+				RtlCopyUnicodeString(&PathNameU, &Parent->PathNameU);
+				if (!vfatFCBIsRoot(Parent))
+				{
+					PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = L'\\';
+					PathNameU.Length += sizeof(WCHAR);
+				}
+				RtlAppendUnicodeStringToString(&PathNameU, &DirContext->LongNameU);
+				PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = 0;
+				rcFcb = vfatGrabFCBFromTable(DeviceExt, &PathNameU);
+				if (rcFcb != NULL)
+				{
+					RtlCopyMemory(&DirContext->DirEntry, &rcFcb->entry, sizeof(DIR_ENTRY));
+					vfatReleaseFCB(DeviceExt, rcFcb);
+				}
+			}
+			DPRINT("%d\n", DirContext->LongNameU.Length);
+			DPRINT("FindFile: new Name %wZ, DirIndex %d\n",
+				&DirContext->LongNameU, DirContext->DirIndex);
+			
+			if (Context)
+			{
+				CcUnpinData(Context);
+			}
+			RtlFreeUnicodeString(&FileToFindUpcase);
+			ExFreePool(PathNameBuffer);
+			return STATUS_SUCCESS;
+		}
+		DirContext->DirIndex++;
 	}
-      DirContext->DirIndex++;
-    }
-
-  if (Context)
-    {
-      CcUnpinData(Context);
-    }
-
-  RtlFreeUnicodeString(&FileToFindUpcase);
-  ExFreePool(PathNameBuffer);
-  return Status;
+	
+	if (Context)
+	{
+		CcUnpinData(Context);
+	}
+	
+	RtlFreeUnicodeString(&FileToFindUpcase);
+	ExFreePool(PathNameBuffer);
+	return Status;
 }
 
 NTSTATUS
-VfatOpenFile (PDEVICE_EXTENSION DeviceExt, PFILE_OBJECT FileObject, PVFATFCB* ParentFcb)
+VfatOpenFile (
+	PDEVICE_EXTENSION DeviceExt,
+	PFILE_OBJECT FileObject,
+	PVFATFCB* ParentFcb )
 /*
  * FUNCTION: Opens a file
  */
 {
-  PVFATFCB Fcb;
-  NTSTATUS Status;
-  UNICODE_STRING PathNameU;
-  WCHAR Buffer[260];
-
-  DPRINT ("VfatOpenFile(%08lx, %08lx, '%wZ')\n", DeviceExt, FileObject, &FileObject->FileName);
-
-  if (FileObject->RelatedFileObject)
-    {
-      DPRINT ("'%wZ'\n", &FileObject->RelatedFileObject->FileName);
-
-      *ParentFcb = FileObject->RelatedFileObject->FsContext;
-      (*ParentFcb)->RefCount++;
-    }
-  else
-    {
-      *ParentFcb = NULL;
-    }
-
-  if (!DeviceExt->FatInfo.FixedMedia)
-    {
-      Status = VfatBlockDeviceIoControl (DeviceExt->StorageDevice,
-					 IOCTL_DISK_CHECK_VERIFY,
-					 NULL,
-					 0,
-					 NULL,
-					 0,
-					 FALSE);
-
-      if (Status == STATUS_VERIFY_REQUIRED)
-
-        {
-          PDEVICE_OBJECT DeviceToVerify;
-
-          DPRINT ("Media change detected!\n");
-          DPRINT ("Device %p\n", DeviceExt->StorageDevice);
-
-	  DeviceToVerify = IoGetDeviceToVerify (PsGetCurrentThread ());
-
-	  IoSetDeviceToVerify (PsGetCurrentThread (),
-			       NULL);
-          Status = IoVerifyVolume (DeviceExt->StorageDevice,
-			           FALSE);
+	PVFATFCB Fcb;
+	NTSTATUS Status;
+	UNICODE_STRING PathNameU;
+	WCHAR Buffer[260];
+	
+	DPRINT ("VfatOpenFile(%08lx, %08lx, '%wZ')\n", DeviceExt, FileObject, &FileObject->FileName);
+	
+	if (FileObject->RelatedFileObject)
+	{
+		DPRINT ("'%wZ'\n", &FileObject->RelatedFileObject->FileName);
+		
+		*ParentFcb = FileObject->RelatedFileObject->FsContext;
+		(*ParentFcb)->RefCount++;
 	}
-      if (!NT_SUCCESS(Status))
+	else
 	{
-	  DPRINT ("Status %lx\n", Status);
-	  *ParentFcb = NULL;
-	  return Status;
+		*ParentFcb = NULL;
 	}
-    }
-
-  if (*ParentFcb)
-  {
-     (*ParentFcb)->RefCount++;
-  }
-
-  PathNameU.Buffer = Buffer;
-  PathNameU.Length = 0;
-  PathNameU.MaximumLength = sizeof(Buffer);
-  RtlCopyUnicodeString(&PathNameU, &FileObject->FileName);
-  if (PathNameU.Length > sizeof(WCHAR) &&
-      PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR) - 1] == L'\\')
-    {
-      PathNameU.Length -= sizeof(WCHAR);
-    }
-  PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = 0;
-
-  /*  try first to find an existing FCB in memory  */
-  DPRINT ("Checking for existing FCB in memory\n");
-
-  Status = vfatGetFCBForFile (DeviceExt, ParentFcb, &Fcb, &PathNameU);
-  if (!NT_SUCCESS (Status))
-  {
-     DPRINT ("Could not make a new FCB, status: %x\n", Status);
-     return  Status;
-  }
-  if (Fcb->Flags & FCB_DELETE_PENDING)
-  {
-     vfatReleaseFCB (DeviceExt, Fcb);
-     return STATUS_DELETE_PENDING;
-  }
-  DPRINT ("Attaching FCB to fileObject\n");
-  Status = vfatAttachFCBToFileObject (DeviceExt, Fcb, FileObject);
-  if (!NT_SUCCESS(Status))
-  {
-     vfatReleaseFCB (DeviceExt, Fcb);
-  }
-  return  Status;
-}
-
-static NTSTATUS
-VfatCreateFile (PDEVICE_OBJECT DeviceObject, PIRP Irp)
-/*
- * FUNCTION: Create or open a file
- */
-{
-  PIO_STACK_LOCATION Stack;
-  PFILE_OBJECT FileObject;
-  NTSTATUS Status = STATUS_SUCCESS;
-  PDEVICE_EXTENSION DeviceExt;
-  ULONG RequestedDisposition, RequestedOptions;
-  PVFATCCB pCcb;
-  PVFATFCB pFcb;
-  PVFATFCB ParentFcb;
-  PWCHAR c, last;
-  BOOLEAN PagingFileCreate = FALSE;
-  LARGE_INTEGER AllocationSize;
-  BOOLEAN Dots;
-  UNICODE_STRING FileNameU;
-
-  /* Unpack the various parameters. */
-  Stack = IoGetCurrentIrpStackLocation (Irp);
-  RequestedDisposition = ((Stack->Parameters.Create.Options >> 24) & 0xff);
-  RequestedOptions =
-    Stack->Parameters.Create.Options & FILE_VALID_OPTION_FLAGS;
-  PagingFileCreate = (Stack->Flags & SL_OPEN_PAGING_FILE) ? TRUE : FALSE;
-  FileObject = Stack->FileObject;
-  DeviceExt = DeviceObject->DeviceExtension;
-
-  /* Check their validity. */
-  if (RequestedOptions & FILE_DIRECTORY_FILE &&
-      RequestedDisposition == FILE_SUPERSEDE)
-    {
-      return(STATUS_INVALID_PARAMETER);
-    }
-
-  /* This a open operation for the volume itself */
-  if (FileObject->FileName.Length == 0 &&
-      FileObject->RelatedFileObject == NULL)
-    {
-      if (RequestedDisposition == FILE_CREATE ||
-	  RequestedDisposition == FILE_OVERWRITE_IF ||
-	  RequestedDisposition == FILE_SUPERSEDE)
+	
+	if (!DeviceExt->FatInfo.FixedMedia)
 	{
-	  return(STATUS_ACCESS_DENIED);
+		Status = VfatBlockDeviceIoControl (DeviceExt->StorageDevice,
+			IOCTL_DISK_CHECK_VERIFY,
+			NULL,
+			0,
+			NULL,
+			0,
+			FALSE);
+		
+		if (Status == STATUS_VERIFY_REQUIRED)
+			
+		{
+			PDEVICE_OBJECT DeviceToVerify;
+			
+			DPRINT ("Media change detected!\n");
+			DPRINT ("Device %p\n", DeviceExt->StorageDevice);
+			
+			DeviceToVerify = IoGetDeviceToVerify (PsGetCurrentThread ());
+			
+			IoSetDeviceToVerify (PsGetCurrentThread (),
+				NULL);
+			Status = IoVerifyVolume (DeviceExt->StorageDevice,
+				FALSE);
+		}
+		if (!NT_SUCCESS(Status))
+		{
+			DPRINT ("Status %lx\n", Status);
+			*ParentFcb = NULL;
+			return Status;
+		}
 	}
-      if (RequestedOptions & FILE_DIRECTORY_FILE)
+	
+	if (*ParentFcb)
 	{
-	  return(STATUS_NOT_A_DIRECTORY);
+		(*ParentFcb)->RefCount++;
 	}
-      pFcb = DeviceExt->VolumeFcb;
-      pCcb = ExAllocateFromNPagedLookasideList(&VfatGlobalData->CcbLookasideList);
-      if (pCcb == NULL)
+	
+	PathNameU.Buffer = Buffer;
+	PathNameU.Length = 0;
+	PathNameU.MaximumLength = sizeof(Buffer);
+	RtlCopyUnicodeString(&PathNameU, &FileObject->FileName);
+	if (PathNameU.Length > sizeof(WCHAR) &&
+		PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR) - 1] == L'\\')
 	{
-	  return (STATUS_INSUFFICIENT_RESOURCES);
+		PathNameU.Length -= sizeof(WCHAR);
 	}
-      RtlZeroMemory(pCcb, sizeof(VFATCCB));
-      FileObject->SectionObjectPointer = &pFcb->SectionObjectPointers;
-      FileObject->FsContext = pFcb;
-      FileObject->FsContext2 = pCcb;
-      pFcb->RefCount++;
-
-      Irp->IoStatus.Information = FILE_OPENED;
-      return(STATUS_SUCCESS);
-    }
-
-  /*
-   * Check for illegal characters and illegale dot sequences in the file name
-   */
-  c = FileObject->FileName.Buffer + FileObject->FileName.Length / sizeof(WCHAR);
-  last = c - 1;
-  Dots = TRUE;
-  while (c-- > FileObject->FileName.Buffer)
-    {
-      if (*c == L'\\' || c == FileObject->FileName.Buffer)
-        {
-	  if (Dots && last > c)
-	    {
-              return(STATUS_OBJECT_NAME_INVALID);
-	    }
-	  last = c - 1;
-	  Dots = TRUE;
+	PathNameU.Buffer[PathNameU.Length / sizeof(WCHAR)] = 0;
+	
+	/*  try first to find an existing FCB in memory  */
+	DPRINT ("Checking for existing FCB in memory\n");
+	
+	Status = vfatGetFCBForFile (DeviceExt, ParentFcb, &Fcb, &PathNameU);
+	if (!NT_SUCCESS (Status))
+	{
+		DPRINT ("Could not make a new FCB, status: %x\n", Status);
+		return  Status;
 	}
-      else if (*c != L'.')
-        {
-	  Dots = FALSE;
+	if (Fcb->Flags & FCB_DELETE_PENDING)
+	{
+		vfatReleaseFCB (DeviceExt, Fcb);
+		return STATUS_DELETE_PENDING;
 	}
-
-      if (*c != '\\' && vfatIsLongIllegal(*c))
-        {
-          return(STATUS_OBJECT_NAME_INVALID);
+	DPRINT ("Attaching FCB to fileObject\n");
+	Status = vfatAttachFCBToFileObject (DeviceExt, Fcb, FileObject);
+	if (!NT_SUCCESS(Status))
+	{
+		vfatReleaseFCB (DeviceExt, Fcb);
 	}
-    }
+	return  Status;
+}
 
-  /* Try opening the file. */
-  Status = VfatOpenFile (DeviceExt, FileObject, &ParentFcb);
-
-  /*
-   * If the directory containing the file to open doesn't exist then
-   * fail immediately
-   */
-  if (Status == STATUS_OBJECT_PATH_NOT_FOUND ||
-      Status == STATUS_INVALID_PARAMETER ||
-      Status == STATUS_DELETE_PENDING)
-    {
-      if (ParentFcb)
-      {
-         vfatReleaseFCB (DeviceExt, ParentFcb);
-      }
-      return(Status);
-    }
-
-  /*
-   * If the file open failed then create the required file
-   */
-  if (!NT_SUCCESS (Status))
-    {
-      if (RequestedDisposition == FILE_CREATE ||
-	  RequestedDisposition == FILE_OPEN_IF ||
-	  RequestedDisposition == FILE_OVERWRITE_IF ||
-	  RequestedDisposition == FILE_SUPERSEDE)
+static NTSTATUS
+VfatCreateFile ( PDEVICE_OBJECT DeviceObject, PIRP Irp )
+/*
+ * FUNCTION: Create or open a file
+ */
+{
+	PIO_STACK_LOCATION Stack;
+	PFILE_OBJECT FileObject;
+	NTSTATUS Status = STATUS_SUCCESS;
+	PDEVICE_EXTENSION DeviceExt;
+	ULONG RequestedDisposition, RequestedOptions;
+	PVFATCCB pCcb;
+	PVFATFCB pFcb;
+	PVFATFCB ParentFcb;
+	PWCHAR c, last;
+	BOOLEAN PagingFileCreate = FALSE;
+	LARGE_INTEGER AllocationSize;
+	BOOLEAN Dots;
+	UNICODE_STRING FileNameU;
+	
+	/* Unpack the various parameters. */
+	Stack = IoGetCurrentIrpStackLocation (Irp);
+	RequestedDisposition = ((Stack->Parameters.Create.Options >> 24) & 0xff);
+	RequestedOptions =
+		Stack->Parameters.Create.Options & FILE_VALID_OPTION_FLAGS;
+	PagingFileCreate = (Stack->Flags & SL_OPEN_PAGING_FILE) ? TRUE : FALSE;
+	FileObject = Stack->FileObject;
+	DeviceExt = DeviceObject->DeviceExtension;
+	
+	/* Check their validity. */
+	if (RequestedOptions & FILE_DIRECTORY_FILE &&
+		RequestedDisposition == FILE_SUPERSEDE)
 	{
-	  ULONG Attributes;
-	  Attributes = Stack->Parameters.Create.FileAttributes;
-
-          vfatSplitPathName(&FileObject->FileName, NULL, &FileNameU);
-	  Status = VfatAddEntry (DeviceExt, &FileNameU, &pFcb, ParentFcb, RequestedOptions,
-				 (UCHAR)(Attributes & FILE_ATTRIBUTE_VALID_FLAGS));
-          vfatReleaseFCB (DeviceExt, ParentFcb);
-	  if (NT_SUCCESS (Status))
-	    {
-              Status = vfatAttachFCBToFileObject (DeviceExt, pFcb, FileObject);
-              if ( !NT_SUCCESS(Status) )
-              {
-                 vfatReleaseFCB (DeviceExt, pFcb);
-                 return Status;
-              }
-
-	      Irp->IoStatus.Information = FILE_CREATED;
-
-	      VfatSetAllocationSizeInformation(FileObject,
-					       pFcb,
-					       DeviceExt,
-					       &Irp->Overlay.AllocationSize);
-	      VfatSetExtendedAttributes(FileObject,
-					Irp->AssociatedIrp.SystemBuffer,
-					Stack->Parameters.Create.EaLength);
-
-	      if (PagingFileCreate)
-                {
-                  pFcb->Flags |= FCB_IS_PAGE_FILE;
-                }
-	    }
-	  else
-	    {
-	      return(Status);
-	    }
+		return(STATUS_INVALID_PARAMETER);
 	}
-      else
+	
+	/* This a open operation for the volume itself */
+	if (FileObject->FileName.Length == 0 &&
+		FileObject->RelatedFileObject == NULL)
 	{
-          vfatReleaseFCB (DeviceExt, ParentFcb);
-	  return(Status);
+		if (RequestedDisposition == FILE_CREATE ||
+			RequestedDisposition == FILE_OVERWRITE_IF ||
+			RequestedDisposition == FILE_SUPERSEDE)
+		{
+			return(STATUS_ACCESS_DENIED);
+		}
+		if (RequestedOptions & FILE_DIRECTORY_FILE)
+		{
+			return(STATUS_NOT_A_DIRECTORY);
+		}
+		pFcb = DeviceExt->VolumeFcb;
+		pCcb = ExAllocateFromNPagedLookasideList(&VfatGlobalData->CcbLookasideList);
+		if (pCcb == NULL)
+		{
+			return (STATUS_INSUFFICIENT_RESOURCES);
+		}
+		RtlZeroMemory(pCcb, sizeof(VFATCCB));
+		FileObject->SectionObjectPointer = &pFcb->SectionObjectPointers;
+		FileObject->FsContext = pFcb;
+		FileObject->FsContext2 = pCcb;
+		pFcb->RefCount++;
+		
+		Irp->IoStatus.Information = FILE_OPENED;
+		return(STATUS_SUCCESS);
 	}
-    }
-  else
-    {
-      if (ParentFcb)
[truncated at 1000 lines; 423 more skipped]