Commit graph

3081 commits

Author SHA1 Message Date
Eric Kohl
9fb8f57561 IoDestroyDriverList(): Free memory of group and service entries.
IopCreateServiceListEntry(): simplified function and reduced memory consumption.

svn path=/trunk/; revision=3116
2002-06-18 07:11:44 +00:00
Eric Kohl
b29a9b85b9 RtlQueryRegistryValues() must treat REG_MULTI_SZ and REG_EXPAND_SZ values like REG_SZ values upon direct queries.
svn path=/trunk/; revision=3115
2002-06-18 07:07:42 +00:00
joeg
57c8a1c6e3 apps/tests/tokentest.c
* Fix stupidity that prevented tokentest
  from compiling

svn path=/trunk/; revision=3114
2002-06-17 23:13:35 +00:00
joeg
941ae04aa2 ntoskrnl/ps/process.c
* Call SepCreateSystemProcessToken() when creating the
  initial system process.  Cleanup the token during
  in PiDeleteProcess().

* Call SepInitializeNewProcess() during NtCreateProcess
  to copy the parent processes token to the new process.

ntoskrnl/include/internal/se.h
ntoskrnl/se/token.c

* Change name of SepDuplicationToken() [which was unimplemented]
  to SepDuplicateToken().  Implement it.

* Implement new functions (which are used by process.c)
  SepInitializeNewProcess() and SepCreateSystemToken().

* Correctly (I think) set Token->ImpersonationLevel in
  NtCreateToken().

apps/tests/tokentest/tokentest.c

* Dump the current processes token.

svn path=/trunk/; revision=3113
2002-06-17 22:52:32 +00:00
joeg
0f1c17eda0 ntoskrnl/ke/main.c
* Move SeInit2() to before we initialize process
  management so we can create an initial system
  token to go with the initial system process.

ntoskrnl/ps/process.c
* Implement NtOpenProcessToken() by calling
  _NtOpenProcessToken() -- why do we have
  both of these?

* Fix bug in _NtOpenProcessToken() that
  caused us to crash creating the token
  handle.

* Return STATUS_INVALID_INFO_CLASS from
  NtQueryInformationProcess() and
  NtSetInformationProcess() for information classes
  documented as unqueryable or unsettable
  by Gary Nebbet in his book "Native API Reference".

* Fix bug in NtSetInformationProcess() where it
  assigns the primary token -- it derefeneced the
  old token if SeExchangePrimaryToken() failed;
  it should have derferenced it if it succeeded.

svn path=/trunk/; revision=3112
2002-06-17 22:16:34 +00:00
Robert Dickenson
eebe5809fd Created new empty module for buiding ws2help.dll
Yet to define parameters and return values for all exports.

svn path=/trunk/; revision=3111
2002-06-17 19:33:45 +00:00
Eric Kohl
81a07ed6a6 Improved driver loading sequence with respect to the group order.
Added ability to run user-mode services.

svn path=/trunk/; revision=3110
2002-06-17 15:47:32 +00:00
Eric Kohl
1b52f5ff18 Implemented direct query of REG_EXPAND_SZ values.
svn path=/trunk/; revision=3109
2002-06-17 15:42:30 +00:00
Steven Edwards
df3c5b992e added simple tcp server test
svn path=/trunk/; revision=3108
2002-06-17 06:01:17 +00:00
David Welch
279f0b0ed5 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* tools/help.mk: Make the install target depend on all the
	files to be installed.

2002-06-16  David Welch  <welch@whitehall1-5.seh.ox.ac.uk>

	* ntoskrnl/ps/thread.c (NtCallbackReturn): Set TSS.Esp0 to the
	top of the old stack.
	* ntoskrnl/ps/thread.c (NtW32Call): Set TSS.Esp0 to the top of
	the new stack. Free the callback stack correctly. Don't copy
	portion of the trap frame that doesn't exist in non-v86-mode
	interrupts.
	* ntoskrnl/ps/thread.c (PsFreeCallbackStack): New function to
	free a stack allocated with PsAllocateCallbackStack.

2002-06-16  David Welch  <welch@whitehall1-5.seh.ox.ac.uk>

	* drivers/dd/null/makefile: Commented out local LDFLAGS as
	these cause bad relocations in the stripped image.

