Commit graph

63745 commits

Author SHA1 Message Date
Alex Ionescu a1100ebbb1 People's local builds use PCH by default, rosbuilds do not. A recipe for success.
svn path=/trunk/; revision=69448
2015-10-04 21:11:48 +00:00
Alex Ionescu e7dee1f989 [BOOTLIB]:
- WIP work to begin reading, parsing, mounting and loading the BCD hive into a data store. Untested, has missing pieces.
- Implement BlFileSet/GetInformation, BlFileReadEx, BlFileReadAtOffsetEx and helper structures/functions. Document multiple previously unknown/magic flags.
- Implement BlMmAllocatePhysicalPages. Stub BlMmFreePhysicalPages.
- Implement MmUnmapVirtualAddress, BlMmUnmapVirtualAddressEx when operating in real mode.
- Implement ImgpGetFileSize, ImgpReadFileAtOffset, ImgpOpenFile, ImgpCloseFile, BlImgAllocateImageBuffer, BlImgLoadImageWithProgress2.
- Implement BdDebuggerInitialized, BlBdDebuggerEnabled, BlStatusPrint, BlStatuserror. Stub BlBdPullRemoteFile.
- Implement BlGetBootOptionDevice.
- Implement BiReferenceHive, BiDereferenceHive, BiCloseKey, BiOpenKey. Stub BiFlushKey, BiLoadHive.
- Implement BiAddStoreFromFile, BcdOpenStoreFromFile.
- Stub BlUtlUpdateProcess and BlResourceFindMessage.
- Other misc. cleanups.
[BOOTMGR]:
- Implement BmpFatalErrorMessageFilter, BmErrorPurge, BmpErrorLog, BmFatalErrorEx.
- Implement BmpFwGetFullPath.
- Implement BmOpenDataStore.
- Stub BmOpenBootIni

svn path=/trunk/; revision=69447
2015-10-04 21:07:12 +00:00
Alex Ionescu e17f8bc3e7 [CMLIB]:
- Missing header change from previous commit.

