Commit graph

606 commits

Author SHA1 Message Date
Katayama Hirofumi MZ 75b09f3f88 [EXPLORER][SHELL32][USER32] Implement 'Show the Desktop' action of Task Bar (#668)
The keyboard shortcuts Win+D and Win+M are also enabled.

- Implement IShellDispatch4::ToggleDesktop().
- Implement some commands in CTrayWindow.
- Add "sdk/include/reactos/traycmd.h" for tray commands.
- Fix task window switching.
- Improve the user32!SwitchToThisWindow() function and use it.

CORE-14318, CORE-13157
See also: CORE-14806 and CORE-8723
2018-07-13 10:34:42 +02:00
Mark Jansen 80bac79070
[CMAKE] Update all base addresses, taking into account the reserved user32 address from CORE-12752
CORE-11382
2018-07-12 21:55:21 +02:00
Mark Jansen 6b92dd7323
[SDK] Update gen_baseaddress.py for reserved base addresses.
CORE-11382
2018-07-12 21:55:21 +02:00
Katayama Hirofumi MZ a882ec7a02 [SHELL32][EXPLORER] Update system-wide environment variables (#663)
- Implement shell32 RegenerateUserEnvironment() function and use it.
- CShellBrowser and CDesktopBrowser implements WM_SETTINGCHANGE actions.

CORE-1459, CORE-14397
2018-07-08 16:32:42 +02:00
Mark Jansen 5a9dc5e791
[SDK] Add gen_baseaddress.py
This tool was already used to calculate the last baseaddress update.
It is based on baseaddress.sh that has been floating around.
CORE-11382
2018-07-01 20:17:46 +02:00
Mark Jansen a3ddb8a4c2
[CMAKE] Change winspool.drv to winspool again.
CORE-14781
2018-07-01 19:21:59 +02:00
Mark Jansen 8fb0c5a0ab
[CMAKE] Update baseaddress for gcc with dwarf.
CORE-14781
2018-07-01 18:21:12 +02:00
Mark Jansen 82351bc6d4
[CMAKE] Update baseaddress for msvc & gcc with rossym.
CORE-14781
2018-07-01 15:35:57 +02:00
Timo Kreuzer e39876dab7 [SDK] Fix 64 bit issues 2018-07-01 14:45:21 +02:00
Timo Kreuzer ae9e9eaef3 [NDK] Fix definition of MSR_DEBUG_CTL_LBR and MSR_DEBUG_CTL_BTF 2018-07-01 14:45:21 +02:00
Timo Kreuzer 3b78272d39 [NDK] Fix alignment macros and add missing ones
Remove obsolete ALIGN_UP_BY macro definition
2018-07-01 14:45:21 +02:00
Timo Kreuzer ca9fd861aa [DRIVERS][NTOS][NDK] Use IO_STACK_LOCATION instead of EXTENDED_IO_STACK_LOCATION and remove the latter from NDK 2018-07-01 14:45:21 +02:00
Timo Kreuzer 8719252e48 [XDK][NDK] Fix IO_STACK_LOCATION alignments
* Also add missing DIRECTORY_NOTIFY_INFORMATION_CLASS
2018-07-01 14:45:21 +02:00
Timo Kreuzer 03c86af7d5 [XDK] Stop randomly packing structures half throughout ntifs.h / wdm.h
Nothing in there should be packed!
2018-07-01 14:45:21 +02:00
Timo Kreuzer de1b195837 [NDK] Fix the type of KPROCESS::ActiveProcessors
Also fix related logic in KiSwapProcess
2018-07-01 14:45:21 +02:00
Timo Kreuzer 158812409d [NDK] Update x64 version of KEXCEPTION_FRAME 2018-07-01 14:45:21 +02:00
Timo Kreuzer a262e8da2d [LIBUSB] Add additional operator new/delete
This is required, since newer versions of MSVC demand that non-member operator new/delete are in the global namespace and neither static nor inline. See https://msdn.microsoft.com/en-us/library/mt723604.aspx ("Overloaded operator new and operator delete")
2018-07-01 14:45:21 +02:00
Timo Kreuzer 03830f67a7 [CMAKE] winspool.drv -> winspool in baseaddress_msvc.cmake 2018-07-01 14:45:21 +02:00
Timo Kreuzer c73c4f0cb3 [MC] Fix build of message text files for latest VS version
* Latest VS does not like half translated files :/
* errcodes.mc is duplicated in kernel32
* It would probably be better to separate each language into it's own file, but we need a build mechanism for that
2018-06-30 21:21:36 +02:00
Timo Kreuzer 79ad68ddc3 [CMAKE] Zap builddir.h.cmake and instead define macros globally
This changes __RELFILE__ to always be relative and not rely on a GCC extension, since __FILE__ is *always* relative to the root.
2018-06-30 13:26:56 +02:00
Serge Gautherie 3766d836c7 [DBGHELP] Fix 3 MSVC warnings about MiniDumpWriteDump() (#643)
- Fixes MSVC errors: "...\dll\win32\dbghelp\minidump.c(857) : error C4028: formal parameter 5 different from declaration", for parameters 5, 6 and 7.
- Fix spec file too.
CORE-7538
2018-06-28 17:44:49 +02:00
Hermès Bélusca-Maïto 4d494caf61
[NTOS:SE] Overhaul the token management code.
- Overhaul SepCreateToken() and SepDuplicateToken() so that they
  implement the "variable information area" of the token, where
  immutable lists of user & groups and privileges reside, and the
  "dynamic information area" (allocated separately in paged pool),
  where mutable data such as the token's default DACL is stored.
  Perform the necessary adaptations in SepDeleteToken() and in
  NtSetInformationToken().

- Actually dereference the token's logon session, when needed, in the
  'TokenSessionReference' case in NtSetInformationToken().

- Overhaul SepFindPrimaryGroupAndDefaultOwner() so that it returns
  the indices of candidate primary group and default owner within the
  token's user & groups array. This allows for fixing the 'TokenOwner'
  and 'TokenPrimaryGroup' cases of NtSetInformationToken(), since the
  owner or primary group being set *MUST* already exist in the token's
  user & groups array (as a by-product, memory corruptions that existed
  before due to the broken way of setting these properties disappear too).

- Lock tokens every time operations are performed on them (NOTE: we
  still use a global token lock!).

- Touch the ModifiedId LUID member of tokens everytime a write operation
  (property change, etc...) is made on them.

- Fix some group attributes in the SYSTEM process token, SepCreateSystemProcessToken().

- Make the SeCreateTokenPrivilege mandatory when calling NtCreateToken().

- Update the token pool tags.

- Explicitly use the Ex*ResourceLite() versions of the locking functions
  in the token locking macros.
2018-06-27 23:40:18 +02:00
Hermès Bélusca-Maïto a3376cd50d
[NDK] Update NtCreateToken() prototype annotations. 2018-06-27 23:40:17 +02:00
Hermès Bélusca-Maïto 9594022ce1
[NTOS:SE] Add a documentation note about SeTokenIsWriteRestricted() and SeTokenIsAdmin(), and update the one for NtDuplicateToken().
[XDK] Move TOKEN_HAS_ADMIN_GROUP where appropriate.
2018-06-27 23:40:15 +02:00
Hermès Bélusca-Maïto 3cdb717a7b
[PSDK] ntsecpkg.h: fix minor typos (make some structure names MS-PSDK-compatible), and add LSA_TOKEN_INFORMATION_V2. 2018-06-27 23:40:13 +02:00
Serge Gautherie 4f1a29e1b1 [LOG2LINES] translate_line(): Let 'offset' be an 'unsigned int', instead of a 'size_t' (#624)
Avoids half-uninitialized value on, i.e., Linux 64-bit (with ReactOS 32-bit).
CORE-14737
2018-06-21 14:05:35 +02:00
Serge Gautherie e5904542d6 [DELAYIMP] Fix/Merge definitions of __pfnDliNotifyHook2 and __pfnDliFailureHook2 2018-06-13 23:28:15 +02:00
Serge Gautherie 9415f94c3a [DELAYIMP] Fix 2 Clang-Cl warnings about __pfnDliNotifyHook2Default and __pfnDliFailureHook2Default
"warning: 'extern' variable has an initializer [-Wextern-initializer]"

CORE-14306
2018-06-13 23:28:15 +02:00
Mark Jansen 4f8dc9c266
[ATL] Add CString.CompareNoCase 2018-06-09 17:14:06 +02:00
Katayama Hirofumi MZ 698cbc6184 [SHELL32] Split dialogs/folder_options.cpp (#582)
The dialogs/folder_options.cpp source file in shell32 is too big to manage. We will split it to smaller files.
CORE-12906
2018-06-06 14:04:50 +02:00
Hermès Bélusca-Maïto f215f394d8
[CRT] Always initialize _[w]pgmptr with a *FULL* path to the current application.
Otherwise fall back to the computed argv[0].
This is expected by some applications, for example Git.
Code is adapted from Wine.

Many thanks to Stanislav Motylkov for having investigated this bug!

CORE-12931 CORE-13892 CORE-13898 CORE-14066
2018-06-05 23:55:46 +02:00
Pierre Schweitzer 54f383d996
[VFATLIB] Only check volume if full scan or if allowed to fix it
This allows doing a quick probe about whether a volume needs to be
fixed by checking its dirty bit.

CORE-14692
2018-06-05 19:34:47 +02:00
Serge Gautherie 695547cd8c [CONFIGURE][CMAKE] Remove Visual Studio 9 (2008) support
ReactOS does not compile anymore with it.
VS9 is already officially unsupported.

CORE-11836
2018-06-05 18:59:36 +02:00
Serge Gautherie 9822462946 [CMAKE] Add "--always" parameter to "git describe" call
"fatal: No names found, cannot describe anything." message,
when called without enough history, i.e. appveyor.yml "clone_depth: 5".
2018-06-05 18:59:11 +02:00
Amine Khaldi 3c18f2a7c7 [INCLUDE/WINE] Update rbtree.h. CORE-14656 2018-06-04 03:54:55 +01:00
Amine Khaldi 2e5bae69da [PSDK] Update ntdsapi.h. CORE-14656 2018-06-04 03:42:29 +01:00
Amine Khaldi 217390ae60 [PSDK] Update msctf.idl. CORE-14656 2018-06-04 03:40:17 +01:00
Pierre Schweitzer 2dfe5e3f46
[CRT] Reimplement qsort() using FreeBSD implementation.
Our implementation had a bug that could be triggered while
building our USBD library on ReactOS: the compare function
could be called with a NULL pointer instead of a valid value.

With this bug fixed (and the cmd hack in CORE-14648), ReactOS
can totally selfhost :-)! I was able to build LiveCD and BootCD
without any trouble, crash, deadlock or whatever.
(Next step: having a buildbot slave hosted on ReactOS ;-)).

Enjoy: https://twitter.com/HeisSpiter/status/1002880397103988737

CORE-14680
2018-06-02 13:56:42 +02:00
Eric Kohl 4911382913 [NDK] Replace the SYSTEMTIME fields StandardDate and DaylightDate in RTL_TIME_ZONE_INFORMATION by TIME_FIELDs and fix resulting errors
Patch will be sent upstream.

CORE-14658
2018-05-31 17:48:29 +02:00
Eric Kohl 0f8e720711 [NTDLL_APITEST][LIB_RTL] Add a test for RtlQueryTimeZoneInformation and fix the bug in RtlpQueryRegistryDirect
In working on some problems with Time Zone adjustments in  ReactOS I found that the RtlQueryTimeZoneInformation function is partially broken and wrote an apitest to capture the failures.

Patch by Doug Lyons.

CORE-14658
2018-05-31 16:47:42 +02:00
Pierre Schweitzer 6e4e772e6c
[VFATLIB] Addendum to 469289e 2018-05-28 23:38:00 +02:00
Pierre Schweitzer 86198abd67
[VFATLIB] Fix MSVC build? 2018-05-28 23:29:06 +02:00
Pierre Schweitzer 469289ed5c
[VFATLIB] Upgrade fsck.fat to 4.1
Also make it easier to sync in the future.
2018-05-28 23:18:25 +02:00
Pierre Schweitzer 59dc951bf7
[VFATLIB] Only attempt to clear the dirty set bit in rw mode. 2018-05-28 19:37:56 +02:00
Eric Kohl 334fe302a1 [USERENV] Implement CopySystemProfile Part 1 (Add a new profile subkey and values to the profile list)
CORE-12541
2018-05-27 15:31:43 +02:00
Amine Khaldi 4b8fbca3f7 [PSDK] Add missing GdipSetPathGradientPath() and GdipTranslatePenTransform(). CORE-14656 2018-05-27 04:09:49 +01:00
Amine Khaldi 41e2b83f96 [INCLUDE/WINE][USER32_APITEST] Add ARRAY_SIZE to test.h and remove it from RealGetWindowClass.c. CORE-14656 2018-05-27 04:05:33 +01:00
Amine Khaldi 2f668a30bd [PSDK] Add missing OFN_EX_NOPLACESBAR. CORE-14656 2018-05-27 04:03:38 +01:00
Amine Khaldi e00ccd4551 [PSDK] Add missing DRV_QUERYFUNCTIONINSTANCEID. CORE-14656 2018-05-27 03:55:03 +01:00
Amine Khaldi 7af3969e9f [D3D8][D3D9][DDRAW][WINED3D] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:52:04 +01:00
Pierre Schweitzer 69a7879e81
[SDK] Add more types for job objects information 2018-05-25 08:48:51 +02:00
Pierre Schweitzer fb9ffed1cd
[SDK] Add a few types for job objects information 2018-05-25 08:48:51 +02:00
Eric Kohl f7c01906e7 [STORPORT] Enumerate attached devices
- Implement AcquireSpinlock, ReleaseSpinlock and GetExtendedFunctionTable notifications.
- Implement a bus scan routine, borrowed from scsiport.

Storport and storahci are now able to detect a disk device attached to a Virtual Box AHCI controller.
2018-05-24 11:39:47 +02:00
Hermès Bélusca-Maïto 1eca625839
[CONUTILS] Remove old code; modify an informative note. 2018-05-20 22:39:21 +02:00
Joachim Henze cfb8f97968 [SDK] "0.4.10-dev" Starts here.
tag will be added in next commit.
2018-05-20 20:35:12 +02:00
Pierre Schweitzer f99f48045d
[EVENTMSG] Add French translation. 2018-05-20 11:36:00 +02:00
Mark Jansen 84d7db2c57
[SDK] Add initial verifier header. 2018-05-12 13:34:36 +02:00
Mark Jansen 5a68fbeb43
[SDK] Correct NtGlobalFlag names. 2018-05-12 13:34:24 +02:00
Thomas Faber 0ce31759d0
[USBPORT] Fix x64 build. 2018-05-12 10:11:21 +02:00
Vadim Galyant c89a190ea6
[USBPORT][USBOHCI_NEW] Avoid using pointers for physical addresses. 2018-05-11 15:46:25 +02:00
Pierre Schweitzer 935dcd64a5
[FSLIB] Add headers for our FS libs.
CORE-13759
2018-05-10 10:49:17 +02:00
Eric Kohl 12bdbe5710 [IDL][NETAPI32][SRVSVC] Hack around another midl/rpcrt4 bug
NETAPI32: Get rid of the old WINE NetServerGetInfo and replace it by a proper call to NetrServerGetInfo.
SRVSVC: Implement parts of NetrServerGetInfo.
srvsvc.idl: Hack around a bug in midl or rpcrt4. They are not able to handle a pointer to a union of pointers to structs. A pointer to a union of structs works a advertised.
2018-05-06 16:49:24 +02:00
Eric Kohl c7994ca74f [IDL] srvsvc.idl: Fix the definition of Opnum29NotUsedOnWire
Opnum29NotUsedOnWire is actually called NetrServerSetServiceBits.
See:
http://l.wzm.me/_security/internet/_internet/WinServices/ch04s07s08.html
and https://git.samba.org/?p=samba.git;a=blob;f=librpc/idl/srvsvc.idl;h=db804e58c01f3392c4ec6eb30643c36bcb8be683;hb=HEAD
2018-05-05 15:34:43 +02:00
Hermès Bélusca-Maïto 2b3fd31bc5
[CONUTILS] Use the currently active console codepage to output text to files. If you want to output UTF-8 run "chcp 65001" before.
CORE-12122
2018-05-05 01:37:30 +02:00
Serge Gautherie 7326dc03b6 [CMAKE] USE_CLANG_CL: Add "-Wno-parentheses-equality"
Silence some "code style" warnings.

CORE-14306
2018-05-03 08:12:17 +02:00
Eric Kohl 1362983bb7 [IDL] Fix redefinition of server types when lmserver.h is included too 2018-05-01 16:15:52 +02:00
Eric Kohl ce0856099a [SDK] Improve lmserver.h
- Add _SERVER_TRANSPORT_INFO_1, _SERVER_TRANSPORT_INFO_2, and _SERVER_TRANSPORT_INFO_3 structs.
- Fix the calling convention of SetServiceBits().
2018-05-01 16:15:51 +02:00
David Knapp 7673837a85 [SDK] Add description to MANUALLY_INITIATED_CRASH (#509) 2018-04-30 12:55:34 +02:00
Pierre Schweitzer 3dc4d408b2
[SDK] Enforce callback type for KdRosRegisterCliCallback(), KdRosDeregisterCliCallback(). 2018-04-29 12:33:14 +02:00
Pierre Schweitzer de88611590
[SDK] Make KdRosRegisterCliCallback() return status from KdSystemDebugControl(). 2018-04-29 12:19:21 +02:00
Mark Jansen 3551953c84
[XML2SDB] Add support for TAG_LINK_DATE and TAG_LINKER_VERSION. 2018-04-22 18:51:53 +02:00
Mark Jansen 2c90194ae4
[ATL] Add COMMAND_HANDLER macro.
CORE-14543
2018-04-22 17:38:38 +02:00
Hermès Bélusca-Maïto 10ed9621e4
[EVTLIB] Silence some DPRINTs. 2018-04-22 02:53:40 +02:00
Timo Kreuzer 01df9a410c [SPEC2DEF] Implement support for different OS versions 2018-04-21 18:31:27 +02:00
Eric Kohl ceb596f100 [NETMSG] Add netmsg resource dll with some lmerr messages 2018-04-14 18:56:09 +02:00
Pierre Schweitzer 38791299ca
[VFATLIB] Simplify in-memory boot sector copy.
So that, coverity is happy again.
NFC

CID 1434230, 1434233, 1434238, 1434243, 1434246, 1434272
2018-04-14 12:05:32 +02:00
Mark Jansen 767fc4a6ad
[XML2SDB] Add support for DATA in Layers. 2018-04-12 18:49:12 +02:00
Amine Khaldi 8296d6c1ef [WIDL] Sync with Wine Staging 3.3. CORE-14434 2018-04-11 12:29:04 +01:00
Amine Khaldi 6cbd6bd3ce [UNICODE] Sync with Wine Staging 3.3. CORE-14434 2018-04-11 12:25:43 +01:00
Mark Jansen 9aa26b9c23
[RTL] actctx: Use the new RosGetProcessCompatVersion. 2018-04-09 19:36:09 +02:00
Mark Jansen d49004352f
[NTDLL] Check the process manifest at startup for a compatibility section. 2018-04-09 19:36:09 +02:00
Giannis Adamopoulos e195199a51 Fix build 2018-04-09 01:42:17 +03:00
Giannis Adamopoulos 8d3045622e [RTL] actctx.c: Use an alternative implicit activation context when an application is built for latest windows versions.
Instead of loading systemcompatible.manifest as the implicit activation context, load forwardcompatible.manifest
Add a new assembly containing all apisets called ReactOS.Apisets and make it a dependency to forwardcompatible.manifest
2018-04-09 01:28:43 +03:00
Mark Jansen 19912955f6
[RTL] Fixes for supportedOS close elements.
Imported from wine
f8cca44: ntdll: Allow closing tags for 'supportedOS' elements.
697d4a7: ntdll: Allow explicitly specified asm.v2 namespace for "trustInfo".
2018-04-09 00:07:31 +02:00
Thomas Faber 3a0e654027
[CMAKE] Use configuration-specific names for files generated by CMake.
Fixes configuring with VSSolution.
2018-04-08 18:31:36 +02:00
Hermès Bélusca-Maïto e6d7ed7080
[NDK] Increase MAXIMUM_HARDERROR_PARAMETERS for Win2k3 compatibility. 2018-04-07 18:48:00 +02:00
Mark Jansen 5100859e06
[ZLIB] Add minizip as library.
CORE-7684
2018-04-07 15:29:59 +02:00
Mark Jansen 547240efd5
[SDK] Remove some unused includes in stubs.h
CORE-13231
2018-04-07 14:50:42 +02:00
Serge Gautherie c704cf5f87 [SDK:REACTOS] Define UNIMPLEMENTED_ONCE for "!DBG && _MSC_VER" too
- Addendum to 81eb3bbceb.
- Merge "_MSC_VER" and "!_MSC_VER" cases, to prevent such a mistake.
2018-04-07 12:00:10 +02:00
Timo Kreuzer 6b1ca75899
[REACTOS] Fix 64 bit build (#465)
* [HAL] Simplify HalpReboot() and make it portable
* [NTOS:MM] Cast constant to PVOID
* [BINPATCH] Fix 64 bit build
* [VFDDRV] Fix 64 bit build and buffer overruns
* [USBOHCI] Fix structure alignment issues
* [ATL_APITEST] Fix 64 bit build
* [XDK] Update unwind structures in winnt.h
* [NTDLL_APITEST] Fix 64 bit build
* [NTDLL_WINETEST] Fix 64 bit build
* [TFTPD] Fix x64 build
* [USBPORT] Fix a C_ASSERT
* [DSOUND] Fix x64 build
* [HAL] Remove obsolete GetPteAddress() macro
2018-04-03 15:13:17 -06:00
Amine Khaldi 47e04dae50 [PSDK] Add some missing WDA_NONE and WDA_MONITOR. CORE-14434 2018-04-03 13:48:43 +01:00
Amine Khaldi 4b456ff7cd [INCLUDE/WINE] Update winternl.h. CORE-14434 2018-04-03 13:38:27 +01:00
Amine Khaldi 1246f8b5e6 [PSDK][XDK] Add some missing definitions. CORE-14434 2018-04-03 13:35:01 +01:00
Amine Khaldi 4049e52e79 [DDK] Import hidsdi.h from Wine Staging 3.3. CORE-14434 2018-04-03 13:30:30 +01:00
Amine Khaldi c3b4d356eb [PSDK] Add some missing BS_* definitions. CORE-14434 2018-04-03 13:24:07 +01:00
Thomas Faber 9e6f3ef12b
[CMAKE] Avoid generator expresisons in install()'s RENAME argument. CORE-14509
This fixes rostests_install, and thus hopefully WHS-Testbot.
2018-04-02 10:07:38 +02:00
Amine Khaldi 10517de5e6 [STRMBASE] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:15:06 +01:00
Thomas Faber 07720ed9a8
[CMAKE] Avoid use of the LOCATION property in add_cd_file/add_rostests_file. CORE-14509 2018-03-30 20:28:23 +02:00
Thomas Faber f6dea8b734
[CMAKE] Avoid some uses of the LOCATION target property. CORE-14509 2018-03-30 20:28:20 +02:00
Thomas Faber d96609a439
[CMAKE] Remove some anachronisms. 2018-03-30 18:52:14 +02:00
Colin Finck 765280bf5f Merge PR #283 "[USBPORT] Transaction Translator (TT) support bringup" 2018-03-29 23:52:22 +02:00
Victor Perevertkin 65eabed2e1
[CRT] Fixed _tstat64 which wrongly set executable bits on files. CORE-10904
Replaced some string functions with their tchar.h analogs
2018-03-26 13:41:27 +02:00
Thomas Faber 2765bddffa
[CRT] Various fixes to Wine file functions.
Import the following Wine commits:
* ea2798f1ce9 Iván Matellanes: msvcrt: _setmode should check if file descriptor is valid.
* 9b495caacfd Carlo Bramini: msvcrt: Call SetFilePointer() with correct parameters.
* 13f34481b26 Carlo Bramini: msvcrt: Use MSVCRT_xxx macros instead of the same ones from GLIBC.
* 781b069ed81 Piotr Caban: msvcrt: Don't close HANDLE if stdout or stderr is sharing it.
2018-03-26 13:35:02 +02:00
Thomas Faber 6aa8e3cc20
[CRT] Update file descriptor handling to match Wine (7/7). CORE-14504
Import Wine commits by Piotr Caban:
* 6ed69c107f8 msvcrt: Avoid using global critical section while allocating new file descriptors.
* 725e4733cf8 msvcrt: Remove no longer needed global lock from functions using fd critical sections.
2018-03-26 13:01:00 +02:00
Thomas Faber 27b79867ea
[CRT] Update file descriptor handling to match Wine (6/7). CORE-14504
Import Wine commits by Piotr Caban:
* 417b6056877 msvcrt: Fix possible deadlock in dup2 function.
* e7fc2370885 msvcrt: Don't use fdend in create_io_inherit_block.
2018-03-26 13:00:49 +02:00
Thomas Faber 53864fcc5f
[CRT] Update file descriptor handling to match Wine (5/7). CORE-14504
Import Wine commits by Piotr Caban:
* 86baccc9ae9 msvcrt: Get rid of fdtoh helper.
* bd6eaf918c5 msvcrt: Get rid of is_valid_fd helper.
2018-03-26 13:00:39 +02:00
Thomas Faber bffd8201d0
[CRT] Update file descriptor handling to match Wine (4/7). CORE-14504
Import Wine commits by Piotr Caban:
* c7b0fb51543 msvcrt: Use fd critical section in _dup2.
* b052afd4afa msvcrt: Use fd critical section in msvcrt_free_fd.
* 16285f5700f msvcrt: Use fd critical section in read.
* 9ce2a8a60c1 msvcrt: Use fd critical section in create_io_inherit_block.
* f00b7f40584 msvcrt: Use fd critical section in _setmode.
* ba757eaec74 msvcrt: Use fd critical section in _write.
* eec7a565bec msvcrt: Don't lock __badioinfo.
2018-03-26 13:00:25 +02:00
Thomas Faber c529e727d7
[CRT] Update file descriptor handling to match Wine (3/7). CORE-14504
Import Wine commits by Piotr Caban:
* 6c2d4f1092d msvcrt: Use fd critical section in _fstat64.
* 9278190d468 msvcrt: Use fd critical section in _futime64.
2018-03-26 13:00:15 +02:00
Thomas Faber 9eb1eae28c
[CRT] Update file descriptor handling to match Wine (2/7). CORE-14504
Import Wine commits by Piotr Caban:
* 4508e665c07 msvcrt: Use fd critical section in _commit.
* afc6962a24a msvcrt: Use fd critical section in _close.
* 9a4cfbc3edc msvcrt: Use fd critical section in _eof.
* ffdd16cc0d7 msvcrt: Use fd critical section in _locking.
* fa6de597700 msvcrt: Use fd critical section in _lseeki64.
* f2f45d5fe67 msvcrt: Use fd critical section in _chsize_s.
2018-03-26 13:00:06 +02:00
Thomas Faber 25064fdf3c
[CRT] Update file descriptor handling to match Wine (1/7). CORE-14504
Import Wine commits by Piotr Caban:
* 0c4cb6ce5d4 msvcrt: Initialize file descriptor critical section.
* 1d791f5db24 msvcrt: Rename msvcrt_get_ioinfo function.
2018-03-26 12:59:58 +02:00
Amine Khaldi 457c843251 [PSDK] Import taskschd.idl from Wine Staging 3.3. CORE-14434 2018-03-25 12:52:36 +01:00
Hermès Bélusca-Maïto e4cd48813b
[SDK] Add a header for the user-mode NT EventLog API. Addendum to commit dca4fd46 (SVN r71384). 2018-03-25 00:28:04 +01:00
Hermès Bélusca-Maïto 1a31889801
[CRT] Implement the missing CRT _sc(w)printf() functions. CORE-14497 2018-03-23 22:30:18 +01:00
Hermès Bélusca-Maïto fd6e2d752d
[CRT] Fix implementation of _vsc(w)printf() for native NT. 2018-03-23 22:03:35 +01:00
Amine Khaldi 94e293b6fd [PSDK] Update propvarutil.h. CORE-14434 2018-03-21 13:08:15 +01:00
Amine Khaldi f204f24c98 [INCLUDE/WINE] Addendum to bab6b90 for the MSVC build. 2018-03-20 13:09:18 +01:00
Amine Khaldi 6067ff2f47 [LIBXSLT] Move documents.h and extra.h to the includes folder. CORE-14434 2018-03-20 12:25:26 +01:00
Hermès Bélusca-Maïto e6d7480287
[PSDK:LM] Fix parameter types. 2018-03-10 18:18:21 +01:00
Mark Jansen a8b9a43ae8
[PSDK] Fix the build for msvc 2010.
Addendum to e129995
CORE-14434
2018-03-10 12:25:41 +01:00
Mark Jansen 2f548599a4
[SDK] Do not use a NUL file while calculating format string length
CORE-14342
2018-03-10 00:04:57 +01:00
Thomas Faber dedd08c38d
[PSDK] Fix wide string literals in bcrypt.h. Should fix VC2010 build. 2018-03-09 19:35:20 +01:00
Amine Khaldi e129995058 [PSDK] Update bcrypt.h and wincrypt.h. CORE-14434 2018-03-09 12:58:19 +01:00
Thomas Faber c7c36702d2
[USER32] ForceResetUserApiHook is WINAPI, not FASTCALL. CORE-14450
Fixes stack pointer corruption when using Windows's uxtheme.dll.
2018-03-09 09:06:12 +01:00
Amine Khaldi 7446d8c8a2 [DXSDK] Add a header guard to aviriff.h. 2018-03-08 13:44:37 +01:00
Amine Khaldi 9987f02917 [D3D8][D3D9][DDRAW][WINED3D] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:15:18 +01:00
Amine Khaldi fbbe3b3856 [INCLUDE/WINE] Add a header guard to strmbase.h. 2018-03-08 13:07:57 +01:00
Amine Khaldi 8d51a38cbc [DBGHELP] Sync with Wine Staging 3.3. CORE-14434 2018-03-04 23:54:20 +01:00
Timo Kreuzer 0182dcd71b [PSDK][REACTOS] Fix definitions and usage of DWLP_MSGRESULT, DWLP_DLGPROC, and DWLP_USER
- Make sure the DWLP_* values are correct on _WIN64
- Don't use the DWL_* constants, they are not portable. Enforce this by removing them entirely from winuser.h
- Make sure Get/SetWindowLong*Ptr* is used and pointers are not truncated to LONG
2018-03-04 16:27:07 +01:00
Amine Khaldi 004d830fe9 [INCLUDE/WINE] Import heap.h from Wine Staging 3.3. CORE-14434 2018-03-04 13:10:02 +01:00
Eric Kohl ca22dc9bb5 [STORPORT][DDK] Add the StorPortExtendedFunction stub
- Add the StorPortExtendedFunction stub to the storport driver.
- Add the declaration of StorPortExtendedFunction to the ddk.

CORE-12695
2018-03-03 14:19:33 +01:00
Giannis Adamopoulos d214e1c4d4 [TELEPHON.CPL] Include winuser.h in the rc which is needed for manifest_hosted.rc
Add a check in manifest_hosted.rc to make sure that winuser.h is included
2018-03-01 10:05:54 +02:00
Giannis Adamopoulos ec91188fff [WINSRV] Implement sending the hard error balloon package to explorer
[EXPLORER] Implement showing the hard error balloon
2018-02-26 16:51:59 +02:00
Thomas Faber 56e2bf2f92
[NTOS:CC] Avoid some magic numbers. 2018-02-22 14:03:03 +01:00
Pierre Schweitzer 6ff94017e4
[VFATLIB] Fix FAT partitions formatting in a non clean fashion.
(So the fun begins)
In spite of what VFATLIB headers pretend, there's not magic in FAT boot sector.
The 3 first bytes are just the jump instruction (to the boot code). No jump, no boot.
Also, some (many?) FAT implementations rely on the jump code to help detecting that
a FAT volume is really a FAT volume. Like MS FastFAT. Or our own FAT recognizer in FS_REC.
The story is that, up to that commit, we zeroed the 3 first bytes; leading to broken
FAT volumes.
This got hidden in most cases by the fact that during setup, when we install boot
loader, we erase parts of the boot sector, including the jump instruction, making the
volume valid again. But that wouldn't fix secondary volumes where the boot loader isn't
installed.
And, also, imagine a scenario where you want to install ReactOS on a newly formatted volume
with MS FastFAT instead of our own implementation... That would simply not work to
the fact that the driver wouldn't recognize the fresh formatted volume!

(So the non fashion begins)
Fix this by putting a not that valid jump into the boot sector when formatting our
partitions. That way, our volume is always regarding a FAT view point. But, instead of
putting values that mean (nearly) nothing. We should also put a dummy bootloader
displaying the user and error message, as done by dosfstools.

(So the hope begins)
This opens the way for trying to install ReactOS with MS FastFAT (doesn't work yet).

CORE-11819
CORE-14362
2018-02-21 00:26:13 +01:00
Timo Kreuzer d281d14fd1 [REACTOS] Fix a number of Get/SetWindowsLong*Ptr* issues and use GWLP_* instead of GWL_* where appropriate. 2018-02-19 22:36:36 +01:00
Mark Jansen ee7f479c57
[RTL][XDK][KERNERL32_WINETEST] Import wine actctx changes from 3.2-37c98396
This adds support for reading the trustInfo (requestedExecutionLevel),
and the compatibility (supportedOs) sections.
2018-02-19 22:23:39 +01:00
Hermès Bélusca-Maïto f3c60947e7
[NTSTATUS] Add some status messages. 2018-02-18 02:49:31 +01:00
Joachim Henze 6f525c2b17 [CMAKE] Increase KERNEL_VERSION_PATCH_LEVEL to 9 CORE-14345
To make 1st stage setup properly report "0.4.9"
2018-02-17 23:48:16 +01:00
Colin Finck ef8b17ed0d [CMAKE] Call "git describe" with the --long parameter to always output the format we are used to. 2018-02-17 18:09:07 +01:00
Hermès Bélusca-Maïto cd83ed1ac5
[PSDK] Add definitions for IUserNotification, IQueryContinue, and IUserNotification2 and IUserNotificationCallback (Vista+).
CORE-13177
2018-02-15 22:36:50 +01:00
Thomas Faber ad68422a7b
[IP] Silence "TCP operation failed" debug spam. 2018-02-15 12:26:35 +01:00
Hermès Bélusca-Maïto 770bf93be3
[SHLWAPI] Improvements for SHCreateWorkerWindowW/A() prototypes + fix x64-bit compatibility. Sent upstream.
[SHLWAPI] Refactor the SHCreateWorkerWindowW() prototype to match its ANSI SHCreateWorkerWindowA() counterpart.

The last parameter is really to be understood as an extra window data, and not a "message result" (as it would be the case for dialog window procedure).
That is why I also remove the mention of "DWLP_MSGRESULT" in the SetWindowLongPtrW() call.
SHCreateWorkerWindowA() had it OK but SHCreateWorkerWindowW() did not.

------------------

[SHLWAPI] Make SHCreateWorkerWindowA() and SHCreateWorkerWindowW() x64-compatible.

The first parameter of these functions is a pointer to a window procedure, having a definite prototype, so employ a correct typedef WNDPROC,
which ensures both correct pointer size and parameter type enforcement.
This also ensures that we use instead a correct pointer size, since otherwise LONG remains 32-bits for Windows compatibility on x64 platforms.
The wndProc parameter is thus casted to LONG_PTR to comply with the SetWindowLongPtrA/W calls.

In SHCreateWorkerWindowW(), the last "wnd_extra" parameter should also be LONG_PTR to be able to pass 64-bit data pointer on x64 platforms.
Therefore fix also setting the wc.cbWndExtra size. One should note that the ANSI SHCreateWorkerWindowA() function had everything OK already.
2018-02-13 00:13:47 +01:00
Hermès Bélusca-Maïto 075d58cc64
[CONUTILS] Relax the enforcement of using FORMAT_MESSAGE_MAX_WIDTH_MASK in the ConMsg* and ConResMsg* functions. 2018-02-11 18:10:08 +01:00
Denis Malikov 420c0360ac
[SDK] Fix NT6 building issues and improve SDK NT6 headers.
CORE-12596
2018-02-10 18:58:35 +01:00
Serge Gautherie 44023cb7d7
[CRT:STARTUP] Fix a Clang-Cl warning about GS_ExceptionPointers
"warning: unused variable 'GS_ExceptionPointers' [-Wunused-const-variable]"
Missed in CORE-8626 r64704.

CORE-14306
2018-02-10 18:13:12 +01:00
Thomas Faber a7ef5747b5
[STRMBASE] Sync with Wine 3.0. CORE-14225 2018-02-10 17:53:05 +01:00
Hermès Bélusca-Maïto 8b78b0ff98
[PSDK] Add missing shell notification message flags. 2018-02-10 15:43:24 +01:00
Pierre Schweitzer c5139563db
[NTOSKRNL] Bring an initial (and not perfect ;-)) implementation of read ahead to our Cc!
This halfplements CcScheduleReadAhead() which is responsible for finding the next reads
to perform given last read and previous reads. I made it very basic for now, at least
to test the whole process.
This also introduces the CcExpressWorkQueue in the lazy writer which is responsible
for dealing with read ahead items and which is dealt with before the regular queue.
In CcCopyData(), if read was fine, schedule read ahead so that it can happen in background
without the FSD to notice it! Also, update the read history so that scheduling as a
bit of data.
Implement (à la "old Cc" ;-)) CcPerformReadAhead() which is responsible for performing
the read. It's only to be called by the worker thread.

Side note on the modifications done in CcRosReleaseFileCache(). Private cache map
is tied to a handle. If it goes away, private cache map gets deleted. Read ahead
can run after the handle was closed (and thus, private cache map deleted), so
it is mandatory to always lock the master lock before accessing the structure in
read ahead or before deleting it in CcRosReleaseFileCache(). Otherwise, you'll
just break everything. You've been warned!

This commit also partly reverts f8b5d27.

CORE-14312
2018-02-09 10:14:11 +01:00
Pierre Schweitzer f8b5d27807
[NDK] Update the PRIVATE_CACHE_MAP structure to match W2K3 one.
Also update the spin lock on allocation.
2018-02-08 14:02:42 +01:00
Thomas Faber 2d887745a7
[LIBXML2] Restore lost ROS-diff introduced in 7571d351ce. CORE-14291 CORE-11799 2018-02-08 00:41:39 +01:00
Thomas Faber fc82f8e2e3
[LIBXML2] Update to version 2.9.7. CORE-14291 2018-02-05 18:55:48 +01:00
Thomas Faber ffd3b0c8db
[LIBTIFF] Restore ROS-diff that I thought was no longer needed because of PCH. CORE-14291 2018-02-05 18:21:48 +01:00
Thomas Faber 2f8a7f36f5
[LIBMPG123] Update to version 1.25.8. CORE-14291 2018-02-05 14:40:39 +01:00
Thomas Faber f46b177e11
[LIBTIFF] Update to version 4.0.9. CORE-14291 2018-02-05 14:40:31 +01:00
Thomas Faber 5c0faa58cf
[LIBXSLT] Update to version 1.1.32. CORE-14291 2018-02-05 14:37:37 +01:00
Thomas Faber 5c72e50fd0
[LIBXSLT] Better highlight some ROS diffs. CORE-14291 2018-02-05 14:37:27 +01:00
Thomas Faber ef4f57579e
[LIBJPEG] Update to version 9c. CORE-14291 2018-02-05 11:51:02 +01:00
Thomas Faber df5a0b43e7
[LIBPNG] Update to version 1.6.34. CORE-14291 2018-02-05 11:51:00 +01:00
Thomas Faber b9f88d594d
[PSDK][XDK] Remove DECLSPEC_* from windef.h, protect against redefinition in winnt.h 2018-02-04 19:28:36 +01:00
Alex Ionescu 1683934cd8 Merge branch 'master' of https://github.com/reactos/reactos 2018-02-04 09:34:27 -08:00
Alex Ionescu 16e0cca7e1 [RTL]: Document and flesh out Boot Status Data (BSD) API/Structures
[NDK]: Document latest RTL_BSD_DATA as of RS3 based on ext.dll WinDBG
extension "!blackboxbsd" which outputs the entire structure field by
field :).
[NDK]: Update RTL_BSD_ITEM_TYPE thanks to ole32 symbols
[RTL]: Move system volume APIs to sysvol.c
[RTL]: Fill out BsdItemTable based on actual field offsets/sizes and not
hardcoded magic numbers which we won't ask where they came from.
[RTL]: Make RtlCreateBootStatusDataFile use an appropriate structure for
initializing the buffer instead of "UCHAR Buffer[12] = {0xC,0,0,0,
1,0,0,0, 1, 0x1e, 1, 0};" which appears like magic knowledge.
[RTL]: Rename "WriteMode" to "Read" in RtlGetSetBootStatusData since
it's much less confusing.
[RTL]: Some formatting fixes, SAL updates.
2018-02-04 09:33:32 -08:00
Hermès Bélusca-Maïto 131678a025
[SHELL32] Rewrite the wrapping code for shell taskbar notifications.
- Introduce the TRAYNOTIFYDATAW structure, as documented by Geoff
  Chappell in "WM_COPYDATA for Taskbar Interface", at
  http://www.geoffchappell.com/studies/windows/shell/shell32/api/shlnot/copydata.htm
  that is the data structure passed between shell32 and explorer for
  communicating shell notify icon information.

- In Shell_NotifyIcon(), correctly capture the (ANSI and) UNICODE
  structures provided by the caller, properly taking into account for
  the different NOTIFYICONDATA structure sizes existing out there.
  The different strings are now properly null-terminated (especially
  szTip if it needs to be truncated out), and the flags validated.

- Remove the now unneeded "SHELL_NotifyIcon()" helper function.

[EXPLORER] Use TRAYNOTIFYDATAW and adjust the callers.
2018-02-04 18:11:50 +01:00
Hermès Bélusca-Maïto a64c33e787
[PSDK] Fix NIF_STATE definition and add NIF_GUID. 2018-02-04 18:11:48 +01:00
Hermès Bélusca-Maïto 9d2139b7d8
[PSDK] Fix NOTIFYICONDATA structure; add NOTIFYICONDATA_V3_SIZE definitions. 2018-02-04 01:56:53 +01:00
Hermès Bélusca-Maïto ce044cf80e
[CONUTILS] Fix and improve the documentation for "outstream" and "utils", addendum to f982d77. 2018-02-02 22:19:54 +01:00
Hermès Bélusca-Maïto f982d77b8a
[CONUTILS] Diverse improvements: start doxygenating and add some resource messsage helper functions.
- Start to doxygenate the library, focusing in great details on the
  functions of the "outstream" module.
- Add a K32LoadStringEx function that expands (K32)LoadString by
  allowing a LanguageId parameter to be able to load strings from other
  languages than the current one.
- Add "ConResMsg*" helper functions to be able to (format and) print
  message strings with inserts that come *NOT* from a message table (as
  usual) *BUT* from resource string tables.
  Will be helpful for CORE-14265 in particular.

[CMD] Fix the call to ConMsgPrintfV().
2018-02-02 00:41:54 +01:00
Stanislav Motylkov 63ad8a71c0 [IPHLPAPI] Fix IcmpSendEcho output when host is not reachable
- Add missing error code to DDK/NDIS
- Fix error code in IP driver
- Patch MSAFD to reply correct WSA error code
- Fix IcmpSendEcho function
  - Fix returning error code in ICMP_ECHO_REPLY (see MSDN)
  - Fix returning host address (using GetBestInterface and GetIpAddrTable functions)
- Fix GetBestRoute function (it is used by GetBestInterface)

Relates to #318 and CORE-14241
2018-01-31 17:28:21 +00:00
David Quintana 9b89cd1ef2
[NTOSKRNL] Fix CcIdleDelay initializer for old msvc versions (#339)
[NTOSKRNL] Fix initialization of CcIdleDelay for msvc builds (fixes boot).
* Introduce a macro to initialize LARGE_INTEGERs in a consistent way.
2018-01-31 18:12:57 +01:00
Hermès Bélusca-Maïto 4e697fee2c
[CONUTILS] Split stream.c into input and output stream modules.
As code grows, this will allow for better maintenance of the console
stream code. In particular the input stream module will contain special
code for handling TTYs, and this is something not all console programs
will need. Having this code in a separate module will allow for the linker
to possibly remove this code when it is unused.
2018-01-31 02:10:41 +01:00
Thomas Faber d3e0eb2026
[NDK] Add DEFERRED_WRITE structure for Cc. CORE-14235
Consistently use CSHORT for NodeTypeCode/NodeByteSize while we're at it.
2018-01-28 10:48:36 +01:00
Hermès Bélusca-Maïto 32c875032b
[EVTLIB] Make the header C++ compatible. 2018-01-27 16:07:32 +01:00
Hermès Bélusca-Maïto e9113338c6
[CONUTILS] Fix macro definition. 2018-01-27 16:00:58 +01:00
Hermès Bélusca-Maïto 1e87e2fa9d
[CONUTILS] Make the headers C++ compatible. 2018-01-27 15:49:17 +01:00
Mark Jansen 1d0e7bddea [XML2SDB] Parse Flags. 2018-01-27 15:12:24 +01:00
Dmitry Bagdanov 991d33c5d1 [CABMAN] Move CCFDATAStorage class to a separate file 2018-01-27 10:42:05 +01:00
Dmitry Bagdanov ae391dd609 [CABMAN] Remove _WIN32 ifdef's 2018-01-27 10:42:05 +01:00
Giannis Adamopoulos 5b8975211d [GDIPLUS] Add it to winsxs.
[NTDLL_APITEST] Remove a hack for gdiplus
2018-01-27 02:45:50 +02:00
Giannis Adamopoulos 1e903d96cb [RTL] actctx: Implement the implicit activation context 2018-01-27 02:45:50 +02:00
David Quintana bbca71c4a5 [EXPLORER] Implement rudimentary uVersion management, and notification balloons.
- uVersion will only be truly useful when Vista+'s V4 style notification icons are implemented.
- Balloon notifications do not yet support queuing and auto-closing.
- Force the notification icon tooltips to always show even if the taskbar isn't foreground.
[ROSCTRLS.H] Implement CTooltips class which manages a comctl32 tooltips window.
2018-01-23 22:13:01 +01:00
Amine Khaldi d6ac0a71ad [D3D9][WINED3D] Sync with Wine 3.0. CORE-14225 2018-01-21 22:20:57 +01:00
Vadim Galyant d4ff198c7c [PSDK] Add USB hub class-specific request type codes. 2018-01-21 19:35:34 +01:00
Amine Khaldi d7c47feb25 [FREETYPE] Bring back our diffs to reduce the stack usage in cf2_interpT2CharString(). CORE-14227 2018-01-21 13:31:05 +01:00
Serge Gautherie 63775c3215
[LWIP] dhcp.c: Cherry-pick lwIP 32aa9a4. CORE-8978
- Fix a while() check order.
2018-01-20 16:04:34 +01:00
Mark Jansen 7e9fb41b9f [CMAKE/WIDL] Add rudimentary dependency tracking in add_rpcproxy_files
CORE-14204
2018-01-20 15:46:25 +01:00
Amine Khaldi 4f825146c2 [PSDK] Update winhttp.h. CORE-14225 2018-01-20 13:54:50 +01:00
Amine Khaldi 2dd1f8b089 [PSDK] Update propvarutil.h. CORE-14225 2018-01-20 13:04:48 +01:00
Thomas Faber 095a4d1d23
[RTL] Handle RtlReAllocateHeap failure in com_class_add_progid. CID 1223161 2018-01-20 09:48:07 +01:00
Amine Khaldi e399d3ec3e [PSDK] Import ieautomation.idl from Wine 3.0. CORE-14225 2018-01-19 00:35:51 +01:00
Amine Khaldi 7a00f240c6 [PSDK] Update gdiplusflat.h and gdiplusgpstubs.h. CORE-14225 2018-01-19 00:15:20 +01:00
Amine Khaldi 4c8b42be0f [INCLUDE/WINE] Update atlbase.h. CORE-14225 2018-01-19 00:00:10 +01:00
Amine Khaldi 65ab703cd5 [PSDK] Update commctrl.h. CORE-14225 2018-01-18 23:48:30 +01:00
Amine Khaldi b744385652 [FREETYPE] Update to v2.9.0 and use this as a chance to slim down our lib a bit. CORE-14220 2018-01-18 23:29:50 +01:00
Mark Jansen 1d4d88b062 [PSDK][ACTXPROXY] Add IExplorerCommand and related classes (Vista+) 2018-01-13 23:49:58 +01:00
Mark Jansen 81eb3bbceb [SDK] Add UNIMPLEMENTED_ONCE macro, to be used for functions that spam. 2018-01-08 22:24:54 +01:00
Mark Jansen e3459ec36e [PSDK] Fix definition of INVALID_PROCESSTRACE_HANDLE as suggested by Thomas.
#267
2018-01-07 22:29:17 +01:00
jimtabor 7c75bc627b [RichEd20] Fix structure by adding missing byte, see CORE-8452.
Update version, tell wine.
This fixes "Assertion failed: style->cbSize == sizeof(CHARFORMAT2W)".
2018-01-07 14:47:42 -06:00
Timo Kreuzer 690cc9f30b [NDK] Fix some ob types (64 bit) 2018-01-06 17:13:22 +01:00
Timo Kreuzer 5985fe613b ! Fix build of tracert
# Conflicts:
#	sdk/include/psdk/ipexport.h
2018-01-06 17:07:54 +01:00
David Quintana c32993c672 [PSDK] Change #if to #ifdef, to be more consistent with the majority of our codebase. 2018-01-04 19:15:06 +01:00
David Quintana c8b93430d4 [PSDK] Add ICMP_ECHO_REPLY32 needed by 64-bit code. Fixes x64 build of tracert. 2018-01-04 18:21:16 +01:00
Ged Murphy 344f367211
[TRACERT] Rewrite tracert
- Full rewrite. This commit replaces the old utility.
- Use the new ICMP APIs instead of manually crafting ping requests using raw sockets.
- Add support for additional languages (the previous utility was hardcoded)
- Add support for IPv6
- Make the icmpapi header C++ compatible. (we don't appear to sync this with wine anymore.)
- Now runs on Win10, is much more reliable, and brings the code somewhat into the 21st century.
(It's currently missing source routing (-j), but as most routers disable this anyway, I'm not sure that it's worth adding)
2018-01-02 09:43:14 +00:00
Thomas Faber b20280a0f9
[CMAKE] Allow overriding the .dll extension for delay imports in MSVC builds.
Fixes delay-importing winspool.drv.
2018-01-01 19:05:30 +01:00
Timo Kreuzer f60a9eb7a3 [RTL] Fix amd64 version of DebugService2 2018-01-01 12:09:38 +01:00
Timo Kreuzer a2f7de7ee8
Amd64/misc 64bit fixes (#236)
[REACTOS] Misc 64 bit fixes

* [NTOS:MM] Allow MEM_DOS_LIM in NtMapViewOfSection on x64 as well
* [NTOS:MM] Implement x64 version of MmIsDisabledPage
* [HAL] Remove obsolete code
* [NTOS:KE] Fix amd64 version of KeContextToTrapFrame and KeTrapFrameToContext
* [XDK] Fix CONTEXT_XSTATE definition
* [PCNET] Convert physical address types from pointers to PHYSICAL_ADDRESS
2018-01-01 12:07:50 +01:00
Hermès Bélusca-Maïto 9fa693e59b
[REACTOS] Switch to year 2018...
... and Happy New Year 2018 to everyone!!

☆.¸¸.•´☆.¸¸.•´☆.¸¸.•´☆.¸¸.•´☆

  ⋱★⋰⋱☆⋰⋱★⋰⋱☆⋰⋱☆⋰⋱★⋰⋱☆⋰⋱★⋰
░░░░░░█░█ █▀█ █▀█ █▀█ █░█░░░░░░
░░░░░░█▀█ █▀█ █▀▀ █▀▀ ▀█▀░░░░░░
░░░░░░▀░▀ ▀░▀ ▀░░ ▀░░ ░▀░░░░░░░
█▄░█ █▀▀ █░█░█░░█░█ █▀▀ █▀█ █▀█
█░██ █▀▀ █░█░█░░▀█▀ █▀▀ █▀█ ██▀
▀░░▀ ▀▀▀ ░▀▀▀░░░░▀░ ▀▀▀ ▀░▀ ▀░▀
  ⋱☆⋰⋱★⋰⋱☆⋰⋱★⋰⋱★⋰⋱☆⋰⋱★⋰⋱☆⋰
░░░▄████▄░▄███▄░░▄██░▄████▄░░░
░░░▀▀░▄██░██░██░████░██▄▄██░░░
░░░░▄██▀░░██░██░░░██░██▀▀██░░░
░░░██████░▀███▀░░░██░▀████▀░░░

☆.¸¸.•´☆.¸¸.•´☆.¸¸.•´☆.¸¸.•´☆
2018-01-01 00:00:00 +01:00
Mark Jansen b2a5a804b4 [ROSDLGS] Add SetWizardButtons to CPropertyPageImpl
CORE-7684 #234
2017-12-31 14:56:22 +01:00
Thomas Faber 008e035b7e
[LIBS] Use KeClearEvent instead of KeResetEvent where the previous state is not needed. 2017-12-30 11:46:57 +01:00
Giannis Adamopoulos 406c31cee8 [ATL] CWindow: Add an overload of GetDlgItemText which takes a CSimpleString as parameter 2017-12-27 19:25:58 +02:00
Giannis Adamopoulos deb908b038 [ATL] -Add COMMAND_CODE_HANDLER macro 2017-12-27 19:25:58 +02:00
Mark Jansen fa3e173515 [ATL] Add CString.AllocSysString 2017-12-25 14:00:51 +01:00
Mark Jansen 6c92d5c14a [ATL] Add CComBSTR.Attach 2017-12-25 14:00:51 +01:00
Amine Khaldi 0d35ee7ade [INCLUDE/CRT] Add some throw() annotations. #179 #210 2017-12-25 12:56:16 +01:00
Giannis Adamopoulos 435b0b19d2 [COMCTL32] Install comctl32 v6 and its manifest in first stage 2017-12-24 21:19:03 +02:00
Giannis Adamopoulos 51c694274f [RTL] find_string_index: name parameter may not be null terminated 2017-12-24 21:19:03 +02:00
Hermès Bélusca-Maïto f49caecb3b
[SDK] Fix copy-pasta, addendum to 7861960 by Mark Jansen. 2017-12-24 16:48:13 +01:00
Mark Jansen 7861960a88 [SDK] Guard manifest_[dll|exe].rc against wrong usage. 2017-12-24 11:44:21 +01:00
Mark Jansen a730e3fce1 [ATL] Continue enumeration after a failing COM_INTERFACE_ENTRY_FUNC_BLIND 2017-12-21 21:37:54 +01:00
Colin Finck 12b78f182d
Replace our dxtn.dll by a version based on the libtxc_dxtn source code (#203)
This is no official system DLL and WineD3D is its only user. But latest WineD3D prefers the libtxc_dxtn codebase instead of the alternative library we used.
This is also what Mesa uses and Fedora ships now that the patents have expired, so we should stick to the same.

I'm importing the libtxc_dxtn-1.0.1 codebase from https://people.freedesktop.org/~cbrill/libtxc_dxtn/
It compiles warning-free in our tree without modifying a single line!

I'm merging this Pull Request based on the positive response in CORE-12759.
I lack a proper test case myself, but my version at least shouldn't make things worse. In my opinion, the previous one was broken anyway due to using stdcall imports when WineD3D called cdecl ones.

This also removes the NSWPAT option from our buildsystem as dxtn was its latest user.
2017-12-20 11:15:13 +01:00
Ivan Labutin d6792047f3 [NTOS][NDK][RTL] A bunch of 'wrong size' fixes 2017-12-20 06:56:09 +01:00
Mark Jansen ad181d892c [BROWSEUI] Implement ACLCustomMRU.
CORE-9281
2017-12-18 23:17:17 +01:00
Amine Khaldi 0a4e5911fc [UUID] Add SID_SHTMLEditServices. 2017-12-18 13:18:26 +01:00
Pierre Schweitzer b0bf7dfb62
[VFATLIB] Never touch the file system if not in interactive or RW mode.
It's critical not to perform any write on a volume without an exclusive lock on it.
That lock is only acquired if ChkDsk is started in RW mode.
Also added an assert in write routine, to make sure that when we're about to perform
a write operation, we're really allowed to do so.

This will avoid volume corruptions when a simple "chkdsk" is issued from cmd.
To put it simple: check will really check now, and won't attempt any repair.

CORE-14119
2017-12-17 14:02:31 +01:00
Pierre Schweitzer d82796778f
[PSDK] Add some missing defines
CORE-14090
2017-12-16 21:48:34 +01:00
Serge Gautherie e8b1752162
[SDK] pnp.idl: Add a reminder comment about removed Vista/+ functions. CORE-12580 2017-12-15 16:01:53 +01:00
Amine Khaldi 631a14ff64 [ASM][NDK][NTOS] Rename Self to SelfPcr in the KIPCR structure. 2017-12-13 13:49:00 +01:00
Pierre Schweitzer 6a224a38a1
[VFATLIB] Make Chkdsk handle volume opening locking failures.
For instance, when repair is required, we can ask the caller whether we should
continue or not in case locking failed.
Also, introduced a hack for 1st stage where IopParseDevice() hack is in usage
so that broken NTSTATUS is diverted to appropriate status.
That way, usetup will properly continue even if locking failed (due to its
callback stub!)

CORE-14087
2017-12-09 21:12:09 +01:00
Amine Khaldi 69005963fb [UUID] Add a PCH. 2017-12-09 13:04:23 +01:00
James Tabor c45a6e15bf [User32|IMM32] Fix a recursion crash in IMM. See CORE-14041.
Required a sync port from wine. This is a hack fix with Win32SS until
proper IMM support is added to Win32SS.
2017-12-07 21:14:21 -06:00
Amine Khaldi 5633423086 [FREETYPE][PORTCLS][RPCSS][SPOOLSV][STLPORT][USETUP][WLANSVC] Silence some clang-cl warnings. 2017-12-07 23:26:59 +01:00
Amine Khaldi 9f85ef6712 [CMAKE/CLANG-CL] Don't pass /TP twice when we're dealing with a clang-cl c++ PCH. Pass -nostdinc instead of /X on clang-cl builds. 2017-12-07 23:22:48 +01:00
Amine Khaldi 00124d1b1a [CMAKE/CLANG-CL] Silence some clang-cl warnings in consistency with our gcc build. 2017-12-07 21:53:45 +01:00
Pierre Schweitzer 63d46228b8
[PSDK] Define the IOCTL_CDROM_EJECT_MEDIA IOCTL 2017-12-03 18:17:28 +01:00
Pierre Schweitzer d8a15d0cc7
[PSDK] Add various defines needed to build fastfat_new 2017-11-23 23:27:51 +01:00
Vadim Galyant 73bfc3c897
[USBPORT] Type-safe function signature (PVOID -> PUSBPORT_xxx). 2017-11-23 16:34:24 +01:00
Amine Khaldi 09c06a2f45 [CLANG-CL] Initial commit that allows us to compile ReactOS with clang-cl. 2017-11-23 14:09:57 +01:00
Amine Khaldi 861360c65f [CRT/STARTUP] For some reason we get unresolved external symbol ___globallocalestatus when compiling with clang-cl. CORE-11799 CORE-14042 (#94) 2017-11-23 13:25:57 +01:00
Jérôme Gardou 6aaf217b10 [OPENGL32]
- Implement storing thread data into the TEB
CORE-14024
2017-11-21 08:22:31 +01:00
Amine Khaldi b439381523 [CRT/INTRIN] Leverage __has_builtin() with the intrinsics. Dedicated to Thomas. CORE-11799 (#94) 2017-11-19 15:20:02 +01:00
Thomas Faber 89e83b2cf4
[CRT] Add __m128i, _mm_setzero_si128, and _mm_stream_si128. 2017-11-18 18:05:24 +01:00
Thomas Faber 631d1e071c
[RTL] Make RtlFillMemoryUlonglong public 2017-11-18 18:05:22 +01:00
Hermès Bélusca-Maïto 3356f87b9e
[REACTOS] Add reactos/bin/suppl/ to the list of "known" (hardcoded) directories to make build configuration happy.
I use a (not yet used) dir-id value of "80" for this purpose (the value
"8" being already used for /bin/testdata/ and of course values from 9 up
to 50+ are also already used... >_>).
2017-11-17 01:48:18 +01:00
Eric Kohl 52fa3479f3 [EVENTLOG] Use the STDCALL calling convention for all remote procedure calls. 2017-11-12 15:54:22 +01:00
Eric Kohl 7dd8ebcbbd [SERVICES] Use the STDCALL calling convention for all remote procedure calls. 2017-11-12 14:04:22 +01:00
Serge Gautherie f0e6c11bba
[USETUP][EXT2LIB] NtWriteFile() calls: Remove unused 'ByteOffset = 0', Use explicit NULL instead of ambiguous 0. CORE-13910 2017-11-09 21:28:50 +01:00
Stas'M 1eea9304e1 [DBGHELP] [XDK] [ARM64] Fix magic constant 2017-11-04 14:01:27 +01:00
Serge Gautherie bcaa33e33b
[USETUP][ROSAPPS][EXT2LIB] NtReadFile() calls: Remove unused 'ByteOffset = 0', Use explicit NULL instead of ambiguous 0, Remove casts to same type. CORE-13910 2017-11-03 15:02:16 +01:00
Pierre Schweitzer 3c679fc6b4
[RDBSS] Fix a bug in RxQueryNameInfo(): don't only return name length, but also the whole structure. Avoids corruption 2017-11-02 23:03:48 +01:00
Mark Jansen be1155f294 [ATL] Initial implementation of CAtlExeModuleT.
CORE-13908
2017-11-01 18:55:45 +01:00
Pierre Schweitzer 5b960479bf
[RDBSS] More capture 2017-11-01 15:12:08 +01:00
Pierre Schweitzer 2511ba8f8f
[RDBSS] Start defining the RxCapture* macros and start using them (to be continued) 2017-11-01 12:07:18 +01:00
Pierre Schweitzer b840f65362
[RXCE] Implement RxInitializeDebugSupport() 2017-11-01 12:07:18 +01:00
Pierre Schweitzer ac3e4a4895
[RDBSS] Implement RxCheckFcbStructuresForAlignment() 2017-11-01 12:07:18 +01:00
Pierre Schweitzer cc578af6df
[RDBSS] Implement RxQueryNameInfo() and RxConjureOriginalName() 2017-10-31 23:03:16 +01:00
Pierre Schweitzer f5104a0042
[RXCE] Implement RxAcquireExclusiveFcbResourceInMRx() 2017-10-31 21:34:36 +01:00
Amine Khaldi 9556390f8f
[XDK][DDK] Take the gcc path for __assert_annotation{A,W} and __CREATE_NTOS_DATA_IMPORT_ALIAS when compiling with clang-cl. Include kdfuncs.h before rtlfuncs.h to have DbgPrint() defined before using it. CORE-11799 (#94) 2017-10-31 15:19:49 +01:00
Amine Khaldi a75904fe66
[LIB/ATL] Take the gcc code path for the unused macros when compiling with clang. CORE-11799 (#94) 2017-10-31 14:44:29 +01:00
Amine Khaldi 7571d351ce
[LIBXML2] Do not rely on nan() when compiling with clang. CORE-11799 (#94) 2017-10-31 14:10:03 +01:00
Amine Khaldi 8ffffbb294
[XDK/NTBASEDEF] Use __builtin_offsetof to define FIELD_OFFSET when compiling with clang-cl. CORE-11799 (#94) 2017-10-31 13:54:41 +01:00
Amine Khaldi dde1b98a78 [CRT/INTRIN] Use the gcc intrinsic equivalents when compiling with clang-cl and skip the ones that are already supported/built-in. CORE-11799 (#94) 2017-10-30 22:51:00 +01:00
Amine Khaldi d56c9a8927 [INCLUDE/REACTOS][LOCALMON][LOCALSPL][SPOOLSS] Add some missing VOIDs. CORE-11799 (#94) 2017-10-30 22:43:47 +01:00
Amine Khaldi 80774a2fca [LIBSAMPLERATE] Define exit() as __debugbreak(). CORE-11799 (#94) 2017-10-30 22:38:29 +01:00
Pierre Schweitzer ec9912f334 [RTL] Revert b3b2a23 which introduced a regression.
Spotted by Jérome
2017-10-29 15:03:12 +01:00
Samuel Serapion b3b2a23f05 CID 1206831 Dereference after null check
BytesRead is an optional out parameter and must be checked before being written to.
2017-10-29 11:17:47 +01:00
Amine Khaldi 28dd5cfc5e [CRT/INTRIN] Use __forceinline for __INTRIN_INLINE in the clang case. CORE-11799 (#94) 2017-10-28 13:35:16 +01:00
zefklop 07c7295545
[CRT] fix bug in _rotr implementation 2017-10-28 10:28:27 +02:00
Amine Khaldi d3e83d7d5e [INCLUDE/WINE] Use __builtin_ffs in the clang-cl build. CORE-11799 (#94) 2017-10-27 23:55:59 +01:00
Serge Gautherie 11baa0d723 [NTOSKRNL][ROSSYM] ZwReadFile() calls: Use explicit NULL instead of ambiguous 0. CORE-13910 2017-10-27 13:38:02 +02:00
Giannis Adamopoulos 21f0b163a7 [VERSION.CMAKE] Bump the version to 0.4.8-dev 2017-10-27 09:38:34 +03:00
Giannis Adamopoulos 283afefc4e Add CPropertyPageImpl that allows us to make property pages object oriented 2017-10-26 12:37:08 +03:00
Giannis Adamopoulos e7c29bb1fc [ATL] Add CHAIN_MSG_MAP macro 2017-10-26 12:37:08 +03:00
Amine Khaldi ab3045c504 [INCLUDE/WINE] Update winternl.h. CORE-13762 2017-10-23 13:48:05 +01:00
Samuel Serapion 136fabd357 [CRT] Use MAX_PATH for buffer meant to contain an arbitrary path
The cFileName member of WIN32_FIND_DATA is an array of MAX_PATH(260). Using strcpy/wcscpy with the target buffer being smaller is potentially bad. Corresponds to CID 1401198 and 1401195.
2017-10-23 14:44:38 +02:00
Mark Jansen 31a11bba7e [ATL] Implement CDialogImpl
CORE-13903
2017-10-22 21:18:04 +02:00
Giannis Adamopoulos ee1cbf51e1 [PSDK] Add some missing definitions from IShellFolderBand 2017-10-22 20:03:32 +03:00
Timo Kreuzer 6073359086 [REACTOS] Fix x64 build
- SIZE_T -> ULONG in KsecGatherEntropyData
- Add missing ZwQueryInformationProcess() prototype for x64 build of btrfs
- Fix ml.exe path for VS 2017 Community Edition
- Add missing Handle32ToHandle to basetsd.h
2017-10-22 16:49:04 +02:00
Timo Kreuzer 547b38e022 [NDK] Add tests for TEB 2017-10-22 14:36:18 +02:00
Timo Kreuzer 95827a70e6 [NDK] Fix/improve definition of TEB
This also changes the default definition for NTDDI_VERSION in sdkddkver.h to NTDDI_WS03SP1, when _WIN32_WINNT is _WIN32_WINNT_WS03.
2017-10-22 14:36:18 +02:00
Timo Kreuzer 30cd606fe2 [NDK] fix some rtltypes.h definitions 2017-10-22 14:36:18 +02:00
Pierre Schweitzer 8eb66fa1b6 [RDBSS] Make it clear that we want to zero all the create parameters
CID 1411975
2017-10-21 15:10:41 +02:00
Amine Khaldi a6bf4abd2e [PSDK] Add missing KNOWN_FOLDER_FLAG and ILIsEmpty(). CORE-13762 2017-10-19 22:30:28 +01:00
Amine Khaldi f61627e540 [PSDK] Add some missing definitions to winbase.h. Import libloaderapi.h from Wine Staging 2.16. CORE-13762 2017-10-19 22:29:35 +01:00
Pierre Schweitzer ed263291d1 [UBTRFS] Update to 1.0.1
CORE-13896
2017-10-16 20:30:24 +02:00
Giannis Adamopoulos a08d1f92be [PSDK] Try to fix build 2017-10-16 18:32:23 +03:00
Giannis Adamopoulos 129f98b473 [PSDK] Fix build. 2017-10-16 18:04:15 +03:00
Giannis Adamopoulos d114f48fd4 [PSDK] Add CLSID_ISFBand, IShellFolderBand and IFolderBandPriv 2017-10-16 17:51:11 +03:00
Pierre Schweitzer 78e5caaec2 [RDBSS] Fix broken cast when comparing DFS magic values
CID 1419139
2017-10-11 08:38:26 +02:00
Pierre Schweitzer f9b26bc0f2 [RXCE] Don't remove uninitialized list entry
CID 1419234
2017-10-11 08:31:36 +02:00
Pierre Schweitzer 151869c6ef [RDBSS] Avoid uninit var usage.
CID 1419475
2017-10-11 08:20:48 +02:00
Amine Khaldi 54e277d6b5 [CMAKE] Update baseaddress.cmake for the GCC builds. 2017-10-09 12:35:20 +01:00
Timo Kreuzer c22817db06 [NDK] Improve NDK tests for KTHREAD and add them to build 2017-10-08 18:11:07 +02:00
Timo Kreuzer b8bd38c860 [NDK] Add Win8+ version of KTHREAD 2017-10-08 18:11:07 +02:00
Timo Kreuzer d176ddedd6 [XDK] Fix KWAIT_BLOCK definition for Win8+ 2017-10-08 18:11:07 +02:00
Amine Khaldi 6cdefd33e1 [PSDK] Update unknwn.idl. CORE-13762 2017-10-08 14:07:28 +01:00
Amine Khaldi 891d81e058 [WIDL] Sync with Wine Staging 2.16. CORE-13762
b42a155 widl: Handle C++ aggregate returns in a MSVC compatible way.
084fa63 widl: Only generate Proxy Stubs when functions have the call_as attribute.
fbdf119 widl: Try to find imported typelib using .tlb extension if it wasn't specified.
2017-10-08 13:41:50 +01:00
Amine Khaldi babc61c5ee [PSDK] Add missing CreateRestrictedToken() declaration. CORE-13762 2017-10-08 13:41:17 +01:00
Amine Khaldi c95f8e51d3 [PSDK] Update wmsdkidl.idl and import some of its related idl files from Wine Staging 2.16. CORE-13762 2017-10-08 11:49:33 +01:00
Amine Khaldi dc0774d8d0 [PSDK] Update mmreg.h and rpcndr.h. CORE-13762 2017-10-08 11:49:33 +01:00
Amine Khaldi 154006810e [PSDK] Update msi.h. CORE-13762 2017-10-08 11:31:31 +01:00
Hermès Bélusca-Maïto 3cd76b91b5 [INCLUDE]: ntddrdsk.h: Fix "__cplusplus" and the ramdisk GUID definitions. 2017-10-06 01:08:10 +02:00
Hermès Bélusca-Maïto fce8e1b595 [INCLUDE]: ntddrdsk.h: align defs on multiple of 4-space tab. 2017-10-06 01:08:10 +02:00
Colin Finck 71fba9dea1 [VERSION] Use --abbrev=7 for "git describe" to enforce a short hash of 7 characters no matter what the default is for your Git installation. 2017-10-04 20:49:43 +02:00
Colin Finck 9ebf43567d Add .gitattributes and .gitignore files and normalize line endings in the repository (#10) 2017-10-04 20:37:32 +02:00
Hermès Bélusca-Maïto acdf04bad2 Add .keep guard files in order to restore lost but empty directories we had with SVN.
Note that when you start populating these directories, you can remove the associated .keep guard file(s)!
2017-10-04 10:28:36 +02:00
Colin Finck b9cf2e37f3 Supply the source directory as working directory when launching Git commands. Should fix retrieving the Git hash on the build machines. 2017-10-03 15:29:13 +02:00
Colin Finck 3d6040615a Make ReactOS report the Git revision as output by "git describe".
- REVISION is now something like "0.4.7-dev-53-g1304b53" instead of "r12345".
- Change WINDOWS_NT_BANNER to better represent the ReactOS version and the reported NT version.
- Introduce REACTOS_COMMIT_HASH which contains the full 40-character commit hash (for comparing revisions, e.g. in rosautotest/testman).
2017-10-03 12:55:38 +02:00
Colin Finck c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00