2002-06-16  David Welch  <welch@whitehall1-5.seh.ox.ac.uk>

	* config: Corrected spelling error.

svn path=/trunk/; revision=3107
2002-06-16 21:41:16 +00:00
Jason Filby
78f1caa4a9 NtW32Call: replace sizeof(KTRAP_FRAME) with 124 bytes
svn path=/trunk/; revision=3106
2002-06-16 20:52:07 +00:00
Eric Kohl
e6b5136b65 Fixed wrong interpretation of value cell size in NtSetValueKey().
svn path=/trunk/; revision=3105
2002-06-16 20:00:34 +00:00
Casper Hornstrup
7c5d3bb9ef Revert last change
svn path=/trunk/; revision=3104
2002-06-16 17:25:58 +00:00
Casper Hornstrup
1a1942d5c0 Avoid importing _pctype when using mingw-runtime 2.0.
svn path=/trunk/; revision=3103
2002-06-16 16:27:22 +00:00
Eric Kohl
d783d4d686 Fixed loading of symbol files.
Implemented automatic loading of PICE.

svn path=/trunk/; revision=3102
2002-06-16 11:45:06 +00:00
Steven Edwards
56deabe577 Updated Makefile to fix building
svn path=/trunk/; revision=3101
2002-06-16 06:05:28 +00:00
Steven Edwards
a8b847f532 Fixed include path in ramdriver
svn path=/trunk/; revision=3100
2002-06-16 06:02:17 +00:00
Steven Edwards
4d831f2242 Fixed building of Serial Mouse driver (still broken)
svn path=/trunk/; revision=3099
2002-06-16 04:47:56 +00:00
Eric Kohl
7c25d62093 Changed calling convention of EngXxx funtions to STDCALL.
Added missing includes.

svn path=/trunk/; revision=3096
2002-06-15 21:44:08 +00:00
Eric Kohl
37c39cc09a Changed the calling convention used by the video miniport/port driver interface and the display driver/win32k interface (DrvXxx functions) to STDCALL.
The EngXxx and other funtions will be changed in a second step.

svn path=/trunk/; revision=3095
2002-06-15 14:58:25 +00:00
Hartmut Birr
8dd702a72b Fixed saving of esp in KePushAndStackSwitchAndSysRet.
svn path=/trunk/; revision=3094
2002-06-15 14:57:29 +00:00
Jason Filby
97970adc7d Fixed missing initialization in PsAllocateCallback
svn path=/trunk/; revision=3093
2002-06-15 11:27:28 +00:00
Eric Kohl
5e1123c888 Cleanup, add display of token values being passed into ZwCreateToken() as well as display of values coming out of the token.
(Patch by Joseph Galbraith)

