ReactOS.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
List overview
Download
Ros-diffs
May 2014
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
ros-diffs@reactos.org
14 participants
437 discussions
Start a n
N
ew thread
[tkreuzer] 63333: [NTDLL_APITEST] Add more tests for NtMapViewOfSection. Fix some tests, so that everything works on windows 2003.
by tkreuzer@svn.reactos.org
Author: tkreuzer Date: Sat May 17 18:35:39 2014 New Revision: 63333 URL:
http://svn.reactos.org/svn/reactos?rev=63333&view=rev
Log: [NTDLL_APITEST] Add more tests for NtMapViewOfSection. Fix some tests, so that everything works on windows 2003. Modified: trunk/rostests/apitests/ntdll/NtMapViewOfSection.c Modified: trunk/rostests/apitests/ntdll/NtMapViewOfSection.c URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/apitests/ntdll/NtMapViewO…
============================================================================== --- trunk/rostests/apitests/ntdll/NtMapViewOfSection.c [iso-8859-1] (original) +++ trunk/rostests/apitests/ntdll/NtMapViewOfSection.c [iso-8859-1] Sat May 17 18:35:39 2014 @@ -25,10 +25,11 @@ NTSTATUS Status; HANDLE SectionHandle; LARGE_INTEGER MaximumSize, SectionOffset; - PVOID BaseAddress; + PVOID BaseAddress, BaseAddress2; SIZE_T ViewSize; - - /* Create a page file backed section */ + ULONG OldProtect; + + /* Create a page file backed section with SEC_COMMIT */ MaximumSize.QuadPart = 0x20000; Status = NtCreateSection(&SectionHandle, SECTION_ALL_ACCESS, @@ -37,7 +38,7 @@ PAGE_READWRITE, SEC_COMMIT, NULL); - ok(NT_SUCCESS(Status), "NtCreateSection failed with Status %lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); if (!NT_SUCCESS(Status)) return; @@ -55,8 +56,7 @@ ViewShare, 0, PAGE_READWRITE); - ok(Status == STATUS_MAPPED_ALIGNMENT, - "NtMapViewOfSection returned wrong Status %lx\n", Status); + ok_ntstatus(Status, STATUS_MAPPED_ALIGNMENT); /* Try to map a page with execute rights */ BaseAddress = (PVOID)0x30000000; @@ -72,10 +72,9 @@ ViewShare, 0, PAGE_EXECUTE_READWRITE); - ok(Status == STATUS_SECTION_PROTECTION, - "NtMapViewOfSection returned wrong Status %lx\n", Status); - - /* Map 2 pages, not comitting them */ + ok_ntstatus(Status, STATUS_SECTION_PROTECTION); + + /* Try to map 2 pages with MEM_COMMIT */ BaseAddress = (PVOID)0x30000000; SectionOffset.QuadPart = 0; ViewSize = 0x2000; @@ -83,15 +82,40 @@ NtCurrentProcess(), &BaseAddress, 0, - 0, - &SectionOffset, - &ViewSize, - ViewShare, - 0, - PAGE_READWRITE); - ok(NT_SUCCESS(Status), "NtMapViewOfSection failed with Status %lx\n", Status); - if (!NT_SUCCESS(Status)) - return; + PAGE_SIZE, + &SectionOffset, + &ViewSize, + ViewShare, + MEM_COMMIT, + PAGE_READWRITE); + ok_ntstatus(Status, STATUS_INVALID_PARAMETER_9); + + /* Map 2 pages, without MEM_COMMIT */ + BaseAddress = (PVOID)0x30000000; + SectionOffset.QuadPart = 0; + ViewSize = 0x2000; + Status = NtMapViewOfSection(SectionHandle, + NtCurrentProcess(), + &BaseAddress, + 0, + 0, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_READWRITE); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* We must be able to access the memory */ + _SEH2_TRY + { + *(PULONG)BaseAddress = 1; + } + _SEH2_EXCEPT(1) + { + ok(FALSE, "Got an exception\n"); + } + _SEH2_END; /* Commit a page in the section */ BaseAddress = (PVOID)0x30000000; @@ -102,12 +126,15 @@ &ViewSize, MEM_COMMIT, PAGE_READWRITE); - ok(NT_SUCCESS(Status), "NtAllocateVirtualMemory failed with Status %lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Try to decommit a page in the section */ Status = NtFreeVirtualMemory(NtCurrentProcess(), &BaseAddress, &ViewSize, MEM_DECOMMIT); - ok(Status == STATUS_UNABLE_TO_DELETE_SECTION, "NtFreeVirtualMemory returned wrong Status %lx\n", Status); + ok_ntstatus(Status, STATUS_UNABLE_TO_DELETE_SECTION); + /* Try to commit a range larger than the section */ BaseAddress = (PVOID)0x30000000; ViewSize = 0x3000; @@ -117,8 +144,7 @@ &ViewSize, MEM_COMMIT, PAGE_READWRITE); - ok(Status == STATUS_CONFLICTING_ADDRESSES, - "NtAllocateVirtualMemory failed with wrong Status %lx\n", Status); + ok_ntstatus(Status, STATUS_CONFLICTING_ADDRESSES); /* Try to commit a page after the section */ BaseAddress = (PVOID)0x30002000; @@ -129,7 +155,7 @@ &ViewSize, MEM_COMMIT, PAGE_READWRITE); - ok(!NT_SUCCESS(Status), "NtAllocateVirtualMemory Should fail\n"); + ok_ntstatus(Status, STATUS_CONFLICTING_ADDRESSES); /* Try to allocate a page after the section */ BaseAddress = (PVOID)0x30002000; @@ -140,7 +166,7 @@ &ViewSize, MEM_RESERVE | MEM_COMMIT, PAGE_READWRITE); - ok(!NT_SUCCESS(Status), "NtAllocateVirtualMemory should fail\n"); + ok_ntstatus(Status, STATUS_CONFLICTING_ADDRESSES); /* Need to go to next 64k boundary */ BaseAddress = (PVOID)0x30010000; @@ -151,7 +177,7 @@ &ViewSize, MEM_RESERVE | MEM_COMMIT, PAGE_READWRITE); - ok(NT_SUCCESS(Status), "NtAllocateVirtualMemory failed with Status %lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); if (!NT_SUCCESS(Status)) return; @@ -164,15 +190,14 @@ MEM_RELEASE); ok(NT_SUCCESS(Status), "NtFreeVirtualMemory failed with Status %lx\n", Status); - /* Free the section mapping */ + /* Try to release the section mapping with NtFreeVirtualMemory */ BaseAddress = (PVOID)0x30000000; ViewSize = 0x1000; Status = NtFreeVirtualMemory(NtCurrentProcess(), &BaseAddress, &ViewSize, MEM_RELEASE); - ok(Status == STATUS_UNABLE_TO_DELETE_SECTION, - "NtFreeVirtualMemory failed with wrong Status %lx\n", Status); + ok_ntstatus(Status, STATUS_UNABLE_TO_DELETE_SECTION); /* Commit a page in the section */ BaseAddress = (PVOID)0x30001000; @@ -183,7 +208,7 @@ &ViewSize, MEM_COMMIT, PAGE_READWRITE); - ok(NT_SUCCESS(Status), "NtAllocateVirtualMemory failed with Status %lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); /* Try to decommit the page */ BaseAddress = (PVOID)0x30001000; @@ -192,8 +217,7 @@ &BaseAddress, &ViewSize, MEM_DECOMMIT); - ok(Status == STATUS_UNABLE_TO_DELETE_SECTION, - "NtFreeVirtualMemory failed with wrong Status %lx\n", Status); + ok_ntstatus(Status, STATUS_UNABLE_TO_DELETE_SECTION); BaseAddress = UlongToPtr(0x40000000); SectionOffset.QuadPart = 0; @@ -208,7 +232,7 @@ ViewShare, 0, PAGE_READWRITE); - ok(NT_SUCCESS(Status), "NtMapViewOfSection failed with Status %lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); if (!NT_SUCCESS(Status)) return; @@ -227,9 +251,7 @@ ViewShare, 0, PAGE_READWRITE); - ok(NT_SUCCESS(Status), "NtMapViewOfSection failed with Status %lx\n", Status); - if (!NT_SUCCESS(Status)) - return; + ok_ntstatus(Status, STATUS_SUCCESS); ok(BaseAddress == (PVOID)0x40080000, "Invalid BaseAddress: %p", BaseAddress); @@ -241,9 +263,384 @@ &ViewSize, MEM_COMMIT, PAGE_READWRITE); - ok(NT_SUCCESS(Status), "NtAllocateVirtualMemory failed with Status %lx\n", Status); - if (!NT_SUCCESS(Status)) - return; + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Close the mapping */ + NtUnmapViewOfSection(NtCurrentProcess(), BaseAddress); + NtClose(SectionHandle); + + /* Create a page file backed section, but only reserved */ + MaximumSize.QuadPart = 0x20000; + Status = NtCreateSection(&SectionHandle, + SECTION_ALL_ACCESS, + NULL, + &MaximumSize, + PAGE_READWRITE, + SEC_RESERVE, + NULL); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Try to map 1 page, passing MEM_RESERVE */ + BaseAddress = NULL; + SectionOffset.QuadPart = 0; + ViewSize = PAGE_SIZE; + Status = NtMapViewOfSection(SectionHandle, + NtCurrentProcess(), + &BaseAddress, + 0, + PAGE_SIZE, + &SectionOffset, + &ViewSize, + ViewShare, + MEM_RESERVE, + PAGE_READWRITE); + ok_ntstatus(Status, STATUS_INVALID_PARAMETER_9); + + /* Try to map 1 page using MEM_COMMIT */ + BaseAddress = NULL; + SectionOffset.QuadPart = 0; + ViewSize = PAGE_SIZE; + Status = NtMapViewOfSection(SectionHandle, + NtCurrentProcess(), + &BaseAddress, + 0, + PAGE_SIZE, + &SectionOffset, + &ViewSize, + ViewShare, + MEM_COMMIT, + PAGE_READWRITE); + ok_ntstatus(Status, STATUS_INVALID_PARAMETER_9); + + /* Map 2 pages, but commit 1 */ + BaseAddress = NULL; + SectionOffset.QuadPart = 0; + ViewSize = 2 * PAGE_SIZE; + Status = NtMapViewOfSection(SectionHandle, + NtCurrentProcess(), + &BaseAddress, + 0, + PAGE_SIZE, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_READWRITE); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* We must be able to access the 1st page */ + Status = STATUS_SUCCESS; + _SEH2_TRY + { + *(PUCHAR)BaseAddress = 1; + } + _SEH2_EXCEPT(1) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; + ok_ntstatus(Status, STATUS_SUCCESS); + + /* We must not be able to access the 2nd page */ + Status = STATUS_SUCCESS; + _SEH2_TRY + { + *((PUCHAR)BaseAddress + PAGE_SIZE) = 1; + } + _SEH2_EXCEPT(1) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; + ok_ntstatus(Status, STATUS_ACCESS_VIOLATION); + + /* Map the 2 pages again into a different memory location */ + BaseAddress2 = NULL; + Status = NtMapViewOfSection(SectionHandle, + NtCurrentProcess(), + &BaseAddress2, + 0, + 0, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_READWRITE); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Commit a the 2nd page in the 2nd memory location */ + BaseAddress2 = (PUCHAR)BaseAddress2 + PAGE_SIZE; + ViewSize = PAGE_SIZE; + Status = NtAllocateVirtualMemory(NtCurrentProcess(), + &BaseAddress2, + 0, + &ViewSize, + MEM_COMMIT, + PAGE_READONLY); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Try to commit again (the already committed page) */ + Status = NtAllocateVirtualMemory(NtCurrentProcess(), + &BaseAddress2, + 0, + &ViewSize, + MEM_COMMIT, + PAGE_READONLY); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* We must be able to access the memory in the 2nd page of the 1st memory location */ + Status = STATUS_SUCCESS; + _SEH2_TRY + { + *((PUCHAR)BaseAddress + PAGE_SIZE) = 2; + } + _SEH2_EXCEPT(1) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; + ok_ntstatus(Status, STATUS_SUCCESS); + + ok(*(PULONG)BaseAddress2 == 2, "Value in memory was wrong"); + + /* Close the mapping */ + NtUnmapViewOfSection(NtCurrentProcess(), BaseAddress); + NtUnmapViewOfSection(NtCurrentProcess(), (PUCHAR)BaseAddress2 - PAGE_SIZE); + NtClose(SectionHandle); + + /* Try to create a 512 GB page file backed section with committed pages */ + MaximumSize.QuadPart = 0x8000000000; + Status = NtCreateSection(&SectionHandle, + SECTION_ALL_ACCESS, + NULL, + &MaximumSize, + PAGE_READWRITE, + SEC_COMMIT, + NULL); + ok_ntstatus(Status, STATUS_COMMITMENT_LIMIT); + + /* Try to create a huge page file backed section with PAGE_NOACCESS protection */ + MaximumSize.QuadPart = 0x8000000000; + Status = NtCreateSection(&SectionHandle, + SECTION_ALL_ACCESS, + NULL, + &MaximumSize, + PAGE_NOACCESS, + SEC_COMMIT, + NULL); + ok_ntstatus(Status, STATUS_INVALID_PAGE_PROTECTION); + + /* Try to create a very huge page file backed section, but only reserved */ + MaximumSize.QuadPart = 0x80000000000; + Status = NtCreateSection(&SectionHandle, + SECTION_ALL_ACCESS, + NULL, + &MaximumSize, + PAGE_READWRITE, + SEC_RESERVE, + NULL); +#ifdef _WIN64 + ok_ntstatus(Status, STATUS_INSUFFICIENT_RESOURCES); +#else + /* WoW64 returns STATUS_INSUFFICIENT_RESOURCES */ + ok((Status == STATUS_INSUFFICIENT_RESOURCES) || (Status == STATUS_SECTION_TOO_BIG), + "got wrong Status: 0x%lx", Status); +#endif + + /* Try to create a even huger page file backed section, but only reserved */ + MaximumSize.QuadPart = 0x800000000000; + Status = NtCreateSection(&SectionHandle, + SECTION_ALL_ACCESS, + NULL, + &MaximumSize, + PAGE_READWRITE, + SEC_RESERVE, + NULL); + ok_ntstatus(Status, STATUS_SECTION_TOO_BIG); + + /* Create a 8 GB page file backed section, but only reserved */ + MaximumSize.QuadPart = 0x200000000; + Status = NtCreateSection(&SectionHandle, + SECTION_ALL_ACCESS, + NULL, + &MaximumSize, + PAGE_READWRITE, + SEC_RESERVE, + NULL); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Pass a too large region size */ + BaseAddress = NULL; + SectionOffset.QuadPart = 0; + ViewSize = MAXULONG_PTR; + Status = NtMapViewOfSection(SectionHandle, + NtCurrentProcess(), + &BaseAddress, + 0, + 0, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_READWRITE); +#ifdef _WIN64 + ok_ntstatus(Status, STATUS_INVALID_PARAMETER_3); +#else + /* WoW64 returns STATUS_INVALID_PARAMETER_4 */ + ok((Status == STATUS_INVALID_PARAMETER_4) || (Status == STATUS_INVALID_PARAMETER_3), + "got wrong Status: 0x%lx", Status); +#endif + + /* Pass 0 region size */ + BaseAddress = NULL; + SectionOffset.QuadPart = 0; + ViewSize = 0; + Status = NtMapViewOfSection(SectionHandle, + NtCurrentProcess(), + &BaseAddress, + 0, + 0, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_READWRITE); +#ifdef _WIN64 + ok_ntstatus(Status, STATUS_SUCCESS); + ok(ViewSize == 0x200000000, "wrong ViewSize: 0x%Ix\n", ViewSize); +#else + /* WoW64 returns STATUS_NO_MEMORY */ + ok((Status == STATUS_NO_MEMORY) || (Status == STATUS_INVALID_VIEW_SIZE), + "got wrong Status: 0x%lx", Status); + ok(ViewSize == 0, "wrong ViewSize: 0x%Ix\n", ViewSize); +#endif + + /* Map with PAGE_NOACCESS */ + BaseAddress = NULL; + SectionOffset.QuadPart = 0; + ViewSize = 0x20000000; + Status = NtMapViewOfSection(SectionHandle, + NtCurrentProcess(), + &BaseAddress, + 0, + 0, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_NOACCESS); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Try to change protection to read/write */ + ViewSize = 0x1000; + OldProtect = -1; + BaseAddress2 = BaseAddress; + Status = NtProtectVirtualMemory(NtCurrentProcess(), &BaseAddress2, &ViewSize, PAGE_READWRITE, &OldProtect); + ok_ntstatus(Status, STATUS_SECTION_PROTECTION); + // Windows 2003 returns bogus + //ok(OldProtect == PAGE_READWRITE, "Wrong protection returned: %u\n", OldProtect); + + /* Test read access */ + Status = STATUS_SUCCESS; + _SEH2_TRY + { + (void)(*(volatile char*)BaseAddress2); + } + _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; + ok_ntstatus(Status, STATUS_ACCESS_VIOLATION); + + /* Try to change protection to read/write */ + ViewSize = 0x1000; + OldProtect = -1; + BaseAddress2 = BaseAddress; + Status = NtProtectVirtualMemory(NtCurrentProcess(), &BaseAddress2, &ViewSize, PAGE_READWRITE, &OldProtect); + ok_ntstatus(Status, STATUS_SECTION_PROTECTION); +#ifdef _WIN64 + ok(OldProtect == 0, "Wrong protection returned: 0x%lx\n", OldProtect); +#else + // Windows 2003 returns bogus +#endif + + /* Try to change protection to readonly */ + ViewSize = 0x1000; + OldProtect = -1; + BaseAddress2 = BaseAddress; + Status = NtProtectVirtualMemory(NtCurrentProcess(), &BaseAddress2, &ViewSize, PAGE_READONLY, &OldProtect); + ok_ntstatus(Status, STATUS_SECTION_PROTECTION); +#ifdef _WIN64 + //ok(OldProtect == 0, "Wrong protection returned: 0x%lx\n", OldProtect); +#else + // Windows 2003 returns bogus +#endif + + /* Commit a page */ + ViewSize = 0x1000; + BaseAddress2 = BaseAddress; + Status = NtAllocateVirtualMemory(NtCurrentProcess(), &BaseAddress2, 0, &ViewSize, MEM_COMMIT, PAGE_READONLY); + ok_ntstatus(Status, STATUS_SUCCESS); + ok(BaseAddress2 == BaseAddress, "Invalid base address: %p\n", BaseAddress2); + + /* Commit the page again */ + ViewSize = 0x1000; + BaseAddress2 = BaseAddress; + Status = NtAllocateVirtualMemory(NtCurrentProcess(), &BaseAddress2, 0, &ViewSize, MEM_COMMIT, PAGE_READONLY); + ok_ntstatus(Status, STATUS_SUCCESS); + ok(BaseAddress2 == BaseAddress, "Invalid base address: %p\n", BaseAddress2); + + /* Test read access */ + Status = STATUS_SUCCESS; + _SEH2_TRY + { + (void)(*(volatile char*)BaseAddress2); + } + _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Test write access */ + Status = STATUS_SUCCESS; + _SEH2_TRY + { + *(char*)BaseAddress2 = 1; + } + _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; + ok_ntstatus(Status, STATUS_ACCESS_VIOLATION); + + /* Update protection to PAGE_READWRITE */ + ViewSize = 0x1000; + BaseAddress2 = BaseAddress; + Status = NtAllocateVirtualMemory(NtCurrentProcess(), &BaseAddress2, 0, &ViewSize, MEM_COMMIT, PAGE_READWRITE); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Test write access */ + Status = STATUS_SUCCESS; + _SEH2_TRY + { + *(char*)BaseAddress2 = 1; + } + _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) + { + Status = _SEH2_GetExceptionCode(); + } + _SEH2_END; + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Update protection to PAGE_EXECUTE_READWRITE (1 page) */ + ViewSize = 0x1000; + BaseAddress2 = BaseAddress; + Status = NtAllocateVirtualMemory(NtCurrentProcess(), &BaseAddress2, 0, &ViewSize, MEM_COMMIT, PAGE_EXECUTE_READWRITE); + ok_ntstatus(Status, STATUS_SUCCESS); } @@ -279,7 +676,7 @@ &IoStatusBlock, FILE_SHARE_READ, FILE_SYNCHRONOUS_IO_NONALERT); - ok(Status == STATUS_SUCCESS, "NtOpenFile failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); /* Create a data section with write access */ Status = NtCreateSection(&DataSectionHandle, @@ -289,9 +686,9 @@ PAGE_READWRITE, // SectionPageProtection SEC_COMMIT, // AllocationAttributes FileHandle); - ok(Status == STATUS_SUCCESS, "NtCreateSection failed, Status 0x%lx\n", Status); - - /* Map the data section */ + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Map the data section as flat mapping */ DataBase = NULL; ViewSize = 0; Status = NtMapViewOfSection(DataSectionHandle, @@ -304,7 +701,8 @@ ViewShare, 0, PAGE_READWRITE); - ok(Status == STATUS_SUCCESS, "NtMapViewOfSection failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); + //ok(ViewSize == 0x3f95cc48, "ViewSize wrong: 0x%lx\n"); /* Check the original data */ ok(*(ULONG*)DataBase == 0x00905a4d, "Header not ok\n"); @@ -326,7 +724,7 @@ PAGE_READWRITE, // SectionPageProtection SEC_IMAGE, // AllocationAttributes FileHandle); - ok(Status == STATUS_INVALID_IMAGE_NOT_MZ, "NtCreateSection failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_INVALID_IMAGE_NOT_MZ); /* Restore the original header */ *(ULONG*)DataBase = 0x00905a4d; @@ -343,7 +741,7 @@ PAGE_READWRITE, // SectionPageProtection SEC_IMAGE, // AllocationAttributes FileHandle); - ok(Status == STATUS_SUCCESS, "NtCreateSection failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); /* Map the image section */ ImageBase = NULL; @@ -351,17 +749,17 @@ Status = NtMapViewOfSection(ImageSectionHandle, NtCurrentProcess(), &ImageBase, - 0, - 0, - NULL, - &ViewSize, - ViewShare, - 0, + 0, // ZeroBits + 0, // CommitSize + NULL, // SectionOffset + &ViewSize, + ViewShare, + 0, // AllocationType PAGE_READONLY); #ifdef _M_IX86 - ok(Status == STATUS_SUCCESS, "NtMapViewOfSection failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_IMAGE_NOT_AT_BASE); #else - ok(Status == STATUS_IMAGE_MACHINE_TYPE_MISMATCH, "NtMapViewOfSection failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_IMAGE_MACHINE_TYPE_MISMATCH); #endif /* Check the header */ @@ -390,7 +788,7 @@ &DataBase, &ViewSize, &IoStatusBlock); - ok(Status == STATUS_SUCCESS, "NtFlushVirtualMemory failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); /* Check the data again */ ok(*(ULONG*)ImageBase == 0x00905a4d, "Data should not be synced!\n"); @@ -414,7 +812,7 @@ PAGE_READWRITE, // SectionPageProtection SEC_IMAGE, // AllocationAttributes FileHandle); - ok(Status == STATUS_SUCCESS, "NtCreateSection failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_SUCCESS); /* Map the image section again */ ImageBase = NULL; @@ -430,14 +828,15 @@ 0, PAGE_READONLY); #ifdef _M_IX86 - ok(Status == STATUS_SUCCESS, "NtMapViewOfSection failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_IMAGE_NOT_AT_BASE); #else - ok(Status == STATUS_IMAGE_MACHINE_TYPE_MISMATCH, "NtMapViewOfSection failed, Status 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_IMAGE_MACHINE_TYPE_MISMATCH); #endif + // This one doesn't always work, needs investigation /* Check the .data section again */ - ok(*(ULONG*)((PUCHAR)ImageBase + 0x80000) == 0xf00dada, - "Data should be synced: 0x%lx!\n", *(ULONG*)((PUCHAR)ImageBase + 0x80000)); + //ok(*(ULONG*)((PUCHAR)ImageBase + 0x80000) == 0xf00dada, + // "Data should be synced: 0x%lx!\n", *(ULONG*)((PUCHAR)ImageBase + 0x80000)); /* Restore the original data */ *(ULONG*)((PUCHAR)DataBase + 0x800) = 0x12345678; @@ -451,7 +850,7 @@ DataBase = (PUCHAR)ImageBase + 0x20000; ViewSize = 0x1000; Status = NtAllocateVirtualMemory(NtCurrentProcess(), &DataBase, 0, &ViewSize, MEM_RESERVE, PAGE_NOACCESS); - ok(Status == STATUS_CONFLICTING_ADDRESSES, "Wrong Status: 0x%lx\n", Status); + ok_ntstatus(Status, STATUS_CONFLICTING_ADDRESSES); /* Cleanup */ NtClose(FileHandle); @@ -459,10 +858,174 @@ NtUnmapViewOfSection(NtCurrentProcess(), ImageBase); } +void +Test_ImageSection2(void) +{ + UNICODE_STRING FileName; + NTSTATUS Status; + OBJECT_ATTRIBUTES FileObjectAttributes; + IO_STATUS_BLOCK IoStatusBlock; + HANDLE FileHandle, ImageSectionHandle; + PVOID ImageBase, BaseAddress; + SIZE_T ViewSize; + LARGE_INTEGER MaximumSize, SectionOffset; + + if (!RtlDosPathNameToNtPathName_U(L"testdata\\nvoglv32.dll", + &FileName, + NULL, + NULL)) + { + ok(0, "RtlDosPathNameToNtPathName_U failed\n"); + return; + } + + InitializeObjectAttributes(&FileObjectAttributes, + &FileName, + 0, + NULL, + NULL); + + Status = NtOpenFile(&FileHandle, + GENERIC_READ|GENERIC_WRITE|SYNCHRONIZE, + &FileObjectAttributes, + &IoStatusBlock, + FILE_SHARE_READ, + FILE_SYNCHRONOUS_IO_NONALERT); + ok_ntstatus(Status, STATUS_SUCCESS); + printf("Opened file with handle %p\n", FileHandle); + + /* Create a data section with write access */ + MaximumSize.QuadPart = 0x20000; + Status = NtCreateSection(&ImageSectionHandle, + SECTION_ALL_ACCESS, // DesiredAccess + NULL, // ObjectAttributes + &MaximumSize, // MaximumSize + PAGE_READWRITE, // SectionPageProtection + SEC_IMAGE, // AllocationAttributes + FileHandle); + ok_ntstatus(Status, STATUS_SUCCESS); + + printf("Created image section with handle %p\n", ImageSectionHandle); + //system("PAUSE"); + + /* Map the image section */ + ImageBase = NULL; + ViewSize = 0x0000; + SectionOffset.QuadPart = 0x00000; + Status = NtMapViewOfSection(ImageSectionHandle, + NtCurrentProcess(), + &ImageBase, + 0, + 0, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_READWRITE); + ok_ntstatus(Status, STATUS_SUCCESS); + + printf("Mapped image section at %p, value in text section: %lx\n", + ImageBase, *((ULONG*)((PCHAR)ImageBase + 0x1196))); + system("PAUSE"); + + /* Try to allocate a page after the section */ + BaseAddress = (PUCHAR)ImageBase + 0x10000; + ViewSize = 0x1000; + Status = NtAllocateVirtualMemory(NtCurrentProcess(), + &BaseAddress, + 0, + &ViewSize, + MEM_RESERVE | MEM_COMMIT, + PAGE_READWRITE); + printf("allocation status: %lx\n", Status); + system("PAUSE"); + +} + +// doesn't work with WoW64! +void +Test_BasedSection(void) +{ + NTSTATUS Status; + HANDLE SectionHandle1, SectionHandle2; + LARGE_INTEGER MaximumSize, SectionOffset; + PVOID BaseAddress1, BaseAddress2; + SIZE_T ViewSize; + + /* Create a based section with SEC_COMMIT */ + MaximumSize.QuadPart = 0x1000; + Status = NtCreateSection(&SectionHandle1, + SECTION_ALL_ACCESS, + NULL, + &MaximumSize, + PAGE_READWRITE, + SEC_COMMIT | SEC_BASED, + NULL); + ok_ntstatus(Status, STATUS_SUCCESS); + + /* Map the 1st section */ + BaseAddress1 = NULL; + SectionOffset.QuadPart = 0; + ViewSize = 0; + Status = NtMapViewOfSection(SectionHandle1, + NtCurrentProcess(), + &BaseAddress1, + 0, + 0, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_READWRITE); +#if 0 // WOW64? + ok_ntstatus(Status, STATUS_CONFLICTING_ADDRESSES); +#else + ok_ntstatus(Status, STATUS_SUCCESS); +#endif + + /* Create a 2nd based section with SEC_COMMIT */ + MaximumSize.QuadPart = 0x1000; + Status = NtCreateSection(&SectionHandle2, + SECTION_ALL_ACCESS, + NULL, + &MaximumSize, + PAGE_READWRITE, + SEC_COMMIT | SEC_BASED, + NULL); + ok_ntstatus(Status, STATUS_SUCCESS);// + + /* Map the 2nd section */ + BaseAddress2 = NULL; + SectionOffset.QuadPart = 0; + ViewSize = 0; + Status = NtMapViewOfSection(SectionHandle2, + NtCurrentProcess(), + &BaseAddress2, + 0, + 0, + &SectionOffset, + &ViewSize, + ViewShare, + 0, + PAGE_READWRITE); +#if 0 // WOW64? + ok_ntstatus(Status, STATUS_CONFLICTING_ADDRESSES); +#else + ok_ntstatus(Status, STATUS_SUCCESS); +#endif + + ok_ntstatus(Status, STATUS_SUCCESS); + ok((ULONG_PTR)BaseAddress2 < (ULONG_PTR)BaseAddress1, + "Invalid addresses: BaseAddress1=%p, BaseAddress2=%p\n", BaseAddress1, BaseAddress2); + ok(((ULONG_PTR)BaseAddress1 - (ULONG_PTR)BaseAddress2) == 0x10000, + "Invalid addresses: BaseAddress1=%p, BaseAddress2=%p\n", BaseAddress1, BaseAddress2); + +} START_TEST(NtMapViewOfSection) { Test_PageFileSection(); Test_ImageSection(); + Test_BasedSection(); }
10 years, 7 months
1
0
0
0
[akhaldi] 63332: [LIBJPEG] * Update to release 9a. Based on the sync done by Ivan Di Francesco. CORE-8033
by akhaldi@svn.reactos.org
Author: akhaldi Date: Sat May 17 18:14:51 2014 New Revision: 63332 URL:
http://svn.reactos.org/svn/reactos?rev=63332&view=rev
Log: [LIBJPEG] * Update to release 9a. Based on the sync done by Ivan Di Francesco. CORE-8033 Removed: trunk/reactos/dll/3rdparty/libjpeg/ansi2knr.c Modified: trunk/reactos/dll/3rdparty/libjpeg/README trunk/reactos/dll/3rdparty/libjpeg/change.log trunk/reactos/dll/3rdparty/libjpeg/cjpeg.c trunk/reactos/dll/3rdparty/libjpeg/jcapistd.c trunk/reactos/dll/3rdparty/libjpeg/jcarith.c trunk/reactos/dll/3rdparty/libjpeg/jccolor.c trunk/reactos/dll/3rdparty/libjpeg/jcdctmgr.c trunk/reactos/dll/3rdparty/libjpeg/jchuff.c trunk/reactos/dll/3rdparty/libjpeg/jcinit.c trunk/reactos/dll/3rdparty/libjpeg/jcmarker.c trunk/reactos/dll/3rdparty/libjpeg/jcmaster.c trunk/reactos/dll/3rdparty/libjpeg/jcparam.c trunk/reactos/dll/3rdparty/libjpeg/jctrans.c trunk/reactos/dll/3rdparty/libjpeg/jdapimin.c trunk/reactos/dll/3rdparty/libjpeg/jdapistd.c trunk/reactos/dll/3rdparty/libjpeg/jdarith.c trunk/reactos/dll/3rdparty/libjpeg/jdcolor.c trunk/reactos/dll/3rdparty/libjpeg/jddctmgr.c trunk/reactos/dll/3rdparty/libjpeg/jdhuff.c trunk/reactos/dll/3rdparty/libjpeg/jdinput.c trunk/reactos/dll/3rdparty/libjpeg/jdmarker.c trunk/reactos/dll/3rdparty/libjpeg/jdmaster.c trunk/reactos/dll/3rdparty/libjpeg/jdmerge.c trunk/reactos/dll/3rdparty/libjpeg/jfdctint.c trunk/reactos/dll/3rdparty/libjpeg/jidctint.c trunk/reactos/dll/3rdparty/libjpeg/jpegtran.c trunk/reactos/dll/3rdparty/libjpeg/transupp.c trunk/reactos/include/reactos/libs/libjpeg/jconfig.h trunk/reactos/include/reactos/libs/libjpeg/jmorecfg.h trunk/reactos/include/reactos/libs/libjpeg/jpegint.h trunk/reactos/include/reactos/libs/libjpeg/jpeglib.h trunk/reactos/include/reactos/libs/libjpeg/jversion.h trunk/reactos/include/reactos/libs/libjpeg/transupp.h trunk/reactos/media/doc/3rd Party Files.txt [This mail would be too long, it was shortened to contain the URLs only.] Modified: trunk/reactos/dll/3rdparty/libjpeg/README URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/READM…
Removed: trunk/reactos/dll/3rdparty/libjpeg/ansi2knr.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/ansi2…
Modified: trunk/reactos/dll/3rdparty/libjpeg/change.log URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/chang…
Modified: trunk/reactos/dll/3rdparty/libjpeg/cjpeg.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/cjpeg…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jcapistd.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jcapi…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jcarith.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jcari…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jccolor.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jccol…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jcdctmgr.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jcdct…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jchuff.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jchuf…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jcinit.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jcini…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jcmarker.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jcmar…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jcmaster.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jcmas…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jcparam.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jcpar…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jctrans.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jctra…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdapimin.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdapi…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdapistd.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdapi…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdarith.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdari…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdcolor.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdcol…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jddctmgr.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jddct…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdhuff.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdhuf…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdinput.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdinp…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdmarker.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdmar…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdmaster.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdmas…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jdmerge.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jdmer…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jfdctint.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jfdct…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jidctint.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jidct…
Modified: trunk/reactos/dll/3rdparty/libjpeg/jpegtran.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/jpegt…
Modified: trunk/reactos/dll/3rdparty/libjpeg/transupp.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/3rdparty/libjpeg/trans…
Modified: trunk/reactos/include/reactos/libs/libjpeg/jconfig.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libjp…
Modified: trunk/reactos/include/reactos/libs/libjpeg/jmorecfg.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libjp…
Modified: trunk/reactos/include/reactos/libs/libjpeg/jpegint.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libjp…
Modified: trunk/reactos/include/reactos/libs/libjpeg/jpeglib.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libjp…
Modified: trunk/reactos/include/reactos/libs/libjpeg/jversion.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libjp…
Modified: trunk/reactos/include/reactos/libs/libjpeg/transupp.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/libjp…
Modified: trunk/reactos/media/doc/3rd Party Files.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/3rd%20Party%20Fi…
10 years, 7 months
1
0
0
0
[aandrejevic] 63331: [NTVDM] DosResizeMemory shouldn't succeed unless the memory block has been resized to the specified amount.
by aandrejevic@svn.reactos.org
Author: aandrejevic Date: Sat May 17 15:29:07 2014 New Revision: 63331 URL:
http://svn.reactos.org/svn/reactos?rev=63331&view=rev
Log: [NTVDM] DosResizeMemory shouldn't succeed unless the memory block has been resized to the specified amount. Modified: trunk/reactos/subsystems/ntvdm/dos/dos32krnl/dos.c Modified: trunk/reactos/subsystems/ntvdm/dos/dos32krnl/dos.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/ntvdm/dos/dos32…
============================================================================== --- trunk/reactos/subsystems/ntvdm/dos/dos32krnl/dos.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/ntvdm/dos/dos32krnl/dos.c [iso-8859-1] Sat May 17 15:29:07 2014 @@ -248,6 +248,14 @@ /* Set the maximum possible size of the block */ ReturnSize += NextMcb->Size + 1; + + if (ReturnSize < NewSize) + { + DPRINT("Cannot expand memory block: insufficient free segments available!\n"); + DosLastError = ERROR_NOT_ENOUGH_MEMORY; + Success = FALSE; + goto Done; + } /* Maximize the current block */ Mcb->Size = ReturnSize;
10 years, 7 months
1
0
0
0
[ekohl] 63330: [NTOSKRNL] Partial revert of r63326! The correct partition numbers cause boot failures.
by ekohl@svn.reactos.org
Author: ekohl Date: Sat May 17 14:42:28 2014 New Revision: 63330 URL:
http://svn.reactos.org/svn/reactos?rev=63330&view=rev
Log: [NTOSKRNL] Partial revert of r63326! The correct partition numbers cause boot failures. Modified: trunk/reactos/ntoskrnl/fstub/disksup.c Modified: trunk/reactos/ntoskrnl/fstub/disksup.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/fstub/disksup.c?r…
============================================================================== --- trunk/reactos/ntoskrnl/fstub/disksup.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/fstub/disksup.c [iso-8859-1] Sat May 17 14:42:28 2014 @@ -1655,7 +1655,9 @@ UInt32x32To64(GET_PARTITION_LENGTH(PartitionDescriptor), SectorSize); - PartitionInfo->PartitionNumber = (!IsContainerPartition(PartitionType)) ? i : 0; + // BUGBUGBUG: The correct partition numbers seem to cause boot failures!!! +// PartitionInfo->PartitionNumber = (!IsContainerPartition(PartitionType)) ? i : 0; + PartitionInfo->PartitionNumber = i + 1; } else {
10 years, 7 months
1
0
0
0
[akhaldi] 63329: [WINSCARD] * Import from Wine 1.7.17. * Properly stub some exports thanks to our previous code. * Add to build. CORE-8224 #resolve #comment Added in r63328. Thanks for reporting! C...
by akhaldi@svn.reactos.org
Author: akhaldi Date: Sat May 17 14:06:12 2014 New Revision: 63329 URL:
http://svn.reactos.org/svn/reactos?rev=63329&view=rev
Log: [WINSCARD] * Import from Wine 1.7.17. * Properly stub some exports thanks to our previous code. * Add to build. CORE-8224 #resolve #comment Added in r63328. Thanks for reporting! CORE-8080 Added: trunk/reactos/dll/win32/winscard/CMakeLists.txt (with props) trunk/reactos/dll/win32/winscard/stubs.c (with props) trunk/reactos/dll/win32/winscard/winscard.spec (with props) Removed: trunk/reactos/dll/win32/winscard/winscard.def Modified: trunk/reactos/dll/win32/CMakeLists.txt trunk/reactos/dll/win32/winscard/precomp.h trunk/reactos/dll/win32/winscard/winscard.c trunk/reactos/media/doc/README.WINE Modified: trunk/reactos/dll/win32/CMakeLists.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/CMakeLists.txt?r…
============================================================================== --- trunk/reactos/dll/win32/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/win32/CMakeLists.txt [iso-8859-1] Sat May 17 14:06:12 2014 @@ -227,7 +227,7 @@ add_subdirectory(winhttp) add_subdirectory(wininet) add_subdirectory(winmm) -#add_subdirectory(winscard) # not built in trunk +add_subdirectory(winscard) add_subdirectory(winspool) add_subdirectory(winsta) add_subdirectory(wintrust) Added: trunk/reactos/dll/win32/winscard/CMakeLists.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/winscard/CMakeLi…
============================================================================== --- trunk/reactos/dll/win32/winscard/CMakeLists.txt (added) +++ trunk/reactos/dll/win32/winscard/CMakeLists.txt [iso-8859-1] Sat May 17 14:06:12 2014 @@ -0,0 +1,21 @@ + +add_definitions(-D__WINESRC__) +include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine) +spec2def(winscard.dll winscard.spec) + +list(APPEND SOURCE + winscard.c + stubs.c + precomp.h + ${CMAKE_CURRENT_BINARY_DIR}/winscard_stubs.c) + +add_library(winscard SHARED + ${SOURCE} + winscard.rc + ${CMAKE_CURRENT_BINARY_DIR}/winscard.def) + +set_module_type(winscard win32dll) +target_link_libraries(winscard wine) +add_importlibs(winscard msvcrt kernel32 ntdll) +add_pch(winscard precomp.h SOURCE) +add_cd_file(TARGET winscard DESTINATION reactos/system32 FOR all) Propchange: trunk/reactos/dll/win32/winscard/CMakeLists.txt ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/reactos/dll/win32/winscard/precomp.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/winscard/precomp…
============================================================================== --- trunk/reactos/dll/win32/winscard/precomp.h [iso-8859-1] (original) +++ trunk/reactos/dll/win32/winscard/precomp.h [iso-8859-1] Sat May 17 14:06:12 2014 @@ -1,5 +1,19 @@ -#include <windows.h> -#include <WinSCard.h> -#include <debug.h> +#ifndef _WINSCARD_PCH_ +#define _WINSCARD_PCH_ -/* EOF */ +#include <wine/config.h> + +#include <stdarg.h> + +#define WIN32_NO_STATUS +#define _INC_WINDOWS +#define COM_NO_WINDOWS_H + +#include <windef.h> +#include <winbase.h> +#include <winscard.h> + +#include <wine/debug.h> +WINE_DEFAULT_DEBUG_CHANNEL(winscard); + +#endif /* _WINSCARD_PCH_ */ Added: trunk/reactos/dll/win32/winscard/stubs.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/winscard/stubs.c…
============================================================================== --- trunk/reactos/dll/win32/winscard/stubs.c (added) +++ trunk/reactos/dll/win32/winscard/stubs.c [iso-8859-1] Sat May 17 14:06:12 2014 @@ -0,0 +1,645 @@ +/* + * PROJECT: ReactOS SmartCard API + * FILE: dll/win32/winscard/stubs.c + * PURPOSE: ReactOS SmartCard API + * PROGRAMMER: Thomas Weidenmueller <w3seek(a)reactos.com> + * + * UPDATE HISTORY: + * 11/07/2004 Created + */ + +#include <precomp.h> + +/* + * @unimplemented + */ +LONG +WINAPI +SCardBeginTransaction(SCARDHANDLE hCard) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardCancel(SCARDCONTEXT hContext) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardConnectA(SCARDCONTEXT hContext, + LPCSTR szReader, + DWORD dwShareMode, + DWORD dwPreferredProtocols, + LPSCARDHANDLE phCard, + LPDWORD pdwActiveProtocol) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardConnectW(SCARDCONTEXT hContext, + LPCWSTR szReader, + DWORD dwShareMode, + DWORD dwPreferredProtocols, + LPSCARDHANDLE phCard, + LPDWORD pdwActiveProtocol) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardControl(SCARDHANDLE hCard, + DWORD dwControlCode, + LPCVOID lpInBuffer, + DWORD nInBufferSize, + LPVOID lpOutBuffer, + DWORD nOutBufferSize, + LPDWORD lpBytesReturned) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardDisconnect(SCARDHANDLE hCard, + DWORD dwDisposition) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardEndTransaction(SCARDHANDLE hCard, + DWORD dwDisposition) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardForgetCardTypeA(SCARDCONTEXT hContext, + LPCSTR szCardName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardForgetCardTypeW(SCARDCONTEXT hContext, + LPCWSTR szCardName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardForgetReaderA(SCARDCONTEXT hContext, + LPCSTR szReaderName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardForgetReaderW(SCARDCONTEXT hContext, + LPCWSTR szReaderName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardForgetReaderGroupA(SCARDCONTEXT hContext, + LPCSTR szGroupName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardForgetReaderGroupW(SCARDCONTEXT hContext, + LPCWSTR szGroupName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardFreeMemory(SCARDCONTEXT hContext, + LPCVOID pvMem) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardGetAttrib(SCARDHANDLE hCard, + DWORD dwAttrId, + LPBYTE pbAttr, + LPDWORD pcbAttrLen) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardGetCardTypeProviderNameA(SCARDCONTEXT hContext, + LPCSTR szCardName, + DWORD dwProviderId, + LPSTR szProvider, + LPDWORD pcchProvider) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardGetCardTypeProviderNameW(SCARDCONTEXT hContext, + LPCWSTR szCardName, + DWORD dwProviderId, + LPWSTR szProvider, + LPDWORD pcchProvider) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardGetProviderIdA(SCARDCONTEXT hContext, + LPCSTR szCard, + LPGUID pguidProviderId) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardGetProviderIdW(SCARDCONTEXT hContext, + LPCWSTR szCard, + LPGUID pguidProviderId) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardGetStatusChangeA(SCARDCONTEXT hContext, + DWORD dwTimeout, + LPSCARD_READERSTATEA rgReaderState, + DWORD cReaders) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardGetStatusChangeW(SCARDCONTEXT hContext, + DWORD dwTimeout, + LPSCARD_READERSTATEW rgReaderState, + DWORD cReaders) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardIntroduceCardTypeA(SCARDCONTEXT hContext, + LPCSTR szCardName, + LPCGUID pguidPrimaryProvider, + LPCGUID rgguidInterfaces, + DWORD dwInterfaceCount, + LPCBYTE pbAtr, + LPCBYTE pbAtrMask, + DWORD cbAtrLen) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardIntroduceCardTypeW(SCARDCONTEXT hContext, + LPCWSTR szCardName, + LPCGUID pguidPrimaryProvider, + LPCGUID rgguidInterfaces, + DWORD dwInterfaceCount, + LPCBYTE pbAtr, + LPCBYTE pbAtrMask, + DWORD cbAtrLen) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardIntroduceReaderA(SCARDCONTEXT hContext, + LPCSTR szReaderName, + LPCSTR szDeviceName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardIntroduceReaderW(SCARDCONTEXT hContext, + LPCWSTR szReaderName, + LPCWSTR szDeviceName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardIntroduceReaderGroupA(SCARDCONTEXT hContext, + LPCSTR szGroupName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardIntroduceReaderGroupW(SCARDCONTEXT hContext, + LPCWSTR szGroupName) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardListCardsW(SCARDCONTEXT hContext, + LPCBYTE pbAtr, + LPCGUID rgguidInterface, + DWORD cguidInterfaceCount, + LPWSTR mszCards, + LPDWORD pcchCards) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardListInterfacesA(SCARDCONTEXT hContext, + LPCSTR szCard, + LPGUID pguidInterfaces, + LPDWORD pcguidInteraces) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardListInterfacesW(SCARDCONTEXT hContext, + LPCWSTR szCard, + LPGUID pguidInterfaces, + LPDWORD pcguidInteraces) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardListReaderGroupsA(SCARDCONTEXT hContext, + LPSTR mszGroups, + LPDWORD pcchGroups) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardListReaderGroupsW(SCARDCONTEXT hContext, + LPWSTR mszGroups, + LPDWORD pcchGroups) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardListReadersA(SCARDCONTEXT Context, + LPCSTR mszGroups, + LPSTR mszReaders, + LPDWORD pcchReaders) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardListReadersW(SCARDCONTEXT Context, + LPCWSTR mszGroups, + LPWSTR mszReaders, + LPDWORD pcchReaders) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardLocateCardsA(SCARDCONTEXT hContext, + LPCSTR mszCards, + LPSCARD_READERSTATEA rgReaderStates, + DWORD cReaders) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardLocateCardsW(SCARDCONTEXT hContext, + LPCWSTR mszCards, + LPSCARD_READERSTATEW rgReaderStates, + DWORD cReaders) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardLocateCardsByATRA(SCARDCONTEXT hContext, + LPSCARD_ATRMASK rgAtrMasks, + DWORD cAtrs, + LPSCARD_READERSTATEA rgReaderStates, + DWORD cReaders) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardLocateCardsByATRW(SCARDCONTEXT hContext, + LPSCARD_ATRMASK rgAtrMasks, + DWORD cAtrs, + LPSCARD_READERSTATEW rgReaderStates, + DWORD cReaders) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardReconnect(SCARDHANDLE hCard, + DWORD dwShareMode, + DWORD dwPreferredProtocols, + DWORD dwInitialization, + LPDWORD pdwActiveProtocol) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardRemoveReaderFromGroupA(SCARDCONTEXT hContext, + LPCSTR szReaderName, + LPCSTR szGroupname) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardRemoveReaderFromGroupW(SCARDCONTEXT hContext, + LPCWSTR szReaderName, + LPCWSTR szGroupname) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardSetAttrib(SCARDHANDLE hCard, + DWORD dwAttrId, + LPCBYTE pbAttr, + DWORD cbAttrLen) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardSetCardTypeProviderNameA(SCARDCONTEXT hContext, + LPCSTR szCardName, + DWORD dwProviderId, + LPCSTR szProvider) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardSetCardTypeProviderNameW(SCARDCONTEXT hContext, + LPCWSTR szCardName, + DWORD dwProviderId, + LPCWSTR szProvider) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardState(SCARDHANDLE hCard, + LPDWORD pdwState, + LPDWORD pdwProtocol, + LPBYTE pbAtr, + LPDWORD pcbAtrlen) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} + +/* + * @unimplemented + */ +LONG +WINAPI +SCardTransmit(SCARDHANDLE hCard, + LPCSCARD_IO_REQUEST pioSendPci, + LPCBYTE pbSendBuffer, + DWORD cbSendLength, + LPSCARD_IO_REQUEST pioRecvPci, + LPBYTE pbRecvBuffer, + LPDWORD pcbRecvLength) +{ + UNIMPLEMENTED; + return SCARD_F_UNKNOWN_ERROR; +} Propchange: trunk/reactos/dll/win32/winscard/stubs.c ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/reactos/dll/win32/winscard/winscard.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/winscard/winscar…
============================================================================== --- trunk/reactos/dll/win32/winscard/winscard.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/winscard/winscard.c [iso-8859-1] Sat May 17 14:06:12 2014 @@ -1,6 +1,5 @@ /* - * ReactOS SmartCard API - * Copyright (C) 2004 ReactOS Team + * Copyright 2007 Mounir IDRASSI (mounir.idrassi(a)idrix.fr, for IDRIX) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -14,843 +13,113 @@ * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -/* - * PROJECT: ReactOS SmartCard API - * FILE: lib/winscard/winscard.c - * PURPOSE: ReactOS SmartCard API - * PROGRAMMER: Thomas Weidenmueller <w3seek(a)reactos.com> - * - * UPDATE HISTORY: - * 11/07/2004 Created - */ -#include "precomp.h" -const SCARD_IO_REQUEST g_rgSCardT0Pci; -const SCARD_IO_REQUEST g_rgSCardT1Pci; -const SCARD_IO_REQUEST g_rgSCardRawPci; +#include <precomp.h> -/* - * @unimplemented - */ -HANDLE -WINAPI -SCardAccessStartedEvent(VOID) +#include <winternl.h> + +static HANDLE g_startedEvent = NULL; + +const SCARD_IO_REQUEST g_rgSCardT0Pci = { SCARD_PROTOCOL_T0, 8 }; +const SCARD_IO_REQUEST g_rgSCardT1Pci = { SCARD_PROTOCOL_T1, 8 }; +const SCARD_IO_REQUEST g_rgSCardRawPci = { SCARD_PROTOCOL_RAW, 8 }; + + +BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) { - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return NULL; + TRACE("%p,%x,%p\n", hinstDLL, fdwReason, lpvReserved); + + switch (fdwReason) + { + case DLL_PROCESS_ATTACH: + DisableThreadLibraryCalls(hinstDLL); + /* FIXME: for now, we act as if the pcsc daemon is always started */ + g_startedEvent = CreateEventA(NULL,TRUE,TRUE,NULL); + break; + case DLL_PROCESS_DETACH: + if (lpvReserved) break; + CloseHandle(g_startedEvent); + break; + } + + return TRUE; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardAddReaderToGroupA(SCARDCONTEXT hContext, - LPCSTR szReaderName, - LPCSTR szGroupName) +HANDLE WINAPI SCardAccessStartedEvent(void) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + return g_startedEvent; } +LONG WINAPI SCardAddReaderToGroupA(SCARDCONTEXT context, LPCSTR reader, LPCSTR group) +{ + LONG retval; + UNICODE_STRING readerW, groupW; -/* - * @unimplemented - */ -LONG -WINAPI -SCardAddReaderToGroupW(SCARDCONTEXT hContext, - LPCWSTR szReaderName, - LPCWSTR szGroupName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + if(reader) RtlCreateUnicodeStringFromAsciiz(&readerW,reader); + else readerW.Buffer = NULL; + if(group) RtlCreateUnicodeStringFromAsciiz(&groupW,group); + else groupW.Buffer = NULL; + + retval = SCardAddReaderToGroupW(context, readerW.Buffer, groupW.Buffer); + + RtlFreeUnicodeString(&readerW); + RtlFreeUnicodeString(&groupW); + + return retval; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardBeginTransaction(SCARDHANDLE hCard) +LONG WINAPI SCardAddReaderToGroupW(SCARDCONTEXT context, LPCWSTR reader, LPCWSTR group) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + FIXME("%x %s %s\n", (unsigned int) context, debugstr_w(reader), debugstr_w(group)); + return SCARD_S_SUCCESS; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardCancel(SCARDCONTEXT hContext) +LONG WINAPI SCardEstablishContext(DWORD dwScope, LPCVOID pvReserved1, + LPCVOID pvReserved2, LPSCARDCONTEXT phContext) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + FIXME("(%x,%p,%p,%p) stub\n", dwScope, pvReserved1, pvReserved2, phContext); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return SCARD_F_INTERNAL_ERROR; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardConnectA(SCARDCONTEXT hContext, - LPCSTR szReader, - DWORD dwShareMode, - DWORD dwPreferredProtocols, - LPSCARDHANDLE phCard, - LPDWORD pdwActiveProtocol) +LONG WINAPI SCardIsValidContext(SCARDCONTEXT context) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + FIXME("(%lx) stub\n", context); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return SCARD_F_INTERNAL_ERROR; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardConnectW(SCARDCONTEXT hContext, - LPCWSTR szReader, - DWORD dwShareMode, - DWORD dwPreferredProtocols, - LPSCARDHANDLE phCard, - LPDWORD pdwActiveProtocol) +LONG WINAPI SCardListCardsA(SCARDCONTEXT hContext, LPCBYTE pbAtr, LPCGUID rgguidInterfaces, DWORD cguidInterfaceCount, LPSTR mszCards, LPDWORD pcchCards) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + FIXME(": stub\n"); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return SCARD_F_INTERNAL_ERROR; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardControl(SCARDHANDLE hCard, - DWORD dwControlCode, - LPCVOID lpInBuffer, - DWORD nInBufferSize, - LPVOID lpOutBuffer, - DWORD nOutBufferSize, - LPDWORD lpBytesReturned) +LONG WINAPI SCardReleaseContext(SCARDCONTEXT context) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + FIXME("(%lx) stub\n", context); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return SCARD_F_INTERNAL_ERROR; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardDisconnect(SCARDHANDLE hCard, - DWORD dwDisposition) +LONG WINAPI SCardStatusA(SCARDHANDLE context, LPSTR szReaderName, LPDWORD pcchReaderLen, LPDWORD pdwState, LPDWORD pdwProtocol, LPBYTE pbAtr, LPDWORD pcbAtrLen) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + FIXME("(%lx) stub\n", context); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return SCARD_F_INTERNAL_ERROR; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardEndTransaction(SCARDHANDLE hCard, - DWORD dwDisposition) +LONG WINAPI SCardStatusW(SCARDHANDLE context, LPWSTR szReaderName, LPDWORD pcchReaderLen, LPDWORD pdwState,LPDWORD pdwProtocol,LPBYTE pbAtr,LPDWORD pcbArtLen) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + FIXME("(%lx) stub\n", context); + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return SCARD_F_INTERNAL_ERROR; } - -/* - * @unimplemented - */ -LONG -WINAPI -SCardEstablishContext(DWORD dwScope, - LPCVOID pvReserved1, - LPCVOID pvReserved2, - LPSCARDCONTEXT phContext) +void WINAPI SCardReleaseStartedEvent(void) { - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; + FIXME("stub\n"); } - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardForgetCardTypeA(SCARDCONTEXT hContext, - LPCSTR szCardName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardForgetCardTypeW(SCARDCONTEXT hContext, - LPCWSTR szCardName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardForgetReaderA(SCARDCONTEXT hContext, - LPCSTR szReaderName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardForgetReaderW(SCARDCONTEXT hContext, - LPCWSTR szReaderName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardForgetReaderGroupA(SCARDCONTEXT hContext, - LPCSTR szGroupName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardForgetReaderGroupW(SCARDCONTEXT hContext, - LPCWSTR szGroupName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardFreeMemory(SCARDCONTEXT hContext, - LPCVOID pvMem) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardGetAttrib(SCARDHANDLE hCard, - DWORD dwAttrId, - LPBYTE pbAttr, - LPDWORD pcbAttrLen) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardGetCardTypeProviderNameA(SCARDCONTEXT hContext, - LPCSTR szCardName, - DWORD dwProviderId, - LPSTR szProvider, - LPDWORD pcchProvider) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardGetCardTypeProviderNameW(SCARDCONTEXT hContext, - LPCWSTR szCardName, - DWORD dwProviderId, - LPWSTR szProvider, - LPDWORD pcchProvider) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardGetProviderIdA(SCARDCONTEXT hContext, - LPCSTR szCard, - LPGUID pguidProviderId) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardGetProviderIdW(SCARDCONTEXT hContext, - LPCWSTR szCard, - LPGUID pguidProviderId) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardGetStatusChangeA(SCARDCONTEXT hContext, - DWORD dwTimeout, - LPSCARD_READERSTATEA rgReaderState, - DWORD cReaders) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardGetStatusChangeW(SCARDCONTEXT hContext, - DWORD dwTimeout, - LPSCARD_READERSTATEW rgReaderState, - DWORD cReaders) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardIntroduceCardTypeA(SCARDCONTEXT hContext, - LPCSTR szCardName, - LPCGUID pguidPrimaryProvider, - LPCGUID rgguidInterfaces, - DWORD dwInterfaceCount, - LPCBYTE pbAtr, - LPCBYTE pbAtrMask, - DWORD cbAtrLen) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardIntroduceCardTypeW(SCARDCONTEXT hContext, - LPCWSTR szCardName, - LPCGUID pguidPrimaryProvider, - LPCGUID rgguidInterfaces, - DWORD dwInterfaceCount, - LPCBYTE pbAtr, - LPCBYTE pbAtrMask, - DWORD cbAtrLen) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardIntroduceReaderA(SCARDCONTEXT hContext, - LPCSTR szReaderName, - LPCSTR szDeviceName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardIntroduceReaderW(SCARDCONTEXT hContext, - LPCWSTR szReaderName, - LPCWSTR szDeviceName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardIntroduceReaderGroupA(SCARDCONTEXT hContext, - LPCSTR szGroupName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardIntroduceReaderGroupW(SCARDCONTEXT hContext, - LPCWSTR szGroupName) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardIsValidContext(SCARDCONTEXT hContext) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardListCardsA(SCARDCONTEXT hContext, - LPCBYTE pbAtr, - LPCGUID rgguidInterface, - DWORD cguidInterfaceCount, - LPCSTR mszCards, - LPDWORD pcchCards) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardListCardsW(SCARDCONTEXT hContext, - LPCBYTE pbAtr, - LPCGUID rgguidInterface, - DWORD cguidInterfaceCount, - LPCWSTR mszCards, - LPDWORD pcchCards) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardListInterfacesA(SCARDCONTEXT hContext, - LPCSTR szCard, - LPGUID pguidInterfaces, - LPDWORD pcguidInteraces) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardListInterfacesW(SCARDCONTEXT hContext, - LPCWSTR szCard, - LPGUID pguidInterfaces, - LPDWORD pcguidInteraces) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardListReaderGroupsA(SCARDCONTEXT hContext, - LPSTR mszGroups, - LPDWORD pcchGroups) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardListReaderGroupsW(SCARDCONTEXT hContext, - LPWSTR mszGroups, - LPDWORD pcchGroups) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardListReadersA(SCARDCONTEXT Context, - LPCSTR mszGroups, - LPSTR mszReaders, - LPDWORD pcchReaders) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardListReadersW(SCARDCONTEXT Context, - LPCWSTR mszGroups, - LPWSTR mszReaders, - LPDWORD pcchReaders) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardLocateCardsA(SCARDCONTEXT hContext, - LPCSTR mszCards, - LPSCARD_READERSTATEA rgReaderStates, - DWORD cReaders) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardLocateCardsW(SCARDCONTEXT hContext, - LPCWSTR mszCards, - LPSCARD_READERSTATEW rgReaderStates, - DWORD cReaders) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardLocateCardsByATRA(SCARDCONTEXT hContext, - LPSCARD_ATRMASK rgAtrMasks, - DWORD cAtrs, - LPSCARD_READERSTATEA rgReaderStates, - DWORD cReaders) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardLocateCardsByATRW(SCARDCONTEXT hContext, - LPSCARD_ATRMASK rgAtrMasks, - DWORD cAtrs, - LPSCARD_READERSTATEW rgReaderStates, - DWORD cReaders) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardReconnect(SCARDHANDLE hCard, - DWORD dwShareMode, - DWORD dwPreferredProtocols, - DWORD dwInitialization, - LPDWORD pdwActiveProtocol) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardReleaseContext(SCARDCONTEXT hContext) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -VOID -WINAPI -SCardReleaseStartedEvent(HANDLE hStartedEventHandle) -{ - UNIMPLEMENTED; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardRemoveReaderFromGroupA(SCARDCONTEXT hContext, - LPCSTR szReaderName, - LPCSTR szGroupname) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardRemoveReaderFromGroupW(SCARDCONTEXT hContext, - LPCWSTR szReaderName, - LPCWSTR szGroupname) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardSetAttrib(SCARDHANDLE hCard, - DWORD dwAttrId, - LPCBYTE pbAttr, - DWORD cbAttrLen) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardSetCardTypeProviderNameA(SCARDCONTEXT hContext, - LPCSTR szCardName, - DWORD dwProviderId, - LPCSTR szProvider) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardSetCardTypeProviderNameW(SCARDCONTEXT hContext, - LPCWSTR szCardName, - DWORD dwProviderId, - LPCWSTR szProvider) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardState(SCARDHANDLE hCard, - LPDWORD pdwState, - LPDWORD pdwProtocol, - LPBYTE pbAtr, - LPDWORD pcbAtrlen) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardStatusA(SCARDHANDLE hCard, - LPSTR szReaderName, - LPDWORD pcchReaderLen, - LPDWORD pdwState, - LPDWORD pdwProtocol, - LPBYTE pbAtr, - LPDWORD pcbAtrLen) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardStatusW(SCARDHANDLE hCard, - LPWSTR szReaderName, - LPDWORD pcchReaderLen, - LPDWORD pdwState, - LPDWORD pdwProtocol, - LPBYTE pbAtr, - LPDWORD pcbAtrLen) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - - -/* - * @unimplemented - */ -LONG -WINAPI -SCardTransmit(SCARDHANDLE hCard, - LPCSCARD_IO_REQUEST pioSendPci, - LPCBYTE pbSendBuffer, - DWORD cbSendLength, - LPSCARD_IO_REQUEST pioRecvPci, - LPBYTE pbRecvBuffer, - LPDWORD pcbRecvLength) -{ - UNIMPLEMENTED; - return SCARD_F_UNKNOWN_ERROR; -} - Removed: trunk/reactos/dll/win32/winscard/winscard.def URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/winscard/winscar…
============================================================================== --- trunk/reactos/dll/win32/winscard/winscard.def [iso-8859-1] (original) +++ trunk/reactos/dll/win32/winscard/winscard.def (removed) @@ -1,68 +0,0 @@ -LIBRARY winscard.dll - -EXPORTS -;ClassInstall32@0 @1 -;SCardAccessNewReaderEvent@0 @2 -;SCardReleaseAllEvents@0 @3 -;SCardReleaseNewReaderEvent@0 @4 -SCardAccessStartedEvent@0 @5 -SCardAddReaderToGroupA@12 @6 -SCardAddReaderToGroupW@12 @7 -SCardBeginTransaction@4 @8 -SCardCancel@4 @9 -SCardConnectA@24 @10 -SCardConnectW@24 @11 -SCardControl@28 @12 -SCardDisconnect@8 @13 -SCardEndTransaction@8 @14 -SCardEstablishContext@16 @15 -SCardForgetCardTypeA@8 @16 -SCardForgetCardTypeW@8 @17 -SCardForgetReaderA@8 @18 -SCardForgetReaderGroupA@8 @19 -SCardForgetReaderGroupW@8 @20 -SCardForgetReaderW@8 @21 -SCardFreeMemory@8 @22 -SCardGetAttrib@16 @23 -SCardGetCardTypeProviderNameA@20 @24 -SCardGetCardTypeProviderNameW@20 @25 -SCardGetProviderIdA@12 @26 -SCardGetProviderIdW@12 @27 -SCardGetStatusChangeA@16 @28 -SCardGetStatusChangeW@16 @29 -SCardIntroduceCardTypeA@32 @30 -SCardIntroduceCardTypeW@32 @31 -SCardIntroduceReaderA@12 @32 -SCardIntroduceReaderGroupA@8 @33 -SCardIntroduceReaderGroupW@8 @34 -SCardIntroduceReaderW@12 @35 -SCardIsValidContext@4 @36 -SCardListCardsA@24 @37 -SCardListCardsW@24 @38 -SCardListInterfacesA@16 @39 -SCardListInterfacesW@16 @40 -SCardListReaderGroupsA@12 @41 -SCardListReaderGroupsW@12 @42 -SCardListReadersA@16 @43 -SCardListReadersW@16 @44 -SCardLocateCardsA@16 @45 -SCardLocateCardsByATRA@20 @46 -SCardLocateCardsByATRW@20 @47 -SCardLocateCardsW@16 @48 -SCardReconnect@20 @49 -SCardReleaseContext@4 @50 -SCardReleaseStartedEvent@4 @51 -SCardRemoveReaderFromGroupA@12 @52 -SCardRemoveReaderFromGroupW@12 @53 -SCardSetAttrib@16 @54 -SCardSetCardTypeProviderNameA@16 @55 -SCardSetCardTypeProviderNameW@16 @56 -SCardState@20 @57 -SCardStatusA@28 @58 -SCardStatusW@28 @59 -SCardTransmit@28 @60 -g_rgSCardRawPci @61 DATA -g_rgSCardT0Pci @62 DATA -g_rgSCardT1Pci @63 DATA - -; EOF Added: trunk/reactos/dll/win32/winscard/winscard.spec URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/winscard/winscar…
============================================================================== --- trunk/reactos/dll/win32/winscard/winscard.spec (added) +++ trunk/reactos/dll/win32/winscard/winscard.spec [iso-8859-1] Sat May 17 14:06:12 2014 @@ -0,0 +1,63 @@ +@ stdcall -stub ClassInstall32(long ptr ptr) +@ stdcall -stub SCardAccessNewReaderEvent() +@ stdcall -stub SCardReleaseAllEvents() +@ stub SCardReleaseNewReaderEvent +@ stdcall SCardAccessStartedEvent() +@ stdcall SCardAddReaderToGroupA(long str str) +@ stdcall SCardAddReaderToGroupW(long wstr wstr) +@ stdcall SCardBeginTransaction(long) +@ stdcall SCardCancel(long) +@ stdcall SCardConnectA(long ptr long long ptr ptr) +@ stdcall SCardConnectW(long ptr long long ptr ptr) +@ stdcall SCardControl(long long ptr long ptr long ptr) +@ stdcall SCardDisconnect(long long) +@ stdcall SCardEndTransaction(long long) +@ stdcall SCardEstablishContext(long ptr ptr ptr) +@ stdcall SCardForgetCardTypeA(long ptr) +@ stdcall SCardForgetCardTypeW(long ptr) +@ stdcall SCardForgetReaderA(long ptr) +@ stdcall SCardForgetReaderGroupA(long ptr) +@ stdcall SCardForgetReaderGroupW(long ptr) +@ stdcall SCardForgetReaderW(long ptr) +@ stdcall SCardFreeMemory(long ptr) +@ stdcall SCardGetAttrib(long long ptr ptr) +@ stdcall SCardGetCardTypeProviderNameA(long ptr long ptr ptr) +@ stdcall SCardGetCardTypeProviderNameW(long ptr long ptr ptr) +@ stdcall SCardGetProviderIdA(long ptr ptr) +@ stdcall SCardGetProviderIdW(long ptr ptr) +@ stdcall SCardGetStatusChangeA(long long ptr long) +@ stdcall SCardGetStatusChangeW(long long ptr long) +@ stdcall SCardIntroduceCardTypeA(long ptr ptr ptr long ptr ptr long) +@ stdcall SCardIntroduceCardTypeW(long ptr ptr ptr long ptr ptr long) +@ stdcall SCardIntroduceReaderA(long ptr ptr) +@ stdcall SCardIntroduceReaderGroupA(long ptr) +@ stdcall SCardIntroduceReaderGroupW(long ptr) +@ stdcall SCardIntroduceReaderW(long ptr ptr) +@ stdcall SCardIsValidContext(long) +@ stdcall SCardListCardsA(long ptr ptr long str long) +@ stdcall SCardListCardsW(long ptr ptr long str long) +@ stdcall SCardListInterfacesA(long ptr ptr ptr) +@ stdcall SCardListInterfacesW(long ptr ptr ptr) +@ stdcall SCardListReaderGroupsA(long ptr ptr) +@ stdcall SCardListReaderGroupsW(long ptr ptr) +@ stdcall SCardListReadersA(long ptr ptr ptr) +@ stdcall SCardListReadersW(long ptr ptr ptr) +@ stdcall SCardLocateCardsA(long ptr ptr long) +@ stdcall SCardLocateCardsByATRA(long ptr long ptr long) +@ stdcall SCardLocateCardsByATRW(long ptr long ptr long) +@ stdcall SCardLocateCardsW(long ptr ptr long) +@ stdcall SCardReconnect(long long long long ptr) +@ stdcall SCardReleaseContext(long) +@ stdcall SCardReleaseStartedEvent() +@ stdcall SCardRemoveReaderFromGroupA(long ptr ptr) +@ stdcall SCardRemoveReaderFromGroupW(long ptr ptr) +@ stdcall SCardSetAttrib(long long ptr long) +@ stdcall SCardSetCardTypeProviderNameA(long ptr long ptr) +@ stdcall SCardSetCardTypeProviderNameW(long ptr long ptr) +@ stdcall SCardState(long ptr ptr ptr ptr) +@ stdcall SCardStatusA (long str long long long ptr long ) +@ stdcall SCardStatusW (long wstr long long long ptr long ) +@ stdcall SCardTransmit(long ptr ptr long ptr ptr ptr) +@ extern g_rgSCardRawPci +@ extern g_rgSCardT0Pci +@ extern g_rgSCardT1Pci Propchange: trunk/reactos/dll/win32/winscard/winscard.spec ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/reactos/media/doc/README.WINE URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?rev=…
============================================================================== --- trunk/reactos/media/doc/README.WINE [iso-8859-1] (original) +++ trunk/reactos/media/doc/README.WINE [iso-8859-1] Sat May 17 14:06:12 2014 @@ -212,6 +212,7 @@ reactos/dll/win32/winmm # Forked at Wine-20050628 reactos/dll/win32/winmm/midimap # Forked at Wine-20050628 reactos/dll/win32/winmm/wavemap # Forked at Wine-20050628 +reactos/dll/win32/winscard # Synced to Wine-1.7.17 reactos/dll/win32/wintrust # Synced to Wine-1.7.17 reactos/dll/win32/wldap32 # Synced to Wine-1.7.17 reactos/dll/win32/wmi # Synced to Wine-1.7.17
10 years, 7 months
1
0
0
0
[akhaldi] 63328: [PSDK] * Add some missing definitions. * Fix SCardReleaseStartedEvent().
by akhaldi@svn.reactos.org
Author: akhaldi Date: Sat May 17 14:00:54 2014 New Revision: 63328 URL:
http://svn.reactos.org/svn/reactos?rev=63328&view=rev
Log: [PSDK] * Add some missing definitions. * Fix SCardReleaseStartedEvent(). Modified: trunk/reactos/include/psdk/winscard.h Modified: trunk/reactos/include/psdk/winscard.h URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/winscard.h?re…
============================================================================== --- trunk/reactos/include/psdk/winscard.h [iso-8859-1] (original) +++ trunk/reactos/include/psdk/winscard.h [iso-8859-1] Sat May 17 14:00:54 2014 @@ -23,6 +23,11 @@ #include <winioctl.h> #include <winsmcrd.h> #include <scarderr.h> + +/* Valid scopes for contexts */ +#define SCARD_SCOPE_USER 0 +#define SCARD_SCOPE_TERMINAL 1 +#define SCARD_SCOPE_SYSTEM 2 #ifndef _LPCBYTE_DEFINED #define _LPCBYTE_DEFINED @@ -129,7 +134,7 @@ #define SCardLocateCardsByATR WINELIB_NAME_AW(SCardLocateCardsByATR) LONG WINAPI SCardReconnect(SCARDHANDLE,DWORD,DWORD,DWORD,LPDWORD); LONG WINAPI SCardReleaseContext(SCARDCONTEXT); -void WINAPI SCardReleaseStartedEvent(HANDLE); +void WINAPI SCardReleaseStartedEvent(void); LONG WINAPI SCardRemoveReaderFromGroupA(SCARDCONTEXT,LPCSTR,LPCSTR); LONG WINAPI SCardRemoveReaderFromGroupW(SCARDCONTEXT,LPCWSTR,LPCWSTR); #define SCardRemoveReaderFromGroup WINELIB_NAME_AW(SCardRemoveReaderFromGroup)
10 years, 7 months
1
0
0
0
[hbelusca] 63327: [GREEN]: Fix 2nd parameter of ObOpenObjectByName.
by hbelusca@svn.reactos.org
Author: hbelusca Date: Sat May 17 13:26:32 2014 New Revision: 63327 URL:
http://svn.reactos.org/svn/reactos?rev=63327&view=rev
Log: [GREEN]: Fix 2nd parameter of ObOpenObjectByName. Modified: trunk/rosapps/drivers/green/pnp.c Modified: trunk/rosapps/drivers/green/pnp.c URL:
http://svn.reactos.org/svn/reactos/trunk/rosapps/drivers/green/pnp.c?rev=63…
============================================================================== --- trunk/rosapps/drivers/green/pnp.c [iso-8859-1] (original) +++ trunk/rosapps/drivers/green/pnp.c [iso-8859-1] Sat May 17 13:26:32 2014 @@ -50,7 +50,7 @@ InitializeObjectAttributes(&ObjectAttributes, &DriverExtension->AttachedDeviceName, OBJ_KERNEL_HANDLE, NULL, NULL); Status = ObOpenObjectByName( &ObjectAttributes, - IoFileObjectType, + *IoFileObjectType, KernelMode, NULL, DesiredAccess,
10 years, 7 months
1
0
0
0
[ekohl] 63326: [NTOSKRNL] xHalIoReadPartitionTable: Only used non-container partition entries have a non-zero partition number.
by ekohl@svn.reactos.org
Author: ekohl Date: Sat May 17 12:55:06 2014 New Revision: 63326 URL:
http://svn.reactos.org/svn/reactos?rev=63326&view=rev
Log: [NTOSKRNL] xHalIoReadPartitionTable: Only used non-container partition entries have a non-zero partition number. Modified: trunk/reactos/ntoskrnl/fstub/disksup.c Modified: trunk/reactos/ntoskrnl/fstub/disksup.c URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/fstub/disksup.c?r…
============================================================================== --- trunk/reactos/ntoskrnl/fstub/disksup.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/fstub/disksup.c [iso-8859-1] Sat May 17 12:55:06 2014 @@ -1655,8 +1655,7 @@ UInt32x32To64(GET_PARTITION_LENGTH(PartitionDescriptor), SectorSize); - /* FIXME: REACTOS HACK */ - PartitionInfo->PartitionNumber = i + 1; + PartitionInfo->PartitionNumber = (!IsContainerPartition(PartitionType)) ? i : 0; } else { @@ -1667,7 +1666,6 @@ PartitionInfo->PartitionLength.QuadPart = 0; PartitionInfo->HiddenSectors = 0; - /* FIXME: REACTOS HACK */ PartitionInfo->PartitionNumber = 0; } }
10 years, 7 months
1
0
0
0
[akhaldi] 63325: [FONTS] * Update tahoma.ttf and tahomabd.ttf. CORE-7909 #resolve #comment Committed in r63325. Thanks Ștefan! CORE-8080
by akhaldi@svn.reactos.org
Author: akhaldi Date: Sat May 17 11:40:54 2014 New Revision: 63325 URL:
http://svn.reactos.org/svn/reactos?rev=63325&view=rev
Log: [FONTS] * Update tahoma.ttf and tahomabd.ttf. CORE-7909 #resolve #comment Committed in r63325. Thanks Ștefan! CORE-8080 Modified: trunk/reactos/media/fonts/tahoma.ttf trunk/reactos/media/fonts/tahomabd.ttf Modified: trunk/reactos/media/fonts/tahoma.ttf URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/fonts/tahoma.ttf?rev…
============================================================================== Binary files - no diff available. Modified: trunk/reactos/media/fonts/tahomabd.ttf URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/fonts/tahomabd.ttf?r…
============================================================================== Binary files - no diff available.
10 years, 7 months
1
0
0
0
[akhaldi] 63324: [RAPPS] * Some list entries fixes. * Mention that Turkish translations were done by Erdem Ersoy. CORE-7710 #resolve #comment Committed in r63324.
by akhaldi@svn.reactos.org
Author: akhaldi Date: Sat May 17 11:25:50 2014 New Revision: 63324 URL:
http://svn.reactos.org/svn/reactos?rev=63324&view=rev
Log: [RAPPS] * Some list entries fixes. * Mention that Turkish translations were done by Erdem Ersoy. CORE-7710 #resolve #comment Committed in r63324. Modified: trunk/reactos/base/applications/rapps/rapps/7zip.txt trunk/reactos/base/applications/rapps/rapps/abiword.txt trunk/reactos/base/applications/rapps/rapps/abiword26.txt trunk/reactos/base/applications/rapps/rapps/abyss.txt trunk/reactos/base/applications/rapps/rapps/ac97forvirtualbox.txt trunk/reactos/base/applications/rapps/rapps/alreader.txt trunk/reactos/base/applications/rapps/rapps/ants.txt trunk/reactos/base/applications/rapps/rapps/audiograbber.txt trunk/reactos/base/applications/rapps/rapps/bittorrent.txt trunk/reactos/base/applications/rapps/rapps/bochs.txt trunk/reactos/base/applications/rapps/rapps/boswars.txt trunk/reactos/base/applications/rapps/rapps/boundaround.txt trunk/reactos/base/applications/rapps/rapps/christmasbound.txt trunk/reactos/base/applications/rapps/rapps/chromium.txt trunk/reactos/base/applications/rapps/rapps/cnt.txt trunk/reactos/base/applications/rapps/rapps/codeblocks.txt trunk/reactos/base/applications/rapps/rapps/codeblocks_gcc.txt trunk/reactos/base/applications/rapps/rapps/codeblocks_gcc_2.txt trunk/reactos/base/applications/rapps/rapps/comctl32ocx.txt trunk/reactos/base/applications/rapps/rapps/devcpp_mingw32.txt trunk/reactos/base/applications/rapps/rapps/devcpp_tdm_gcc_x64.txt trunk/reactos/base/applications/rapps/rapps/diablo2.txt trunk/reactos/base/applications/rapps/rapps/dosblaster.txt trunk/reactos/base/applications/rapps/rapps/dosbox.txt trunk/reactos/base/applications/rapps/rapps/doublecommander.txt trunk/reactos/base/applications/rapps/rapps/dplus.txt trunk/reactos/base/applications/rapps/rapps/dvdwritenow.txt trunk/reactos/base/applications/rapps/rapps/excelview.txt trunk/reactos/base/applications/rapps/rapps/fap.txt trunk/reactos/base/applications/rapps/rapps/fira.txt trunk/reactos/base/applications/rapps/rapps/firefox.txt trunk/reactos/base/applications/rapps/rapps/firefox2.txt trunk/reactos/base/applications/rapps/rapps/firefox3.txt trunk/reactos/base/applications/rapps/rapps/firefox36.txt trunk/reactos/base/applications/rapps/rapps/freebasic.txt trunk/reactos/base/applications/rapps/rapps/glidewrapzbag.txt trunk/reactos/base/applications/rapps/rapps/globulation2.txt trunk/reactos/base/applications/rapps/rapps/hover.txt trunk/reactos/base/applications/rapps/rapps/hxd.txt trunk/reactos/base/applications/rapps/rapps/indiftpd.txt trunk/reactos/base/applications/rapps/rapps/irfanview.txt trunk/reactos/base/applications/rapps/rapps/irfanviewplugins.txt trunk/reactos/base/applications/rapps/rapps/kdewin.txt trunk/reactos/base/applications/rapps/rapps/kyodai.txt trunk/reactos/base/applications/rapps/rapps/lazaruside.txt trunk/reactos/base/applications/rapps/rapps/lbreakout2.txt trunk/reactos/base/applications/rapps/rapps/lgeneral.txt trunk/reactos/base/applications/rapps/rapps/libreoffice.txt trunk/reactos/base/applications/rapps/rapps/lmarbles.txt trunk/reactos/base/applications/rapps/rapps/mcwin32.txt trunk/reactos/base/applications/rapps/rapps/mfc40.txt trunk/reactos/base/applications/rapps/rapps/mirandaim.txt trunk/reactos/base/applications/rapps/rapps/mirc.txt trunk/reactos/base/applications/rapps/rapps/mirc6.txt trunk/reactos/base/applications/rapps/rapps/mono2.txt trunk/reactos/base/applications/rapps/rapps/mpc.txt trunk/reactos/base/applications/rapps/rapps/mpxplay.txt trunk/reactos/base/applications/rapps/rapps/msxml3.txt trunk/reactos/base/applications/rapps/rapps/net11.txt trunk/reactos/base/applications/rapps/rapps/net20.txt trunk/reactos/base/applications/rapps/rapps/net20sp2.txt trunk/reactos/base/applications/rapps/rapps/npp.txt trunk/reactos/base/applications/rapps/rapps/offbyone.txt trunk/reactos/base/applications/rapps/rapps/opencodecs.txt trunk/reactos/base/applications/rapps/rapps/openoffice.txt trunk/reactos/base/applications/rapps/rapps/openoffice2.4.txt trunk/reactos/base/applications/rapps/rapps/openttd.txt trunk/reactos/base/applications/rapps/rapps/opera.txt trunk/reactos/base/applications/rapps/rapps/opera9.txt trunk/reactos/base/applications/rapps/rapps/peazip.txt trunk/reactos/base/applications/rapps/rapps/pengupop.txt trunk/reactos/base/applications/rapps/rapps/photofiltre.txt trunk/reactos/base/applications/rapps/rapps/pingus.txt trunk/reactos/base/applications/rapps/rapps/pptview.txt trunk/reactos/base/applications/rapps/rapps/pspad.txt trunk/reactos/base/applications/rapps/rapps/ptanks.txt trunk/reactos/base/applications/rapps/rapps/putty.txt trunk/reactos/base/applications/rapps/rapps/python.txt trunk/reactos/base/applications/rapps/rapps/python2.txt trunk/reactos/base/applications/rapps/rapps/qb64sdl.txt trunk/reactos/base/applications/rapps/rapps/qmmp.txt trunk/reactos/base/applications/rapps/rapps/remood.txt trunk/reactos/base/applications/rapps/rapps/reshack.txt trunk/reactos/base/applications/rapps/rapps/rocks.txt trunk/reactos/base/applications/rapps/rapps/rosbe.txt trunk/reactos/base/applications/rapps/rapps/rosbeamd64.txt trunk/reactos/base/applications/rapps/rapps/rosbearm.txt trunk/reactos/base/applications/rapps/rapps/sambatng.txt trunk/reactos/base/applications/rapps/rapps/sbforvmware.txt trunk/reactos/base/applications/rapps/rapps/scite.txt trunk/reactos/base/applications/rapps/rapps/scummvm.txt trunk/reactos/base/applications/rapps/rapps/sdl_mixer.txt trunk/reactos/base/applications/rapps/rapps/sdl_runtime.txt trunk/reactos/base/applications/rapps/rapps/seamonkey.txt trunk/reactos/base/applications/rapps/rapps/smplayer.txt trunk/reactos/base/applications/rapps/rapps/snoopy.txt trunk/reactos/base/applications/rapps/rapps/stamina.txt trunk/reactos/base/applications/rapps/rapps/steam.txt trunk/reactos/base/applications/rapps/rapps/sumatrapdf.txt trunk/reactos/base/applications/rapps/rapps/summerbound.txt trunk/reactos/base/applications/rapps/rapps/superdxb.txt trunk/reactos/base/applications/rapps/rapps/superfinder.txt trunk/reactos/base/applications/rapps/rapps/supertux.txt trunk/reactos/base/applications/rapps/rapps/tahoma.txt trunk/reactos/base/applications/rapps/rapps/thunderbird.txt trunk/reactos/base/applications/rapps/rapps/thunderbird3.txt trunk/reactos/base/applications/rapps/rapps/tileworld.txt trunk/reactos/base/applications/rapps/rapps/totalcommander.txt trunk/reactos/base/applications/rapps/rapps/tuxpaint.txt trunk/reactos/base/applications/rapps/rapps/ultravnc.txt trunk/reactos/base/applications/rapps/rapps/utorrent.txt trunk/reactos/base/applications/rapps/rapps/vb5run.txt trunk/reactos/base/applications/rapps/rapps/vb6run.txt trunk/reactos/base/applications/rapps/rapps/vc2005sp1run.txt trunk/reactos/base/applications/rapps/rapps/vc2008sp1run.txt trunk/reactos/base/applications/rapps/rapps/vc2010run.txt trunk/reactos/base/applications/rapps/rapps/vc6run.txt trunk/reactos/base/applications/rapps/rapps/vlc.txt trunk/reactos/base/applications/rapps/rapps/winboard.txt trunk/reactos/base/applications/rapps/rapps/wme9.txt trunk/reactos/base/applications/rapps/rapps/wordview.txt trunk/reactos/base/applications/rapps/rapps/zaz.txt [This mail would be too long, it was shortened to contain the URLs only.] Modified: trunk/reactos/base/applications/rapps/rapps/7zip.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/abiword.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/abiword26.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/abyss.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/ac97forvirtualbox.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/alreader.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/ants.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/audiograbber.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/bittorrent.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/bochs.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/boswars.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/boundaround.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/christmasbound.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/chromium.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/cnt.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/codeblocks.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/codeblocks_gcc.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/codeblocks_gcc_2.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/comctl32ocx.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/devcpp_mingw32.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/devcpp_tdm_gcc_x64.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/diablo2.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/dosblaster.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/dosbox.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/doublecommander.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/dplus.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/dvdwritenow.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/excelview.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/fap.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/fira.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/firefox.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/firefox2.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/firefox3.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/firefox36.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/freebasic.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/glidewrapzbag.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/globulation2.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/hover.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/hxd.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/indiftpd.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/irfanview.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/irfanviewplugins.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/kdewin.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/kyodai.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/lazaruside.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/lbreakout2.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/lgeneral.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/libreoffice.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/lmarbles.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/mcwin32.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/mfc40.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/mirandaim.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/mirc.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/mirc6.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/mono2.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/mpc.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/mpxplay.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/msxml3.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/net11.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/net20.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/net20sp2.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/npp.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/offbyone.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/opencodecs.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/openoffice.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/openoffice2.4.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/openttd.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/opera.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/opera9.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/peazip.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/pengupop.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/photofiltre.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/pingus.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/pptview.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/pspad.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/ptanks.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/putty.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/python.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/python2.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/qb64sdl.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/qmmp.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/remood.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/reshack.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/rocks.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/rosbe.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/rosbeamd64.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/rosbearm.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/sambatng.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/sbforvmware.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/scite.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/scummvm.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/sdl_mixer.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/sdl_runtime.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/seamonkey.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/smplayer.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/snoopy.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/stamina.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/steam.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/sumatrapdf.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/summerbound.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/superdxb.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/superfinder.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/supertux.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/tahoma.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/thunderbird.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/thunderbird3.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/tileworld.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/totalcommander.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/tuxpaint.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/ultravnc.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/utorrent.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/vb5run.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/vb6run.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/vc2005sp1run.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/vc2008sp1run.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/vc2010run.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/vc6run.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/vlc.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/winboard.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/wme9.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/wordview.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
Modified: trunk/reactos/base/applications/rapps/rapps/zaz.txt URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/rapps/ra…
10 years, 7 months
1
0
0
0
← Newer
1
...
17
18
19
20
21
22
23
...
44
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Results per page:
10
25
50
100
200