svn path=/trunk/; revision=69446
2015-10-04 20:24:52 +00:00
Alex Ionescu d934457d73 [MKHIVE]:
- Whoever wrote mkhive ran into the problem I just did, and realized hey-i-dont-fucking-want-to-use-that-almost-copy-pasted-but-not-shared-code-so-why-dont-i-use-the-good-kernel-code-instead... but instead of taking the time to create a fucking library like I just did (cause that would be hard man, and fixing headers n' shit), just hard-coded the paths to the kernel files directly like a lazy shit. Fix mkhive to just rely on cmlib, which now has the files shared there.

svn path=/trunk/; revision=69445
2015-10-04 20:23:25 +00:00
Alex Ionescu 85b39039dd [CMLIB/NTOSKRNL]:
- Move cmindex.c and cmname.c to cmlib, because bootmgr/winload use the kernel's cm implementation, unlike our freeldr which uses an almost copy-pasted-but-not-shared-because-hey-why-not-have-to-fix-the-bugs-in-two-places-instead-of-just-one implementation.
- Minor fixes to headers to allow those two files to be used/built outside of ntoskrnl.

svn path=/trunk/; revision=69444
2015-10-04 20:18:49 +00:00
Thomas Faber f7a1eb0c1a [RAPPS]
- Fix incorrect buffer sizes
- Use safe string functions
- Avoid extended chars in string literals

svn path=/trunk/; revision=69443
2015-10-04 19:39:23 +00:00
Alex Ionescu bde25860e7 [FS_REC]: Guard against ROUND_UP/DOWN already being defined.
svn path=/trunk/; revision=69442
2015-10-04 17:14:24 +00:00
Alex Ionescu 6c476394c7 [NTOSKRNL]: Jerome _was_ nice enough to make our cells ordered (64222).
svn path=/trunk/; revision=69441
2015-10-04 17:13:38 +00:00
Amine Khaldi 0839fbe8c2 [MBEDTLS] Update mbedtls to v2.1.1. By Ismael Ferreras Morezuelas with a fix by Roy Tam. CORE-9065
svn path=/trunk/; revision=69440
2015-10-04 17:08:38 +00:00
Amine Khaldi ec120a57d3 [NTOS] Improve the FILE header section. Brought to you by Adam Stachowicz. CORE-10114
svn path=/trunk/; revision=69439
2015-10-04 11:54:25 +00:00
Amine Khaldi 04cf45ec29 [NTVDM] Revert r69435.
svn path=/trunk/; revision=69438
2015-10-04 11:49:28 +00:00
Sylvain Petreolle b86a4b8e83 Fix 0x%lu specifier in our skeleton service and its only user tcpsvcs.
svn path=/trunk/; revision=69437
2015-10-03 22:38:05 +00:00
Sylvain Petreolle 1a33bc3cdf [ROSTESTS]
Fix 0x%lu specifier.
Add cmake file for notificationtest.

svn path=/trunk/; revision=69436
2015-10-03 22:21:19 +00:00
Amine Khaldi f24e24d07c [NTVDM] Improve the PCH situation.
svn path=/trunk/; revision=69435
2015-10-03 21:47:46 +00:00
Sylvain Petreolle 4aa8ae13c2 [user32_apitest]
0x%lu does not mean anything correct.

svn path=/trunk/; revision=69434
2015-10-03 21:41:10 +00:00
Amine Khaldi 7015fd7b50 [NTVDM] Fix PCH w.r.t. using the debug routines. The PCH use here in itself could use *a lot* of improvements but that's another story.
svn path=/trunk/; revision=69433
2015-10-03 19:17:55 +00:00
Hermès Bélusca-Maïto 0e9fed957d [NTVDM]
- French translation fix.
- Add PCH support.
- Properly track RC files dependencies. CORE-9806

svn path=/trunk/; revision=69432
2015-10-03 18:57:06 +00:00
Hermès Bélusca-Maïto cf07fbe7ba [NTVDM]
Usability fixes (part 2):
- Properly keep the mouse show state across screenbuffer switches.
- Use unicode strings for the disk menu items.
See r69428.

svn path=/trunk/; revision=69431
2015-10-03 15:06:24 +00:00
Hermès Bélusca-Maïto 9fef17180f [WIN32SS:GDI]
Convert COLOR16 values to byte range before calling XLATEOBJ_iXlate.
This fixes gradient colors in some applications, as for example in Code::Blocks.
Patch by Vort. This is a fix for code written in revision r8117, so old !!
CORE-8652 #comment Committed in r69430, thanks guys!

svn path=/trunk/; revision=69430
2015-10-03 13:30:15 +00:00
Amine Khaldi 161dd3557d [RAPPS] Fix SSL certificate pinning, allow HTTPS links, add URL args support, some UX fixes, comment improvements and fix stopping the download process when pressing cancel. By Ismael Ferreras Morezuelas. CORE-9060 CORE-10289
svn path=/trunk/; revision=69429
2015-10-03 08:39:05 +00:00
Hermès Bélusca-Maïto a2871b319a [NTVDM]
Usability fixes:
- Update the menu each time the user chooses to show or hide the mouse pointer.
- Keep the mouse show state across screenbuffer switches (text/graphics) (half-hackish at the moment; will be elegantly fixed later on).
- Update the floppy disk menu items each time the user mounts / ejects a disk; display the disk image file name currently mounted (CHAR strings used at the moment, WCHAR conversion will follow soon).

svn path=/trunk/; revision=69428
2015-10-03 02:36:35 +00:00
Aleksandar Andrejevic 7fe13943a9 [FAST486]
Reading/writing to memory should #SS(0) when the segment is the stack segment,
and #GP(0) otherwise. It should never generate #NP.


svn path=/trunk/; revision=69427
2015-10-02 15:11:24 +00:00
Amine Khaldi a1ae94ce52 [INCLUDES] Improve the FILE header section. Brought to you by Adam Stachowicz. CORE-10114
svn path=/trunk/; revision=69426
2015-10-01 18:12:45 +00:00
Amine Khaldi 0efc45dd0b [RAPPS] Get rid of the flickering of the URL in the download dialog and decode it. By Ismael Ferreras Morezuelas. CORE-9060
svn path=/trunk/; revision=69425
2015-10-01 09:37:55 +00:00
Aleksandar Andrejevic 2efd4b6466 [FAST486]
Fix the TSS limit validity check.
Implement I/O privilege checking.


svn path=/trunk/; revision=69424
2015-10-01 02:24:17 +00:00
Hermès Bélusca-Maïto 66aea017f9 [NTVDM]: Fix the open-file dialog filter.
svn path=/trunk/; revision=69423
2015-10-01 02:03:31 +00:00
Hermès Bélusca-Maïto 1f6976b003 [NTVDM]
- Temporarily hack the boot sequence to floppy, then hard disk. See r69421; will be improved in the future.
- Complete the BIOS 16-bit bootstrap code.

svn path=/trunk/; revision=69422
2015-10-01 00:37:38 +00:00
Hermès Bélusca-Maïto 59136514da [NTVDM]
- Add a basic boot sequence functionality (read from CMOS); will be improved in the future.
- Print a "FATAL BOOT FAILURE" error message when INT 18h is called.
- Fail startup if we cannot mount the available hard disk images.
- Improve some diagnostic error messages.

svn path=/trunk/; revision=69421
2015-10-01 00:09:24 +00:00
Aleksandar Andrejevic b1b7020854 [FAST486]
- Don't forget to push the error code when the exception handler is a task gate.
- Use SS0/ESP0, SS1/ESP1, or SS2/ESP2 for ring 0/1/2 code task CALLs.


svn path=/trunk/; revision=69420
2015-09-30 21:08:31 +00:00
Ged Murphy 36196c1275 [DEVMGR]
Add typedef for CStringAtlW. Fixes msvc build

svn path=/trunk/; revision=69419
2015-09-30 19:55:52 +00:00
Pierre Schweitzer c0809f38c1 [CDROM]
Properly implement support for IOCTL_DISK_GET_DRIVE_GEOMETRY, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX, IOCTL_DISK_GET_LENGTH_INFO in CdRomDeviceControl

CORE-10287 #resolve #comment Fixed with r69418

svn path=/trunk/; revision=69418
2015-09-30 16:29:07 +00:00
Pierre Schweitzer 5dc58d234a [KMTESTS:IO]
[KMTESTS:OB]
Simplify kernel mode thread creation

svn path=/trunk/; revision=69417
2015-09-29 18:43:35 +00:00
Stefan Ginsberg 0fbe4b9b8e Remove legacy _KeNumberProcessors hack. While we are at it fix its type (CCHAR not UCHAR) and remove it from the NDK as it is a public global provided by the DDK (where we properly define it with the "__CREATE_NTOS_DATA_IMPORT_ALIAS" fix when needed. Also, the variable KeActiveProcessors is not even exported from NTOS so move it to an internal header. Fix missed fix in UDFS as well in uncompiled file.
svn path=/trunk/; revision=69416
2015-09-29 18:34:33 +00:00
Pierre Schweitzer 1129e7a935 [MOUNTMGR]
Remove last hack

svn path=/trunk/; revision=69415
2015-09-29 18:22:38 +00:00
Pierre Schweitzer 2ca6577687 [MOUNTMGR]
Get rid of a hack, thanks to r69413

svn path=/trunk/; revision=69414
2015-09-29 17:30:54 +00:00
Thomas Faber 0f64d20e8a [CRT]
- Add "memcmp" library that is used by kernel drivers to get memcmp/RtlEqualMemory
CORE-10285 #resolve

svn path=/trunk/; revision=69413
2015-09-29 17:24:48 +00:00
Pierre Schweitzer 54d56a1de4 [NTOSKRNL]
Don't bugcheck on unimplemented FsRtlOplockFsctrl(), FsRtlCurrentBatchOplock(), FsRtlCheckOplock()
Properly implement FsRtlInitializeOplock() (which is no-op on Windows 2k3)

CORE-10284 #resolve #comment Resolved with r69412

svn path=/trunk/; revision=69412
2015-09-29 16:28:59 +00:00
Hermès Bélusca-Maïto 746c7e4435 [NTVDM]
- Add floppy image automount support from the registry, as it was done for HDDs in r69390 (it's really copy-paste & adaptation of the existing code).
- Increase HDD number support from 1 to 4 (maximum) for INT 13h.

svn path=/trunk/; revision=69411
2015-09-28 22:15:06 +00:00
Pierre Schweitzer 15bcae3db8 [CDROM]
Finally implement support for IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX

svn path=/trunk/; revision=69410
2015-09-28 21:06:02 +00:00
Pierre Schweitzer fbd1e44066 [CDROM]
- Don't support IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX for now
- Properly implement IRP completion for IOCTL_DISK_GET_LENGTH_INFO, IOCTL_DISK_GET_DRIVE_GEOMETRY

svn path=/trunk/; revision=69409
2015-09-28 20:20:46 +00:00
Aleksandar Andrejevic 8041081764 [NTVDM]
Fix a division-by-zero problem by storing the mouse driver's Width and Height
in DWORDs, thus avoiding the integer overflow which could make them zero.


svn path=/trunk/; revision=69408
2015-09-28 18:55:26 +00:00
Aleksandar Andrejevic 646f9543f1 [FAST486]
- Always use the descriptor type, and never the limit, to identify
legacy vs. modern TSSes.
- Don't forget to write back the modified TSS link.


svn path=/trunk/; revision=69407
2015-09-28 18:51:48 +00:00
Pierre Schweitzer 304222462c [CDROM]
Implement IOCTL_DISK_GET_LENGTH_INFO, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, IOCTL_DISK_GET_DRIVE_GEOMETRY, IOCTL_CDROM_GET_DRIVE_GEOMETRY_EX.

Dedicated to Peter Hater
CORE-10272

svn path=/trunk/; revision=69406
2015-09-28 17:55:48 +00:00
Amine Khaldi f320087017 [TOOLS] Improve the FILE header section. Brought to you by Adam Stachowicz. CORE-10114
svn path=/trunk/; revision=69405
2015-09-28 17:31:37 +00:00
Daniel Reimer de6cadc60c [RAPPS]
Update German translation.

svn path=/trunk/; revision=69404
2015-09-28 16:16:37 +00:00
Giannis Adamopoulos 55ce4d5177 [SHELL32]
- Actually use the localized name for Control Panel.

svn path=/trunk/; revision=69403
2015-09-28 16:04:34 +00:00
Pierre Schweitzer f8adcba691 [RAPPS]
Update French translation

svn path=/trunk/; revision=69402
2015-09-28 15:29:41 +00:00
Christoph von Wittich 58125df4b5 [RAPPS]
add support for SSL certificate pinning

svn path=/trunk/; revision=69401
2015-09-28 14:09:09 +00:00
Stefan Ginsberg b0f0ec8442 [NTOS] Implement the KD Get/SetContextEx functionality (copying part of a CONTEXT via Offset + Byte Count instead of copying a whole context), and stub out KdpWriteCustomBreakpoint. Newer WinDbg uses the GetContextEx functionality regardless of whether we report it as supported or not, and didn't seem to fall back on the regular GetContext functionality when it was missing, so whatever it was using it for should work awesome now. This had no impact on the broken Registers window though. Also small fix to use the _M_XXX checks consistently.
svn path=/trunk/; revision=69400
2015-09-28 14:08:54 +00:00
Stefan Ginsberg f543c860f7 [NTOS] Fix kmtest
svn path=/trunk/; revision=69399
2015-09-28 12:48:14 +00:00