svn path=/trunk/; revision=3092
2002-06-15 10:13:35 +00:00
Eric Kohl
6017a8515d Enable %wZ and %Z format specifiers (remove #if 0).
Fix check for NULL Buffer (it was checking for non-null Buffer).
Fix length field when printing unicode strings; it was printing twice as many characters as it should have.
(Patch by Joseph Galbraith)

svn path=/trunk/; revision=3091
2002-06-15 10:12:43 +00:00
Eric Kohl
165c6d209a Fix bug in RtlEqualSid() that caused all sids with the same sub-authority count to compare equal.
Teach RtlpAddKnownAce() some status values other than STATUS_UNSUCCESSFUL.
(Patch by Joseph Galbraith)

svn path=/trunk/; revision=3090
2002-06-15 10:10:43 +00:00
Eric Kohl
fd874ecc14 Fix bug in RtlpAddKnownAce() that caused it to place the SID in the wrong location.
Teach RtlpAddKnownAce() some status values other than STATUS_UNSUCCESSFUL.
(Patch by Joseph Galbraith)

svn path=/trunk/; revision=3089
2002-06-15 10:09:17 +00:00
Jason Filby
b6b3e3f14e Bugfix: correct memory allocation calculation
svn path=/trunk/; revision=3088
2002-06-14 20:56:17 +00:00
Jason Filby
b592122ee6 Fixed another typo
svn path=/trunk/; revision=3087
2002-06-14 19:07:32 +00:00
Jason Filby
0a5b749896 Fixed some typos
svn path=/trunk/; revision=3086
2002-06-14 18:55:09 +00:00
Casper Hornstrup
5b804e36db Don't install static libraries.
svn path=/trunk/; revision=3085
2002-06-14 17:17:38 +00:00
Jason Filby
a0c16e128a GuiCheck for NtUserRegisterClassExWOW
svn path=/trunk/; revision=3081
2002-06-14 15:21:43 +00:00
Eric Kohl
260116f684 Fixed direct reference to a driver object.
svn path=/trunk/; revision=3080
2002-06-14 14:24:28 +00:00
Eric Kohl
01b92c6de5 Pass pointer to CSRSS process on first create request.
svn path=/trunk/; revision=3079
2002-06-14 14:23:14 +00:00
Eric Kohl
69c0982e64 Added vga driver
svn path=/trunk/; revision=3078
2002-06-14 14:19:28 +00:00
Casper Hornstrup
7e27a9348f Delete dependency files on clean
svn path=/trunk/; revision=3077
2002-06-14 13:20:08 +00:00
Casper Hornstrup
49051a245f Use standard mingw32 prefix on linux.
svn path=/trunk/; revision=3076
2002-06-14 13:04:18 +00:00
Casper Hornstrup
8d0ecd86c9 Make clean rule depend on tools rule
svn path=/trunk/; revision=3075
2002-06-14 11:06:03 +00:00
Eric Kohl
503826a739 Fixed automatic loading of required modules.
Cleaned up module loading interface.

svn path=/trunk/; revision=3074
2002-06-14 07:49:58 +00:00
David Welch
fd2a5c35a4 Split up some stubs into their own files.
svn path=/trunk/; revision=3068
2002-06-13 20:36:40 +00:00
Hartmut Birr
e019c02170 Reseting the conversion qualifier for each new value from the format string.
svn path=/trunk/; revision=3063
2002-06-13 16:45:02 +00:00
Eric Kohl
e2822009d7 Fixed driver unloading upon failing initialization.
svn path=/trunk/; revision=3062
2002-06-13 15:14:28 +00:00
Brian Palmer
63ea3fb94c Cross-platform tools added to Makefiles.
svn path=/trunk/; revision=3061
2002-06-13 00:39:49 +00:00
Eric Kohl
6ab0a870c1 Updated the system hive and the boot driver list.
svn path=/trunk/; revision=3060
2002-06-12 23:38:28 +00:00
Eric Kohl
6f7c3842bc Now ZwLoadDriver() uses the registry path instead of a file name to load a driver.
svn path=/trunk/; revision=3059
2002-06-12 23:35:55 +00:00
Eric Kohl
9d3870ce78 Cleaned up the driver loading routines.
svn path=/trunk/; revision=3058
2002-06-12 23:33:15 +00:00
Eric Kohl
2137580260 Use the registry to load system start drivers.
svn path=/trunk/; revision=3057
2002-06-12 23:30:36 +00:00
Eric Kohl
0f47c75c9a Use NtSetSystemInformation() to load win32k.sys because it is not a driver but a kernel extension.
svn path=/trunk/; revision=3056
2002-06-12 23:26:56 +00:00
Eric Kohl
c16bc4c28d RtlpGetRegistryHandle(): Don't remove a leading backslash if an absolute registry path is used.
svn path=/trunk/; revision=3055
2002-06-12 23:24:19 +00:00
Casper Hornstrup
debb46b5c3 BugCheck if no boot drivers are passed to ntoskrnl.exe
svn path=/trunk/; revision=3054
2002-06-12 14:06:29 +00:00
Casper Hornstrup
a07b0d8b8e * Call RtlCreateUnicodeString() instead of RtlInitUnicodeString() when
initializing the DeviceNode->ServiceName, since IopFreeDeviceNode()
  will use RtlFreeUnicodeString() on it.

* Call ObDereferenceObject() instead of ExFreePool() to release the
  DeviceObject if DriverEntry fails.
  Patch from Joseph Galbraith.

svn path=/trunk/; revision=3053
2002-06-12 14:05:03 +00:00