Commit graph

24740 commits

Author SHA1 Message Date
Alex Ionescu 107cb5719e - Remove/deprecate some certain chunks of Cm which are not critical to booting and not even to applications (such as NtSaveKey, which didn't even have NtRestoreKey) and mark them as unimplemented functions.
- This doesn't do much but clean up some of our code to make it easier to see what the critical parts are and reduce bug surface exposure.
- Move and slightly reformat (without touching any of the actual code) registry callback/notification code to cmhook.c.

svn path=/trunk/; revision=26671
2007-05-10 09:14:15 +00:00
Alex Ionescu e72d90dbc8 - Move CmpSetSystemValues to cmsysini.c
- Remove all NTLDR-style profile code from cmsysini.c, since ReactOS doesn't support it, and there's no use lugging that code around.
- Rename CmpCreateCurrentControlSetLink to CmpCreateControlSet.
- Get rid of CmiCreateCuttenControlSetLink and use the new version instead, which also supports setting the right current Hardware Profile ID.

svn path=/trunk/; revision=26670
2007-05-10 01:48:54 +00:00
Alex Ionescu 0285323c9d - Refactor the registry initialization code to be somewhat closer to the Cm rewrite branch.
- No actual code/implementation changes per-se, simply moved code into new routines, deleted old routines, renamed some routines and added more error-checking.
- Also performed registry initialization in an order more analogous to Windows.
- Added cmsysini.c from the branch, but it's not used at the moment.

svn path=/trunk/; revision=26669
2007-05-10 00:02:04 +00:00
Alex Ionescu 83bd3b5fc0 - Fix crash in Install CD introduced in 26666, with a ludicrious hack for FreeLDR
svn path=/trunk/; revision=26668
2007-05-09 21:15:52 +00:00
Aleksey Bragin 959a4b6f1e - Add error messages to prevent silent failing, no functionality change.
svn path=/trunk/; revision=26667
2007-05-09 20:52:08 +00:00
Alex Ionescu 33ea79c7fe - Implement CmGetSystemControlValues and all related low-level Cm functionality required to select the proper control set and read all the kernel variables during Phase 0 initialization. We can now read time-zone data, version, suite, language IDs and other important kernel variables in the lowest-level boot phase.
- New code uses cmlib from Filip Navara without any modification, and is fully compatible with reading Windows hives as well except XP's "Big value cells" (cells with > 2GB data) which aren't supported.
- Create /config directory where the new Configuration Manager code lies.

svn path=/trunk/; revision=26666
2007-05-09 18:30:21 +00:00
Alex Ionescu 5aaa1671e7 1) Update KiPcToFileHeader to work in early-boot stage by looking through the KeLoaderBlock instead.
2) Make KeRosDumpStrackFrames use KiPcToFileHeader instead of KiRosPrintAddress. The end result is the same but we don't recursively bugcheck anymore during Phase 0 bugchecks :)

svn path=/trunk/; revision=26665
2007-05-09 16:15:22 +00:00
Aleksey Bragin d80647e124 - Add km regtests to build.
- Add a very simple memory monitor (to be improved later).

