Add fix for unintentional leaks with ntdll internals.

This commit is contained in:
Erich E. Hoover
2014-08-25 09:18:10 -06:00
parent 5f93d74102
commit ff169cd1b7
27 changed files with 449 additions and 131 deletions

View File

@@ -1,4 +1,4 @@
From 17d91743f19deb08a6fa0f36212cd8799c6c7270 Mon Sep 17 00:00:00 2001
From d5239a5816cd53dd852dd24f40762e4cf30a46ce Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 20:56:49 -0700
Subject: ntdll: Add support for junction point creation.
@@ -11,7 +11,7 @@ Subject: ntdll: Add support for junction point creation.
create mode 100644 include/ntifs.h
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index 7b72876..14288b5 100644
index 36ebdf4..1a7e671 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -89,12 +89,14 @@
@@ -29,7 +29,7 @@ index 7b72876..14288b5 100644
#define SECSPERDAY 86400
#define SECS_1601_TO_1970 ((369 * 365 + 89) * (ULONGLONG)SECSPERDAY)
@@ -1607,6 +1609,76 @@ NTSTATUS WINAPI NtDeviceIoControlFile(HANDLE handle, HANDLE event,
@@ -1609,6 +1611,76 @@ NTSTATUS WINAPI NtDeviceIoControlFile(HANDLE handle, HANDLE event,
}
@@ -106,7 +106,7 @@ index 7b72876..14288b5 100644
/**************************************************************************
* NtFsControlFile [NTDLL.@]
* ZwFsControlFile [NTDLL.@]
@@ -1754,6 +1826,23 @@ NTSTATUS WINAPI NtFsControlFile(HANDLE handle, HANDLE event, PIO_APC_ROUTINE apc
@@ -1756,6 +1828,23 @@ NTSTATUS WINAPI NtFsControlFile(HANDLE handle, HANDLE event, PIO_APC_ROUTINE apc
}
break;
}

View File

@@ -1,4 +1,4 @@
From cb47f74a659bd5447ecbf65591962af6a753dda9 Mon Sep 17 00:00:00 2001
From 46b4a6ba4c4e4a49b4cbe0aae42cb7717bea7ac0 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 20:57:57 -0700
Subject: ntdll: Add support for reading junction points.
@@ -9,10 +9,10 @@ Subject: ntdll: Add support for reading junction points.
2 files changed, 76 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index 14288b5..b1b8f51 100644
index 1a7e671..889d35c 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -1679,6 +1679,60 @@ cleanup:
@@ -1681,6 +1681,60 @@ cleanup:
}
@@ -73,7 +73,7 @@ index 14288b5..b1b8f51 100644
/**************************************************************************
* NtFsControlFile [NTDLL.@]
* ZwFsControlFile [NTDLL.@]
@@ -1827,6 +1881,15 @@ NTSTATUS WINAPI NtFsControlFile(HANDLE handle, HANDLE event, PIO_APC_ROUTINE apc
@@ -1829,6 +1883,15 @@ NTSTATUS WINAPI NtFsControlFile(HANDLE handle, HANDLE event, PIO_APC_ROUTINE apc
break;
}

View File

@@ -1,4 +1,4 @@
From c0100e76f61a689e86c660a056ab30f19749a7b1 Mon Sep 17 00:00:00 2001
From 1cc34fb8a2400c62920de15d0cf53d6e2822c631 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 21:00:21 -0700
Subject: ntdll: Add support for deleting junction points.
@@ -10,10 +10,10 @@ Subject: ntdll: Add support for deleting junction points.
3 files changed, 85 insertions(+)
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index b1b8f51..4b76d04 100644
index 889d35c..ca98509 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -1733,6 +1733,41 @@ cleanup:
@@ -1735,6 +1735,41 @@ cleanup:
}
@@ -55,7 +55,7 @@ index b1b8f51..4b76d04 100644
/**************************************************************************
* NtFsControlFile [NTDLL.@]
* ZwFsControlFile [NTDLL.@]
@@ -1881,6 +1916,22 @@ NTSTATUS WINAPI NtFsControlFile(HANDLE handle, HANDLE event, PIO_APC_ROUTINE apc
@@ -1883,6 +1918,22 @@ NTSTATUS WINAPI NtFsControlFile(HANDLE handle, HANDLE event, PIO_APC_ROUTINE apc
break;
}

View File

@@ -1,4 +1,4 @@
From 302be7aee826e9876d79be36a596692bac5331d1 Mon Sep 17 00:00:00 2001
From 422457e7b8d910de8ac20226355ce63a9f07b52b Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 21:01:25 -0700
Subject: ntdll: Add a test for junction point advertisement.

View File

@@ -1,4 +1,4 @@
From 0d309d17751b6bf821b449ba890b5c3465c495a8 Mon Sep 17 00:00:00 2001
From 5ce6d272e3c528db75f5301c8827e38d3c8d3813 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 21:02:11 -0700
Subject: kernel32,ntdll: Add support for deleting junction points with
@@ -10,7 +10,7 @@ Subject: kernel32,ntdll: Add support for deleting junction points with
2 files changed, 43 insertions(+), 3 deletions(-)
diff --git a/dlls/kernel32/path.c b/dlls/kernel32/path.c
index 09fb04b..c328cc0 100644
index eeba48a..b0b5ae9 100644
--- a/dlls/kernel32/path.c
+++ b/dlls/kernel32/path.c
@@ -1587,6 +1587,7 @@ BOOL WINAPI CreateDirectoryExW( LPCWSTR template, LPCWSTR path, LPSECURITY_ATTRI
@@ -21,7 +21,7 @@ index 09fb04b..c328cc0 100644
OBJECT_ATTRIBUTES attr;
UNICODE_STRING nt_name;
ANSI_STRING unix_name;
@@ -1614,15 +1615,22 @@ BOOL WINAPI RemoveDirectoryW( LPCWSTR path )
@@ -1614,16 +1615,23 @@ BOOL WINAPI RemoveDirectoryW( LPCWSTR path )
FILE_DIRECTORY_FILE | FILE_SYNCHRONOUS_IO_NONALERT );
if (status == STATUS_SUCCESS)
status = wine_nt_to_unix_file_name( &nt_name, &unix_name, FILE_OPEN, FALSE );
@@ -31,6 +31,7 @@ index 09fb04b..c328cc0 100644
{
+ RtlFreeUnicodeString( &nt_name );
SetLastError( RtlNtStatusToDosError(status) );
RtlFreeAnsiString( &unix_name );
return FALSE;
}

View File

@@ -1,4 +1,4 @@
From a7ca946b7bf408aeb905cb2f5dda782634566d83 Mon Sep 17 00:00:00 2001
From dfcf45eaaba89e2ef6e662db935570d3a4b93c30 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 21:03:47 -0700
Subject: kernel32: Advertise junction point support.
@@ -9,7 +9,7 @@ Subject: kernel32: Advertise junction point support.
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/dlls/kernel32/volume.c b/dlls/kernel32/volume.c
index d396764..0fb0aef 100644
index d580f1d..d7ee8b7 100644
--- a/dlls/kernel32/volume.c
+++ b/dlls/kernel32/volume.c
@@ -854,7 +854,8 @@ fill_fs_info: /* now fill in the information that depends on the file system ty

View File

@@ -1,4 +1,4 @@
From 07e1f990c05bc2b82d2c579ce6a57ee2e24852b5 Mon Sep 17 00:00:00 2001
From 977778bf25a3f17303c0d00e3d1cdabbacf3ffa4 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Thu, 16 Jan 2014 21:06:24 -0700
Subject: ntdll/tests: Add test for deleting junction point target.