2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
[reactos.git] / reactos / ChangeLog
1 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
2
3 * ntoskrnl/fs/util.c (FsRtlGetFileSize): Implement.
4
5 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
6
7 * lib/ntdll/rtl/nls.c (RtlCustomCPToUnicodeN, RtlMultiByteToUnicodeN,
8 RtlOemToUnicodeN, RtlUnicodeToCustomCPN, RtlUnicodeToMultiByteN,
9 RtlUnicodeToMultiByteSize, RtlUnicodeToOemN,
10 RtlUpcaseUnicodeToCustomCPN, RtlUpcaseUnicodeToMultiByteN,
11 RtlUpcaseUnicodeToOemN): Assert when unimplemented code is reached.
12
13 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
14
15 * include/ntos/zwtypes.h (FILE_BASIC_INFORMATION): Use LARGE_INTEGER,
16 not TIME type for time fields.
17 * lib/kernel32/file/copy.c (SetLastWriteTime): Adjust for new type.
18 (CopyFileExW): Ditto.
19
20 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
21
22 * include/ntos/types.h (FALSE): Protect with #ifndef FALSE.
23 (TRUE): Protect with #ifndef TRUE.
24
25 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
26
27 * include/napi/i386/segment.h (put_user, get_user,
28 bad_user_access_length, __segment_dummy, __sd, __const_sd, __put_user,
29 __get_user, __generic_memcpy_tofs, __constant_memcpy_tofs, COMMON,
30 __generic_memcpy_fromfs, __constant_memcpy_fromfs, memcpy_fromfs,
31 memcpy_tofs, get_fs_byte, get_fs_word, get_fs_long, put_fs_byte,
32 put_fs_word, put_fs_long, get_user_word, get_user_byte, get_user_long,
33 put_user_byte, put_user_word, put_user_long, get_fs, get_ds, set_fs,
34 set_ds): Remove.
35
36 2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
37
38 * include/ddk/pstypes.h (TLS_OUT_OF_INDEXES): Define.
39
40 2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
41
42 * ntoskrnl/cc/view.c (CcRosFlushDirtyPages): Treat a write attempt with
43 a return value of STATUS_END_OF_FILE as a successful write.
44 * ntoskrnl/cc/copy.c (WriteCacheSegment): Ditto.
45
46 2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
47
48 * ntoskrnl/cm/regfile.c (CmiRemoveSubKey): Kill warnings.
49 (CmiMergeFree): Ditto.
50
51 2003-02-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
52
53 * include/structs.h (OSVERSIONINFOEXA): Expand definition of
54 OSVERSIONINFOA.
55 (OSVERSIONINFOEXW): Expand definition of OSVERSIONINFOW.
56 * lib/msafd/misc/helpers.c (LocateHelperDLL): Cast AddressFamily,
57 SocketType, and Protocol to INT.
58 * lib/ws2_32/misc/catalog.c (LocateProvider): Ditto.
59
60 2003-01-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
61
62 * ntoskrnl/dbg/profile.c (KdbProfilerThreadMain): Make STDCALL.
63
64 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
65
66 * drivers/net/tcpip/makefile (TCP_OBJECTS): Add transport/tcp/tcpcore.o,
67 transport/tcp/tcp_input.o, transport/tcp/tcp_ipv4.o,
68 transport/tcp/tcp_output.o, and transport/tcp/tcp_timer.o.
69 * drivers/net/tcpip/transport/tcp/tcp.c (TCPStartup): Call tcp_init().
70 * drivers/net/tcpip/include/linux.h: New file.
71 * drivers/net/tcpip/include/tcpcore.h: Ditto.
72 * drivers/net/tcpip/include/tcpdef.h: Ditto.
73 * drivers/net/tcpip/transport/tcp/tcp_input.c: Ditto.
74 * drivers/net/tcpip/transport/tcp/tcp_ipv4.c: Ditto.
75 * drivers/net/tcpip/transport/tcp/tcp_output.c: Ditto.
76 * drivers/net/tcpip/transport/tcp/tcp_timer.c: Ditto.
77 * drivers/net/tcpip/transport/tcp/tcpcore.c: Ditto.
78
79 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
80
81 * lib/kernel32/k32.h: New file.
82 * lib/kernel32/makefile (TARGET_CFLAGS): Add -I./.
83 (TARGET_PCH): Set to k32.h.
84 * lib/kernel32/except/except.c: Use <k32.h>.
85 * lib/kernel32/file/backup.c: Ditto.
86 * lib/kernel32/file/cnotify.c: Ditto.
87 * lib/kernel32/file/copy.c: Ditto.
88 * lib/kernel32/file/create.c: Ditto.
89 * lib/kernel32/file/curdir.c: Ditto.
90 * lib/kernel32/file/delete.c: Ditto.
91 * lib/kernel32/file/deviceio.c: Ditto.
92 * lib/kernel32/file/dir.c: Ditto.
93 * lib/kernel32/file/dosdev.c: Ditto.
94 * lib/kernel32/file/file.c: Ditto.
95 * lib/kernel32/file/find.c: Ditto.
96 * lib/kernel32/file/iocompl.c: Ditto.
97 * lib/kernel32/file/lfile.c: Ditto.
98 * lib/kernel32/file/lock.c: Ditto.
99 * lib/kernel32/file/mailslot.c: Ditto.
100 * lib/kernel32/file/move.c: Ditto.
101 * lib/kernel32/file/npipe.c: Ditto.
102 * lib/kernel32/file/pipe.c: Ditto.
103 * lib/kernel32/file/rw.c: Ditto.
104 * lib/kernel32/file/tape.c: Ditto.
105 * lib/kernel32/file/volume.c: Ditto.
106 * lib/kernel32/mem/global.c: Ditto.
107 * lib/kernel32/mem/heap.c: Ditto.
108 * lib/kernel32/mem/isbad.c: Ditto.
109 * lib/kernel32/mem/local.c: Ditto.
110 * lib/kernel32/mem/procmem.c: Ditto.
111 * lib/kernel32/mem/section.c: Ditto.
112 * lib/kernel32/mem/virtual.c: Ditto.
113 * lib/kernel32/misc/atom.c: Ditto.
114 * lib/kernel32/misc/comm.c: Ditto.
115 * lib/kernel32/misc/console.c: Ditto.
116 * lib/kernel32/misc/debug.c: Ditto.
117 * lib/kernel32/misc/dllmain.c: Ditto.
118 * lib/kernel32/misc/env.c: Ditto.
119 * lib/kernel32/misc/error.c: Ditto.
120 * lib/kernel32/misc/handle.c: Ditto.
121 * lib/kernel32/misc/ldr.c: Ditto.
122 * lib/kernel32/misc/profile.c: Ditto.
123 * lib/kernel32/misc/res.c: Ditto.
124 * lib/kernel32/misc/stubs.c: Ditto.
125 * lib/kernel32/misc/sysinfo.c: Ditto.
126 * lib/kernel32/misc/time.c: Ditto.
127 * lib/kernel32/process/cmdline.c: Ditto.
128 * lib/kernel32/process/create.c: Ditto.
129 * lib/kernel32/process/proc.c: Ditto.
130 * lib/kernel32/process/session.c: Ditto.
131 * lib/kernel32/string/lstring.c: Ditto.
132 * lib/kernel32/synch/critical.c: Ditto.
133 * lib/kernel32/synch/event.c: Ditto.
134 * lib/kernel32/synch/intrlck.c: Ditto.
135 * lib/kernel32/synch/mutex.c: Ditto.
136 * lib/kernel32/synch/sem.c: Ditto.
137 * lib/kernel32/synch/timer.c: Ditto.
138 * lib/kernel32/synch/wait.c: Ditto.
139 * lib/kernel32/thread/fiber.c: Ditto.
140 * lib/kernel32/thread/thread.c: Ditto.
141 * lib/kernel32/thread/tls.c: Ditto.
142
143 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
144
145 * apps/testsets/Makefile (TEST_SETS): Remove ldr.
146 * include/msvcrt/ctype.h (towupper): Make returntype wchar_t.
147
148 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
149
150 * tools/rtouch.c: Include <sys/utime.h>, not <utime.h>.
151
152 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
153
154 * tools/rtouch.c: New file.
155 * rules.mak (ROS_USE_PCH): Default to no.
156 (RTOUCH): Define.
157 * tools/Makefile: Add rtouch utility.
158 * tools/helper.mk: Support precompiled headers.
159
160 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
161
162 * ntoskrnl/dbg/profile.c: New file.
163 * ntoskrnl/Makefile (OBJECTS_KDBG): Add dbg/profile.o.
164 * ntoskrnl/dbg/kdb.h: Define NTOS_MODE_KERNEL. Include <ntos.h>.
165 (LdrGetAddressInformation, KdbInitProfiling, KdbInitProfiling2,
166 KdbDisableProfiling, KdbEnableProfiling, KdbProfileInterrupt) Prototype.
167 * ntoskrnl/kd/kdebug.c (KdInitSystem): Add /PROFILE option if KDBG=1.
168 * ntoskrnl/ke/main.c (ExpInitializeExecutive): Call KdbInitProfiling2()
169 if KDBG=1.
170 * ntoskrnl/ke/i386/irq.c: Include <../dbg/kdb.h> if KDBG=1.
171 (KiInterruptDispatch): Call KdbProfileInterrupt() on timer interrupt
172 if KDBG=1.
173
174 2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
175
176 * drivers/fs/vfat/create.c (VfatSupersedeFile): Only notify cache manager
177 about change in file size if caching is initiated on the file stream.
178
179 2003-01-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
180
181 * boot.bat: Use DOS end-of-line characters.
182
183 2003-01-02 Casper S. Hornstrup <chorns@users.sourceforge.net>
184
185 * ntoskrnl/ke/timer.c (KeExpireTimers): Avoid signed/unsigned comparison
186 warning.
187 * lib/user32/controls/scrollbar.c (SCROLL_DrawScrollBar): Put a statement
188 at end.
189
190 2002-12-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
191
192 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Only uninitialize caching
193 when initialized.
194 * drivers/fs/vfat/fcb.c (vfatReleaseFCB): Ditto.
195 * lib/kernel32/mem/section.c (CreateFileMappingW): Pass NULL as
196 MaximumSize to NtCreateSection if dwMaximumSizeHigh and dwMaximumSizeLow
197 are both 0.
198 * ntoskrnl/cc/pin.c (CcMapData): Assert if Bcb is NULL.
199 * ntoskrnl/cc/view.c (CcRosReleaseCacheSegment, CcRosLookupCacheSegment,
200 CcRosMarkDirtyCacheSegment, CcRosUnmapCacheSegment,
201 CcRosCreateCacheSegment, CcRosGetCacheSegmentChain,
202 CcRosGetCacheSegment, CcRosRequestCacheSegment, CcFlushCache,
203 CcRosDeleteFileCache, CcRosReferenceCache, CcRosDereferenceCache,
204 CcRosReleaseFileCache, CcGetFileObjectFromSectionPtrs): Ditto.
205 * ntoskrnl/mm/section.c (MiReadPage): Assert if Fcb->Bcb is NULL.
206 (MmCreateDataFileSection): Make sure caching is initialized for the file
207 stream.
208
209 2002-11-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
210
211 * include/ddk/ldrtypes.h: Move ...
212 * include/ntos/ldrtypes.h: ... here.
213 * include/ddk/ntddk.h: Include ldrtypes.h at new location.
214
215 2002-11-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
216
217 * drivers/bus/acpi/ospm/osl.c (acpi_os_readable, acpi_os_writable):
218 Match prototypes.
219 * include/ascii.h (AbortSystemShutdownA): Correct prototype.
220 * include/debug.h (assert): Wrap in #ifndef assert.
221 * include/funcs.h (AbortSystemShutdown): Remove duplicate prototype.
222 * include/ddk/rtltypes.h: Move ...
223 * include/ntos/rtltypes.h: ... here.
224 * include/ddk/rtl.h: Move ...
225 * include/ntos/rtl.h: ... here.
226 * include/ddk/zwtypes.h: Move ...
227 * include/ntos/zwtypes.h: ... here.
228 * include/ddk/zw.h: Move ...
229 * include/ntos/zw.h: ... here.
230 | include/ddk/cmfuncs.h: Remove file; Move NtCreateKey to ntos/zw.h.
231 * include/ntos.h: #include ntos/rtltypes.h, ntos/rtl.h, ntos/zwtypes.h,
232 and ntos/zw.h.
233 * include/unicode.h: (AbortSystemShutdownW): Correct prototype.
234 * include/ddk/ntddk.h: Include headers at new location; Don't include
235 removed files.
236 * include/defines.h: Wrap definitions in w32api in #ifndef __USE_W32API.
237 * include/ntos/zwtypes.h: Ditto.
238 * include/napi/lpc.h: Ditto.
239 * include/napi/shared_data.h: Ditto.
240 * include/napi/teb.h: Ditto.
241 * include/napi/types.h: Ditto.
242 * include/ntdll/ldr.h: Ditto.
243 * include/ntdll/rtl.h: Ditto.
244 * include/ntos/console.h: Ditto.
245 * include/ntos/disk.h: Ditto.
246 * include/ntos/except.h: Ditto.
247 * include/ntos/file.h: Ditto.
248 * include/ntos/gditypes.h: Ditto.
249 * include/ntos/heap.h: Ditto.
250 * include/ntos/keyboard.h: Ditto.
251 * include/ntos/mm.h: Ditto.
252 * include/ntos/ntdef.h: Ditto.
253 * include/ntos/ps.h: Ditto.
254 * include/ntos/registry.h: Ditto.
255 * include/ntos/security.h: Ditto.
256 * include/ntos/synch.h: Ditto.
257 * include/ntos/time.h: Ditto.
258 * include/ntos/types.h: Ditto.
259 * include/ntos/port.h: Ditto.
260 * lib/advapi32/misc/shutdown.c (AbortSystemShutdownW,
261 AbortSystemShutdownA): Correct prototype.
262 * lib/advapi32/reg/reg.c: #include ntos.h.
263 * lib/advapi32/sec/misc.c: Ditto.
264 * lib/advapi32/sec/sid.c: Ditto.
265 * lib/advapi32/service/sctrl.c: Ditto.
266 * lib/advapi32/token/token.c: Ditto.
267 * lib/kernel32/misc/dllmain.c: Ditto.
268 * ntoskrnl/ex/napi.c: Ditto.
269 * ntoskrnl/rtl/i386/exception.c: Ditto.
270 * lib/advapi32/sec/ac.c: Ditto.
271 (FindFirstFreeAce, GetAce): Change PACE* to PACE_HEADER*.
272 * lib/advapi32/service/scm.c (EnumServicesStatusExA,
273 EnumServicesStatusExW, QueryServiceStatusEx): Correct prototype.
274 * lib/ntdll/rtl/ppb.c (RtlDestroyProcessParameters): Match prototype.
275 * ntoskrnl/dbg/errinfo.c (DbgGetErrorText): Use %08x, not %08lx.
276 * ntoskrnl/io/arcname.c (IoCreateSystemRootLink): Use %u, not %lu.
277 * ntoskrnl/ke/main.c (ExpInitializeExecutive): Ditto.
278 * (_main): Use %d, not %ld.
279 * ntoskrnl/include/internal/i386/ke.h: Add #pragma GCC system_header.
280 * include/ddk/ntdef.h (NTSYSAPI, NTAPI, NTKERNELAPI): Define to STDCALL;
281 Check if already defined.
282 * include/base.h (STDCALL, CDECL, CALLBACK, PASCAL): Move to ntos/types.h.
283
284 2002-11-13 Rick Gaiser <RickG81@Wanadoo.nl>
285
286 * drivers/bus/isapnp/isapnp.c (FindNextReadPort): Increment Port before
287 checking wether port address is in NE2000 address space range and returning
288 port address value.
289
290 2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
291
292 * drivers/bus/acpi/include/acpi.h: Include platform/types.h.
293 * drivers/bus/acpi/include/actypes.h: (UINT8, BOOLEAN, UCHAR, UINT16,
294 INT32, UINT32, UINT64): Disable, use the OS defined types instead.
295 * drivers/bus/acpi/include/platform/types.h: Remove all types,
296 include ntos.h instead.
297 * drivers/bus/acpi/ospm/include/acpisys.h: Don't include
298 platform/types.h.
299
300 2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
301
302 * include/defines.h: Fix warnings when bulding with gcc 3.3.
303 * include/ddk/status.h: Ditto.
304 * include/freetype/internal/ftdebug.h: Ditto.
305 * include/net/ndis.h: Ditto.
306 * lib/msafd/misc/helpers.c: Ditto.
307 * lib/user32/windows/defwnd.c: Ditto.
308 * lib/user32/windows/window.c: Ditto.
309 * ntoskrnl/cm/ntfunc.c: Ditto.
310 * ntoskrnl/cm/regfile.c: Ditto.
311 * ntoskrnl/cm/regobj.c: Ditto.
312 * ntoskrnl/dbg/errinfo.c: Ditto.
313 * ntoskrnl/ex/hashtab.c: Ditto.
314 * ntoskrnl/include/internal/mm.h: Ditto.
315 * ntoskrnl/io/irp.c: Ditto.
316 * ntoskrnl/kd/gdbstub.c: Ditto.
317 * ntoskrnl/ke/queue.c: Ditto.
318 * ntoskrnl/ke/sem.c: Ditto.
319 * ntoskrnl/ldr/resource.c: Ditto.
320 * ntoskrnl/mm/balance.c: Ditto.
321 * ntoskrnl/mm/freelist.c: Ditto.
322 * ntoskrnl/mm/mdl.c: Ditto.
323 * ntoskrnl/mm/npool.c: Ditto.
324 * ntoskrnl/mm/section.c: Ditto.
325 * ntoskrnl/rtl/error.c: Ditto.
326 * ntoskrnl/rtl/mem.c: Ditto.
327 * ntoskrnl/rtl/string.c: Ditto.
328 * ntoskrnl/rtl/time.c: Ditto.
329 * ntoskrnl/rtl/unicode.c: Ditto.
330 * ntoskrnl/rtl/wstring.c: Ditto.
331 * ntoskrnl/rtl/i386/exception.c: Ditto.
332 * subsys/win32k/freetype/src/base/ftinit.c: Ditto.
333
334 2002-11-03 Casper S. Hornstrup <chorns@users.sourceforge.net>
335
336 * apps/tests/lpc/lpcclt.c: Change LPC_MESSAGE_HEADER to LPC_MESSAGE.
337 * include/csrss/csrss.h: Ditto.
338 * include/lsass/lsass.h: Ditto.
339 * include/napi/dbg.h: Ditto.
340 * include/napi/lpc.h: Ditto.
341 * lib/kernel32/misc/console.c: Ditto.
342 * lib/ntdll/csr/lpc.c: Ditto.
343 * lib/ntdll/dbg/debug.c: Ditto.
344 * lib/secur32/lsa.c: Ditto.
345 * ntoskrnl/dbg/user.c: Ditto.
346 * ntoskrnl/include/internal/port.h: Ditto.
347 * ntoskrnl/lpc/connect.c: Ditto.
348 * ntoskrnl/lpc/reply.c: Ditto.
349 * ntoskrnl/ps/process.c: Ditto.
350 * subsys/csrss/api/conio.c: Ditto.
351 * subsys/csrss/api/process.c: Ditto.
352 * subsys/csrss/api/user.c: Ditto.
353
354 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
355
356 * lib/msvcrt/except/seh.s: Fix end-of-line formatting.
357 * lib/ntdll/rtl/i386/exception.c: Ditto.
358 * lib/ntdll/rtl/i386/except.s: Ditto.
359 * ntoskrnl/rtl/i386/except.s: Ditto.
360 * ntoskrnl/rtl/i386/seh.s: Ditto.
361
362 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
363
364 * lib/msvcrt/Makefile (OBJECTS_EXCEPT): Add except/seh.o; Remove
365 except/exhand3.o.
366 * lib/msvcrt/except/exhand2.c (MsvcrtDebug): New function.
367 * lib/msvcrt/except/unwind.c (PEXCEPTION_FRAME): Remove.
368 (_global_unwind2): Correct prototype.
369 * lib/ntdll/makefile (RTL_I386_OBJECTS, ARCH_OBJECTS): New groups.
370 (TARGET_OBJECTS): Add ARCH_OBJECTS group.
371 * lib/ntdll/rtl/exception.c (KiUserExceptionDispatcher): Set
372 NumberParameters in exception record.
373 (RtlRaiseStatus): Remove.
374 * ntoskrnl/Makefile (OBJECTS_RTL): Remove rtl/seh.o.
375 (OBJECTS_RTL_I386): Add rtl/i386/except.o, rtl/i386/exception.o, and
376 rtl/i386/seh.o.
377 * ntoskrnl/ke/catch.c (RtlpExecuteHandlerForException,
378 RtlpDumpExceptionRegistrations, RtlpDispatchException,
379 RtlpExecuteHandler, RtlpExceptionHandler, RtlpUnwindHandler,
380 RtlpExecuteHandlerForException, RtlpExecuteHandlerForUnwind,
381 RtlUnwind): Remove.
382 (RtlpDispatchException): Add prototype.
383 * ntoskrnl/ke/i386/usertrap.c (ExceptionTypeStrings): Remove.
384 * ntoskrnl/ps/create.c (PsCreateTeb): Mark end of exception
385 registration list.
386 * tools/helper.mk (TARGET_ASFLAGS): Add -g if DBG = 1.
387 * lib/msvcrt/except/exhand3.c: Remove.
388 * ntoskrnl/rtl/seh.c: Ditto.
389 * lib/msvcrt/except/seh.s: New file.
390 * lib/ntdll/rtl/i386/except.s: Ditto.
391 * lib/ntdll/rtl/i386/exception.c: Ditto.
392 * ntoskrnl/rtl/i386/except.s: Ditto.
393 * ntoskrnl/rtl/i386/exception.c: Ditto.
394 * ntoskrnl/rtl/i386/seh.s: Ditto.
395
396 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
397
398 * lib/kernel32/process/create.c (_except_handler): New function.
399 (BaseProcessStart): Ditto.
400 (KlCreateFirstThread): Return INVALID_HANDLE_VALUE on error; Call
401 BaseProcessStart() before process entry point.
402 * lib/kernel32/thread/thread.c (_except_handler): New function.
403 (ThreadStartup): Protect thread using SEH constructs.
404
405 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
406
407 * include/ddk/zw.h (NtProcessStartup): Use standard calling convention.
408 * subsys/csrss/csrss.c (NtProcessStartup): Ditto.
409 * subsys/smss/smss.c (NtProcessStartup): Ditto.
410 * subsys/system/autochk/autochk.c (NtProcessStartup): Ditto.
411 * subsys/system/usetup/usetup.c (NtProcessStartup): Ditto.
412
413 2002-10-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
414
415 * apps/tests/tokentest/tokentest.c (ROS_ACE_HEADER): Move field
416 AccessMask ...
417 (ROS_ACE): ... here.
418 (DisplayDacl): Make pAce an ROS_ACE*; Use new path for AceType; Use
419 sizeof(ACE) instead of sizeof(ACE_HEADER).
420 * include/ntos/security.h (ACE_HEADER): Move field AccessMask ...
421 (ACE): ... here.
422 * lib/ntdll/rtl/acl.c: Use new path for AccessMask.
423 * ntoskrnl/se/semgr.c: Ditto.
424 * ntoskrnl/se/acl.c (SepInitDACLs): Use new path for AccessMask; Use
425 sizeof(ACE) instead of sizeof(ACE_HEADER).
426 * ntoskrnl/se/token.c (SepCreateSystemProcessToken): Use sizeof(ACE)
427 instead of sizeof(ACE_HEADER).
428
429 2002-10-20 Casper S. Hornstrup <chorns@users.sourceforge.net>
430
431 * include/napi/teb.h (RTL_USER_PROCESS_PARAMETERS): Use field names
432 as described in Windows NT/2000 Native API Reference.
433 * lib/kernel32/file/file.c: Use new field names.
434 * lib/kernel32/misc/console.c: Ditto.
435 * lib/kernel32/process/create.c: Ditto.
436 * lib/kernel32/process/proc.c: Ditto.
437 * lib/ntdll/rtl/path.c: Ditto.
438 * lib/ntdll/rtl/ppb.c: Ditto.
439 * lib/ntdll/rtl/process.c: Ditto.
440
441 2002-10-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
442
443 * include/ntos.h: Include relevant files.
444 * include/internal/ke.h: Include files relative to
445 ntoskrnl/include.
446 * include/internal/arch/ke.h: Ditto.
447
448 2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
449
450 * drivers/dd/floppy/floppy.c: Changed PAGESIZE to PAGE_SIZE.
451 * drivers/fs/cdfs/fcb.c: Ditto.
452 * drivers/fs/cdfs/fsctl.c: Ditto.
453 * drivers/fs/cdfs/rw.c: Ditto.
454 * drivers/fs/ext2/dir.c: Ditto.
455 * drivers/fs/ext2/inode.c: Ditto.
456 * drivers/fs/ext2/rw.c: Ditto.
457 * drivers/fs/ext2/super.c: Ditto.
458 * drivers/fs/minix/blockdev.c: Ditto.
459 * drivers/fs/minix/cache.c: Ditto.
460 * drivers/fs/minix/inode.c: Ditto.
461 * drivers/fs/minix/rw.c: Ditto.
462 * drivers/fs/ntfs/fcb.c: Ditto.
463 * drivers/fs/ntfs/ntfs.h: Ditto.
464 * drivers/fs/vfat/create.c: Ditto.
465 * drivers/fs/vfat/direntry.c: Ditto.
466 * drivers/fs/vfat/dirwr.c: Ditto.
467 * drivers/fs/vfat/fat.c: Ditto.
468 * drivers/fs/vfat/fcb.c: Ditto.
469 * drivers/fs/vfat/fsctl.c: Ditto.
470 * drivers/fs/vfat/rw.c: Ditto.
471 * drivers/storage/class2/class2.c: Ditto.
472 * drivers/storage/scsiport/scsiport.c: Ditto.
473 * hal/halx86/adapter.c: Ditto.
474 * hal/halx86/mp.c: Ditto.
475 * include/ddk/mmfuncs.h: Ditto.
476 * include/ddk/mmtypes.h: Ditto.
477 * include/ddk/i386/pagesize.h: Ditto.
478 * include/ntdll/pagesize.h: Ditto.
479 * lib/kernel32/process/create.c: Ditto.
480 * lib/kernel32/thread/thread.c: Ditto.
481 * lib/ntdll/ldr/utils.c: Ditto.
482 * lib/ntdll/rtl/env.c: Ditto.
483 * lib/ntdll/rtl/heap.c: Ditto.
484 * lib/ntdll/rtl/ppb.c: Ditto.
485 * lib/ntdll/rtl/process.c: Ditto.
486 * lib/ntdll/rtl/thread.c: Ditto.
487 * ntoskrnl/cc/copy.c: Ditto.
488 * ntoskrnl/cc/view.c: Ditto.
489 * ntoskrnl/ex/sysinfo.c: Ditto.
490 * ntoskrnl/include/internal/i386/mm.h: Ditto.
491 * ntoskrnl/io/mdl.c: Ditto.
492 * ntoskrnl/ke/kthread.c: Ditto.
493 * ntoskrnl/ke/i386/kernel.c: Ditto.
494 * ntoskrnl/ldr/init.c: Ditto.
495 * ntoskrnl/ldr/loader.c: Ditto.
496 * ntoskrnl/mm/anonmem.c: Ditto.
497 * ntoskrnl/mm/cont.c: Ditto.
498 * ntoskrnl/mm/freelist.c: Ditto.
499 * ntoskrnl/mm/iospace.c: Ditto.
500 * ntoskrnl/mm/kmap.c: Ditto.
501 * ntoskrnl/mm/marea.c: Ditto.
502 * ntoskrnl/mm/mdl.c: Ditto.
503 * ntoskrnl/mm/mminit.c: Ditto.
504 * ntoskrnl/mm/ncache.c: Ditto.
505 * ntoskrnl/mm/npool.c: Ditto.
506 * ntoskrnl/mm/pagefile.c: Ditto.
507 * ntoskrnl/mm/pageop.c: Ditto.
508 * ntoskrnl/mm/section.c: Ditto.
509 * ntoskrnl/mm/slab.c: Ditto.
510 * ntoskrnl/mm/i386/page.c: Ditto.
511 * ntoskrnl/ob/handle.c: Ditto.
512 * ntoskrnl/ps/create.c: Ditto.
513 * ntoskrnl/ps/process.c: Ditto.
514 * ntoskrnl/ps/w32call.c: Ditto.
515 * subsys/win32k/include/object.h: Ditto.
516
517 2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
518
519 * lib/ntdll/string/ctype.c: Undefine __MSVCRT__ to not have mingw
520 runtime import _pctype.
521
522 2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
523
524 * lib/user32/misc/desktop.c (string.h): Include.
525 * lib/user32/misc/resources.c: Ditto.
526 * lib/user32/misc/winhelp.c: Ditto.
527 * lib/user32/windows/accel.c: Ditto.
528 * lib/user32/windows/bitmap.c: Ditto.
529 * subsys/win32k/freetype/ctype.c: Undefine __MSVCRT__ and _pctype to not
530 have mingw runtime import _pctype.
531
532 2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
533
534 * ntoskrnl/cc/view.c (alloca): Prototype.
535 * ntoskrnl/rtl/ctype.c: Undefine __MSVCRT__ to not have mingw runtime
536 import _pctype.
537
538 2002-08-26 David Welch <welch@computer2.darkstar.org>
539
540 * lib/gdi32/misc/dllmain.c (GdiDllInitialize): Don't initialize
541 win32k.sys for each process.
542 * subsys/csrss/init.c (CsrServerInitialization): Initialize
543 win32k.sys as well.
544
545 2002-08-26 David Welch <welch@computer2.darkstar.org>
546
547 * ntoskrnl/ps/process.c (NtCreateProcess): Reference the
548 parent process's handle using ExGetPreviousMode.
549
550 2002-08-26 David Welch <welch@computer2.darkstar.org>
551
552 * lib/user32/misc/dllmain.c (Init): Initialize gdi32 as well.
553
554 2002-08-26 David Welch <welch@computer2.darkstar.org>
555
556 * iface/addsys/genw32k.c (main, process): Generate a set of
557 stubs for csrss as well.
558
559 2002-08-26 David Welch <welch@computer2.darkstar.org>
560
561 * lib/kernel32/process/create.c (CreateProcessW): Initialize
562 all the members of the new process's PPB.
563
564 2002-08-17 David Welch <welch@computer2.darkstar.org>
565
566 * ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): Ensure the
567 process isn't freed in the middle of our operations.
568
569 2002-08-17 David Welch <welch@computer2.darkstar.org>
570
571 * drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation): Fixed.
572
573 2002-08-17 David Welch <welch@computer2.darkstar.org>
574
575 * ntoskrnl/ps/create.c (PiDeleteThread): Don't dereference
576 the thread's process while holding the thread list lock.
577
578 2002-08-17 David Welch <welch@computer2.darkstar.org>
579
580 * ntoskrnl/mm/section.c (MmMapViewOfSection): Check there is
581 enough space for all parts of an image before mapping it; if
582 there isn't enough space free at the preferred base address
583 then try to choose a different one.
584
585 2002-08-17 David Welch <welch@computer2.darkstar.org>
586
587 * ntoskrnl/mm/mpw.c (MmInitMpwThread): Run the MPW thread at
588 idle priority.
589
590 2002-08-17 David Welch <welch@computer2.darkstar.org>
591
592 * ntoskrnl/mm/kmap.c (ExUnmapPage, ExAllocatePageWithPhysPage,
593 MiFreeNonPagedPoolRegion, MiAllocNonPagedPoolRegion): Maintain
594 a hint of the next free page; makes running with whole page
595 allocation more bearable.
596
597 2002-08-17 David Welch <welch@computer2.darkstar.org>
598
599 * ntoskrnl/mm/anonmem.c (MmPageOutVirtualMemory): Show an
600 out of swap space message if we are out of swap space.
601 * ntoskrnl/mm/section.c (MmPageOutSectionView): Show an
602 out of swap space message if we are out of swap space.
603 * ntoskrnl/mm/pagefile.c (MmAllocSwapPage): Don't automatically
604 show an out of swap space message on failure.
605 * ntoskrnl/mm/pagefile.c (MmShowOutOfSpaceMessagePagingFile): New
606 function to notify the user that the pagefile is full.
607
608 2002-08-17 David Welch <welch@computer2.darkstar.org>
609
610 * drivers/lib/zlib/Makefile: Create a dummy zlib.sym
611
612 2002-08-16 David Welch <welch@computer2.darkstar.org>
613
614 * ntoskrnl/mm/npool.c (ExAllocateWholePageBlock): Converted
615 to use PHYSICAL_ADDRESS type for page address.
616
617 2002-08-16 David Welch <welch@computer2.darkstar.org>
618
619 * subsys/win32k/ntuser/class.c (W32kCreateClass): Corrected
620 typo when calculating the offset into the class object to
621 put the class name string.
622
623 2002-08-16 David Welch <welch@computer2.darkstar.org>
624
625 * ntoskrnl/ps/thread.c (PsDispatchThreadNoLock): Don't call
626 the reaper function directly; set an event to wake up a seperate
627 reaper thread.
628 * ntoskrnl/ps/thread.c (PsReaperThreadMain): New function that
629 waits for a notification and then calls PsReapThreads.
630 * ntoskrnl/ps/thread.c (PsInitThreadManagement): Create the
631 reaper thread.
632
633 2002-08-15 David Welch <welch@computer2.darkstar.org>
634
635 * lib/advapi32/misc/dllmain.c (DllMain): Removed debug message.
636
637 2002-08-14 David Welch <welch@computer2.darkstar.org>
638
639 * subsys/smss/init.c (SmPagingFilesQueryRoutine): If possible
640 take the size of the paging file from the registry.
641
642 2002-08-14 David Welch <welch@computer2.darkstar.org>
643
644 * ntoskrnl/mm/section.c (MmCreateDataFileSection): Extend the
645 section if necessary.
646
647 2002-08-14 David Welch <welch@computer2.darkstar.org>
648
649 * ntoskrnl/mm/pagefile.c (NtCreatePagingFile): Set the file
650 size using the FileAllocationInformation class.
651
652 2002-08-14 David Welch <welch@computer2.darkstar.org>
653
654 * ntoskrnl/mm/anonmem.c (MmWritePageVirtualMemory): Implemented
655 function to write anonymous memory pages to the swap file.
656 * ntoskrnl/mm/anonmem.c (MmFreeVirtualMemoryPage): Free any
657 swap page associated with the page.
658 * ntoskrnl/mm/mpw.c (MmWriteDirtyPages): New function to find
659 pages to write to disk.
660 * ntoskrnl/mm/mpw.c (MmMpwThreadMain): Implemented MPW functionality.
661 * ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): New function
662 to write a single page back to disk.
663 * ntoskrnl/mm/rmap.c (MmSetCleanAllRmaps, MmSetDirtyAllRmaps,
664 MmIsDirtyPageRmap): New rmap function to support the MPW thread.
665 * ntoskrnl/mm/section.c (MmWritePageSectionView): Implemented
666 function to write back section pages.
667 * ntoskrnl/mm/section.c (MmFreeSectionPage): Free any swap
668 entry associated with the page; mark pages shared with
669 the cache as dirty if necessary.
670
671 2002-08-14 David Welch <welch@computer2.darkstar.org>
672
673 * ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set name of
674 the module into the module text structure.
675
676 2002-08-14 David Welch <welch@computer2.darkstar.org>
677
678 * ntoskrnl/io/rw.c (NtReadFile, NtWriteFile): Use the correct
679 test for whether to wait for the completion of i/o.
680
681 2002-08-14 David Welch <welch@computer2.darkstar.org>
682
683 * ntoskrnl/cm/ntfunc.c (NtFlushKey): Request synchronous i/o
684 from NtOpenFile.
685 * ntoskrnl/cm/regfile (CmiInitPermanentRegistryHive): Request
686 synchronous i/o from NtCreateFile.
687 * ntoskrnl/dbg/kdb_stabs.c (LdrpLoadModuleSymbols): Request
688 synchronous i/o from NtOpenFile.
689 * ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Request synchronous i/o
690 from NtOpenFile.
691
692 2002-08-14 David Welch <welch@computer2.darkstar.org>
693
694 * ntoskrnl/cc/view.c (CcRosSuggestFreeCacheSegment): Maintain the
695 correct reference count.
696
697 2002-08-14 David Welch <welch@computer2.darkstar.org>
698
699 * ntoskrnl/cc/view.c (CcRosFlushCacheSegment): New function to
700 write back a modified cache segment.
701 * ntoskrnl/cc/view.c (CcRosFlushDirtyPages): New function to
702 flush some dirty pages from the cache.
703 * ntoskrnl/cc/view.c (CcRosMarkDirtyCacheSegment): New function to
704 mark a cache segment modified while mapped into memory as dirty.
705
706 2002-08-14 David Welch <welch@computer2.darkstar.org>
707
708 * ntoskrnl/cc/pin.c (CcMapData, CcUnpinData, CcSetDirtyPinnedData):
709 Store the dirty status in the BCB; don't write back dirty data
710 immediately.
711
712 2002-08-14 David Welch <welch@computer2.darkstar.org>
713
714 * include/ntos/mm.h: Added SEC_XXXX defines from 'Windows NT/2000
715 Native API Reference'
716
717 2002-08-14 David Welch <welch@computer2.darkstar.org>
718
719 * drivers/fs/vfat/ea.c (VfatSetExtendedAttributes): Empty
720 placeholder for extended attribute functions.
721
722 2002-08-14 David Welch <welch@computer2.darkstar.org>
723
724 * drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation):
725 Added function to set allocation size.
726
727 2002-08-14 David Welch <welch@computer2.darkstar.org>
728
729 * drivers/fs/vfat/fcb.c (vfatFCBInitializeCache): Renamed
730 to vfatFCBInitializeCacheFromVolume.
731 * drivers/fs/vfat/fcb.c (vfatMakeFCBFromDirEntry): Don't
732 initialise the cache with a file object representing the
733 volume unless the FCB is for a directory.
734
735 2002-08-14 David Welch <welch@computer2.darkstar.org>
736
737 * drivers/fs/vfat/create.c (VfatPagingFileCreate): Added a
738 new function for handling paging file only code.
739 * drivers/fs/vfat/create.c (VfatSupersedeFile): Added a
740 new function for doing a file supersede.
741 * drivers/fs/vfat/create.c (VfatCreateFile): Reformatted and
742 adjusted control flow. Set allocation size and extended attributes
743 on create.
744 * drivers/fs/vfat/create.c (VfatCreate): Removed goto.
745
746 2002-08-14 David Welch <welch@computer2.darkstar.org>
747
748 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Renamed
749 updEntry to VfatUpdateEntry.
750 * drivers/fs/vfat/close.c (VfatCloseFile): Renamed
751 updEntry to VfatUpdateEntry.
752 * drivers/fs/vfat/dirwr.c (updEntry): Renamed to
753 VfatUpdateEntry.
754 * drivers/fs/vfat/dirwr.c (addEntry): Renamed to
755 VfatAddEntry.
756
757 2002-08-14 David Welch <welch@computer2.darkstar.org>
758
759 * apps/tests/sectest/sectest.c (main): Fixed formatting.
760
761 2002-08-10 David Welch <welch@computer2.darkstar.org>
762
763 * ntoskrnl/mm/i386/page.c (MmSetPageProtect): Fixed
764 behaviour when called on the system address space.
765
766 2002-08-10 David Welch <welch@computer2.darkstar.org>
767
768 * ntoskrnl/mm/virtual.c (MmQueryAnonMem, MmProtectAnonMem,
769 NtAllocateVirtualMemory, NtFreeVirtualMemory): Renamed
770 segments to regions; moved region code to seperate file.
771 Implemented NtQueryVirtualMemory and NtProtectVirtualMemory
772 for anonymous memory areas.
773
774 2002-08-10 David Welch <welch@computer2.darkstar.org>
775
776 * ntoskrnl/mm/anonmem.c: Moved functions relating to
777 areas created with NtAllocateVirtualMemory to a
778 seperate file.
779
780 2002-08-10 David Welch <welch@computer2.darkstar.org>
781
782 * ntoskrnl/mm/section.c (MmQuerySectionView): Implemented
783 NtQueryVirtualMemory for section views.
784
785 2002-08-10 David Welch <welch@computer2.darkstar.org>
786
787 * ntoskrnl/mm/section.c (MmAccessFaultSectionView,
788 MmNotPresentFaultSectionView, MmProtectSectionView,
789 MmMapViewOfSegment, MmAlterViewAttributes): Implemented
790 NtProtectVirtualMemory for section views.
791
792 2002-08-10 David Welch <welch@computer2.darkstar.org>
793
794 * ntoskrnl/ke/main.c: Removed SEH test code.
795
796 2002-08-10 David Welch <welch@computer2.darkstar.org>
797
798 * lib/ntdll/ldr/utils.c (LdrFixupImports): Remove the readonly
799 protection from the IAT before writing to it.
800
801 2002-08-10 David Welch <welch@computer2.darkstar.org>
802
803 * lib/ntdll/ldr/utils.c (LdrAdjustDllName): Properly null terminate
804 the base name of the DLL.
805
806 2002-08-10 David Welch <welch@computer2.darkstar.org>
807
808 * ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set the text segment
809 of modules to readonly after loading.
810
811 2002-08-09 David Welch <welch@computer2.darkstar.org>
812
813 * ntoskrnl/ps/create.c (NtCreateThread): Call PsSuspendThread
814 if NtCreateThread has CreateSuspended as TRUE.
815 * ntoskrnl/ps/suspend.c (PsSuspendThread, PsResumeThread,
816 PiSuspendThreadKernelRoutine): Fixed suspend functionality.
817
818 2002-08-09 David Welch <welch@computer2.darkstar.org>
819
820 * ntoskrnl/ke/i386/usertrap.c (print_user_address): Copy
821 the LDR variable from the right address.
822
823 2002-08-09 David Welch <welch@computer2.darkstar.org>
824
825 * ntoskrnl/ke/apc.c (KiDeliverNormalApc): Check for
826 kernel APCs pending on exit from the kernel.
827 * ntoskrnl/ke/apc.c (KiDeliverNormalApc, KiDeliverUserApc,
828 KiDeliverApc): Set the APC's inserted flag to FALSE after
829 removing it from the thread's queue.
830
831 2002-08-09 David Welch <welch@computer2.darkstar.org>
832
833 * lib/kernel32/thread/thread.c (ThreadStartup): Don't
834 call DLL entrypoints; this is done by LdrInitializeThunk.
835 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
836 DLLs in initialization order; take the loader lock before
837 calling.
838
839 2002-08-09 David Welch <welch@computer2.darkstar.org>
840
841 * apps/tests/thread/thread.c (main): Test suspend and
842 resume functionality.
843
844 2002-08-08 David Welch <welch@computer2.darkstar.org>
845
846 * ntoskrnl/mm/section (NtQuerySection): Return the
847 right result length.
848
849 2002-08-08 David Welch <welch@computer2.darkstar.org>
850
851 * ntoskrnl/ke/usertrap.c (print_user_address): Check for
852 a NULL LDR structure in the PEB; copy the LDR pointer in
853 safely.
854
855 2002-08-08 David Welch <welch@computer2.darkstar.org>
856
857 * ntoskrnl/ke/apc.c (KiDeliverUserApc): Deliver all present
858 APCs; release the APC spinlock while acccessing user memory.
859
860 2002-08-08 David Welch <welch@computer2.darkstar.org>
861
862 * include/internal/ps.h: Adjusted offsets into the ETHREAD
863 structure.
864 * include/internal/ps.h: Removed redundant members from the
865 KTHREAD structure.
866 * ntoskrnl/ke/kthread.c (KeInitializeThread): Removed
867 redundant members from the KTHREAD structure.
868
869 2002-08-08 David Welch <welch@computer2.darkstar.org>
870
871 * ntoskrnl/dbg/kdb.c (KdbEnterDebuggerException): New
872 function to enter the debugger on an exception.
873 * ntoskrnl/kd/kdebug.c (KdInitSystem): Initialize the
874 local kernel debugger if enabled.
875 * ntoskrnl/ke/catch.c (KiDispatchException): Enter the
876 local kernel debugger on an exception.
877
878 2002-08-08 David Welch <welch@computer2.darkstar.org>
879
880 * include/ntdll/ldr.h: Added definition for a DLL entrypoint.
881 * lib/kernel32/process/create.c (KlCreateFirstThread): Put
882 the argument to the NtProcessStartup function on the stack.
883 * lib/kernel32/process/create.c (KlInitPeb): Read the
884 base address of the new image from the PEB.
885 * lib/kernel32/process/create.c (CreateProcessW): Start the
886 first thread at the entrypoint of the new image.
887 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): If the
888 function is called after the initial startup then just call the
889 entrypoints for the loaded DLLs with DLL_THREAD_ATTACH. Don't
890 call the entrypoint of the image.
891 * lib/ntdll/rtl/process.c (RtlpCreateFirstThread): Put the
892 argument to the NtProcessStartup function on the stack.
893 * lib/ntdll/rtl/process.c (KlInitPeb): Read the base address of
894 the new image from the PEB.
895 * lib/ntdll/rtl/process.c (RtlCreateUserProcess): Start the
896 first thread at the entrypoint of the new image.
897 * ntoskrnl/ke/i386/bthread.S (PsBeginThreadWithContextInternal):
898 Use the system call path to begin a usermode thread.
899 * ntoskrnl/ke/i386/thread.c (Ke386InitThreadWithContext): Convert
900 the supplied context into a trap frame.
901 * ntoskrnl/ldr/init.c (LdrLoadInitialProcess): Put the PEB argument
902 to the NtProcessStartup function on the new stack; start the
903 first thread at the entrypoint of the image.
904 * ntoskrnl/ps/create.c (NtCreateThread): Create an APC to call
905 LdrInitializeThunk in the context of a new thread before its
906 entrypoint.
907
908 2002-08-08 David Welch <welch@computer2.darkstar.org>
909
910 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Uninitialise
911 the cache on file cleanup.
912 * drivers/fs/vfat/fcb.c (vfatReleaseFcb): Don't uninitialise
913 the cache on file close.
914 * ntoskrnl/cc/copy.c: Renamed zero page global variable.
915 * ntoskrnl/cc/view.c: Added cache delete function.
916
917 2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
918
919 * rules.mak (RSYM): Define.
920 * include/ddk/zwtypes.h (DebugDbgLoadSymbols): Add to enum
921 _DEBUG_CONTROL_CODE.
922 * include/ntdll/ldr.h (LDR_SYMBOL_INFO, LdrpLoadUserModuleSymbols): Add.
923 (LdrLoadModuleSymbols): Remove.
924 * include/ntos/kdbgsyms.h (ST_FILENAME, ST_FUNCTION,
925 ST_LINENUMBER): Add.
926 (SYMBOL). Make Name an ANSI_STRING.
927 (IMAGE_SYMBOL_INFO, AreSymbolsParsed): Add.
928 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
929 LdrpLoadUserModuleSymbols() not LdrLoadModuleSymbols().
930 * lib/ntdll/ldr/utils.c (LdrLoadModuleSymbols): Rename to
931 LdrpLoadUserModuleSymbols.
932 (LdrpLoadUserModuleSymbols): Use DebugDbgLoadSymbols debug control code.
933 (LdrLoadDll): assert if out of memory.
934 (LdrLoadDll): Call
935 LdrpLoadUserModuleSymbols(), not LdrLoadModuleSymbols().
936 * lib/ntdll/string/ctype.c (_pctype): #undef.
937 * ntoskrnl/dbg/dbgctrl.c (NtSystemDebugControl): Call
938 LdrLoadUserModuleSymbols on DebugDbgLoadSymbols.
939 * ntoskrnl/include/internal/ldr.h (LdrGetAddressInformation): Add.
940 * ntoskrnl/include/internal/module.h (MODULE_TEXT_SECTION): Make SymbolInfo
941 an IMAGE_SYMBOL_INFO.
942 * ntoskrnl/ke/i386/exp.c (LdrGetAddressInformation): Add prototype.
943 (print_address): Change #ifdef KDBG to #ifdef DBG.
944 (KiDoubleFaultHandler, KiDumpTrapFrame, KeDumpStackFrames): Dump
945 one stack frame per line.
946 * ntoskrnl/ke/i386/multiboot.S: Create pagetables for more kernel
947 address space so larger modules can be passed from the boot loader.
948 * ntoskrnl/ke/i386/usertrap.c (LdrGetAddressInformation): Add prototype.
949 (print_user_address): Print symbols using LdrGetAddressInformation().
950 * ntoskrnl/ldr/loader.c (SYMBOLFILE_HEADER, IMAGE_SYMBOL_INFO_CACHE,
951 STAB_ENTRY, N_FUN, N_SLINE, N_SO, SymbolListHead): Add.
952 (TAG_SYM_BUF): Remove.
953 (LdrInitDebug): Remove unneeded code.
954 (LdrInit1): Prepare for loading symbols.
955 (LdrpReadLine, HexL, LdrpParseLine, LdrpLoadModuleSymbolsFromBuffer,
956 LdrpLoadUserModuleSymbolsFromBuffer): Remove.
957 (LdrpParseImageSymbols, LdrpGetFileName, LdrpGetFunctionName,
958 LdrpGetLineNumber, LdrGetAddressInformation, LdrpLookupUserSymbolInfo): Add.
959 (LdrpLoadModuleSymbols, LdrInitializeBootStartDriver): Change to use new
960 symbol structures.
961 (LdrLoadUserModuleSymbols): Cache symbol buffers.
962 (LdrUnloadModuleSymbols): Implement.
963 (LdrLoadModule, LdrUnloadModule): Change #ifdef KDBG to #ifdef DBG.
964 (LdrPEProcessModule): Split a line into two lines.
965 (LdrPEProcessModule): Setup for loading symbols.
966 * ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Open with FILE_SHARE_READ.
967 * ntoskrnl/ps/process.c (PiFreeSymbols): Call LdrUnloadModuleSymbols() to
968 free symbols.
969 (PiDeleteProcess): Change #ifdef KDBG to #ifdef DBG.
970 * ntoskrnl/rtl/ctype.c (_pctype): #undef.
971 * ntoskrnl/rtl/string.c (strncpy): Terminate destination string.
972 * tools/Makefile (rsym): Add target.
973 * tools/helper.mk: Include config and use -g if DBG = 1.
974
975 2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
976
977 * Makefile (install_before): Install system.hiv to correct location.
978
979 2002-07-04 David Welch <welch@computer2.darkstar.org>
980
981 * subsys/win32k/include/callback.h: Fixed callback argument
982 definitions.
983 * subsys/win32k/ntuser/winpos.c: Implemented some more of the windows
984 sizing/moving code.
985 * subsys/win32k/ntuser/painting.c: Implemented some more of the
986 window painting code.
987 * subsys/win32k/objects/coord.c: Implemented LPtoDP and DPtoLP.
988 * subsys/win32k/objects/region.c: Added stubs for some more
989 region functions.
990
991 2002-07-04 David Welch <welch@computer2.darkstar.org>
992
993 * ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the
994 process desktop handle as well.
995
996 2002-07-04 David Welch <welch@computer2.darkstar.org>
997
998 * ntoskrnl/se/token.c: Don't call the ZwXXX variant of
999 system calls when in system context.
1000
1001 2002-07-04 David Welch <welch@computer2.darkstar.org>
1002
1003 * ntoskrnl/Makefile: Added file with MDA output code.
1004 * ntoskrnl/kd/kdebug.c: Recognize MDA as a destination for
1005 debug output.
1006
1007 2002-07-04 David Welch <welch@computer2.darkstar.org>
1008
1009 * lib/user32/windows/defwnd.c: Implemented some more of the
1010 default window handler.
1011
1012 2002-07-04 David Welch <welch@computer2.darkstar.org>
1013
1014 * lib/user32/misc/stubs.c: Removed some stubs to seperate files.
1015
1016 2002-07-04 David Welch <welch@computer2.darkstar.org>
1017
1018 * lib/user32/user32.def: Export ScreenToClient otherwise we
1019 get problems when code in user32 tries to call it.
1020
1021 2002-07-04 David Welch <welch@computer2.darkstar.org>
1022
1023 * include/win32k/region.h: Added prototypes for some missing
1024 region functions.
1025
1026 2002-07-04 David Welch <welch@computer2.darkstar.org>
1027
1028 * include/win32k/ntuser.h: Added prototypes for some missing
1029 NtUserXXX functions.
1030
1031 2002-07-04 David Welch <welch@computer2.darkstar.org>
1032
1033 * include/user32/wininternal.h: Added some constants for
1034 private GetDCEx styles that WINE needs.
1035
1036 2002-07-04 David Welch <welch@computer2.darkstar.org>
1037
1038 * include/user32/callback.h: Fixed callbacks for messages with
1039 parameters.
1040
1041 2002-07-04 David Welch <welch@computer2.darkstar.org>
1042
1043 * include/napi/win32.h (W32THREAD): Added pointer to the
1044 thread's desktop.
1045 * include/napi/win32.h (W32PROCESS): Removed handle table,
1046 added a pointer to the process's window station.
1047 * subsys/win32k/ntuser/guicheck.c (W32kGuiCheck): Reference
1048 a process's window station on the first win32k system call. Reference
1049 a thread's desktop on the first win32k system call.
1050
1051 2002-07-04 David Welch <welch@computer2.darkstar.org>
1052
1053 * include/messages.h: Added some missing WM_XXX constants.
1054
1055 2002-07-04 David Welch <welch@computer2.darkstar.org>
1056
1057 * drivers/dd/ide/makefile: Compiling with debugging messages
1058 needs libgcc to be linked in.
1059
1060 2002-07-04 David Welch <welch@computer2.darkstar.org>
1061
1062 * iface/addsys/genw32k.c: Generate a variable with the
1063 number of system calls.
1064 * iface/native/genntdll.c: Generate a proper stack frame for
1065 the user system call stubs.
1066 * ntoskrnl/ke/i386/syscall.S: Generate a proper stack frame for
1067 the handler for system calls.
1068
1069 2002-07-04 David Welch <welch@computer2.darkstar.org>
1070
1071 * Makefile: Build the GUI startup application.
1072 * subsys/system/gstart/gstart.c: Application to start up
1073 the GUI.
1074
1075 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1076
1077 * tools/helper.mk: Make an import library a proper target
1078 depending on the .def file.
1079
1080 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1081
1082 * subsys/win32k/ntuser/window.c (NtUserGetWindowLong): Began
1083 implementation.
1084
1085 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1086
1087 * subsys/win32k/misc/object.c (ObmCreateHandle): Return the
1088 correct handle value.
1089
1090 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1091
1092 * subsys/win32k/makefile: Make win32k depend on the file containing
1093 the service table.
1094
1095 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1096
1097 * ntoskrnl/ke/i386/stkswitch.S (KeSwitchStackAndRet,
1098 KePushAndStackSwitchAndSysRet): Push one value only.
1099 * ntoskrnl/ps/w32call.c (NtCallbackReturn, NtW32Call): Moved
1100 these functions to a new file. Restore the old trap frame after
1101 returning from a callback.
1102
1103 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1104
1105 * lib/user32/windows/message.c (CallWindowProcA, CallWindowProcW):
1106 Convert message to Unicode or ASCII if necessary.
1107
1108 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1109
1110 * include/user32/callback.h: Added WM_CREATE and WM_NCCALCSIZE
1111 callbacks.
1112 * lib/user32/windows/window.c (User32SendCREATEMessageForKernel,
1113 User32SendNCCREATEMessageForKernel): Implemented.
1114 * subsys/win32k/ntuser/callback.c (W32kSendCREATEMessage):
1115 Implemented.
1116
1117 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1118
1119 * include/structs.h: Added Unicode and ASCII versions of
1120 CREATESTRUCT.
1121
1122 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1123
1124 * tools/helper.mk: Make the install target depend on all the
1125 files to be installed.
1126
1127 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1128
1129 * ntoskrnl/ps/thread.c (NtCallbackReturn): Set TSS.Esp0 to the
1130 top of the old stack.
1131 * ntoskrnl/ps/thread.c (NtW32Call): Set TSS.Esp0 to the top of
1132 the new stack. Free the callback stack correctly. Don't copy
1133 portion of the trap frame that doesn't exist in non-v86-mode
1134 interrupts.
1135 * ntoskrnl/ps/thread.c (PsFreeCallbackStack): New function to
1136 free a stack allocated with PsAllocateCallbackStack.
1137
1138 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1139
1140 * drivers/dd/null/makefile: Commented out local LDFLAGS as
1141 these cause bad relocations in the stripped image.
1142
1143 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1144
1145 * config: Corrected spelling error.
1146
1147 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1148
1149 * subsys/system/winlogon/winlogon.c (WinMain): Check for
1150 failure when creating a window system.
1151
1152 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1153
1154 * ntoskrnl/ob/handle.c (ObDuplicateObject): Added this internal
1155 function for duplicating objects.
1156 * ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the parent
1157 process's window station to the child process.
1158 * ntoskrnl/ps/process.c (PsInitProcessManagement): Initialize the
1159 first process's window station.
1160
1161 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1162
1163 * ntoskrnl/mm/marea.c (MmCreateMemoryArea): Initialise
1164 page operation structure members.
1165 * ntoskrnl/mm/pageop.c (MmReleasePageOp, MmGetPageOp): Increment
1166 or decrement the page operation count in the memory area.
1167 * ntoskrnl/mm/virtual.c (MmNotPresentFaultVirtualMemory,
1168 MmPageOutVirtualMemory): Check for a deleted memory area before
1169 handling the fault.
1170 * ntoskrnl/mm/virtual.c (MmFreeVirtualMemory): Wait for all
1171 page operations to finish before freeing the memory area.
1172
1173 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1174
1175 * ntoskrnl/ke/i386/syscall.S (interrupt_handler2e): Corrected
1176 test for previous mode, upper 16-bit of CS on the stack after an
1177 interrupt are arbitary.
1178
1179 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1180
1181 * lib/user32/misc/winsta.c: Cleaned up indentation.
1182
1183 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1184
1185 * apps/tests/winhello/winhello.c (WinMain, MainWndProc):
1186 Cleaned up formatting, some more error checks.
1187
1188 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1189
1190 * ntoskrnl/mm/virtual.c (MmSecureVirtualMemory,
1191 MmUnsecureVirtualMemory, NtQueryVirtualMemory): Corrected indentation.
1192
1193 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1194
1195 * ntoskrnl/ke/i386/exp.c (KiDoubleFaultHandler): Print CR3
1196 correctly.
1197
1198 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
1199
1200 * ntoskrnl/include/internal/ps.h: Added KTHREAD_STACK_LIMIT definition.
1201 * ntoskrnl/ke/i386/tskswitch.S (Ki386ContextSwitch): Force all the
1202 pages of the kernel stack to be accessible from this process.
1203
1204 2002-06-04 David Welch <welch@cwcom.net>
1205
1206 * ntoskrnl/cc/view.c (ReadCacheSegmentChain): Changes to use
1207 PHYSICAL_ADDRESS type for physical addresses.
1208 * ntoskrnl/cc/copy.c (CcRosCreateCacheSegment): Changes to use
1209 PHYSICAL_ADDRESS type for physical addresses.
1210 * ntoskrnl/cc/copy.c (CcFreeCachePage): Changes to use
1211 PHYSICAL_ADDRESS type for physical addresses.
1212 * ntoskrnl/include/internal/mm.h: Changed prototypes to use
1213 PHYSICAL_ADDRESS type for physical addresses.
1214 * ntoskrnl/include/internal/ps.h (KPROCESS): Changed type of
1215 page directory base to PHYSICAL_ADDRESS.
1216 * ntoskrnl/include/internal/i386/mm.h: Changed prototypes to use
1217 PHYSICAL_ADDRESS type for physical addresses.
1218 * ntoskrnl/ke/kthread.c (KeFreeStackPage): Changes to use
1219 PHYSICAL_ADDRESS type for physical addresses.
1220 * ntoskrnl/ke/kthread.c (KeInitializeThread): Changes to use
1221 PHYSICAL_ADDRESS type for physical addresses.
1222 * ntoskrnl/ke/process.c (KeAttachProcess, KeDetachProcess): Changes
1223 to use PHYSICAL_ADDRESS type for physical addresses.
1224 * ntoskrnl/ke/kernel.c (PcrPages, KeApplicationProcessorInit): Changes
1225 to use PHYSICAL_ADDRESS type for physical addresses.
1226 * ntoskrnl/mm/balance.c (MM_ALLOCATION_REQUEST): Changes to use
1227 PHYSICAL_ADDRESS type for physical addresses.
1228 * ntoskrnl/mm/balance.c (MmReleasePageMemoryConsumer): Changes to use
1229 PHYSICAL_ADDRESS type for physical addresses.
1230 * ntoskrnl/mm/balance.c (MmRequestPageMemoryConsumer): Changes to use
1231 PHYSICAL_ADDRESS type for physical addresses.
1232 * ntoskrnl/mm/cont.c (MmFreeContinuousPage): Changes to use
1233 PHYSICAL_ADDRESS type for physical addresses.
1234 * ntoskrnl/mm/cont.c (MmAllocateContinuousAlignedMemory): Changes to
1235 use PHYSICAL_ADDRESS type for physical addresses.
1236 * ntoskrnl/mm/freelist.c (MmTransferOwnershipPage,
1237 MmGetLRUFirstUserPage, MmGetLRUNextUserPage, MmGetContinuousPages,
1238 MmInitializePageList, MmSetFlagsPage, MmSetRmapListHeadPage,
1239 MmGetRmapListHeadPage, MmMarkPageMapped, MmMarkPageUnmapped,
1240 MmGetFlagsPage, MmSetSavedSwapEntryPage, MmGetSavedSwapEntryPage,
1241 MmReferencePage, MmGetReferenceCountPage, MmIsUsablePage,
1242 MmDereferencePage, MmGetLockCountPage, MmLockPage, MmUnlockPage,
1243 MmAllocPage): Changes to use PHYSICAL_ADDRESS type for physical
1244 addresses.
1245 * ntoskrnl/mm/iospace.c (MmMapIoSpace): Changes to use
1246 PHYSICAL_ADDRESS type for physical addresses.
1247 * ntoskrnl/mm/kmap.c (ExAllocatePage, MiZeroPage, MiCopyFromUserPage,
1248 ExAllocatePageWithPhysPage): Changes to use PHYSICAL_ADDRESS type for
1249 physical addresses.
1250 * ntoskrnl/mm/marea.c (MmFreeMemoryArea): Changes to use
1251 PHYSICAL_ADDRESS type for physical addresses.
1252 * ntoskrnl/mm/mdl.c (MmUnlockPages, MmMapLockedPages,
1253 MmProbeAndLockPages): Changes to use PHYSICAL_ADDRESS type for
1254 physical addresses.
1255 * ntoskrnl/mm/mm.c (MmSharedDataPagePhysicalAddress,
1256 MmCommitPagedPoolAddress, MmNotPresentFault): Changes to use
1257 PHYSICAL_ADDRESS type for physical addresses.
1258 * ntoskrnl/mm/mminit.c (MmInitVirtualMemory): Changes to use
1259 PHYSICAL_ADDRESS type for physical addresses.
1260 * ntoskrnl/mm/ncache.c (MmAllocateNonCachedMemory,
1261 MmFreeNonCachedPage): Changes to use PHYSICAL_ADDRESS type for
1262 physical addresses.
1263 * ntoskrnl/mm/npool.c (grow_kernel_pool): Changes to use
1264 PHYSICAL_ADDRESS type for physical addresses.
1265 * ntoskrnl/mm/rmap.c (MmPageOutPhysicalAddress, MmInsertRmap,
1266 MmDeleteAllRmaps, MmDeleteRmap): Changes to use
1267 PHYSICAL_ADDRESS type for physical addresses.
1268 * ntoskrnl/mm/section.c (MiReadPage, MmNotPresentFaultSectionView,
1269 MmAccessFaultSectionView, MmPageOutDeleteMapping,
1270 MmPageOutSectionView, MmFreeSectionPage): Changes to use
1271 PHYSICAL_ADDRESS type for physical addresses.
1272 * ntoskrnl/mm/slab.c (ExGrowSlabCache): Changes to use
1273 PHYSICAL_ADDRESS type for physical address.
1274 * ntoskrnl/mm/virtual.c (MmPageOutVirtualMemory,
1275 MmNotPresentFaultVirtualMemory, MmFreeVirtualMemoryPage): Changes to
1276 use PHYSICAL_ADDRESS type for physical address.
1277 * ntoskrnl/mm/wset.c (MmTrimUserMemory): Changes to use
1278 PHYSICAL_ADDRESS type for physical address.
1279 * ntoskrnl/mm/page.c (Mmi386ReleaseMmInfo, MmCopyMmInfo,
1280 MmGetPhysicalAddressForProcess, MmCreateVirtualMapping,
1281 MmCreateVirtualMappingUnsafe, MmCreateVirtualMappingForProcess,
1282 MmDeleteVirtualMapping): Changes to use PHYSICAL_ADDRESS type for
1283 physical address.
1284 * ntoskrnl/ps/process (PsInitProcessManagment): Changes to use
1285 PHYSICAL_ADDRESS type for physical address.
1286 * ntoskrnl/ps/thread.c (PsAllocateCallbackStack): Changes to use
1287 PHYSICAL_ADDRESS type for physical address.
1288
1289 2002-06-04 David Welch <welch@cwcom.net>
1290
1291 * Lots of change since the ChangeLog was last updated.
1292
1293 2001-03-18 David Welch <welch@cwcom.net>
1294
1295 * ntoskrnl/ke/apc.c (KiDeliverApc): Bug fix.
1296 * ntoskrnl/ke/apc.c (KeInsertQueueApc): More comments.
1297 * ntoskrnl/ke/catch.c (KiDispatchException): Bug fix.
1298 * ntoskrnl/ke/timer.c (KeDelayExecutionThread): Don't use removed
1299 function KeAddTimeoutThread.
1300 * ntoskrnl/ke/timer.c (KeAddTimeoutThread): Removed.
1301 * ntoskrnl/ke/wait.c (KeWaitForSingleObject, KeWaitForMultipleObjects):
1302 Don't use KeAddTimeoutThread.
1303 * ntoskrnl/mm/freelist.c (MmAllocateContiguousAlignedMemory): Bug fix
1304 * ntoskrnl/mm/freelist.c (MmAllocatePage): Allocate from the top
1305 memory.
1306
1307 2001-03-17 David Welch <welch@cwcom.net>
1308
1309 * ntoskrnl/ke/catch.c (KiDispatchException): Implementation of
1310 exception handling, user-mode only.
1311
1312 2001-03-16 David Welch <welch@cwcom.net>
1313
1314 * include/ddk/zw.h: Corrected declarations of NtCreateProfile,
1315 NtQueryIntervalProfile, NtSetIntervalProfile.
1316 * include/ddk/zwtypes.h: Added definitions of KPROFILE_SOURCE.
1317 * ntoskrnl/include/internal/ke.h: Added the interrupted EIP as a
1318 parameter to KiUpdateSystemTime for profiling purposes.
1319 * ntoskrnl/include/internal/nt: Added declaration for profiling
1320 support initialization.
1321 * ntoskrnl/ke/timer.c (KiUpdateSystemTime, KeExpireTimers): Call
1322 the profiling code on a timer interrupt with the interrupt EIP.
1323 * ntoskrnl/ke/i386/irq.c (KiDispatchInterrupt): Pass the interrupted
1324 EIP to KiUpdateSystemTime.
1325 * ntoskrnl/mm/virtual.c (NtReadVirtualMemory, NtWriteVirtualMemory):
1326 Release the MDLs used properly.
1327 * ntoskrnl/nt/nt.c: Call the profiling support initialization.
1328 * ntoskrnl/nt/ntevent.c (NtCreateEvent): Don't try copying the
1329 ObjectAttributes parameter if it is NULL.
1330 * ntoskrnl/nt/profile.c: Implemented profiling.
1331
1332 2001-03-16 David Welch <welch@cwcom.net>
1333
1334 * ntoskrnl/include/internal/safe.h: Corrected typo.
1335 * ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtQueryEvent):
1336 Corrected typos.
1337 * ntoskrnl/rtl/mem.c: Missing header file.
1338
1339 2001-03-16 David Welch <welch@cwcom.net>
1340
1341 * ntoskrnl/include/internal/safe.h: Add definitions for handling
1342 potentially unsafe pointers.
1343
1344 2001-03-16 David Welch <welch@cwcom.net>
1345
1346 * ntoskrnl/include/internal/mm.h: Removed MmSafeCopyToUser and
1347 MmSafeCopyFromUser as source files need these but don't want internal
1348 mm definitions.
1349 * ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtPulseEvent,
1350 NtQueryEvent, NtResetEvent, NtSetEvent): Copy data to and from
1351 user mode safely.
1352 * ntoskrnl/rtl/mem.c (MmCopyToCaller, MmCopyFromCaller): Helper
1353 functions for copying data to and from potentially unsafe pointers.
1354
1355 2000-12-23 David Welch <welch@cwcom.net>
1356
1357 * All task switching is done in software.
1358 * Beginnings of v86 mode support.
1359
1360 2000-12-22 David Welch <welch@cwcom.net>
1361
1362 * ntoskrnl/ps/kill.c (PiTerminateProcessThreads): Drop
1363 PiThreadListLock before calling PsTerminateOtherThread
1364
1365 2000-12-16 David Welch <welch@cwcom.net>
1366
1367 * ntoskrnl/ex/fmutex.c (ExReleaseFastMutexUnsafe): Only set the
1368 fast mutex's owner back to NULL if it is being released
1369
1370 2000-12-10 David Welch <welch@cwcom.net>
1371
1372 * ntoskrnl/ke/i386/vm86_sup.S (Ki386RetToV86Mode): Added function
1373 to do the raw switch to v86 mode.
1374 * ntoskrnl/include/internal/vm86.h: Definitions for the v86 mode
1375 support.
1376
1377 2000-12-10 David Welch <welch@cwcom.net>
1378
1379 * ntoskrnl/ke/i386/trap.s (PsBeginThreadWithContextInternal): Moved
1380 to ntoskrnl/ke/i386/bswitch.S.
1381 * ntoskrnl/ke/i386/trap.s (interrupt_handler2e): Moved to
1382 ntoskrnl/ke/i386/syscall.S.
1383 * ntoskrnl/ke/i386/trap.s (old_interrupt_handler2e): Removed.
1384
1385 2000-12-04 David Welch <welch@cwcom.net>
1386
1387 * ntoskrnl/ke/i386/irq.c (KiInterruptDispatch): Record the last PC
1388 value for a rescheduled thread.
1389 * ntoskrnl/ke/i386/irqhand.s: Construct a primitive trap frame
1390 in interrupt handlers.
1391
1392 2000-08-30 David Welch <welch@cwcom.net>
1393
1394 * Added calibration of KeStallExecutionProcessor timing
1395 (code from linux 2.2.16).
1396
1397 * Corrected compilation bugs in user32 library.
1398
1399 * Corrected compilation bugs related to anonymous structs
1400 in ndis code.
1401
1402 * Pass command line to kernel from loadros.
1403
1404 * Corrected PIC mask calculation.
1405
1406 2000-05-27 David Welch <welch@cwcom.net>
1407
1408 * Fixed issue with closing non-existent or already closed
1409 handle.
1410
1411 2000-01-26 David Welch <welch@cwcom.net>
1412
1413 * ZwCreateProcess now maps ntdll rather than the user-mode
1414 code.
1415
1416 1999-09-06 David Welch <welch@cwcom.net>
1417
1418 * Implemented ZwOpenProcess.
1419
1420 * Partially implemented killing other threads (possible memory
1421 leaks).
1422
1423 * Made a start on a proper implemention of APCs (based on
1424 article in NT insider).
1425
1426 1998-12-08 David Welch <welch@cwcom.net>
1427
1428 * Corrected bug in shell (Read two keypresses and assumed they
1429 where the key going up and down respectively).
1430
1431 * Corrected race in dpc handling.
1432
1433 * Took out cleanup sections in ZwReadFile (now handled by the
1434 APC).
1435
1436 * Disabled broken code in kernel32.
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446