svn path=/trunk/; revision=26664
2007-05-09 11:55:19 +00:00
Aleksey Bragin 7ba021c0ca - Move tests from trunk.
svn path=/trunk/; revision=26663
2007-05-09 11:18:34 +00:00
Aleksey Bragin 93510b1a0f - Delete /drivers dir (it's gonna be created by svn copy commit)
svn path=/trunk/; revision=26662
2007-05-09 11:17:46 +00:00
Aleksey Bragin 8088e369f7 - Create a place for kernel-mode regression testing drivers.
svn path=/trunk/; revision=26661
2007-05-09 11:13:20 +00:00
Alex Ionescu 2f0daf6186 - Fix line endings.
svn path=/trunk/; revision=26660
2007-05-09 04:55:24 +00:00
Alex Ionescu b4e9b56b39 - Added more improvements/fixes to the Executive Initialization code:
- We now print out error messages at each SESSIONX_INITIALIZATION_FAILURE directly on the screen.
  - Build CmNtCSDVersion to include SP1 and our SVN Revision number.
  - Build CmNtSpBuildNumber with the actual SP1 build number.
  - Detect Headless Terminal usage.
  - Build and create the CmVersionString.
  - Display a startup banner similar to Windows based on the CmVersionString, also indicating the SVN revision.
  - Fix some bugs in the timezone code.
  - Display a second startup banner like Windows's, displaying memory and CPU counts.
  - Add calls to initialize RANGE_LISTs, the Prefetecher, XIP Support and Phase 2 Executive Initialization.
  - Parse the command line to detect /SAFEBOOT: switch and which type of safe mode boot this is.
  - Display an optional third startup banner showing which safemode boot type this is.
  - Detect /BOOTLOG switch and display a fourth startup banner if it's enabled, but don't initialize boot logging yet.
  - Don't allow driver loading to push the progress bar beyond 75%.
  - Write safe-boot type to registry, detect AlternateShell mode and validate that one is configured.
  - Write MININT key to registry if booting in WinPE (LiveCD) mode.
  - Don't leak smss environment and parameters anymore.
  - Cleanup and reformat some code, use VER_ constants instead of magic numbers.

svn path=/trunk/; revision=26659
2007-05-09 00:44:45 +00:00
Alex Ionescu 0724e3d18e - Add CcPf (Cache Manager PreFetcher) structures and add a stub function to initailize the global settings for the pre-fetcher (only a lock and list for now).
- Add hdlsterm.c for Headless Terminal Support and a stub function to detect if anyone is trying to do this.
- Add xipdisp.c for eXecute-In-Place Support and add a stub function to detect if anyone is trying this, as well as get various supported command line settings.
- Try to find XIP Memory Descriptor if one was given.
- Get Power Event callback from Win32k in PsEstablishWin32Callouts.
- Notifiy System Time Change callback with PoNotifySystemTimeSet.
- Add safemode and bootlog Message IDs.

svn path=/trunk/; revision=26658
2007-05-09 00:29:38 +00:00
Alex Ionescu da6c47f5f8 - Stripped down ntstrafe.h routines required for a future patch, and for basic functionality. Do not support any flags yet (and will ASSERT if attempt is made): RtlStringCbCopyA, RtlStringCbCatExA, RtlStringCbCopyExA, RtlStringCbPrintfExA, RtlStringCbPrintfA.
svn path=/trunk/; revision=26657
2007-05-09 00:06:18 +00:00
Alex Ionescu f0b1b0e858 - Buildno now generates a KERNEL_VERSION_BUILD_HEX ULONG containing the SVN revision.
svn path=/trunk/; revision=26656
2007-05-08 23:00:35 +00:00
Eric Kohl 0ab223d167 Save user cursor schemes using the environment variables SystemRoot, USERPROFILE or ProgramFiles in the cursor paths instead of absolute paths.
svn path=/trunk/; revision=26655
2007-05-08 22:13:18 +00:00
Alex Ionescu 651efa4a73 - Fix broken definition of IsBoostAllowed which would cause ERESOURCE boosts to be applied backwards.
- Use cleaner, inlined definitions for ExAcquire/ReleaseResourceLock.
- Convert ERESOURCE code to use a Queued In-Stack Spinlock instead of a regular spinlock.
- Force usage of the spinlock instead of cli/sti for DBG builds, and enable strict sanity checks.
- Fix incorrect check in ExpCheckForApcsDisabled.
- Properly handle memory starvation in the contended path.
- Make sure to allocate a semaphore if needed during ExAcquireSharedStarveExclusive.
- Fix multiple bugs in ExIsResourceAcquiredSharedLite.
- ExReleaseResourceForThreadLite didn't always properly set the ResourceOwnedExclusive flag, and didn't validate ownership.
- ExSetResourceOwnerPointer wouldn't set the owner if there wasn't one already.

svn path=/trunk/; revision=26654
2007-05-08 21:35:10 +00:00
Aleksey Bragin b5d4ee9e39 - Fix unshielded "return"s inside PSEH blocks, in the kernel.
- Fix formatting of a couple of lines.

svn path=/trunk/; revision=26653
2007-05-08 10:32:16 +00:00
Aleksey Bragin 182dd09c91 - Fix an unshielded "return" inside a PSEH block.
svn path=/trunk/; revision=26652
2007-05-08 09:01:39 +00:00
Timo Kreuzer 64b29c8149 - fix resources
svn path=/trunk/; revision=26651
2007-05-07 09:27:43 +00:00
Hervé Poussineau deb7fbe415 Fix memory corruption in freeldr
svn path=/trunk/; revision=26650
2007-05-06 07:35:57 +00:00
Eric Kohl 6786d8e6a9 The current cursor scheme will now be loaded correctly and the scheme list will display the correct name of the cursor scheme.
svn path=/trunk/; revision=26649
2007-05-06 02:06:30 +00:00
Eric Kohl e0364c78da Remove outdated email addresses.
svn path=/trunk/; revision=26648
2007-05-05 11:32:25 +00:00
Dmitry Gorbachev 5cfa655cbc Update Polish translation (bug #2233).
svn path=/trunk/; revision=26647
2007-05-05 08:16:59 +00:00
Martin Fuchs 231dcbf43a update to XMLStorage version 1.2
svn path=/trunk/; revision=26646
2007-05-05 07:30:20 +00:00
Dmitry Gorbachev 841a6e2567 Fix a bug in stub generation code. There are some other lesser bugs.
svn path=/trunk/; revision=26645
2007-05-05 03:48:20 +00:00
Dmitry Gorbachev 2210b29b99 Chinese translation (bug report #2221).
svn path=/trunk/; revision=26644
2007-05-04 23:31:08 +00:00
Dmitry Gorbachev 4559868d74 Chinese translation by Zhangbing (bug #2222).
svn path=/trunk/; revision=26643
2007-05-04 23:30:48 +00:00
Dmitry Gorbachev 231b59a486 Fix a typo in translation. Bug report #2233.
svn path=/trunk/; revision=26642
2007-05-04 23:27:54 +00:00
Dmitry Gorbachev a11eecdb83 Update Polish translation. Patch by Lech Groblewicz
<xrogers'at'gmail'dot'com> and Olaf Siejka. Bug #2233.

svn path=/trunk/; revision=26641
2007-05-04 23:27:28 +00:00
Dmitry Gorbachev 2408771fff Patch for reformatting the cabman code, Colin Finck, see bug report #2234.
svn path=/trunk/; revision=26640
2007-05-04 22:21:55 +00:00
Eric Kohl 0a981d42cf Removed my name because these files no longer contain any code written by me.
svn path=/trunk/; revision=26639
2007-05-04 22:15:13 +00:00
Eric Kohl 21cced5dc3 Removed my name because I did not write this file!
svn path=/trunk/; revision=26638
2007-05-04 21:59:25 +00:00
Sylvain Petreolle 103b32e6e4 slash is alive !
-#include "..\gditest.h"
+#include "../gditest.h"


svn path=/trunk/; revision=26637
2007-05-04 21:23:42 +00:00
Aleksey Bragin 34aac7b904 - Add fundamental VCB structure, and function to initialize it.
- Add common headers to all xCB structures.
- All development is being done according to Rajeev Nagar's book and some parts are inspired by its accompanying FSD sample.

svn path=/trunk/; revision=26636
2007-05-04 18:34:48 +00:00
Aleksey Bragin e45d903111 - Fixes and changes to NPFS debug printing system, so it actually works now.
svn path=/trunk/; revision=26635
2007-05-04 13:40:14 +00:00
Aleksey Bragin 57ba31d95a - Add function stubs
- Add simple dbgprinting mechanism for easier debugging.

svn path=/trunk/; revision=26634
2007-05-04 11:50:41 +00:00
Hervé Poussineau 86d213a22d Set a valid (but unknown) last write time to registry keys, instead of a random one
svn path=/trunk/; revision=26633
2007-05-04 11:00:14 +00:00
Hervé Poussineau 965eebb584 Don't ignore results of IRP_MN_FILTER_RESOURCE_REQUIREMENTS
svn path=/trunk/; revision=26632
2007-05-04 10:49:53 +00:00
Aleksey Bragin 1e04962f7e - Prepare a playground for a new NPFS driver implementation.
svn path=/trunk/; revision=26631
2007-05-04 10:15:00 +00:00
Hervé Poussineau defa5fee07 Joliet supports directory names with extension.
svn path=/trunk/; revision=26630
2007-05-03 20:41:46 +00:00
Dmitry Gorbachev 9269358c6f Do not call DefFrameProc() for not yet created MDI client window.
svn path=/trunk/; revision=26629
2007-05-03 19:06:55 +00:00
Christoph von Wittich d229077222 "fix" my email address :P
svn path=/trunk/; revision=26628
2007-05-03 18:43:15 +00:00
Magnus Olsen 0acfc6fc7b Clean, writen by casper in frist place in C++ and are not complete and full with unimplement stuff, see the text file.
svn path=/trunk/; revision=26627
2007-05-03 18:32:54 +00:00
Dmitry Gorbachev 761de0042d - Fix a bug in "close all log files" code.
- Replace custom list functions by RTL ones.
- Fix indentation.

svn path=/trunk/; revision=26626
2007-05-03 07:47:12 +00:00
Aleksey Bragin 80b680b6ae - Delete cromwell-based usb drivers since they don't work with modern reactos kernel.
- Remove usbhub from the build.

svn path=/trunk/; revision=26625
2007-05-02 11:37:29 +00:00
Dmitry Gorbachev cff3ed531e Use _SEH_YIELD().
svn path=/trunk/; revision=26624
2007-05-02 08:21:57 +00:00
Dmitry Gorbachev 12a24bb9e3 Do not crash on broken pipe.
svn path=/trunk/; revision=26623
2007-05-02 03:06:18 +00:00
Timo Kreuzer 45986f803a sorry another one creeped in ;-)
svn path=/trunk/; revision=26622
2007-05-01 22:28:25 +00:00