reactos/reactos/ChangeLog
Casper Hornstrup 6fa3492ab7 2004-08-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/cdmake/cdmake.c: Error out if extension is too long.

svn path=/trunk/; revision=10681
2004-08-25 20:47:22 +00:00

3396 lines
132 KiB
Text

2004-08-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/cdmake/cdmake.c: Error out if extension is too long.
2004-08-20 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Fix ntoskrnl dependency problem.
2004-08-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
* regtests/shared/regtests.c: Mark test name with |.
2004-08-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Depend on roscfg.h.
2004-08-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/regtests2xml: New directory.
* tools/regtests2xml/.cvsignore: New file.
* tools/regtests2xml/Makefile: Ditto.
* tools/regtests2xml/regtests2xml.c: Ditto.
2004-08-17 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/depend.mk: Don't generate dependencies for implib target.
2004-08-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Correct dependencies.
* tools/Makefile: Silence some annoying messages.
* tools/config.mk: Ditto.
* rules.mak (MINIMALDEPENDENCIES): New option; minimal dependencies
(yes/no). If yes, then components do not depend on all import libraries.
If no, then they do. Defaults to yes.
2004-08-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/include/debug.h (ASSERT): Don't call KeBugCheck.
* lib/user32/misc/dllmain.c (KeBugCheck): Remove declaration.
2004-08-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/net/tcpip/include/.cvsignore: New file.
* drivers/net/tcpip/include/precomp.h: New file.
* drivers/net/tcpip/Makefile (TARGET_PCH): Set to include/precomp.h.
* drivers/net/tcpip/tests/Makefile (TARGET_PCH): Reset.
* drivers/net/tcpip/*/*.c: Use pre-compiled header.
2004-08-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/net/ndis/include/.cvsignore: New file.
* drivers/net/ndis/.cvsignore: Add *.d.
* drivers/net/ndis/Makefile (TARGET_PCH): Set to include/ndissys.h.
* drivers/net/ndis/*.c: Use pre-compiled header.
2004-08-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/net/afd/include/.cvsignore: New file.
* drivers/net/afd/include/tdiconn.h: Don't include <afd.h>.
* drivers/net/afd/.cvsignore: Add *.d.
* drivers/net/afd/makefile (TARGET_PCH): Set to include/afd.h.
2004-08-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/system/taskmgr/.cvsignore: Add *.gch.
* subsys/system/taskmgr/precomp.h: New file.
* subsys/system/taskmgr/makefile (TARGET_PCH): Set to precomp.h.
* subsys/system/taskmgr/*.c: Use pre-compiled header.
2004-08-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/system/usetup/.cvsignore: Add *.gch.
* subsys/system/usetup/precomp.h: New file.
* subsys/system/usetup/makefile (TARGET_PCH): Set to precomp.h.
* subsys/system/usetup/*.c: Use pre-compiled header.
2004-08-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/system/cmd/.cvsignore: Add *.gch.
* subsys/system/cmd/precomp.h: New file.
* subsys/system/cmd/Makefile (TARGET_PCH): Set to precomp.h.
* subsys/system/cmd/*.c: Use pre-compiled header.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/include/.cvsignore: New file.
* lib/user32/Makefile (TARGET_PCH): Set to include/user32.h.
* lib/user32/*/*.c: Use pre-compiled header.
* include/wine/debug.h (FIXME): Override previous declaration is needed.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/userenv/.cvsignore: Add *.gch.
* lib/userenv/makefile (TARGET_PCH): Set to precomp.h.
* lib/userenv/*.c: Use pre-compiled header.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/ws2_32/include/.cvsignore: New file.
* lib/ws2_32/makefile (TARGET_PCH): Set to include/ws2_32.h.
* lib/ws2_32/include/[catalog.h, handle.h]: Don't include ws2_32.h.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/gdi32/include/.cvsignore: New file.
* lib/gdi32/.cvsignore: Remove *.gch.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/gdi32/.cvsignore: Ignore *.gch.
* lib/gdi32/include/precomp.h: New file.
* lib/gdi32/Makefile (TARGET_PCH): Set to include/precomp.h.
* lib/gdi32/*/*.c: Use pre-compiled header.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/msvcrt/.cvsignore: Ignore *.gch.
* lib/msvcrt/precomp.h: New file.
* lib/msvcrt/Makefile (TARGET_PCH): Set to precomp.h.
* lib/msvcrt/*/*.c: Use pre-compiled header.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/crtdll/.cvsignore: Ignore *.gch.
* lib/crtdll/precomp.h: New file.
* lib/crtdll/Makefile (TARGET_PCH): Set to precomp.h.
* lib/crtdll/*/*.c: Use pre-compiled header.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/advapi32/.cvsignore: Ignore *.gch.
* lib/advapi32/advapi32.h: New file.
* lib/advapi32/Makefile (TARGET_PCH): Set to advapi32.h.
* lib/advapi32/*/*.c: Use pre-compiled header.
2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/include/.cvsignore: New file.
* ntoskrnl/include/ntoskrnl.h: Ditto.
* ntoskrnl/*/*.c: Use pre-compiled header.
* ntoskrnl/Makefile: Support pre-compiled header.
* tools/helper.mk: .pch files are now .gch files.
2004-07-24 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile (DLLS): Add gdiplus.
* apistatus.lst: Add gdiplus.dll.
* baseaddress.cfg (TARGET_BASE_LIB_GDIPLUS): Declare.
* bootdata/packages/reactos.dff: Add gdiplus.dll.
* include/ntos/rtl.h (InsertTailList): Remove dependency on RtlAssert.
* lib/gdiplus/(gdiplus, include, tests, tests/tests): New directories.
* lib/gdiplus/(.cvsignore, gdiplus.def, gdiplus.edf, gdiplus.rc,
makefile): New files.
* lib/gdiplus/gdiplus/(.cvsignore, *.c): Ditto.
* lib/gdiplus/include/(debug.h, GdiPlusPrivate.h): Ditto.
* lib/gdiplus/tests/(.cvsignore, Makefile, passthrough.c): Ditto.
* lib/gdiplus/tests/tests/(.cvsignore, test-1.c): Ditto.
2004-07-23 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile, drivers/video/makefile, lib/cpl/Makefile, ntoskrnl/Makefile,
tools/helper.mk: Add test target.
* include/ntos/types.h (UINT16, PUINT16): Declare.
* regtests/kmregtests/tests/mdl-1.c, regtests/kmregtests/tests/mdl-2.c,
regtests/kmregtests/tests/mm-1.c, subsys/win32k/tests/tests/eng-mem-1.c:
Simplify tests.
* regtests/shared/regtests.c: Include <ctype.h> and <stdlib.h>.
* regtests/shared/regtests.h (DISPATCHER): Declare the whole function.
* tools/regtests.c: Refactor part of register_test into get_test_name();
Stub for running tests in the build environment.
* w32api/include/basetsd.h (INT16, PINT16, UINT16, PUINT16): Declare.
* lib/user32/misc/exticon.c (UINT16): Remove declaration.
2004-07-23 Casper S. Hornstrup <chorns@users.sourceforge.net>
* rules.mak: Be silent only if VERBOSE=no.
2004-07-23 Casper S. Hornstrup <chorns@users.sourceforge.net>
* rules.mak: Do not print "'target' is up to date." messages.
2004-07-21 Casper S. Hornstrup <chorns@users.sourceforge.net>
* w32api/include/(GdiPlus.h, GdiPlusBase.h, GdiPlusBrush.h, GdiPlusColor.h,
GdiPlusColorMatrix.h, GdiPlusEffects.h, GdiPlusEnums.h, GdiPlusFlat.h,
GdiPlusGpStubs.h, GdiPlusGraphics.h, GdiPlusHeaders.h,
GdiPlusImageAttributes.h, GdiPlusImaging.h GdiPlusInit.h,
GdiPlusLineCaps.h, GdiPlusMatrix.h, GdiPlusMem.h, GdiPlusMetaFile.h,
GdiPlusMetaHeader.h, GdiPlusPath.h, GdiPlusPen.h, GdiPlusPixelFormats.h,
GdiPlusStringFormat.h, GdiPlusTypes.h): New files.
2004-07-21 Casper S. Hornstrup <chorns@users.sourceforge.net>
* rules.mak, iface/addsys/makefile, iface/native/makefile,
tools/Makefile: Be quiet if VERBOSE=no.
* tools/helper.mk: Print module name if it was successfully built.
* tools/regtests.c, tools/wine2ros/wine2ros.c: Be quiet.
2004-06-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/helper.mk: Skip automatic dependency tracking if
DEPENDENCIES=no.
2004-05-31 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/reactos/version.h (KERNEL_VERSION_BUILD_TYPE): Replace possible
value FINAL with RELEASE.
2004-03-27 Art Yerkes <arty@users.sourceforge.net>
* Fixed make bootcd on windows + cross. Define TOPDIR as PATH_TO_TOP
2004-03-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/system/usetup/bootsup.c (UpdateFreeLoaderIni): Use existing
ReactOS entry if available.
2004-03-09 Casper S. Hornstrup <chorns@users.sourceforge.net>
* regtests/Makefile: Make REGTEST_TARGETS depend on *.c.
* regtests/kmregtests/driver.c: Update call to PerformTests().
* regtests/kmrtint/kmrtint.c (RegTestMain): Update to match prototype.
* regtests/kmrtint/kmrtint.def (RegTestMain): Ditto.
* regtests/kmrtint/kmrtint.edf (RegTestMain): Ditto.
* regtests/win32base/tests/ws2event.c: New file.
* regtests/regtests/regtests.c (OUPUT_MODE_DbgPrint,
OUPUT_MODE_OutputDebugString, OUPUT_MODE_printf): Define.
(OutputMode): New variable.
(OutputRoutine): New function.
(RunTestDriver): Add TestName parameter.
(main): Parse command line to find output routine and test name.
* regtests/shared/regtests.c (PerformTest): Use specified output routine
if specified. Run only specified test if specified.
(PerformTests): Update call to PerformTest().
* regtests/shared/regtests.h (TestOutputRoutine): Add prototype.
(TestDriverMain): Add OutputRoutine and TestName parameter.
(PerformTests): Ditto.
* regtests/win32base/Makefile (TARGET_SDKLIBS): Add ws2_32.a.
* regtests/win32base/driver.c (RegTestMain): Update to match prototype.
* regtests/win32base/win32base.def (RegTestMain): Ditto.
* regtests/win32base/win32base.edf (RegTestMain): Ditto.
* tools/regtests.c (UMSTUB): Update call to PerformTests().
2004-03-04 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/net/tcpip/tcpip/i386: New directory.
* drivers/net/tcpip/tcpip/i386/checksum.S: New file.
* drivers/net/tcpip/notes.txt: New file.
* drivers/net/afd/afd/dispatch.c (AfdDispCompleteListen): Signal ACCEPT
network event.
(AfdDispEventSelect): Reference event handle.
* drivers/net/afd/afd/tdi.c (TdiListen): Remove unused event.
Move Iosb and RequestConnectionInfo to AFD_LISTEN_REQUEST structure.
* drivers/net/afd/include/afd.h (AFDFCB): Replace EventObjects with
EventObject of type PKEVENT.
* drivers/net/tcpip/makefile (ARCH_OBJECTS): New variable.
(TARGET_OBJECTS): Add ARCH_OBJECTS.
* drivers/net/tcpip/include/address.h (AddrCloneAddress): New prototype.
* drivers/net/tcpip/include/checksum.h (ChecksumFold, csum_partial): New
prototype.
(TCPv4Checksum): New macro.
(CorrectChecksum): Rename to IPv4CorrectChecksum.
(TCPv4CorrectChecksum): New macro.
* drivers/net/tcpip/include/ip.h (IPv4_DF_MASK): New constant.
* drivers/net/tcpip/include/tcp.h (TCP_XXX): Correct constants.
(TCPCreateSegment, TCPFreeSegment, TCPAddSegment): Prototype.
* drivers/net/tcpip/include/titypes.h (TCP_SEND_REQUEST): Add SequenceNumber
and AckNumber.
(TCP_SEGMENT): New structure.
(CONNECTION_ENDPOINT): Add ListenRequest and ReceivedSegments.
* drivers/net/tcpip/network/transmit.c (SendFragments): Release memory
for Data on failure.
* drivers/net/tcpip/tcpip/address.c (AddrCloneAddress): New function.
* drivers/net/tcpip/tcpip/checksum.c (ChecksumFold): Factor out folding
from ChecksumCompute.
* drivers/net/tcpip/tcpip/dispatch.c (DispTdiListen): Support asynchronous
operation.
* drivers/net/tcpip/tcpip/fileobjs.c (FileOpenAddress): Don't cast to
PTDI_ADDRESS_IP.
Initialize ReceivedSegments.
* drivers/net/tcpip/tcpip/routines.c (DisplayIPHeader): New function.
(DisplayIPPacket): Call DisplayIPHeader().
(DisplayTCPHeader): Change format strings.
* drivers/net/tcpip/transport/tcp/tcp.c (IPIdentification,
TCPSegmentList): Add.
(TCPCreateSegment, TCPFreeSegment, TCPAddSegment,
TCPBuildAndTransmitSendRequest2, TCPiSelectISS, TCPiReceiveListen,
TCPiReceiveSynSent, TCPiReceiveSynReceived, TCPiReceiveData): New
function.
(TCPiBuildPacket): Build segment.
(TCPStartup): Initialize TCPSegmentList.
(TCPShutdown): Cleanup TCPSegmentList.
2004-02-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/net/tcpip/datalink/loopback.c: Reformat.
* drivers/net/tcpip/network/neighbor.c: Ditto.
* drivers/net/tcpip/tcpip/info.c: Ditto.
* drivers/net/tcpip/transport/datagram/datagram.c: Cleanup.
If there is an out-of-resources situation, don't transmit the
datagram out of order.
2004-02-23 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/regtests.c (KMSTUB): Correct device name.
2004-02-22 Ge van Geldorp <ge@gse.nl>
* Implement keyboard navigation for menus
* Implement system menus
2004-02-22 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile (all): Put REGTESTS dependency earlier in the list.
* lib/kernel32/makefile: Support regression tests.
* lib/kernel32/misc/dllmain.c: Prepare regression tests.
* regtests/win32base/driver.c: (DummyThreadMain,
RunPrivateTests): Add.
(RegTestMain): Run private module regression tests.
* tools/helper.mk: Add rtshared.a to MK_LIBS if building
user-mode regression tests.
* tools/regtests.c (UMSTUB): Add.
(main): Output user-mode stub.
* lib/kernel32/tests: New directory.
* lib/kernel32/tests/.cvsignore: New file.
* lib/kernel32/tests/Makefile: New file.
* lib/kernel32/tests/tests: New directory.
* lib/kernel32/tests/tests/.cvsignore: New file.
* regtests/win32base/tests/file-1.c: move...
* lib/kernel32/tests/tests/file-1.c: ...here.
2004-02-22 Casper S. Hornstrup <chorns@users.sourceforge.net>
* config (REGRESSIONTESTS): Add.
* rules.mak (REGTESTS_PATH_INC): Add.
* drivers/net/tcpip/makefile: Support regression tests.
* drivers/net/tcpip/tcpip/main.c: Prepare regression tests.
* hal/halx86/Makefile: Rename TARGET_LIBPATH to TARGET_IMPLIBPATH.
* regtests/kmregtests/driver.c (KMRegTestsRegister): Add.
(KMRegTestsRun): Move call to InitializeTests() and RegisterTests() to
DriverEntry().
(KMRegTestsDispatch): Support IOCTL_KMREGTESTS_REGISTER.
* regtests/kmregtests/kmregtests.h (IOCTL_KMREGTESTS_REGISTER): Define.
* tools/config.mk: Define REGTESTS if REGRESSIONTESTS = 1.
* tools/helper.mk: Support module private regression tests.
(TARGET_LIBPATH): Rename to TARGET_IMPLIBPATH.
(TARGET_LIBPATH, TARGET_REGTESTS): Add.
* tools/mkconfig.c: Support REGTESTS.
* tools/regtests.c (umstubfile, kmstubfile): Add.
(is_file_changed, write_file_if_changed): Add.
(KMSTUB): Add.
(HELP): Mention -u and -k switches.
(main): Parse -u and -k switches.
* drivers/net/tcpip/tests: New directory.
* drivers/net/tcpip/tests/.cvsignore: New file.
* drivers/net/tcpip/tests/Makefile: Makefile.
* drivers/net/tcpip/tests/tests: New directory.
* drivers/net/tcpip/tests/tests/.cvsignore: New file.
2004-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apistatus.lst: Correct path of videoprt.dll.
2004-02-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* bootdata/packages/reactos.dff: Add oleaut32.dll.
2004-01-21 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apistatus.lst: Rename tdi.dll to tdi.sys.
2004-01-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/winebuild/spec32.c (BuildDef32File): Don't support private flag
when cross-compiling.
2004-01-02 Steven Edwards <Steven_Ed4153@yahoo.com>
* ntoskrnl/kd/dlog.c: Make /DEBUGPORT=FILE work. With the help
of Filip Navara
* ntoskrnl/ke/main.c: Ditto
2003-12-29 Steven Edwards <Steven_Ed4153@yahoo.com>
* lib/version: Sync with Winehq 12-29-03
2003-12-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/utils/net/roshttpd/error.cpp (ReportErrorStr): Cast to wchar_t*,
not __wchar_t*.
* apps/utils/net/roshttpd/makefile (TARGET_CPPFLAGS): Add -Wno-deprecated.
(TARGET_GCCLIBS): Add stdc++.
* apps/utils/net/roshttpd/common/socket.cpp: Include <string.h>.
* apps/utils/net/roshttpd/common/thread.cpp (CThread::CThread): Fix
warning.
* drivers/net/afd/afd/afd.c (ListenRequestLookasideList): New variable.
(DriverEntry): Initialize ListenRequestLookasideList.
* drivers/net/afd/afd/dispatch.c (AfdDispCompleteListen): New function.
(AfdDispListen): Partial implement.
* drivers/net/afd/afd/opnclose.c (AfdInitializeFCB): Initialize
NewFCB->ListenRequestQueue.
(AfdKillListenRequests): New function.
(AfdClose): Call AfdKillListenRequests.
* drivers/net/afd/afd/routines.c (DumpName): New function.
* drivers/net/afd/afd/tdi.c (TdiAddressSizeFromType): New function.
(TdiBuildConnectionInfo): Initialize ConnInfo->OptionsLength.
(TdiBuildNullConnectionInfo): New function.
(TdiOpenAddressFileIPv4, TdiOpenConnectionEndpointFile): EaName is
0-terminated.
(TdiListen): New function.
* drivers/net/afd/include/afd.h (AFDFCB): Add ListenRequestQueue.
(AFD_LISTEN_REQUEST): New structure.
(ListenRequestLookasideList): Declare.
(DumpName, TdiListen): Add prototypes.
* drivers/net/tcpip/datalink/lan.c (BindAdapter): Initialize
AnsiAddress.Length and AnsiAddress.MaximumLength.
* drivers/net/tcpip/include/debug.h: Define DEBUG_TCP.
* drivers/net/tcpip/include/routines.h (DisplayTCPPacket): Add
prototype.
(DISPLAY_TCP_PACKET): Define.
* drivers/net/tcpip/include/tcp.h (TCPListen): Add prototype.
* drivers/net/tcpip/include/titypes.h (ADDRESS_FILE): Add Connection.
* drivers/net/tcpip/network/ip.c (IPLocateNTEOnInterface): Cleanup.
* drivers/net/tcpip/tcpip/address.c (AddrSearchNext): Port is in
network byte order.
* drivers/net/tcpip/tcpip/dispatch.c (DispTdiAssociateAddress):
Initialize AddrFile->Connection.
(DispTdiListen): Implement.
* drivers/net/tcpip/tcpip/fileobjs.c (FileOpenAddress): Don't
initialize AddrFile->Connections.
* drivers/net/tcpip/tcpip/routines.c: Include <tcp.h>.
(DisplayIPPacket): Enable.
(DisplayTCPHeader, DisplayTCPPacket): New functions.
* drivers/net/tcpip/transport/tcp/tcp.c: Include <routines.h>.
(TCPListen, TCPiReceive): New functions.
(TCPReceive): Partial implement.
* lib/msafd/misc/helpers.c (CreateHelperDLLDatabase): Add
{SOCK_STREAM,IPPROTO_TCP,0} and {SOCK_DGRAM,IPPROTO_UDP,0} mappings.
* lib/ntdll/ldr/utils.c (LdrLoadDll): Print name of DLL if not found.
* lib/ws2_32/include/ws2_32.h (Initialized): Declare.
(WINSOCK_THREAD_BLOCK): Remove Initialized member.
* (WSAINITIALIZED, WSASETINITIALIZED): Update.
* lib/ws2_32/misc/catalog.c (CreateCatalog): Add
{SOCK_STREAM,IPPROTO_TCP,0} and {SOCK_DGRAM,IPPROTO_UDP,0} mappings.
(Initialized): New variable.
(DllMain): Don't initialize p->Initialized.
* ntoskrnl/dbg/kdb.c: Include <ctype.h>.
* subsys/win32k/ntuser/message.c (NtUserDispatchMessage): Kill noisy
message.
2003-12-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/wine2ros: New directory.
* tools/wine2ros/Makefile: New file.
* tools/wine2ros/wine2ros.c: Ditto.
* tools/Makefile (wine2ros_target): Add.
* rules.mak (WINE2ROS): Define.
2003-12-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api/Wine
* include/basetsd.h: #include_next <basetsd.h>. Add definitions missing
in w32api.
* include/mmddk.h: #include_next <mmddk.h>. Add definitions missing in
w32api.
* include/wine/winternl.h (DbgPrint): Use ReactOS prototype to avoid
conflicts.
2003-12-09 Casper S. Hornstrup <chorns@users.sourceforge.net>
* rules.mak (WINEBUILD): Define.
* tools/winebuild/Makefile: New file.
* tools/winebuild/import.c (ldcombine_files): Replace mkstemps with Win32
APIs.
* tools/winebuild/main.c (main): Win16 specs and relays are not supported.
* tools/winebuild/spec32.c (EXCEPTION_WINE_STUB, EH_NONCONTINUABLE):
Define.
(BuildDef32File): Don't emit PRIVATE.
2003-12-09 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/winebuild: Import winebuild from Wine (D20031208).
2003-12-08 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/win32k/text.h (NtGdiExtTextOut): Follow ExtTextOut prototype.
* lib/gdi32/objects/text.c (ExtTextOutW): Call NtGdiExtTextOut().
* lib/user32/controls/edit.c (EDIT_BuildLineDefs_ML): Order parameters to
CreateRectRgn().
* lib/user32/windows/draw.c (TabbedTextOutA): Implement.
(TEXT_TabbedTextOut): New function.
(TabbedTextOutW): Implement.
* subsys/win32k/objects/text.c (NtGdiExtTextOut): Call NtGdiTextOut() for
now.
2003-12-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/windows/accel.c (U32IsValidAccelMessage): Translate WM_KEYUP
and WM_SYSKEYUP messages.
(TranslateAcceleratorA): Returntype of RtlMultiByteToUnicodeN is NTSTATUS,
so interpret it as such.
* subsys/win32k/ntuser/accelerator.c (NtUserDestroyAcceleratorTable):
Call ObmCloseHandle() before destroying the object.
(IntTranslateAccelerator): New function.
(NtUserTranslateAccelerator): Partial implementation.
2003-12-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/win32k/include/accelerator.h: New file.
* subsys/win32k/ntuser/accelerator.c: Ditto.
* include/win32k/ntuser.h (NtUserDestroyAcceleratorTable): Make returntype
BOOLEAN.
* subsys/win32k/makefile (NTUSER_OBJECTS): Add ntuser/accelerator.o.
* subsys/win32k/include/object.h (USER_OBJECT_TYPE): Add otAcceleratorTable.
* subsys/win32k/main/dllmain.c (DllMain): Call InitAcceleratorImpl().
* subsys/win32k/ntuser/stubs.c (NtUserCopyAcceleratorTable,
NtUserCreateAcceleratorTable, NtUserDestroyAcceleratorTable,
NtUserTranslateAccelerator): Move to accelerator.c.
2003-12-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/tests/accelerator: New directory.
* apps/tests/accelerator/accelerator.c: New file.
* apps/tests/accelerator/.cvsignore: Ditto.
* apps/tests/accelerator/Makefile: Ditto.
* apps/tests/Makefile (TEST_APPS): Add accelerator.
2003-12-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
* regtests/Makefile: Generate regression test registrations.
* regtests/kmregtests/.cvsignore: Ignore Makefile.tests.
* regtests/win32base/.cvsignore: Ditto.
* regtests/kmregtests/Makefile: Include Makefile.tests.
* regtests/win32base/Makefile: Ditto.
* regtests/kmregtests/tests: New directory.
* regtests/win32base/tests: Ditto.
* regtests/kmregtests/tests/.cvsignore: New file.
* regtests/win32base/tests/.cvsignore: Ditto.
* tools/helper.mk: Remove TARGET_GENREGTESTS.
* tools/regtests.c: Generate makefile for regression tests.
(change_extension): New function.
* regtests/win32base/file-1.c: Move ...
* regtests/win32base/tests/file-1.c: ... here.
2003-12-06 Martin Fuchs <martin-fuchs@gmx.net>
* Doxyfile, Makefile: initial doxygen configuration
* drivers/Doxyfile, drivers/Makefile: Ditto.
* ntoskrnl/Doxyfile, ntoskrnl/Makefile: Ditto.
* subsys/win32k/Doxyfile, subsys/win32k/Makefile: Ditto.
* apps/Doxyfile, apps/Makefile: Ditto.
2003-11-29 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/cabman/dfp.cxx (CDFParser::Parse): Allow TokenString.
(CDFParser::PerformFileCopy): Use CurrentChar instead of length of
CurrentString to find the start of the next token.
2003-11-08 Martin Fuchs <martin-fuchs@gmx.net>
* controls/button.c partial fix for for Bug #42:
activate Ansi window procedures for standard controls
* controls/combo.c Ditto.
* controls/edit.c Ditto.
* controls/icontitle.c Ditto.
* controls/listbox.c Ditto.
* controls/static.c Ditto.
* windows/dialog.c Ditto.
* windows/mdi.c Ditto.
* windows/menu.c Ditto.
* windows/defwnd.c Fixed WM_GETTEXT error handling in DefWindowProcW().
2003-10-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: New target uboot for simple unattended setup.
* bootdata/unattend.inf.sample: Sample unattended setup script.
* subsys/system/usetup/partlist.c (SelectPartition): New function.
* subsys/system/usetup/partlist.h (SelectPartition): Prototype.
* subsys/system/usetup/usetup.c: Support unattended setup.
(IsUnattendedSetup, UnattendDestinationDiskNumber,
UnattendDestinationPartitionNumber, UnattendInstallationDirectory):
New.
(CheckUnattendedSetup, InstallDirectoryPage1): New function.
2003-08-30 Filip Navara <xnavara@volny.cz>
* tools/cabman/cabinet.cxx (CCabinet::ConvertPath): NULL-terminate
newpath.
2003-08-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/rmkdir.c: Fix for absolute paths.
2003-08-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/rmkdir.c: Create all (sub)directories in path on win32.
2003-08-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
* bootdata/packages/reactos.dff: Don't include winmm.dll in reactos.cab.
2003-08-29 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Copy freeloader files to bootable CD.
2003-08-28 Martin Fuchs <martin-fuchs@gmx.net>
* subsys/system/explorer/taskbar/startmenu.cpp,
subsys/system/explorer/shell/shellbrowser.cpp:
Implemented control panel window in cabinet view mode.
2003-08-24 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Support creating compressed bootable CDs.
* rules.mak (HOST_CXX, HOST_AR, CABMAN): Define.
* bootdata/txtsetup.sif: Add Cabinets section.
Remove files that are put in reactos.cab.
* subsys/system/usetup/filequeue.c (SetupCloseFileQueue): Release
memory allocated for SourceCabinet.
(SetupQueueCopy): Support copying files in cabinets.
(SetupCommitFileQueue): Support copying files in cabinets.
* subsys/system/usetup/filequeue.h (SetupQueueCopy): Add SourceCabinet
parameter.
* subsys/system/usetup/filesup.c (SetupExtractFile): New function.
* subsys/system/usetup/filesup.h (SetupExtractFile): Prototype.
* subsys/system/usetup/infcache.c (InfOpenBufferedFile): New function.
* subsys/system/usetup/infcache.h (InfOpenBufferedFile): Prototype.
* subsys/system/usetup/makefile (TARGET_SDKLIBS): Add zlib.a.
(TARGET_CFLAGS): Add zlib to include path.
(TARGET_OBJECTS): Add cabinet.o.
* subsys/system/usetup/usetup.c (PrepareCopyPageInfFile): New function.
(PrepareCopyPage): Process Cabinets section.
* tools/helper.mk: Support C++ applications.
* rosbin.txt: Remove.
* bootdata/packages: New directory.
* bootdata/packages/reactos.dff: New file.
* lib/zlib/Makefile.host: New file.
* subsys/system/usetup/cabinet.c: Ditto.
* subsys/system/usetup/cabinet.h: Ditto.
* tools/cabman: New directory.
* tools/cabman/.cvsignore: New file.
* tools/cabman/cabinet.cxx: Ditto.
* tools/cabman/cabinet.h: Ditto.
* tools/cabman/cabman.h: Ditto.
* tools/cabman/dff.txt: Ditto.
* tools/cabman/dfp.cxx: Ditto.
* tools/cabman/dfp.h: Ditto.
* tools/cabman/main.cxx: Ditto.
* tools/cabman/makefile: Ditto.
* tools/cabman/makefile.win32: Ditto.
* tools/cabman/mszip.cxx: Ditto.
* tools/cabman/mszip.h: Ditto.
* tools/cabman/raw.cxx: Ditto.
* tools/cabman/raw.h: Ditto.
2003-08-24 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/structs.h: Apply packed attribute to the typedef, not the
type's name.
* include/ntos/keyboard.h: Ditto.
* include/ntos/tss.h: Ditto.
* include/win32k/cursoricon.h: Ditto.
* include/win32k/math.h: Include the compiler's math.h for builtins.
* ntoskrnl/nt/vdm.c (NtEarlyInitVdm): Avoid warning when compiling using
GCC 3.4.
2003-08-23 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/tests/tcpsvr/tcpsvr.c (main): Fix multiline string constant.
2003-08-23 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/utils/stats/stats.c (ReadLine): Handle unix end-of-line characters.
2003-08-23 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/tests/Makefile (TEST_APPS): Remove patblt and stretchblt
as they break full make.
2003-08-22 Martin Fuchs <martin-fuchs@gmx.net>
* subsys/system/explorer/taskbar/traynotify.cpp:
Added tray notification area.
Implemented quick launch bar.
2003-08-22 Martin Fuchs <martin-fuchs@gmx.net>
* include/wine/commctrl.h:
Removed commctrl.h header file to use the one of W32API headers.
2003-08-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/win32k/ntuser/menu.c (IntSetMenuDefaultItem,
IntGetMenuDefaultItem): Fix unsigned/signed warnings.
2003-08-19 Martin Fuchs <martin-fuchs@gmx.net>
* subsys/system/explorer/taskbar/startmenu.cpp:
Implemented navigation in submenus of the start menu.
Start menus can now resolve shortcuts and launch programs.
2003-08-18 Martin Fuchs <martin-fuchs@gmx.net>
* subsys/system/explorer/taskbar/taskbar.cpp:
First draft of explorer start menu.
2003-08-17 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
* include/csrss/: csrss.h: implemented Ctrl Event handler
* subsys/csrss/api/: conio.c:
* subsys/csrss/: api.h:
* lib/kernel32/misc/: console.c:
2003-08-16 Martin Fuchs <martin-fuchs@gmx.net>
* subsys/system/explorer/taskbar/taskbar.cpp:
first draft of working task bar
2003-08-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/win32k/ntuser.h (NtUserGetClassName): Make nMaxCount an ULONG.
* subsys/win32k/dib/dib16bpp.c: Fix unsigned/signed warnings.
* subsys/win32k/dib/dib1bpp.c: Ditto.
* subsys/win32k/dib/dib32bpp.c: Ditto.
* subsys/win32k/dib/dib4bpp.c: Ditto.
* subsys/win32k/dib/dib8bpp.c: Ditto.
* subsys/win32k/eng/lineto.c: Ditto.
* subsys/win32k/eng/mouse.c: Ditto.
* subsys/win32k/eng/xlate.c: Ditto.
* subsys/win32k/misc/driver.c: Ditto.
* subsys/win32k/ntuser/class.c: Ditto.
* subsys/win32k/ntuser/keyboard.c: Ditto.
* subsys/win32k/ntuser/timer.c: Ditto.
* subsys/win32k/ntuser/window.c: Ditto.
* subsys/win32k/objects/bitmaps.c: Ditto.
* subsys/win32k/objects/color.c: Ditto.
* subsys/win32k/objects/coord.c: Ditto.
* subsys/win32k/objects/dib.c: Ditto.
* subsys/win32k/objects/path.c: Ditto.
* subsys/win32k/objects/region.c: Ditto.
* subsys/win32k/objects/text.c: Ditto.
2003-08-13 Martin Fuchs <martin-fuchs@gmx.net>
* subsys/system/explorer/taskbar/ex_bar.c, ex_menu.c:
Make explorer bar look more like windows taskbar bar
2003-08-09 Martin Fuchs <martin-fuchs@gmx.net>
* subsys/system/explorer/*.c: Subclassing of shell window for drawing
desktop background. Open child folders by double click in
ShellBrowserChild
2003-08-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* bootdata/txtsetup.sif (SetupData): Add /NOBOOTSCREEN to OsLoadOptions.
* hal/halx86/display.c (CHAR_ATTRIBUTE_BLACK): Define.
(HalClearDisplay): Add CharAttribute parameter.
(HalInitializeDisplay, HalReleaseDisplayOwnership): Blue screen.
* hal/halx86/halinit.c (DriverEntry): Blue screen for boot phase 2.
* include/reactos/resource.h (IDB_BOOTIMAGE): Define.
* ntoskrnl/Makefile: Add boot video objects.
* ntoskrnl/Makefile.i386: Ditto.
* ntoskrnl/ntoskrnl.def: Add boot video exports.
* ntoskrnl/ntoskrnl.edf: Ditto.
* ntoskrnl/ntoskrnl.rc (IDB_BOOTIMAGE): Define.
* ntoskrnl/include/internal/kd.h (KdInit3): Add.
* ntoskrnl/kd/kdebug.c (KdInitSystem): Print information in KdInit3.
* ntoskrnl/ke/bug.c (KeBugCheckWithTf, KeBugCheckEx): Switch to
text-mode on crash if needed.
* ntoskrnl/ke/main.c (ExpInitializeExecutive): Display bootscreen image
during boot.
* ntoskrnl/ke/i386/v86m_sup.S (_KiV86Complete): Restore previous mode and
old exception handler list.
* subsys/csrss/init.c: Change PrintString to DPRINT1.
* subsys/smss/init.c: Change PrintString to DPRINT1.
(SignalInitEvent): New.
(InitSessionManager): Call SignalInitEvent to switch to text-mode if
needed.
* subsys/smss/smss.c: Change PrintString to DPRINT1.
* ntoskrnl/inbv: New directory.
* ntoskrnl/inbv/i386: Ditto.
* ntoskrnl/res: Ditto.
* include/ntos/bootvid.h: New file.
* ntoskrnl/inbv/.cvsignore: Ditto.
* ntoskrnl/inbv/bootvid.c: Ditto.
* ntoskrnl/inbv/inbv.c: Ditto.
* ntoskrnl/inbv/i386/.cvsignore: Ditto.
* ntoskrnl/inbv/i386/pixelsup.S: Ditto.
* ntoskrnl/res/bootimage.bmp: Ditto.
2003-08-09 Martin Fuchs <martin-fuchs@gmx.net>
* win32k/ntuser/window.c implemented NtUserSetShellWindowEx() and
introduced NtUserGetShellWindow().
* iface/addsys/w32ksvc.db added new syscall for NtUserGetShellWindow().
* lib/user32/misc/desktop.c: moved SetShellWindowEx() implementation
in kernal space, see NtUserSetShellWindowEx().
2003-08-09 Martin Fuchs <martin-fuchs@gmx.net>
* subsys/system/explorer implemented explorer and desktop window
using shell view.
2003-08-09 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/windows/dialog.c (GetDlgItemInt): Fix unsigned/signed
warning.
* lib/user32/windows/menu.c (IsMenu): Ditto.
* lib/user32/windows/messagebox.c (MSGBOX_OnInit): Ditto.
* ntoskrnl/mm/ppool.c: Ditto.
2003-08-09 Martin Fuchs <martin-fuchs@gmx.net>
* include/func.h: added GetShellWindow()
* lib/user32/misc/desktop.c: implemented GetShellWindow(),
SetShellWindow() and SetShellWindowEx().
* lib/user32/user32.def: Ditto.
* lib/user32/user32.edf: Ditto.
2003-07-29 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
Patch by Art Yerkes <ayerkes@speakeasy.net>
* apps/utils/consw/: consw.c makefile runprg.bat Adding Keyboard
Testing Code
In order to use this patch you need a keyboard dll named kbdus.dll.
The dll is loaded at runtime, when TranslateMessage is called the
first time. Since these dlls are really simple (the kbd_us example
is in the DDK), it should be easy to make an LGPL one that gets
shipped with ReactOS. The one I am testing with so far is the one
from win2k. (arty)
I've tested this patch it works okay w/o kbdus.dll installed. (jt)
* apps/utils/Makefile: Main part of patch.
* ntoskrnl/include/internal/: kbd.h Ditto.
* subsys/csrss/api/conio.c: Ditto.
* subsys/csrss/api/wapi.c: Ditto.
* subsys/win32k/ldr/loader.c: Ditto.
* subsys/win32k/ntuser/input.c: Ditto.
* subsys/win32k/ntuser/keyboard.c: Ditto.
2003-07-24 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/fs/vfat/*.c: Remove protection of NDEBUG.
2003-07-24 Casper S. Hornstrup <chorns@users.sourceforge.net>
Move welcome from rosapps to here and beautify it a bit.
* Makefile: Copy bootdata/autorun.inf, and bootdata/icon.ico to CD.
(SYS_APPS) Add welcome.
* include/defines.h (BS_FLAT): Define.
* bootdata/autorun.inf: New file.
* bootdata/icon.ico: Ditto.
* subsys/system/welcome: New directory.
* subsys/system/welcome/.cvsignore: New file.
* subsys/system/welcome/Makefile: Ditto.
* subsys/system/welcome/resource.h: Ditto.
* subsys/system/welcome/welcome.c: Ditto.
* subsys/system/welcome/welcome.rc: Ditto.
* subsys/system/welcome/res/: New directory.
* subsys/system/welcome/res/background-right.bmp: New file.
* subsys/system/welcome/res/background-top.bmp: Ditto.
* subsys/system/welcome/res/default.bmp: Ditto.
* subsys/system/welcome/res/icon.ico: Ditto.
* subsys/system/welcome/res/topic0.bmp: Ditto.
* subsys/system/welcome/res/topic1.bmp: Ditto.
* subsys/system/welcome/res/topic2.bmp: Ditto.
2003-07-23 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
lib/user32/misc/: stubs.c Removed stub for ClientToScreen.
lib/user32/windows/: window.c Implemented ClientToScreen &
IsIconic.
2003-07-20 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
* include/win32k/ntuser.h Implemented GetKeyState, GetKeyboardState &
SetKeyboardState.
* subsys/win32k/ntuser/stubs.c
* subsys/win32k/ntuser/keyboard.c
* lib/user32/windows/input.c
2003-07-20 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
* lib/gdi32/misc/stubs.c Implemented Unpluged DC code.
* lib/gdi32/objects/dc.c ditto
* lib/gdi32/objects/line.c ditto
* lib/gdi32/objects/text.c ditto
* lib/gdi32/objects/region.c ditto
* lib/user32/windows/draw.c Implemented FrameRect, InvertRect and
DrawFocusRect.
2003-07-18 Royce Mitchell III <royce3@ev1.net>
* drivers/fs/vfat/volume.c: fixed bug lines 88, 92 - wasn't copying
null-terminator.
2003-07-18 Royce Mitchell III <royce3@ev1.net>
* include/defines.h: added missing DISP_CHANGE_BADPARAM
* include/ntos/gditypes.h: fixed DEVMODEA/W structures
(had to move POINTL structure from structs.h)
* include/win32k/ntuser.h: fixed some parameter lists
* subsys/win32k/ntuser/stubs.c: ditto
* lib/user32/misc/devmode.c: new function USER32_DevModeA2W
converts DEVMODEA structure to a DEVMODEW
* lib/user32/include/user32.h: declaration for USER32_DevModeA2W
* lib/user32/makefile: added misc/devmode.c
* lib/user32/misc/desktop.c: converting CreateDesktopA's
DEVMODEA to a DEVMODEW now.
* lib/user32/misc/display.c: implemented all functions except
GetMonitorInfoA/W
2003-07-17 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/fs/ntfs/notes.txt: New file.
* drivers/fs/ntfs/close.c: Ditto.
* drivers/fs/ntfs/rw.c: Ditto.
* drivers/fs/ntfs/attrib.c: Change Cdfs prefix to Ntfs.
* drivers/fs/ntfs/fcb.c: Ditto.
* drivers/fs/ntfs/finfo.c: Ditto.
* drivers/fs/ntfs/fsctl.c: Ditto.
* drivers/fs/ntfs/volinfo.c: Ditto.
* drivers/fs/ntfs/ntfs.c (DriverEntry): Set remaining dispatch functions.
* drivers/fs/ntfs/ntfs.h: Change Cdfs prefix to Ntfs.
(NTFS_RECORD_HEADER, FILE_RECORD_HEADER): Document fields.
* drivers/fs/ntfs/makefile (TARGET_OBJECTS): Add close.o rw.o.
2003-07-17 Casper S. Hornstrup <chorns@users.sourceforge.net>
* INSTALL: Update installation instructions.
2003-07-16 Royce Mitchell III <royce3@ev1.net>
* modifed strtok & wcstok in msvcrt so that crtdll can use it.
* new private support functions _lasttoken and _wlasttoken to support
strtok and wcstok respectively.
* fixed lib/msvcrt/stdio/vfscanf.c to remove unnecessary globals.
* changed crtdll to use msvcrt's stdio/scanf.c
2003-07-16 Royce Mitchell III <royce3@ev1.net>
* fixed warnings at lib/msvcrt/stdio/fputs.c:79
and lib/msvcrt/stdlib/errno.c:14
and lib/msvcrt/stdlib/wputenv.c:24
2003-07-16 Royce Mitchell III <royce3@ev1.net>
* integrated Art Yerkes' _ftime implementation at
lib/msvcrt/time/ftime.c
* fixed ungetc warning in lib/msvcrt/stdio/vfscanf.c (also
renamed ungetc macro to UNGETC for clarity)
2003-07-15 Royce Mitchell III <royce3@ev1.net>
* fixed references to errno in MSVCRT to use __set_errno() and
_errno() respectively.
* Fixed warning (args 3 & 6 in call to CreateThread) in
lib/msvcrt/process/threadx.c
2003-07-15 Royce Mitchell III <royce3@ev1.net>
* modified crtdll to forward most of it's CTYPE, STRING
and WSTRING entries to NTDLL or MSVCRT.
2003-07-14 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
* lib/gdi32/misc/stubs.c Remove FillRgn.
* lib/gdi32/objects/region.c Add FillRng.
It looks okay.
2003-07-12 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api
* include/ddk/extypes.h (NPAGED_LOOKASIDE_LIST, PAGED_LOOKASIDE_LIST):
Match w32api fields.
* include/ddk/halfuncs.h (HalReturnToFirmware, HalReleaseDisplayOwnership,
HalQueryDisplayOwnership): Move ...
* include/ntos/halfuncs.h: ... here.
* include/ntos/rtl.h: (PopEntrySList, PushEntrySList): Move to
ntoskrnl/ex/lookas.c.
* include/ntos/zw.h (NtAccessCheckAndAuditAlarm, NtCancelTimer,
NtCreatePagingFile, NtCreateThread, NtFlushInstructionCache,
NtFlushVirtualMemory, NtGetTickCount, NtLoadKey, NtLockVirtualMemory,
NtOpenObjectAuditAlarm, NtProtectVirtualMemory, NtQueryDirectoryObject,
NtQueryIntervalProfile, NtQueryVirtualMemory, NtRaiseHardError,
NtSetInformationKey, NtSetInformationObject, NtSetTimer, NtUnloadKey,
NtUnlockVirtualMemory, NtWaitForMultipleObjects, NtCreateProfile,
NtDelayExecution, NtExtendSection, NtQuerySection): Include for w32api.
* ntoskrnl/ntoskrnl.def (ExInterlockedAddUlong,
ExInterlockedInsertHeadList, ExInterlockedInsertTailList,
ExInterlockedPopEntryList, ExInterlockedPushEntryList,
ExInterlockedRemoveHeadList): Make FASTCALL.
* ntoskrnl/ntoskrnl.edf: Ditto.
* ntoskrnl/ex/list.c: Ditto.
* include/ddk/exfuncs.h: Ditto.
(InterlockedPopEntrySList, InterlockedPushEntrySList,
ExAllocateFromPagedLookasideList, ExFreeToPagedLookasideList): Add.
* ntoskrnl/ex/interlck.c (ExInterlockedDecrementLong,
ExInterlockedAddUlong, ExInterlockedIncrementLong): Undefine if defined.
* ntoskrnl/ex/lookas.c (PopEntrySList, PushEntrySList,
LookasideListLock): Add.
* drivers/dd/blue/blue.c: Include <roskrnl.h>.
* drivers/dd/videoprt/videoprt.c: Ditto.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/controls/edit.c (EDIT_EM_SetLimitText,
EDIT_WM_StyleChanged): Fix unsigned/signed warning.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* config (DBG): Default to 0.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* regtests: New directory.
* regtests/kmregtests: Ditto.
* regtests/kmrtint: Ditto.
* regtests/regtests: Ditto.
* regtests/shared: Ditto.
* regtests/win32base: Ditto.
* include/roskrnl.h: New file.
* regtests/Makefile: Ditto.
* regtests/kmregtests/.cvsignore: Ditto.
* regtests/kmregtests/driver.c: Ditto.
* regtests/kmregtests/kmregtests.h: Ditto.
* regtests/kmregtests/Makefile: Ditto.
* regtests/kmrtint/.cvsignore: Ditto.
* regtests/kmrtint/kmrtint.c: Ditto.
* regtests/kmrtint/kmrtint.def: Ditto.
* regtests/kmrtint/kmrtint.edf: Ditto.
* regtests/kmrtint/Makefile: Ditto.
* regtests/regtests/.cvsignore: Ditto.
* regtests/regtests/Makefile: Ditto.
* regtests/regtests/regtests.c: Ditto.
* regtests/shared/.cvsignore: Ditto.
* regtests/shared/Makefile: Ditto.
* regtests/shared/regtests.c: Ditto.
* regtests/shared/regtests.h: Ditto.
* regtests/win32base/.cvsignore: Ditto.
* regtests/win32base/driver.c: Ditto.
* regtests/win32base/file-1.c: Ditto.
* regtests/win32base/Makefile: Ditto.
* regtests/win32base/win32base.def: Ditto.
* regtests/win32base/win32base.edf: Ditto.
* tools/regtests.c: Ditto.
* Makefile: Add target regtests.
* config: Add SEH option.
* rules.mak: Add tool REGTESTS.
* bootdata/hivesys.inf: Add service kmregtests.
* include/win32k/bitmaps.h (DIB_BitmapInfoSize): Correct prototype.
* ntoskrnl/ke/i386/exp.c (KiKernelTrapHandler): Reverse wrong boolean
expression.
* ntoskrnl/ke/i386/usertrap.c (KiUserTrapHandler): Ditto.
* tools/Makefile: Add tool regtests.
* tools/config.mk: Handle SEH option.
* tools/helper.mk: Support regression tests.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/tests/bitblt/bitblt.c (MainWndProc): Declare variables
before any statements are processed in the scope.
* apps/tests/icontest/icontest.c (WinMain): Ditto.
* apps/tests/wm_paint/wm_paint.c (WinMain, MainWndProc): Ditto.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/controls/button.c (PB_Paint, GB_Paint): Declare variables
before any statements are processed in the scope.
* lib/user32/controls/combo.c (CBPaintButton): Ditto.
* lib/user32/windows/accel.c (TranslateAcceleratorA): Ditto.
* subsys/win32k/include/class.h (W32kGetClassLong): Fix prototype.
* subsys/win32k/ntuser/class.c (W32kGetClassLong): Match prototype.
* subsys/win32k/ntuser/windc.c (DceAllocDCE): Ditto.
* subsys/win32k/ntuser/window.c (DestroyThreadWindows): Ditto.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/rgenstat/rgenstat.c (process_directory): Fix building on Windows.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/rgenstat/rgenstat.c (API_INFO): Add filename field.
(path_to_url, get_filename): New functions.
(parse_file, process_directory): Build cvs path.
(generate_xml_for_component): Set file attribute on a function.
* tools/rgenstat/web/rapistatus.css (.h): New class.
* tools/rgenstat/web/rapistatus.js (clickHandler): Go to the file in
ViewCVS on click on a function.
* tools/rgenstat/web/rapistatus.xsl: Handle file attribute.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/win32k/objects/region.c (W32kFillRgn): Fix syntax error.
2003-07-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/rgenstat/rgenstat.c (get_previous_identifier): Skip end-of-line
characters when searching for identifier.
(parse_file): Print a warning if no identifier is found.
2003-07-10 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
* subsys/win32k/objects/region.c: (W32kFillRgn) Implement.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/winspool/stubs.c: Add @implemented and @unimplemented to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/wsock32/stubs.c: Add @implemented and @unimplemented to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/ws2_32/misc/bsd.c: Add @implemented and @unimplemented to APIs.
* lib/ws2_32/misc/dllmain.c: Ditto.
* lib/ws2_32/misc/event.c: Ditto.
* lib/ws2_32/misc/ns.c: Ditto.
* lib/ws2_32/misc/sndrcv.c: Ditto.
* lib/ws2_32/misc/stubs.c: Ditto.
* lib/ws2_32/misc/upcall.c: Ditto.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/dd/videoprt/videoprt.c: Add @implemented and @unimplemented
to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/version/misc/stubs.c: Add @implemented and @unimplemented to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/misc/dde.c: Add @implemented and @unimplemented to APIs.
* lib/user32/misc/desktop.c: Ditto.
* lib/user32/misc/display.c: Ditto.
* lib/user32/misc/exit.c: Ditto.
* lib/user32/misc/object.c: Ditto.
* lib/user32/misc/resources.c: Ditto.
* lib/user32/misc/sprintf.c: Ditto.
* lib/user32/misc/stubs.c: Ditto.
* lib/user32/misc/timer.c: Ditto.
* lib/user32/misc/winhelp.c: Ditto.
* lib/user32/misc/winsta.c: Ditto.
* lib/user32/windows/accel.c: Ditto.
* lib/user32/windows/bitmap.c: Ditto.
* lib/user32/windows/class.c: Ditto.
* lib/user32/windows/clipboard.c: Ditto.
* lib/user32/windows/cursor.c: Ditto.
* lib/user32/windows/dc.c: Ditto.
* lib/user32/windows/defwnd.c: Ditto.
* lib/user32/windows/dialog.c: Ditto.
* lib/user32/windows/draw.c: Ditto.
* lib/user32/windows/font.c: Ditto.
* lib/user32/windows/hook.c: Ditto.
* lib/user32/windows/icon.c: Ditto.
* lib/user32/windows/input.c: Ditto.
* lib/user32/windows/mdi.c: Ditto.
* lib/user32/windows/menu.c: Ditto.
* lib/user32/windows/message.c: Ditto.
* lib/user32/windows/messagebox.c: Ditto.
* lib/user32/windows/nonclient.c: Ditto.
* lib/user32/windows/paint.c: Ditto.
* lib/user32/windows/prop.c: Ditto.
* lib/user32/windows/rect.c: Ditto.
* lib/user32/windows/text.c: Ditto.
* lib/user32/windows/window.c: Ditto.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/net/tdi/cte/string.c: Add @implemented and @unimplemented to
APIs.
* drivers/net/tdi/cte/stubs.c: Ditto.
* drivers/net/tdi/tdi/dereg.c: Ditto.
* drivers/net/tdi/tdi/handler.c: Ditto.
* drivers/net/tdi/tdi/obsolete.c: Ditto.
* drivers/net/tdi/tdi/stubs.c: Ditto.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/snmpapi/snmpapi.c: Add @implemented and @unimplemented to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/secur32/lsa.c: Add @implemented and @unimplemented to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/storage/scsiport/scsiport.c: Add @implemented and
@unimplemented to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/net/ndis/ndis/40gone.c: Add @implemented and @unimplemented
to APIs.
* drivers/net/ndis/ndis/50gone.c: Ditto.
* drivers/net/ndis/ndis/buffer.c: Ditto.
* drivers/net/ndis/ndis/cl.c: Ditto.
* drivers/net/ndis/ndis/cm.c: Ditto.
* drivers/net/ndis/ndis/co.c: Ditto.
* drivers/net/ndis/ndis/control.c: Ditto.
* drivers/net/ndis/ndis/hardware.c: Ditto.
* drivers/net/ndis/ndis/io.c: Ditto.
* drivers/net/ndis/ndis/memory.c: Ditto.
* drivers/net/ndis/ndis/miniport.c: Ditto.
* drivers/net/ndis/ndis/protocol.c: Ditto.
* drivers/net/ndis/ndis/string.c: Ditto.
* drivers/net/ndis/ndis/stubs.c: Ditto.
* drivers/net/ndis/ndis/time.c: Ditto.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/kernel32/debug/break.c: Add @implemented and @unimplemented
to APIs.
* lib/kernel32/debug/debugger.c: Ditto.
* lib/kernel32/debug/output.c: Ditto.
* lib/kernel32/except/except.c: Ditto.
* lib/kernel32/file/backup.c: Ditto.
* lib/kernel32/file/cnotify.c: Ditto.
* lib/kernel32/file/copy.c: Ditto.
* lib/kernel32/file/create.c: Ditto.
* lib/kernel32/file/curdir.c: Ditto.
* lib/kernel32/file/delete.c: Ditto.
* lib/kernel32/file/deviceio.c: Ditto.
* lib/kernel32/file/dir.c: Ditto.
* lib/kernel32/file/dosdev.c: Ditto.
* lib/kernel32/file/file.c: Ditto.
* lib/kernel32/file/find.c: Ditto.
* lib/kernel32/file/iocompl.c: Ditto.
* lib/kernel32/file/lfile.c: Ditto.
* lib/kernel32/file/lock.c: Ditto.
* lib/kernel32/file/mailslot.c: Ditto.
* lib/kernel32/file/move.c: Ditto.
* lib/kernel32/file/npipe.c: Ditto.
* lib/kernel32/file/pipe.c: Ditto.
* lib/kernel32/file/rw.c: Ditto.
* lib/kernel32/file/tape.c: Ditto.
* lib/kernel32/file/volume.c: Ditto.
* lib/kernel32/mem/global.c: Ditto.
* lib/kernel32/mem/heap.c: Ditto.
* lib/kernel32/mem/isbad.c: Ditto.
* lib/kernel32/mem/local.c: Ditto.
* lib/kernel32/mem/procmem.c: Ditto.
* lib/kernel32/mem/section.c: Ditto.
* lib/kernel32/mem/virtual.c: Ditto.
* lib/kernel32/misc/atom.c: Ditto.
* lib/kernel32/misc/comm.c: Ditto.
* lib/kernel32/misc/computername.c: Ditto.
* lib/kernel32/misc/console.c: Ditto.
* lib/kernel32/misc/env.c: Ditto.
* lib/kernel32/misc/error.c: Ditto.
* lib/kernel32/misc/errormsg.c: Ditto.
* lib/kernel32/misc/handle.c: Ditto.
* lib/kernel32/misc/ldr.c: Ditto.
* lib/kernel32/misc/mbchars.c: Ditto.
* lib/kernel32/misc/muldiv.c: Ditto.
* lib/kernel32/misc/perfcnt.c: Ditto.
* lib/kernel32/misc/profile.c: Ditto.
* lib/kernel32/misc/res.c: Ditto.
* lib/kernel32/misc/stubs.c: Ditto.
* lib/kernel32/misc/sysinfo.c: Ditto.
* lib/kernel32/misc/time.c: Ditto.
* lib/kernel32/misc/toolhelp.c: Ditto.
* lib/kernel32/process/cmdline.c: Ditto.
* lib/kernel32/process/create.c: Ditto.
* lib/kernel32/process/proc.c: Ditto.
* lib/kernel32/process/session.c: Ditto.
* lib/kernel32/string/lstring.c: Ditto.
* lib/kernel32/synch/critical.c: Ditto.
* lib/kernel32/synch/event.c: Ditto.
* lib/kernel32/synch/intrlck.c: Ditto.
* lib/kernel32/synch/mutex.c: Ditto.
* lib/kernel32/synch/sem.c: Ditto.
* lib/kernel32/synch/timer.c: Ditto.
* lib/kernel32/synch/wait.c: Ditto.
* lib/kernel32/thread/fiber.c: Ditto.
* lib/kernel32/thread/fls.c: Ditto.
* lib/kernel32/thread/thread.c: Ditto.
* lib/kernel32/thread/tls.c: Ditto.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/iphlpapi/iphlpapi.c: Add @implemented and @unimplemented
to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/gdi32/main/dllmain.c: Add @implemented and @unimplemented
to APIs.
* lib/gdi32/misc/stubs.c: Ditto.
* lib/gdi32/misc/stubsa.c: Ditto.
* lib/gdi32/misc/stubsw.c: Ditto.
* lib/gdi32/objects/bitblt.c: Ditto.
* lib/gdi32/objects/brush.c: Ditto.
* lib/gdi32/objects/clip.c: Ditto.
* lib/gdi32/objects/dc.c: Ditto.
* lib/gdi32/objects/fillshap.c: Ditto.
* lib/gdi32/objects/line.c: Ditto.
* lib/gdi32/objects/pen.c: Ditto.
* lib/gdi32/objects/region.c: Ditto.
* lib/gdi32/objects/text.c: Ditto.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/storage/class2/class2.c: Add @implemented and @unimplemented
to APIs.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/advapi32/misc/shutdown.c: Add @implemented and @unimplemented
to APIs.
* lib/advapi32/misc/stubs.c: Ditto.
* lib/advapi32/misc/sysfunc.c: Ditto.
* lib/advapi32/reg/reg.c: Ditto.
* lib/advapi32/sec/ac.c: Ditto.
* lib/advapi32/sec/misc.c: Ditto.
* lib/advapi32/sec/sec.c: Ditto.
* lib/advapi32/sec/sid.c: Ditto.
* lib/advapi32/service/scm.c: Ditto.
* lib/advapi32/service/sctrl.c: Ditto.
* lib/advapi32/token/privilege.c: Ditto.
* lib/advapi32/token/token.c: Ditto.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/rgenstat/rgenstat.c (parse_file): Be silent.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* rules.mak (XSLTPROC): Add.
* tools/Makefile: Add rgenstat.
* apistatus.lst: New file.
* tools/rgenstat: New directory.
* tools/rgenstat/.cvsignore: New file.
* tools/rgenstat/llmosrt.c: Ditto.
* tools/rgenstat/Makefile: Ditto.
* tools/rgenstat/rgenstat.c: Ditto.
* tools/rgenstat/web: New directory.
* tools/rgenstat/web/*.gif: New files.
* tools/rgenstat/web/.cvsignore: New file.
* tools/rgenstat/web/rapistatus.css: Ditto.
* tools/rgenstat/web/rapistatus.js: Ditto.
* tools/rgenstat/web/rapistatus.xsl: Ditto.
2003-07-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/fs/vfat/misc.c (VfatLockControl): Move it so it is placed
before it is referenced.
* include/win32k/ntuser.h (NtUserQueryWindow): Correct prototype.
* lib/winedbgc/debug.c (default_dbg_vlog): Use wine_dbg_vprintf, not
__wine_dbg_vprintf.
* ntoskrnl/nt/vdm.c (NtEarlyInitVdm): Work around GCC 3.4 trying to be
smart.
2003-07-07 James Tabor <jimtabor@adsl-64-217-116-74.dsl.hstntx.swbell.net>
* subsys/win32k/ntuser/window.c: (NtUserQueryWindow) Implement.
* include/win32k/ntuser.h: Ditto.
* lib/user32/windows/window.c: (GetWindowThreadProcessId) Implement.
2003-07-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/windows/defwnd.c (DefWndHandleLButtonUpNC,
User32DefWindowProc): Only send WM_SYSCOMMAND message, not WM_CLOSE.
(DefWndHandleSysCommand): Handle SC_CLOSE message.
2003-07-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/win32k/ntuser.h (NtUserSetFocus): Correct prototype.
* lib/user32/misc/stubs.c (SetFocus): Remove.
* lib/user32/windows/defwnd.c (KEYDATA_ALT): New.
(User32DefWindowProc): Handle WM_SYSKEYDOWN.
* lib/user32/windows/input.c (SetFocus): New.
* subsys/win32k/include/msgqueue.h (USER_MESSAGE_QUEUE): Document
FocusWindow field.
* subsys/win32k/include/window.h (W32kSetFocusWindow): Change return type
to HWND.
* subsys/win32k/include/winsta.h (W32kGetFocusMessageQueue): New.
* subsys/win32k/ntuser/input.c (KeyboardThreadMain): Handle system keys.
* subsys/win32k/ntuser/keyboard.c (NtUserSetFocus): New.
* subsys/win32k/ntuser/msgqueue.c (MsqPostKeyboardMessage): Implement.
* subsys/win32k/ntuser/stubs.c (NtUserSetFocus): Remove.
* subsys/win32k/ntuser/window.c (W32kSetFocusWindow): Implement.
(NtUserGetClientRect, W32kGetWindowProc, NtUserCreateWindowEx): Release
window reference on error.
(W32kDestroyWindow): Remove focus from window tree before destroying it
if needed.
* subsys/win32k/ntuser/winpos.c (WinPosChangeActiveWindow): Implement.
(WinPosShowWindow): Activate window if needed.
* subsys/win32k/ntuser/winsta.c (W32kGetFocusMessageQueue): New.
2003-06-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/controls/button.c (ButtonWndProc_common): Fix unsigned/signed
warning.
2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/ddk/dbgfuncs.h: Move ...
* include/ntos/dbgfuncs.h: ... here.
* include/basetsd.h (LONG32): Make it a long.
* include/ntos.h: Include ntos/dbgfuncs.h.
* include/ddk/dbgfuncs.h (DBG_STATUS_*, DBG_GET_SHOW_*): Move to
include/ntos/dbgfuncs.h.
* include/ddk/exfuncs.h (ExNotifyCallback): Match w32api prototype.
(*BinaryTree, *SplayTree, *HashTable): Move to include/ntos/zw.h.
* include/ddk/extypes.h (TRAVERSE_METHOD, PKEY_COMPARATOR,
PTRAVERSE_ROUTINE, _BINARY_TREE_NODE, BINARY_TREE, SPLAY_TREE_NODE,
SPLAY_TREE, HASH_TABLE): Move to include/ntos/zwtypes.h.
* include/ddk/status.h (STATUS_PATH_SYNTAX_BAD): Rename to
STATUS_OBJECT_PATH_SYNTAX_BAD.
* apps/utils/objdir/objdir.c (StatusToName): Change
STATUS_PATH_SYNTAX_BAD to STATUS_OBJECT_PATH_SYNTAX_BAD.
* ntoskrnl/dbg/errinfo.c: Use STATUS_OBJECT_PATH_SYNTAX_BAD.
* include/ntos/rtl.h (RtlQueryRegistryValues, RtlWriteRegistryValue,
RtlDeleteRegistryValue): Match w32api prototypes.
* include/ntos/zw.h (ZwQuerySystemTime): Ditto.
* lib/kernel32/file/cnotify.c (FindFirstChangeNotificationW): Use
STATUS_OBJECT_PATH_SYNTAX_BAD.
* lib/ntdll/rtl/registry.c (RtlDeleteRegistryValue,
RtlQueryRegistryValues, RtlWriteRegistryValue): Match w32api prototypes.
* ntoskrnl/cm/cm.h, ntoskrnl/cm/ntfunc.c, ntoskrnl/cm/regfile.c: Change
FILETIME to LARGE_INTEGER.
* ntoskrnl/cm/rtlfunc.c (RtlDeleteRegistryValue, RtlQueryRegistryValues,
RtlWriteRegistryValue): Match w32api prototypes.
* ntoskrnl/ex/callback.c (ExNotifyCallback): Ditto.
* ntoskrnl/ex/time.c (NtQuerySystemTime): Ditto.
2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
* hal/halx86/dma.c (AdapterObjects): Don't put braces on scalar
initializers.
2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api
* include/ddk/obfuncs.h (ObCreateObject): Remove.
* include/ntos/zwtypes.h (ObRosCreateObject): Add.
* ntoskrnl/ntoskrnl.def, ntoskrnl/ntoskrnl.edf: Export ObCreateObject@36
and ObRosCreateObject@20.
* ntoskrnl/cm/ntfunc.c, ntoskrnl/cm/registry.c, ntoskrnl/cm/regobj.c,
ntoskrnl/io/create.c, ntoskrnl/io/device.c, ntoskrnl/io/iocomp.c,
ntoskrnl/lpc/connect.c, ntoskrnl/lpc/create.c, ntoskrnl/mm/section.c,
ntoskrnl/nt/evtpair.c, ntoskrnl/nt/mutant.c, ntoskrnl/nt/ntevent.c,
ntoskrnl/nt/ntsem.c, ntoskrnl/nt/nttimer.c, ntoskrnl/nt/profile.c,
ntoskrnl/ob/dirobj.c, ntoskrnl/ob/namespc.c, ntoskrnl/ob/symlink.c,
ntoskrnl/ps/create.c, ntoskrnl/ps/process.c, ntoskrnl/se/token.c,
subsys/win32k/ntuser/winsta.c: Use ObRosCreateObject, not ObCreateObject.
* ntoskrnl/ob/object.c (ObRosCreateObject): Rename from ObCreateObject.
(ObCreateObject): Add stub.
2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api
* include/ddk/cctypes.h (PREACTOS_COMMON_FCB_HEADER): Remove.
(FSRTL_COMMON_FCB_HEADER): Add.
* include/ddk/iotypes.h (FILE_OBJECT): Rename field
SectionObjectPointers to SectionObjectPointer.
* ntoskrnl/cc/copy.c, ntoskrnl/cc/misc.c, ntoskrnl/cc/pin.c,
ntoskrnl/cc/view.c, ntoskrnl/io/rawfs.c, ntoskrnl/mm/section.c,
drivers/fs/cdfs/cleanup.c, drivers/fs/cdfs/fcb.c,
drivers/fs/cdfs/fsctl.c, drivers/fs/ntfs/fcb.c, drivers/fs/ntfs/fsctl.c,
drivers/fs/vfat/close.c, drivers/fs/vfat/create.c,
drivers/fs/vfat/finfo.c, drivers/fs/vfat/fcb.c, drivers/fs/vfat/fsctl.c:
Use new FILE_OBJECT structure.
* drivers/fs/cdfs/cdfs.h, drivers/fs/ntfs/ntfs.h, drivers/fs/vfat/vfat.h:
Use new FSRTL_COMMON_FCB_HEADER structure.
* drivers/net/afd/include/afd.h (FSRTL_COMMON_FCB_HEADER): Remove.
* include/ddk/ketypes.h (KQUEUE): Match w32api structure.
* ntoskrnl/ke/queue.c, ntoskrnl/ke/wait.c: Use new structure.
* ntoskrnl/ke/spinlock.c (KeAcquireSpinLockAtDpcLevel,
KeReleaseSpinLockFromDpcLevel): Undefine before declaring.
2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api
* include/ddk/ketypes.h (KSPIN_LOCK, PKSPIN_LOCK): Match w32api
structures.
* ntoskrnl/ke/spinlock.c: Use new structures.
2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api
* include/ddk/service.h: Move ...
* include/ntos/service.h: ... here.
* include/ddk/kdfuncs.h: Move ...
* include/ntos/kdfuncs.h: ... here.
* include/ntos/halfuncs.h: New file.
* ntoskrnl/include/internal/hal/hal.h,
ntoskrnl/include/internal/hal/bus.h,
ntoskrnl/include/internal/hal/mps.h: Remove.
* hal/halx86/include/hal.h: Remove disabled code.
* include/ntos.h: Include ntos/service.h, ntos/halfuncs.h, and
ntos/kdfuncs.h.
* include/ddk/fstypes.h (FILE_LOCK_TOC): Move ...
* include/ntos/file.h: ... here.
* include/ddk/halfuncs.h (HalAllProcessorsStarted,
HalBeginSystemInterrupt, HalDisableSystemInterrupt,
HalEnableSystemInterrupt, HalEndSystemInterrupt,
HalInitializeProcessor, HalInitSystem, HalReportResourceUsage): Move to
include/ntos/halfuncs.h.
* include/ddk/iofuncs.h (IoAssignDriveLetters): Ditto.
* include/ddk/kefuncs.h (KeInitializeApc): Match w32api prototype.
(KeRaiseIrqlToSynchLevel): Move to include/ntos/halfuncs.h.
* include/ddk/ketypes.h (KAPC_ENVIRONMENT): Move to include/ntos/types.h.
(KDEVICE_QUEUE, KDEVICE_QUEUE_ENTRY): Match w32api prototype.
(KINTERRUPT): Move to include/ntos/zwtypes.h.
* include/ddk/mmtypes.h (PAGE_ROUND_UP, PAGE_ROUND_DOWN): Move ...
* include/ntos/mm.h: ... here.
* include/ddk/ntddk.h: Don't include ddk/kdfuncs.h.
* include/ddk/pstypes.h (PKTHREAD, PRKTHREAD): Add.
(PsInitialSystemProcess, PsProcessType, PsThreadType): Move ...
include/ntos/ps.h: ... here.
* lib/ntdll/rtl/i386/exception.c (SehpContinue): New.
* ntoskrnl/rtl/i386/exception.c (SehpContinue): Ditto.
* ntoskrnl/include/internal/ke.h: Include <ddk/ntifs.h>.
* ntoskrnl/include/internal/ntoskrnl.h: Include internal/ke.h.
* ntoskrnl/ex/napi.c: Use new structure SSDT_ENTRY.
* ntoskrnl/ke/apc.c (KeInitializeApc): Match w32api prototype.
* ntoskrnl/ke/kqueue.c: Use fields of new structures KDEVICE_QUEUE
and KDEVICE_QUEUE_ENTRY.
2003-06-07 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/cm/regfile.c (CmiCopyKey): Fix unsigned/signed warning.
2003-06-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/windows/icon.c (CURSORICON_FindBestCursor,
CURSORICON_FindBestIcon): Fix unsigned/signed warning.
2003-06-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api
* ntoskrnl/include/internal/i386/ps.h (KPCR_TSS): Redefine as 0x3C.
(KPCR_TIB): New structure.
(IKPCR): Ditto.
(KPCR): Match w32api structure fieldnames.
* ntoskrnl/ke/main.c (ExpInitializeExecutive): Adjust for changes to KPCR.
* ntoskrnl/ke/i386/kernel.c: Ditto.
* ntoskrnl/ps/thread.c: Ditto.
2003-06-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api
* include/ntos/zwtypes.h (SYSTEM_MODULES): Rename to
SYSTEM_MODULE_INFORMATION. Match w32api structure fieldnames.
(SYSTEM_MODULE_INFORMATION): Rename to SYSTEM_MODULE_INFORMATION_ENTRY.
Match w32api structure fieldnames.
* include/epsapi.h: Include <ntos.h>.
(PSYSMOD_ENUM_ROUTINE, PsaCaptureSystemModules, PsaWalkSystemModules,
PsaWalkFirstSystemModule, PsaWalkNextSystemModule): Use
SYSTEM_MODULE_INFORMATION_ENTRY and SYSTEM_MODULE_INFORMATION structures.
* lib/epsapi/enum/drivers.c: Use SYSTEM_MODULE_INFORMATION_ENTRY and
SYSTEM_MODULE_INFORMATION structures.
* lib/psapi/misc/win32.c: Ditto.
* ntoskrnl/ldr/loader.c: Ditto.
* lib/epsapi/enum/modules.c: Include <ntos.h>.
* lib/ntdll/rtl/thread.c: Ditto.
* lib/rosrtl/thread/context.c: Ditto.
* lib/rosrtl/thread/create.c: Ditto.
* lib/rosrtl/thread/stack.c: Ditto.
* include/ntos.h: Include "rosrtl/thread.h".
* include/structs.h (_BLOB_DEFINED): Rename to __BLOB_T_DEFINED.
* include/winsock2.h: Ditto.
* include/ntos/obtypes.h (POBJECT_TYPE): Make a pointer to struct
_OBJECT_TYPE.
(PHANDLE_TABLE): Make a pointer to struct _HANDLE_TABLE.
* ntoskrnl/include/internal/mm.h (PSECTION_OBJECT): Make a pointer to
struct _SECTION_OBJECT.
* ntoskrnl/include/internal/i386/ps.h (PKPCR): Make a pointer to struct
_KPCR.
2003-05-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Update bootcd target.
2003-05-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/system/usetup/progress.c (ProgressNextStep): Check if NewPos
is odd.
2003-05-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api
* include/ddk/haltypes.h: Move ...
* include/ntos/haltypes.h: ... here.
* include/ddk/obtypes.h: Move ...
* include/ntos/obtypes.h: ... here.
* include/ddk/i386/tss.h: Move ...
* include/ntos/tss.h: ... here.
* include/errors.h, include/windows.h: #include_next <windows.h>.
* include/ntos.h: Include "ntos/haltypes.h", "ntos/obtypes.h", and
"ntos/tss.h".
* include/ddk/defines.h (EXPORTED, IMPORTED): Move to
include/ntos/types.h.
* include/ddk/exfuncs.h, include/ddk/mmtypes.h, include/ntos/except.h,
include/ntos/file.h, include/ole32/guiddef.h, include/win32k/color.h,
lib/msafd/include/debug.h, lib/user32/include/debug.h,
lib/ws2_32/include/debug.h, lib/ws2help/debug.h,
ntoskrnl/include/internal/debug.h, ntoskrnl/ke/i386/bthread.S,
ntoskrnl/rtl/error.c: Don't define macros if previously defined.
* include/ddk/halfuncs.h: Include <ntos/haltypes.h>.
* include/ddk/iotypes.h: Include <ntos/obtypes.h>.
* include/ddk/ketypes.h (MB_FLAGS_*, LOADER_MODULE, ADDRESS_RANGE,
LOADER_PARAMETER_BLOCK): Move to include/ntos/types.h.
* include/ddk/ntddk.h: #include_next <ddk/ntddk.h>.
* include/ddk/ntifs.h: #include_next <ddk/ntifs.h>.
* include/napi/shared_data.h (SharedUserData): Undefine before defining.
* include/ntos/rtl.h (RtlUpcaseUnicodeString): Correct prototype.
* include/ntos/zwtypes.h (THREAD_STATE): Add.
* lib/ntdll/rtl/unicode.c (RtlUpcaseUnicodeString): Match new prototype.
* ntoskrnl/rtl/unicode.c (RtlUpcaseUnicodeString): Ditto.
* lib/string/Makefile: Include Makefile.$(ARCH). Don't include
makefile.$(ARCH).
* ntoskrnl/ex/sysinfo.c, ntoskrnl/include/internal/ntoskrnl.h,
* ntoskrnl/include/internal/ob.h, ntoskrnl/ob/handle.c: Include <ntos.h>.
* ntoskrnl/ke/i386/syscall.S: Don't include <ddk/defines.h>.
(KernelMode, UserMode): Define.
* ntoskrnl/ke/i386/stkswitch.S, ntoskrnl/ke/i386/tskswitch.S,
ntoskrnl/ke/i386/v86m_sup.S: Include <ntos/tss.h>
2003-05-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Fix typo.
2003-05-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Don't install system.hiv. Install fonts and nls directory.
* tools/rcopy.c (copy_file, copy_directory, is_directory): New functions.
2003-05-17 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/io/irp.c (IofCallDriver): Don't reference FileObject.
2003-05-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/io/cleanup.c (IopCompleteRequest1, IoSecondStageCompletion):
Don't dereference Irp->UserEvent here.
* ntoskrnl/io/irp.c (IofCallDriver): Reference FileObject.
* ntoskrnl/io/rw.c (IopReadWriteIoComplete): New function.
* (NtReadFile, NtWriteFile): Set I/O completion routine if using an
event that is under object manager control.
2003-05-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/Makefile (OBJECTS_IO): Add io/rawfs.o.
* ntoskrnl/cm/registry.c (CmiInitHives): Check status using NT_SUCCESS().
* ntoskrnl/include/internal/io.h (RawFsIsRawFileSystemDeviceObject,
RawFsDriverEntry): Add prototypes.
* ntoskrnl/include/internal/ntoskrnl.h (IoInit2): Add prototype.
* ntoskrnl/io/device.c (IopCreateDriverObject): Handle unnamed services.
* ntoskrnl/io/fs.c (IoMountVolume): Handle mounting of raw volumes.
(IoRegisterFileSystem): Add registered filesystem device objects at the
head of the list.
* ntoskrnl/io/iomgr.c (IoInit2): New function.
* ntoskrnl/ke/main.c (ExpInitializeExecutive): Call IoInit2().
* ntoskrnl/mm/section.c (MmQuerySectionView): Check return value of call
to MmFindRegion().
* ntoskrnl/io/rawfs.c: New file.
2003-05-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/fslib/vfatlib/vfatlib.c (VfatFormat): Set hidden sectors.
* ntoskrnl/io/xhaldrv.c (xHalIoWritePartitionTable): Implement support
for primary partitions.
* subsys/system/usetup/partlist.c (CreateSelectedPartition): Compute
hidden sectors.
* subsys/system/usetup/usetup.c (SelectPartitionPage,
DrawFileSystemList, FormatPartitionPage): Don't use conditional define
ENABLE_FORMAT.
(CreateFileSystemList): Don't draw "Keep current file system" option if
formatting is needed.
(SelectFileSystemPage): Figure out if partition must be formatted.
* subsys/system/usetup/usetup.h (ENABLE_FORMAT): Remove.
(FILE_SYSTEM_LIST): Add ForceFormat field.
2003-05-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/windows/font.c (TEXT_PathEllipsify, TEXT_Reprefix): Fix
unsigned/signed warning.
* ntoskrnl/mm/pagefile.c (MmWriteToSwapPage, MmReadFromSwapPage,
NtCreatePagingFile): Ditto.
2003-05-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/helper.mk: Kill implicit rule ".o".
2003-04-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile (DLLS): Add epsapi, psapi and wsock32.
* lib/ntdll/ldr/utils.c (LdrPerformRelocations): Handle the case where a
relocation crosses a page boundary.
(LdrFixupImports): Use image load address in calculatation of import
address list.
2003-04-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/fslib/vfatlib/vfatlib.h: New file.
* subsys/system/usetup/format.c: Ditto.
* subsys/system/usetup/format.h: Ditto.
* lib/fslib/vfatlib/vfatlib.c (GetShiftCount): Define.
(VfatWriteBootSector, VfatWriteFsInfo, VfatWriteFAT,
VfatWriteRootDirectory): New function.
(VfatFormat): Implement.
* subsys/system/usetup/bootsup.c: (InstallFat32BootCodeToFile): Use
0x0000 as marker to disable backup boot sector.
(InstallFat32BootCodeToDisk): Add lower 8-bit to BackupBootSector.
Also treat 0x0000 as no backup boot sector is available.
* subsys/system/usetup/makefile (TARGET_SDKLIBS): Define.
(TARGET_OBJECTS): Add format.o.
* subsys/system/usetup/partlist.c (AddPartitionList): Initialize
PartNumber field.
(GetSelectedPartition): Set PartEntryNumber correctly.
(CreateSelectedPartition): Write partition information to disk.
(DeleteSelectedPartition): New function.
* subsys/system/usetup/partlist.h (PARTDATA): Add field CreatePartition.
(DeleteSelectedPartition): Prototype.
* subsys/system/usetup/usetup.c (ConfirmDeletePartition): New function.
(SelectPartitionPage): Support deletion of partition.
(FormatPartitionPage): Support formatting of partition.
2003-04-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/helper.mk (TARGET_ASFLAGS): Add -march and define MK_ARCH_ID.
* lib/ntdll/makefile (TARGET_ASFLAGS): Define as
"-I $(PATH_TO_TOP)/include".
(TARGET_OBJECTS): Add ldr/entry.o.
* lib/ntdll/ldr/startup.c: Move inline assembly code...
* lib/ntdll/ldr/entry.S: ...here. New file.
2003-04-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/kernel32/kernel32.h (assert): Define.
* tools/mkhive/.cvsignore: New file.
2003-04-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
* subsys/system/usetup/partlist.c (AddPartitionList): Create
unpartitioned areas.
(CreatePartitionListNoGUI): Save disk geometry.
(PrintDiskData): Do not print hidden partition list entries.
(ScrollDownPartitionList, ScrollUpPartitionList): Skip hidden partition
list entries.
(GetActiveBootPartition): Use CurrentDisk as index.
(CreateSelectedPartition): New function.
* subsys/system/usetup/partlist.h (PARTDATA): Add field NewPartSize.
(PARTENTRY): Add fields StartingOffset and HidePartEntry.
(DISKENTRY): Add fields Cylinders, TracksPerCylinder, SectorsPerTrack,
and BytesPerSector;
(CreateSelectedPartition): Add Prototype.
* subsys/system/usetup/usetup.c (PAGE_NUMBER): Add CREATE_PARTITION_PAGE
and FORMAT_PARTITION_PAGE
(CurrentPartitionList, CurrentFileSystemList): New globals.
(SelectPartitionPage): Set CurrentPartitionList.
(PARTITION_SIZE_INPUT_FIELD_LENGTH): Define as 6.
(DrawInputField, ShowPartitionSizeInputBox, CreatePartitionPage,
CreateFileSystemList, DestroyFileSystemList, DrawFileSystemList,
ScrollDownFileSystemList, ScrollUpFileSystemList, FormatPartitionPage):
New functions.
(SelectFileSystemPage): Draw partition screen.
(CheckFileSystemPage): Handle CREATE_PARTITION_PAGE and
FORMAT_PARTITION_PAGE.
* subsys/system/usetup/usetup.h (FILE_SYSTEM, FILE_SYSTEM_LIST): Add enums.
2003-04-17 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/mkhive/infcache.c (InfpCacheFindSection, InfpCacheFindKeyLine,
InfFindFirstLine, InfFindFirstMatchLine, InfFindNextMatchLine,
InfGetLineCount): Change call to stricmp() to strcasecmp().
* tools/mkhive/reginf.c (GetRootKey): Ditto.
* tools/mkhive/registry.c (RegSetValue, RegQueryValue): Ditto.
2003-04-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/kd/gdbstub.c (KdEnterDebuggerException): Fix signed/unsigned
comparison warning.
* ntoskrnl/ke/i386/exp.c (KiKernelTrapHandler): Ditto.
* ntoskrnl/ke/i386/usertrap.c (KiUserTrapHandler): Ditto.
* tools/helper.mk: Do not install static libraries.
2003-04-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/Makefile: Fix rule for mkflpimg.
2003-04-12 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/cdmake/Makefile: Use HOST_CC.
* tools/cdmake/cdmake.c (MAX_PATH, DIR_SEPARATOR_CHAR,
DIR_SEPARATOR_STRING): Define.
(directory_record): Add fields name_on_cd and extension_on_cd.
(error_exit): Make a macro. Avoid using vfprintf and fprintf.
(write_directory_record, new_directory_record, compare_directory_order,
pass): Use name_on_cd and extension_on_cd.
(make_directory_records, get_file_specifications): Use DIR_SEPARATOR_CHAR.
(new_directory_record, make_directory_records): Linux implementations.
(main): Use DIR_SEPARATOR_CHAR.
2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/freetype/.cvsignore: Ignore nul.
2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/storage/atapi/atapi.c (AtapiReadWrite): Expect an interrupt a
bit sooner.
* hal/halx86/isa.c (HalpGetIsaInterruptVector): Compute vector for MP.
* hal/halx86/pci.c (HalpGetPciInterruptVector): Ditto.
* hal/halx86/sysbus.c (HalpGetSystemInterruptVector): Ditto.
* hal/halx86/mp.c (AssignIrqVector): Rewrite.
(MpsTimerHandler): Disable for now.
(MpsSpuriousHandler): Do not acknowledge interrupt.
(HalAllProcessorsStarted): Only boot 1 CPU for now.
(RescheduleDpcRoutine): New function.
(RescheduleDpc): New variable.
(HalpInitMPS): Initialize RescheduleDpc. Fix bug in call to memset.
* hal/halx86/mpsirql.c: Rewrite.
* hal/halx86/include/mps.h (VECTOR2IRQ, IRQ2VECTOR, VECTOR2IRQL,
IRQL2VECTOR): New macros.
* ntoskrnl/ntoskrnl.def: Add KeRescheduleThread@0.
* ntoskrnl/ntoskrnl.edf: Ditto.
* ntoskrnl/include/internal/ke.h (KeRescheduleThread): Prototype.
* ntoskrnl/ke/kthread.c (KeRescheduleThread): New function.
* ntoskrnl/ke/i386/exp.c (KeInitExceptions): Remove unneeded call to
set_trap_gate().
* ntoskrnl/ke/i386/irq.c (VECTOR2IRQ, IRQ2VECTOR, VECTOR2IRQL): Correct.
(IRQ_BASE): Define as FIRST_DEVICE_VECTOR.
(NR_IRQS): Define using IRQ_BASE.
(KeInitInterrupts): Use IRQ_BASE.
(KiInterruptDispatch2): Rewrite.
(KiInterruptDispatch): Ditto.
(KeConnectInterrupt): Pass Vector to HalEnableSystemInterrupt() for MP.
(KeDisconnectInterrupt): Pass Vector to HalDisableSystemInterrupt() for MP.
* ntoskrnl/ke/i386/trap.s (_KiTrapProlog): Change 0x124 to KPCR_CURRENT_THREAD.
2003-04-06 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Add format.
* include/fslib/vfatlib.h (VfatFormat): Prototype.
* lib/fmifs/format.c (VfatFormat): Add stub.
* lib/fmifs/makefile (TARGET_LIBS): Add vfatlib.a.
* lib/fslib/vfatlib/vfatlib.c (VfatFormat): Add stub.
* tools/helper.mk: Do not install .sym files for static libraries.
* subsys/system/format: New directory.
* subsys/system/format/makefile: New file.
* subsys/system/format/format.c: Ditto.
2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/fslib: New directory.
* lib/fslib: Ditto.
* lib/fslib/vfatlib: Ditto.
* include/fslib/vfatlib.h: New file.
* lib/fslib/vfatlib/.cvsignore: Ditto.
* lib/fslib/vfatlib/Makefile: Ditto.
* lib/fslib/vfatlib/vfatlib.c: Ditto.
* Makefile: Support file system libraries
* lib/zlib/Makefile: Remove nostrip target.
* tools/helper.mk: Add nostrip target.
2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/.cvsignore: Ignore rline.
2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* bootcd.bat: Install dosmbr.bin.
* drivers/storage/disk/disk.c (DiskClassDeviceControl): Pass physical
device object to IoWritePartitionTable().
* ntoskrnl/io/xhaldrv.c (xHalReadMBR): New function.
(xHalWriteMBR): Ditto.
(xHalExamineMBR): Use xHalReadMBR() to read MBR.
(xHalIoWritePartitionTable): Partial implement.
* subsys/system/usetup/bootsup.c (InstallMBRBootCodeToDisk): New function.
* subsys/system/usetup/bootsup.h (InstallMBRBootCodeToDisk): Prototype.
* subsys/system/usetup/partlist.c (CreatePartitionListNoGUI): New function.
(CreatePartitionList): Use CreatePartitionListNoGUI() to create partition
list.
(GetPartitionInformation): New function.
(MarkPartitionActive): Ditto.
* subsys/system/usetup/partlist.h (MarkPartitionActive): Prototype.
* subsys/system/usetup/usetup.c (SelectPartitionPage): Make SystemRootPath
point to the selected partition if no partitions are active.
(BootLoaderPage): If no partitions are active, then install a DOS MBR and
mark the selected partition active.
2003-04-05 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile: Add bootcd target.
(BOOTCD_INSTALL): Set for bootcd install.
* rules.mak (TOPDIR): Define on windows.
(BOOTCD_DIR): Define.
(RLINE): Define.
* apps/tests/lpc/makefile: Handle BOOTCD_INSTALL.
* apps/tests/mstest/Makefile: Ditto.
* apps/tests/nptest/Makefile: Ditto.
* apps/tests/shm/makefile: Ditto.
* ntoskrnl/Makefile: Handle BOOTCD_INSTALL. Add bootcd target.
* drivers/dd/vga/makefile: Add bootcd target.
* drivers/dd/blue/makefile (TARGET_BOOTSTRAP): Define as yes.
* drivers/dd/floppy/Makefile: Ditto.
* drivers/fs/cdfs/makefile: Ditto.
* drivers/fs/ntfs/makefile: Ditto.
* drivers/fs/vfat/makefile: Ditto.
* drivers/input/keyboard/makefile: Ditto.
* drivers/storage/atapi/makefile: Ditto.
* drivers/storage/cdrom/makefile: Ditto.
* drivers/storage/class2/makefile: Ditto.
* drivers/storage/disk/makefile: Ditto.
* drivers/storage/scsiport/makefile: Ditto.
* hal/halx86/Makefile: Ditto.
* lib/ntdll/makefile: Ditto.
* subsys/system/usetup/makefile (TARGET_BOOTSTRAP): Define as yes.
(TARGET_BOOTSTRAP_NAME): Define as smss.exe.
* tools/Makefile: Add rline executable.
* tools/helper.mk: Support bootcd targets.
* tools/rline.c: New file.
2003-04-04 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/freetype/builds/compiler/gcc.mk (CC): Comment out; use CC from
rules.mak instead.
* lib/freetype/README.ROS: Note this in porting guide.
2003-03-29 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/ex/sysinfo.c (SystemProcessInformation): Fix warning.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/ntos/rtltypes.h (PRTL_BASE_PROCESS_START_ROUTINE): Define.
* lib/kernel32/process/create.c (RtlBaseProcessStartRoutine): Import.
(KlCreateFirstThread): Support images with native subsystem ID.
* lib/ntdll/def/ntdll.def (RtlBaseProcessStartRoutine): Export.
* lib/ntdll/def/ntdll.edf (RtlBaseProcessStartRoutine): Ditto.
* lib/ntdll/rtl/exception.c (RtlBaseProcessStart): Forward declare.
(RtlBaseProcessStartRoutine, RtlBaseProcessStart): Add.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/defines.h (VS_FFI_SIGNATURE, VS_FFI_STRUCVERSION): Define.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/ke/i386/exp.c (KiKernelTrapHandler): Use exception code
STATUS_ACCESS_VIOLATION for exception 14.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/fs/util.c (FsRtlGetFileSize): Implement.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/ntdll/rtl/nls.c (RtlCustomCPToUnicodeN, RtlMultiByteToUnicodeN,
RtlOemToUnicodeN, RtlUnicodeToCustomCPN, RtlUnicodeToMultiByteN,
RtlUnicodeToMultiByteSize, RtlUnicodeToOemN,
RtlUpcaseUnicodeToCustomCPN, RtlUpcaseUnicodeToMultiByteN,
RtlUpcaseUnicodeToOemN): Assert when unimplemented code is reached.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/ntos/zwtypes.h (FILE_BASIC_INFORMATION): Use LARGE_INTEGER,
not TIME type for time fields.
* lib/kernel32/file/copy.c (SetLastWriteTime): Adjust for new type.
(CopyFileExW): Ditto.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/ntos/types.h (FALSE): Protect with #ifndef FALSE.
(TRUE): Protect with #ifndef TRUE.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/napi/i386/segment.h (put_user, get_user,
bad_user_access_length, __segment_dummy, __sd, __const_sd, __put_user,
__get_user, __generic_memcpy_tofs, __constant_memcpy_tofs, COMMON,
__generic_memcpy_fromfs, __constant_memcpy_fromfs, memcpy_fromfs,
memcpy_tofs, get_fs_byte, get_fs_word, get_fs_long, put_fs_byte,
put_fs_word, put_fs_long, get_user_word, get_user_byte, get_user_long,
put_user_byte, put_user_word, put_user_long, get_fs, get_ds, set_fs,
set_ds): Remove.
2003-03-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/ddk/pstypes.h (TLS_OUT_OF_INDEXES): Define.
2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/cc/view.c (CcRosFlushDirtyPages): Treat a write attempt with
a return value of STATUS_END_OF_FILE as a successful write.
* ntoskrnl/cc/copy.c (WriteCacheSegment): Ditto.
2003-02-18 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/cm/regfile.c (CmiRemoveSubKey): Kill warnings.
(CmiMergeFree): Ditto.
2003-02-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/structs.h (OSVERSIONINFOEXA): Expand definition of
OSVERSIONINFOA.
(OSVERSIONINFOEXW): Expand definition of OSVERSIONINFOW.
* lib/msafd/misc/helpers.c (LocateHelperDLL): Cast AddressFamily,
SocketType, and Protocol to INT.
* lib/ws2_32/misc/catalog.c (LocateProvider): Ditto.
2003-01-16 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/dbg/profile.c (KdbProfilerThreadMain): Make STDCALL.
2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/net/tcpip/makefile (TCP_OBJECTS): Add transport/tcp/tcpcore.o,
transport/tcp/tcp_input.o, transport/tcp/tcp_ipv4.o,
transport/tcp/tcp_output.o, and transport/tcp/tcp_timer.o.
* drivers/net/tcpip/transport/tcp/tcp.c (TCPStartup): Call tcp_init().
* drivers/net/tcpip/include/linux.h: New file.
* drivers/net/tcpip/include/tcpcore.h: Ditto.
* drivers/net/tcpip/include/tcpdef.h: Ditto.
* drivers/net/tcpip/transport/tcp/tcp_input.c: Ditto.
* drivers/net/tcpip/transport/tcp/tcp_ipv4.c: Ditto.
* drivers/net/tcpip/transport/tcp/tcp_output.c: Ditto.
* drivers/net/tcpip/transport/tcp/tcp_timer.c: Ditto.
* drivers/net/tcpip/transport/tcp/tcpcore.c: Ditto.
2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/kernel32/k32.h: New file.
* lib/kernel32/makefile (TARGET_CFLAGS): Add -I./.
(TARGET_PCH): Set to k32.h.
* lib/kernel32/except/except.c: Use <k32.h>.
* lib/kernel32/file/backup.c: Ditto.
* lib/kernel32/file/cnotify.c: Ditto.
* lib/kernel32/file/copy.c: Ditto.
* lib/kernel32/file/create.c: Ditto.
* lib/kernel32/file/curdir.c: Ditto.
* lib/kernel32/file/delete.c: Ditto.
* lib/kernel32/file/deviceio.c: Ditto.
* lib/kernel32/file/dir.c: Ditto.
* lib/kernel32/file/dosdev.c: Ditto.
* lib/kernel32/file/file.c: Ditto.
* lib/kernel32/file/find.c: Ditto.
* lib/kernel32/file/iocompl.c: Ditto.
* lib/kernel32/file/lfile.c: Ditto.
* lib/kernel32/file/lock.c: Ditto.
* lib/kernel32/file/mailslot.c: Ditto.
* lib/kernel32/file/move.c: Ditto.
* lib/kernel32/file/npipe.c: Ditto.
* lib/kernel32/file/pipe.c: Ditto.
* lib/kernel32/file/rw.c: Ditto.
* lib/kernel32/file/tape.c: Ditto.
* lib/kernel32/file/volume.c: Ditto.
* lib/kernel32/mem/global.c: Ditto.
* lib/kernel32/mem/heap.c: Ditto.
* lib/kernel32/mem/isbad.c: Ditto.
* lib/kernel32/mem/local.c: Ditto.
* lib/kernel32/mem/procmem.c: Ditto.
* lib/kernel32/mem/section.c: Ditto.
* lib/kernel32/mem/virtual.c: Ditto.
* lib/kernel32/misc/atom.c: Ditto.
* lib/kernel32/misc/comm.c: Ditto.
* lib/kernel32/misc/console.c: Ditto.
* lib/kernel32/misc/debug.c: Ditto.
* lib/kernel32/misc/dllmain.c: Ditto.
* lib/kernel32/misc/env.c: Ditto.
* lib/kernel32/misc/error.c: Ditto.
* lib/kernel32/misc/handle.c: Ditto.
* lib/kernel32/misc/ldr.c: Ditto.
* lib/kernel32/misc/profile.c: Ditto.
* lib/kernel32/misc/res.c: Ditto.
* lib/kernel32/misc/stubs.c: Ditto.
* lib/kernel32/misc/sysinfo.c: Ditto.
* lib/kernel32/misc/time.c: Ditto.
* lib/kernel32/process/cmdline.c: Ditto.
* lib/kernel32/process/create.c: Ditto.
* lib/kernel32/process/proc.c: Ditto.
* lib/kernel32/process/session.c: Ditto.
* lib/kernel32/string/lstring.c: Ditto.
* lib/kernel32/synch/critical.c: Ditto.
* lib/kernel32/synch/event.c: Ditto.
* lib/kernel32/synch/intrlck.c: Ditto.
* lib/kernel32/synch/mutex.c: Ditto.
* lib/kernel32/synch/sem.c: Ditto.
* lib/kernel32/synch/timer.c: Ditto.
* lib/kernel32/synch/wait.c: Ditto.
* lib/kernel32/thread/fiber.c: Ditto.
* lib/kernel32/thread/thread.c: Ditto.
* lib/kernel32/thread/tls.c: Ditto.
2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/testsets/Makefile (TEST_SETS): Remove ldr.
* include/msvcrt/ctype.h (towupper): Make returntype wchar_t.
2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/rtouch.c: Include <sys/utime.h>, not <utime.h>.
2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* tools/rtouch.c: New file.
* rules.mak (ROS_USE_PCH): Default to no.
(RTOUCH): Define.
* tools/Makefile: Add rtouch utility.
* tools/helper.mk: Support precompiled headers.
2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/dbg/profile.c: New file.
* ntoskrnl/Makefile (OBJECTS_KDBG): Add dbg/profile.o.
* ntoskrnl/dbg/kdb.h: Define NTOS_MODE_KERNEL. Include <ntos.h>.
(LdrGetAddressInformation, KdbInitProfiling, KdbInitProfiling2,
KdbDisableProfiling, KdbEnableProfiling, KdbProfileInterrupt) Prototype.
* ntoskrnl/kd/kdebug.c (KdInitSystem): Add /PROFILE option if KDBG=1.
* ntoskrnl/ke/main.c (ExpInitializeExecutive): Call KdbInitProfiling2()
if KDBG=1.
* ntoskrnl/ke/i386/irq.c: Include <../dbg/kdb.h> if KDBG=1.
(KiInterruptDispatch): Call KdbProfileInterrupt() on timer interrupt
if KDBG=1.
2003-01-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/fs/vfat/create.c (VfatSupersedeFile): Only notify cache manager
about change in file size if caching is initiated on the file stream.
2003-01-11 Casper S. Hornstrup <chorns@users.sourceforge.net>
* boot.bat: Use DOS end-of-line characters.
2003-01-02 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/ke/timer.c (KeExpireTimers): Avoid signed/unsigned comparison
warning.
* lib/user32/controls/scrollbar.c (SCROLL_DrawScrollBar): Put a statement
at end.
2002-12-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/fs/vfat/cleanup.c (VfatCleanupFile): Only uninitialize caching
when initialized.
* drivers/fs/vfat/fcb.c (vfatReleaseFCB): Ditto.
* lib/kernel32/mem/section.c (CreateFileMappingW): Pass NULL as
MaximumSize to NtCreateSection if dwMaximumSizeHigh and dwMaximumSizeLow
are both 0.
* ntoskrnl/cc/pin.c (CcMapData): Assert if Bcb is NULL.
* ntoskrnl/cc/view.c (CcRosReleaseCacheSegment, CcRosLookupCacheSegment,
CcRosMarkDirtyCacheSegment, CcRosUnmapCacheSegment,
CcRosCreateCacheSegment, CcRosGetCacheSegmentChain,
CcRosGetCacheSegment, CcRosRequestCacheSegment, CcFlushCache,
CcRosDeleteFileCache, CcRosReferenceCache, CcRosDereferenceCache,
CcRosReleaseFileCache, CcGetFileObjectFromSectionPtrs): Ditto.
* ntoskrnl/mm/section.c (MiReadPage): Assert if Fcb->Bcb is NULL.
(MmCreateDataFileSection): Make sure caching is initialized for the file
stream.
2002-11-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/ddk/ldrtypes.h: Move ...
* include/ntos/ldrtypes.h: ... here.
* include/ddk/ntddk.h: Include ldrtypes.h at new location.
2002-11-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/bus/acpi/ospm/osl.c (acpi_os_readable, acpi_os_writable):
Match prototypes.
* include/ascii.h (AbortSystemShutdownA): Correct prototype.
* include/debug.h (assert): Wrap in #ifndef assert.
* include/funcs.h (AbortSystemShutdown): Remove duplicate prototype.
* include/ddk/rtltypes.h: Move ...
* include/ntos/rtltypes.h: ... here.
* include/ddk/rtl.h: Move ...
* include/ntos/rtl.h: ... here.
* include/ddk/zwtypes.h: Move ...
* include/ntos/zwtypes.h: ... here.
* include/ddk/zw.h: Move ...
* include/ntos/zw.h: ... here.
| include/ddk/cmfuncs.h: Remove file; Move NtCreateKey to ntos/zw.h.
* include/ntos.h: #include ntos/rtltypes.h, ntos/rtl.h, ntos/zwtypes.h,
and ntos/zw.h.
* include/unicode.h: (AbortSystemShutdownW): Correct prototype.
* include/ddk/ntddk.h: Include headers at new location; Don't include
removed files.
* include/defines.h: Wrap definitions in w32api in #ifndef __USE_W32API.
* include/ntos/zwtypes.h: Ditto.
* include/napi/lpc.h: Ditto.
* include/napi/shared_data.h: Ditto.
* include/napi/teb.h: Ditto.
* include/napi/types.h: Ditto.
* include/ntdll/ldr.h: Ditto.
* include/ntdll/rtl.h: Ditto.
* include/ntos/console.h: Ditto.
* include/ntos/disk.h: Ditto.
* include/ntos/except.h: Ditto.
* include/ntos/file.h: Ditto.
* include/ntos/gditypes.h: Ditto.
* include/ntos/heap.h: Ditto.
* include/ntos/keyboard.h: Ditto.
* include/ntos/mm.h: Ditto.
* include/ntos/ntdef.h: Ditto.
* include/ntos/ps.h: Ditto.
* include/ntos/registry.h: Ditto.
* include/ntos/security.h: Ditto.
* include/ntos/synch.h: Ditto.
* include/ntos/time.h: Ditto.
* include/ntos/types.h: Ditto.
* include/ntos/port.h: Ditto.
* lib/advapi32/misc/shutdown.c (AbortSystemShutdownW,
AbortSystemShutdownA): Correct prototype.
* lib/advapi32/reg/reg.c: #include ntos.h.
* lib/advapi32/sec/misc.c: Ditto.
* lib/advapi32/sec/sid.c: Ditto.
* lib/advapi32/service/sctrl.c: Ditto.
* lib/advapi32/token/token.c: Ditto.
* lib/kernel32/misc/dllmain.c: Ditto.
* ntoskrnl/ex/napi.c: Ditto.
* ntoskrnl/rtl/i386/exception.c: Ditto.
* lib/advapi32/sec/ac.c: Ditto.
(FindFirstFreeAce, GetAce): Change PACE* to PACE_HEADER*.
* lib/advapi32/service/scm.c (EnumServicesStatusExA,
EnumServicesStatusExW, QueryServiceStatusEx): Correct prototype.
* lib/ntdll/rtl/ppb.c (RtlDestroyProcessParameters): Match prototype.
* ntoskrnl/dbg/errinfo.c (DbgGetErrorText): Use %08x, not %08lx.
* ntoskrnl/io/arcname.c (IoCreateSystemRootLink): Use %u, not %lu.
* ntoskrnl/ke/main.c (ExpInitializeExecutive): Ditto.
* (_main): Use %d, not %ld.
* ntoskrnl/include/internal/i386/ke.h: Add #pragma GCC system_header.
* include/ddk/ntdef.h (NTSYSAPI, NTAPI, NTKERNELAPI): Define to STDCALL;
Check if already defined.
* include/base.h (STDCALL, CDECL, CALLBACK, PASCAL): Move to ntos/types.h.
2002-11-13 Rick Gaiser <RickG81@Wanadoo.nl>
* drivers/bus/isapnp/isapnp.c (FindNextReadPort): Increment Port before
checking wether port address is in NE2000 address space range and returning
port address value.
2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/bus/acpi/include/acpi.h: Include platform/types.h.
* drivers/bus/acpi/include/actypes.h: (UINT8, BOOLEAN, UCHAR, UINT16,
INT32, UINT32, UINT64): Disable, use the OS defined types instead.
* drivers/bus/acpi/include/platform/types.h: Remove all types,
include ntos.h instead.
* drivers/bus/acpi/ospm/include/acpisys.h: Don't include
platform/types.h.
2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/defines.h: Fix warnings when bulding with gcc 3.3.
* include/ddk/status.h: Ditto.
* include/freetype/internal/ftdebug.h: Ditto.
* include/net/ndis.h: Ditto.
* lib/msafd/misc/helpers.c: Ditto.
* lib/user32/windows/defwnd.c: Ditto.
* lib/user32/windows/window.c: Ditto.
* ntoskrnl/cm/ntfunc.c: Ditto.
* ntoskrnl/cm/regfile.c: Ditto.
* ntoskrnl/cm/regobj.c: Ditto.
* ntoskrnl/dbg/errinfo.c: Ditto.
* ntoskrnl/ex/hashtab.c: Ditto.
* ntoskrnl/include/internal/mm.h: Ditto.
* ntoskrnl/io/irp.c: Ditto.
* ntoskrnl/kd/gdbstub.c: Ditto.
* ntoskrnl/ke/queue.c: Ditto.
* ntoskrnl/ke/sem.c: Ditto.
* ntoskrnl/ldr/resource.c: Ditto.
* ntoskrnl/mm/balance.c: Ditto.
* ntoskrnl/mm/freelist.c: Ditto.
* ntoskrnl/mm/mdl.c: Ditto.
* ntoskrnl/mm/npool.c: Ditto.
* ntoskrnl/mm/section.c: Ditto.
* ntoskrnl/rtl/error.c: Ditto.
* ntoskrnl/rtl/mem.c: Ditto.
* ntoskrnl/rtl/string.c: Ditto.
* ntoskrnl/rtl/time.c: Ditto.
* ntoskrnl/rtl/unicode.c: Ditto.
* ntoskrnl/rtl/wstring.c: Ditto.
* ntoskrnl/rtl/i386/exception.c: Ditto.
* subsys/win32k/freetype/src/base/ftinit.c: Ditto.
2002-11-03 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/tests/lpc/lpcclt.c: Change LPC_MESSAGE_HEADER to LPC_MESSAGE.
* include/csrss/csrss.h: Ditto.
* include/lsass/lsass.h: Ditto.
* include/napi/dbg.h: Ditto.
* include/napi/lpc.h: Ditto.
* lib/kernel32/misc/console.c: Ditto.
* lib/ntdll/csr/lpc.c: Ditto.
* lib/ntdll/dbg/debug.c: Ditto.
* lib/secur32/lsa.c: Ditto.
* ntoskrnl/dbg/user.c: Ditto.
* ntoskrnl/include/internal/port.h: Ditto.
* ntoskrnl/lpc/connect.c: Ditto.
* ntoskrnl/lpc/reply.c: Ditto.
* ntoskrnl/ps/process.c: Ditto.
* subsys/csrss/api/conio.c: Ditto.
* subsys/csrss/api/process.c: Ditto.
* subsys/csrss/api/user.c: Ditto.
2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/msvcrt/except/seh.s: Fix end-of-line formatting.
* lib/ntdll/rtl/i386/exception.c: Ditto.
* lib/ntdll/rtl/i386/except.s: Ditto.
* ntoskrnl/rtl/i386/except.s: Ditto.
* ntoskrnl/rtl/i386/seh.s: Ditto.
2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/msvcrt/Makefile (OBJECTS_EXCEPT): Add except/seh.o; Remove
except/exhand3.o.
* lib/msvcrt/except/exhand2.c (MsvcrtDebug): New function.
* lib/msvcrt/except/unwind.c (PEXCEPTION_FRAME): Remove.
(_global_unwind2): Correct prototype.
* lib/ntdll/makefile (RTL_I386_OBJECTS, ARCH_OBJECTS): New groups.
(TARGET_OBJECTS): Add ARCH_OBJECTS group.
* lib/ntdll/rtl/exception.c (KiUserExceptionDispatcher): Set
NumberParameters in exception record.
(RtlRaiseStatus): Remove.
* ntoskrnl/Makefile (OBJECTS_RTL): Remove rtl/seh.o.
(OBJECTS_RTL_I386): Add rtl/i386/except.o, rtl/i386/exception.o, and
rtl/i386/seh.o.
* ntoskrnl/ke/catch.c (RtlpExecuteHandlerForException,
RtlpDumpExceptionRegistrations, RtlpDispatchException,
RtlpExecuteHandler, RtlpExceptionHandler, RtlpUnwindHandler,
RtlpExecuteHandlerForException, RtlpExecuteHandlerForUnwind,
RtlUnwind): Remove.
(RtlpDispatchException): Add prototype.
* ntoskrnl/ke/i386/usertrap.c (ExceptionTypeStrings): Remove.
* ntoskrnl/ps/create.c (PsCreateTeb): Mark end of exception
registration list.
* tools/helper.mk (TARGET_ASFLAGS): Add -g if DBG = 1.
* lib/msvcrt/except/exhand3.c: Remove.
* ntoskrnl/rtl/seh.c: Ditto.
* lib/msvcrt/except/seh.s: New file.
* lib/ntdll/rtl/i386/except.s: Ditto.
* lib/ntdll/rtl/i386/exception.c: Ditto.
* ntoskrnl/rtl/i386/except.s: Ditto.
* ntoskrnl/rtl/i386/exception.c: Ditto.
* ntoskrnl/rtl/i386/seh.s: Ditto.
2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/kernel32/process/create.c (_except_handler): New function.
(BaseProcessStart): Ditto.
(KlCreateFirstThread): Return INVALID_HANDLE_VALUE on error; Call
BaseProcessStart() before process entry point.
* lib/kernel32/thread/thread.c (_except_handler): New function.
(ThreadStartup): Protect thread using SEH constructs.
2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/ddk/zw.h (NtProcessStartup): Use standard calling convention.
* subsys/csrss/csrss.c (NtProcessStartup): Ditto.
* subsys/smss/smss.c (NtProcessStartup): Ditto.
* subsys/system/autochk/autochk.c (NtProcessStartup): Ditto.
* subsys/system/usetup/usetup.c (NtProcessStartup): Ditto.
2002-10-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
* apps/tests/tokentest/tokentest.c (ROS_ACE_HEADER): Move field
AccessMask ...
(ROS_ACE): ... here.
(DisplayDacl): Make pAce an ROS_ACE*; Use new path for AceType; Use
sizeof(ACE) instead of sizeof(ACE_HEADER).
* include/ntos/security.h (ACE_HEADER): Move field AccessMask ...
(ACE): ... here.
* lib/ntdll/rtl/acl.c: Use new path for AccessMask.
* ntoskrnl/se/semgr.c: Ditto.
* ntoskrnl/se/acl.c (SepInitDACLs): Use new path for AccessMask; Use
sizeof(ACE) instead of sizeof(ACE_HEADER).
* ntoskrnl/se/token.c (SepCreateSystemProcessToken): Use sizeof(ACE)
instead of sizeof(ACE_HEADER).
2002-10-20 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/napi/teb.h (RTL_USER_PROCESS_PARAMETERS): Use field names
as described in Windows NT/2000 Native API Reference.
* lib/kernel32/file/file.c: Use new field names.
* lib/kernel32/misc/console.c: Ditto.
* lib/kernel32/process/create.c: Ditto.
* lib/kernel32/process/proc.c: Ditto.
* lib/ntdll/rtl/path.c: Ditto.
* lib/ntdll/rtl/ppb.c: Ditto.
* lib/ntdll/rtl/process.c: Ditto.
2002-10-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
* include/ntos.h: Include relevant files.
* include/internal/ke.h: Include files relative to
ntoskrnl/include.
* include/internal/arch/ke.h: Ditto.
2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
* drivers/dd/floppy/floppy.c: Changed PAGESIZE to PAGE_SIZE.
* drivers/fs/cdfs/fcb.c: Ditto.
* drivers/fs/cdfs/fsctl.c: Ditto.
* drivers/fs/cdfs/rw.c: Ditto.
* drivers/fs/ext2/dir.c: Ditto.
* drivers/fs/ext2/inode.c: Ditto.
* drivers/fs/ext2/rw.c: Ditto.
* drivers/fs/ext2/super.c: Ditto.
* drivers/fs/minix/blockdev.c: Ditto.
* drivers/fs/minix/cache.c: Ditto.
* drivers/fs/minix/inode.c: Ditto.
* drivers/fs/minix/rw.c: Ditto.
* drivers/fs/ntfs/fcb.c: Ditto.
* drivers/fs/ntfs/ntfs.h: Ditto.
* drivers/fs/vfat/create.c: Ditto.
* drivers/fs/vfat/direntry.c: Ditto.
* drivers/fs/vfat/dirwr.c: Ditto.
* drivers/fs/vfat/fat.c: Ditto.
* drivers/fs/vfat/fcb.c: Ditto.
* drivers/fs/vfat/fsctl.c: Ditto.
* drivers/fs/vfat/rw.c: Ditto.
* drivers/storage/class2/class2.c: Ditto.
* drivers/storage/scsiport/scsiport.c: Ditto.
* hal/halx86/adapter.c: Ditto.
* hal/halx86/mp.c: Ditto.
* include/ddk/mmfuncs.h: Ditto.
* include/ddk/mmtypes.h: Ditto.
* include/ddk/i386/pagesize.h: Ditto.
* include/ntdll/pagesize.h: Ditto.
* lib/kernel32/process/create.c: Ditto.
* lib/kernel32/thread/thread.c: Ditto.
* lib/ntdll/ldr/utils.c: Ditto.
* lib/ntdll/rtl/env.c: Ditto.
* lib/ntdll/rtl/heap.c: Ditto.
* lib/ntdll/rtl/ppb.c: Ditto.
* lib/ntdll/rtl/process.c: Ditto.
* lib/ntdll/rtl/thread.c: Ditto.
* ntoskrnl/cc/copy.c: Ditto.
* ntoskrnl/cc/view.c: Ditto.
* ntoskrnl/ex/sysinfo.c: Ditto.
* ntoskrnl/include/internal/i386/mm.h: Ditto.
* ntoskrnl/io/mdl.c: Ditto.
* ntoskrnl/ke/kthread.c: Ditto.
* ntoskrnl/ke/i386/kernel.c: Ditto.
* ntoskrnl/ldr/init.c: Ditto.
* ntoskrnl/ldr/loader.c: Ditto.
* ntoskrnl/mm/anonmem.c: Ditto.
* ntoskrnl/mm/cont.c: Ditto.
* ntoskrnl/mm/freelist.c: Ditto.
* ntoskrnl/mm/iospace.c: Ditto.
* ntoskrnl/mm/kmap.c: Ditto.
* ntoskrnl/mm/marea.c: Ditto.
* ntoskrnl/mm/mdl.c: Ditto.
* ntoskrnl/mm/mminit.c: Ditto.
* ntoskrnl/mm/ncache.c: Ditto.
* ntoskrnl/mm/npool.c: Ditto.
* ntoskrnl/mm/pagefile.c: Ditto.
* ntoskrnl/mm/pageop.c: Ditto.
* ntoskrnl/mm/section.c: Ditto.
* ntoskrnl/mm/slab.c: Ditto.
* ntoskrnl/mm/i386/page.c: Ditto.
* ntoskrnl/ob/handle.c: Ditto.
* ntoskrnl/ps/create.c: Ditto.
* ntoskrnl/ps/process.c: Ditto.
* ntoskrnl/ps/w32call.c: Ditto.
* subsys/win32k/include/object.h: Ditto.
2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/ntdll/string/ctype.c: Undefine __MSVCRT__ to not have mingw
runtime import _pctype.
2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
* lib/user32/misc/desktop.c (string.h): Include.
* lib/user32/misc/resources.c: Ditto.
* lib/user32/misc/winhelp.c: Ditto.
* lib/user32/windows/accel.c: Ditto.
* lib/user32/windows/bitmap.c: Ditto.
* subsys/win32k/freetype/ctype.c: Undefine __MSVCRT__ and _pctype to not
have mingw runtime import _pctype.
2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
* ntoskrnl/cc/view.c (alloca): Prototype.
* ntoskrnl/rtl/ctype.c: Undefine __MSVCRT__ to not have mingw runtime
import _pctype.
2002-08-26 David Welch <welch@computer2.darkstar.org>
* lib/gdi32/misc/dllmain.c (GdiDllInitialize): Don't initialize
win32k.sys for each process.
* subsys/csrss/init.c (CsrServerInitialization): Initialize
win32k.sys as well.
2002-08-26 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ps/process.c (NtCreateProcess): Reference the
parent process's handle using ExGetPreviousMode.
2002-08-26 David Welch <welch@computer2.darkstar.org>
* lib/user32/misc/dllmain.c (Init): Initialize gdi32 as well.
2002-08-26 David Welch <welch@computer2.darkstar.org>
* iface/addsys/genw32k.c (main, process): Generate a set of
stubs for csrss as well.
2002-08-26 David Welch <welch@computer2.darkstar.org>
* lib/kernel32/process/create.c (CreateProcessW): Initialize
all the members of the new process's PPB.
2002-08-17 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): Ensure the
process isn't freed in the middle of our operations.
2002-08-17 David Welch <welch@computer2.darkstar.org>
* drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation): Fixed.
2002-08-17 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ps/create.c (PiDeleteThread): Don't dereference
the thread's process while holding the thread list lock.
2002-08-17 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/section.c (MmMapViewOfSection): Check there is
enough space for all parts of an image before mapping it; if
there isn't enough space free at the preferred base address
then try to choose a different one.
2002-08-17 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/mpw.c (MmInitMpwThread): Run the MPW thread at
idle priority.
2002-08-17 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/kmap.c (ExUnmapPage, ExAllocatePageWithPhysPage,
MiFreeNonPagedPoolRegion, MiAllocNonPagedPoolRegion): Maintain
a hint of the next free page; makes running with whole page
allocation more bearable.
2002-08-17 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/anonmem.c (MmPageOutVirtualMemory): Show an
out of swap space message if we are out of swap space.
* ntoskrnl/mm/section.c (MmPageOutSectionView): Show an
out of swap space message if we are out of swap space.
* ntoskrnl/mm/pagefile.c (MmAllocSwapPage): Don't automatically
show an out of swap space message on failure.
* ntoskrnl/mm/pagefile.c (MmShowOutOfSpaceMessagePagingFile): New
function to notify the user that the pagefile is full.
2002-08-17 David Welch <welch@computer2.darkstar.org>
* drivers/lib/zlib/Makefile: Create a dummy zlib.sym
2002-08-16 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/npool.c (ExAllocateWholePageBlock): Converted
to use PHYSICAL_ADDRESS type for page address.
2002-08-16 David Welch <welch@computer2.darkstar.org>
* subsys/win32k/ntuser/class.c (W32kCreateClass): Corrected
typo when calculating the offset into the class object to
put the class name string.
2002-08-16 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ps/thread.c (PsDispatchThreadNoLock): Don't call
the reaper function directly; set an event to wake up a seperate
reaper thread.
* ntoskrnl/ps/thread.c (PsReaperThreadMain): New function that
waits for a notification and then calls PsReapThreads.
* ntoskrnl/ps/thread.c (PsInitThreadManagement): Create the
reaper thread.
2002-08-15 David Welch <welch@computer2.darkstar.org>
* lib/advapi32/misc/dllmain.c (DllMain): Removed debug message.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* subsys/smss/init.c (SmPagingFilesQueryRoutine): If possible
take the size of the paging file from the registry.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/section.c (MmCreateDataFileSection): Extend the
section if necessary.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/pagefile.c (NtCreatePagingFile): Set the file
size using the FileAllocationInformation class.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/anonmem.c (MmWritePageVirtualMemory): Implemented
function to write anonymous memory pages to the swap file.
* ntoskrnl/mm/anonmem.c (MmFreeVirtualMemoryPage): Free any
swap page associated with the page.
* ntoskrnl/mm/mpw.c (MmWriteDirtyPages): New function to find
pages to write to disk.
* ntoskrnl/mm/mpw.c (MmMpwThreadMain): Implemented MPW functionality.
* ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): New function
to write a single page back to disk.
* ntoskrnl/mm/rmap.c (MmSetCleanAllRmaps, MmSetDirtyAllRmaps,
MmIsDirtyPageRmap): New rmap function to support the MPW thread.
* ntoskrnl/mm/section.c (MmWritePageSectionView): Implemented
function to write back section pages.
* ntoskrnl/mm/section.c (MmFreeSectionPage): Free any swap
entry associated with the page; mark pages shared with
the cache as dirty if necessary.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set name of
the module into the module text structure.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/io/rw.c (NtReadFile, NtWriteFile): Use the correct
test for whether to wait for the completion of i/o.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/cm/ntfunc.c (NtFlushKey): Request synchronous i/o
from NtOpenFile.
* ntoskrnl/cm/regfile (CmiInitPermanentRegistryHive): Request
synchronous i/o from NtCreateFile.
* ntoskrnl/dbg/kdb_stabs.c (LdrpLoadModuleSymbols): Request
synchronous i/o from NtOpenFile.
* ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Request synchronous i/o
from NtOpenFile.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/cc/view.c (CcRosSuggestFreeCacheSegment): Maintain the
correct reference count.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/cc/view.c (CcRosFlushCacheSegment): New function to
write back a modified cache segment.
* ntoskrnl/cc/view.c (CcRosFlushDirtyPages): New function to
flush some dirty pages from the cache.
* ntoskrnl/cc/view.c (CcRosMarkDirtyCacheSegment): New function to
mark a cache segment modified while mapped into memory as dirty.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/cc/pin.c (CcMapData, CcUnpinData, CcSetDirtyPinnedData):
Store the dirty status in the BCB; don't write back dirty data
immediately.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* include/ntos/mm.h: Added SEC_XXXX defines from 'Windows NT/2000
Native API Reference'
2002-08-14 David Welch <welch@computer2.darkstar.org>
* drivers/fs/vfat/ea.c (VfatSetExtendedAttributes): Empty
placeholder for extended attribute functions.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation):
Added function to set allocation size.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* drivers/fs/vfat/fcb.c (vfatFCBInitializeCache): Renamed
to vfatFCBInitializeCacheFromVolume.
* drivers/fs/vfat/fcb.c (vfatMakeFCBFromDirEntry): Don't
initialise the cache with a file object representing the
volume unless the FCB is for a directory.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* drivers/fs/vfat/create.c (VfatPagingFileCreate): Added a
new function for handling paging file only code.
* drivers/fs/vfat/create.c (VfatSupersedeFile): Added a
new function for doing a file supersede.
* drivers/fs/vfat/create.c (VfatCreateFile): Reformatted and
adjusted control flow. Set allocation size and extended attributes
on create.
* drivers/fs/vfat/create.c (VfatCreate): Removed goto.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* drivers/fs/vfat/cleanup.c (VfatCleanupFile): Renamed
updEntry to VfatUpdateEntry.
* drivers/fs/vfat/close.c (VfatCloseFile): Renamed
updEntry to VfatUpdateEntry.
* drivers/fs/vfat/dirwr.c (updEntry): Renamed to
VfatUpdateEntry.
* drivers/fs/vfat/dirwr.c (addEntry): Renamed to
VfatAddEntry.
2002-08-14 David Welch <welch@computer2.darkstar.org>
* apps/tests/sectest/sectest.c (main): Fixed formatting.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/i386/page.c (MmSetPageProtect): Fixed
behaviour when called on the system address space.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/virtual.c (MmQueryAnonMem, MmProtectAnonMem,
NtAllocateVirtualMemory, NtFreeVirtualMemory): Renamed
segments to regions; moved region code to seperate file.
Implemented NtQueryVirtualMemory and NtProtectVirtualMemory
for anonymous memory areas.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/anonmem.c: Moved functions relating to
areas created with NtAllocateVirtualMemory to a
seperate file.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/section.c (MmQuerySectionView): Implemented
NtQueryVirtualMemory for section views.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/section.c (MmAccessFaultSectionView,
MmNotPresentFaultSectionView, MmProtectSectionView,
MmMapViewOfSegment, MmAlterViewAttributes): Implemented
NtProtectVirtualMemory for section views.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ke/main.c: Removed SEH test code.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* lib/ntdll/ldr/utils.c (LdrFixupImports): Remove the readonly
protection from the IAT before writing to it.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* lib/ntdll/ldr/utils.c (LdrAdjustDllName): Properly null terminate
the base name of the DLL.
2002-08-10 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set the text segment
of modules to readonly after loading.
2002-08-09 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ps/create.c (NtCreateThread): Call PsSuspendThread
if NtCreateThread has CreateSuspended as TRUE.
* ntoskrnl/ps/suspend.c (PsSuspendThread, PsResumeThread,
PiSuspendThreadKernelRoutine): Fixed suspend functionality.
2002-08-09 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ke/i386/usertrap.c (print_user_address): Copy
the LDR variable from the right address.
2002-08-09 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ke/apc.c (KiDeliverNormalApc): Check for
kernel APCs pending on exit from the kernel.
* ntoskrnl/ke/apc.c (KiDeliverNormalApc, KiDeliverUserApc,
KiDeliverApc): Set the APC's inserted flag to FALSE after
removing it from the thread's queue.
2002-08-09 David Welch <welch@computer2.darkstar.org>
* lib/kernel32/thread/thread.c (ThreadStartup): Don't
call DLL entrypoints; this is done by LdrInitializeThunk.
* lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
DLLs in initialization order; take the loader lock before
calling.
2002-08-09 David Welch <welch@computer2.darkstar.org>
* apps/tests/thread/thread.c (main): Test suspend and
resume functionality.
2002-08-08 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/mm/section (NtQuerySection): Return the
right result length.
2002-08-08 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ke/usertrap.c (print_user_address): Check for
a NULL LDR structure in the PEB; copy the LDR pointer in
safely.
2002-08-08 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ke/apc.c (KiDeliverUserApc): Deliver all present
APCs; release the APC spinlock while acccessing user memory.
2002-08-08 David Welch <welch@computer2.darkstar.org>
* include/internal/ps.h: Adjusted offsets into the ETHREAD
structure.
* include/internal/ps.h: Removed redundant members from the
KTHREAD structure.
* ntoskrnl/ke/kthread.c (KeInitializeThread): Removed
redundant members from the KTHREAD structure.
2002-08-08 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/dbg/kdb.c (KdbEnterDebuggerException): New
function to enter the debugger on an exception.
* ntoskrnl/kd/kdebug.c (KdInitSystem): Initialize the
local kernel debugger if enabled.
* ntoskrnl/ke/catch.c (KiDispatchException): Enter the
local kernel debugger on an exception.
2002-08-08 David Welch <welch@computer2.darkstar.org>
* include/ntdll/ldr.h: Added definition for a DLL entrypoint.
* lib/kernel32/process/create.c (KlCreateFirstThread): Put
the argument to the NtProcessStartup function on the stack.
* lib/kernel32/process/create.c (KlInitPeb): Read the
base address of the new image from the PEB.
* lib/kernel32/process/create.c (CreateProcessW): Start the
first thread at the entrypoint of the new image.
* lib/ntdll/ldr/startup.c (LdrInitializeThunk): If the
function is called after the initial startup then just call the
entrypoints for the loaded DLLs with DLL_THREAD_ATTACH. Don't
call the entrypoint of the image.
* lib/ntdll/rtl/process.c (RtlpCreateFirstThread): Put the
argument to the NtProcessStartup function on the stack.
* lib/ntdll/rtl/process.c (KlInitPeb): Read the base address of
the new image from the PEB.
* lib/ntdll/rtl/process.c (RtlCreateUserProcess): Start the
first thread at the entrypoint of the new image.
* ntoskrnl/ke/i386/bthread.S (PsBeginThreadWithContextInternal):
Use the system call path to begin a usermode thread.
* ntoskrnl/ke/i386/thread.c (Ke386InitThreadWithContext): Convert
the supplied context into a trap frame.
* ntoskrnl/ldr/init.c (LdrLoadInitialProcess): Put the PEB argument
to the NtProcessStartup function on the new stack; start the
first thread at the entrypoint of the image.
* ntoskrnl/ps/create.c (NtCreateThread): Create an APC to call
LdrInitializeThunk in the context of a new thread before its
entrypoint.
2002-08-08 David Welch <welch@computer2.darkstar.org>
* drivers/fs/vfat/cleanup.c (VfatCleanupFile): Uninitialise
the cache on file cleanup.
* drivers/fs/vfat/fcb.c (vfatReleaseFcb): Don't uninitialise
the cache on file close.
* ntoskrnl/cc/copy.c: Renamed zero page global variable.
* ntoskrnl/cc/view.c: Added cache delete function.
2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
* rules.mak (RSYM): Define.
* include/ddk/zwtypes.h (DebugDbgLoadSymbols): Add to enum
_DEBUG_CONTROL_CODE.
* include/ntdll/ldr.h (LDR_SYMBOL_INFO, LdrpLoadUserModuleSymbols): Add.
(LdrLoadModuleSymbols): Remove.
* include/ntos/kdbgsyms.h (ST_FILENAME, ST_FUNCTION,
ST_LINENUMBER): Add.
(SYMBOL). Make Name an ANSI_STRING.
(IMAGE_SYMBOL_INFO, AreSymbolsParsed): Add.
* lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
LdrpLoadUserModuleSymbols() not LdrLoadModuleSymbols().
* lib/ntdll/ldr/utils.c (LdrLoadModuleSymbols): Rename to
LdrpLoadUserModuleSymbols.
(LdrpLoadUserModuleSymbols): Use DebugDbgLoadSymbols debug control code.
(LdrLoadDll): assert if out of memory.
(LdrLoadDll): Call
LdrpLoadUserModuleSymbols(), not LdrLoadModuleSymbols().
* lib/ntdll/string/ctype.c (_pctype): #undef.
* ntoskrnl/dbg/dbgctrl.c (NtSystemDebugControl): Call
LdrLoadUserModuleSymbols on DebugDbgLoadSymbols.
* ntoskrnl/include/internal/ldr.h (LdrGetAddressInformation): Add.
* ntoskrnl/include/internal/module.h (MODULE_TEXT_SECTION): Make SymbolInfo
an IMAGE_SYMBOL_INFO.
* ntoskrnl/ke/i386/exp.c (LdrGetAddressInformation): Add prototype.
(print_address): Change #ifdef KDBG to #ifdef DBG.
(KiDoubleFaultHandler, KiDumpTrapFrame, KeDumpStackFrames): Dump
one stack frame per line.
* ntoskrnl/ke/i386/multiboot.S: Create pagetables for more kernel
address space so larger modules can be passed from the boot loader.
* ntoskrnl/ke/i386/usertrap.c (LdrGetAddressInformation): Add prototype.
(print_user_address): Print symbols using LdrGetAddressInformation().
* ntoskrnl/ldr/loader.c (SYMBOLFILE_HEADER, IMAGE_SYMBOL_INFO_CACHE,
STAB_ENTRY, N_FUN, N_SLINE, N_SO, SymbolListHead): Add.
(TAG_SYM_BUF): Remove.
(LdrInitDebug): Remove unneeded code.
(LdrInit1): Prepare for loading symbols.
(LdrpReadLine, HexL, LdrpParseLine, LdrpLoadModuleSymbolsFromBuffer,
LdrpLoadUserModuleSymbolsFromBuffer): Remove.
(LdrpParseImageSymbols, LdrpGetFileName, LdrpGetFunctionName,
LdrpGetLineNumber, LdrGetAddressInformation, LdrpLookupUserSymbolInfo): Add.
(LdrpLoadModuleSymbols, LdrInitializeBootStartDriver): Change to use new
symbol structures.
(LdrLoadUserModuleSymbols): Cache symbol buffers.
(LdrUnloadModuleSymbols): Implement.
(LdrLoadModule, LdrUnloadModule): Change #ifdef KDBG to #ifdef DBG.
(LdrPEProcessModule): Split a line into two lines.
(LdrPEProcessModule): Setup for loading symbols.
* ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Open with FILE_SHARE_READ.
* ntoskrnl/ps/process.c (PiFreeSymbols): Call LdrUnloadModuleSymbols() to
free symbols.
(PiDeleteProcess): Change #ifdef KDBG to #ifdef DBG.
* ntoskrnl/rtl/ctype.c (_pctype): #undef.
* ntoskrnl/rtl/string.c (strncpy): Terminate destination string.
* tools/Makefile (rsym): Add target.
* tools/helper.mk: Include config and use -g if DBG = 1.
2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
* Makefile (install_before): Install system.hiv to correct location.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* subsys/win32k/include/callback.h: Fixed callback argument
definitions.
* subsys/win32k/ntuser/winpos.c: Implemented some more of the windows
sizing/moving code.
* subsys/win32k/ntuser/painting.c: Implemented some more of the
window painting code.
* subsys/win32k/objects/coord.c: Implemented LPtoDP and DPtoLP.
* subsys/win32k/objects/region.c: Added stubs for some more
region functions.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the
process desktop handle as well.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/se/token.c: Don't call the ZwXXX variant of
system calls when in system context.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* ntoskrnl/Makefile: Added file with MDA output code.
* ntoskrnl/kd/kdebug.c: Recognize MDA as a destination for
debug output.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* lib/user32/windows/defwnd.c: Implemented some more of the
default window handler.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* lib/user32/misc/stubs.c: Removed some stubs to seperate files.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* lib/user32/user32.def: Export ScreenToClient otherwise we
get problems when code in user32 tries to call it.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* include/win32k/region.h: Added prototypes for some missing
region functions.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* include/win32k/ntuser.h: Added prototypes for some missing
NtUserXXX functions.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* include/user32/wininternal.h: Added some constants for
private GetDCEx styles that WINE needs.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* include/user32/callback.h: Fixed callbacks for messages with
parameters.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* include/napi/win32.h (W32THREAD): Added pointer to the
thread's desktop.
* include/napi/win32.h (W32PROCESS): Removed handle table,
added a pointer to the process's window station.
* subsys/win32k/ntuser/guicheck.c (W32kGuiCheck): Reference
a process's window station on the first win32k system call. Reference
a thread's desktop on the first win32k system call.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* include/messages.h: Added some missing WM_XXX constants.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* drivers/dd/ide/makefile: Compiling with debugging messages
needs libgcc to be linked in.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* iface/addsys/genw32k.c: Generate a variable with the
number of system calls.
* iface/native/genntdll.c: Generate a proper stack frame for
the user system call stubs.
* ntoskrnl/ke/i386/syscall.S: Generate a proper stack frame for
the handler for system calls.
2002-07-04 David Welch <welch@computer2.darkstar.org>
* Makefile: Build the GUI startup application.
* subsys/system/gstart/gstart.c: Application to start up
the GUI.
2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* tools/helper.mk: Make an import library a proper target
depending on the .def file.
2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* subsys/win32k/ntuser/window.c (NtUserGetWindowLong): Began
implementation.
2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* subsys/win32k/misc/object.c (ObmCreateHandle): Return the
correct handle value.
2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* subsys/win32k/makefile: Make win32k depend on the file containing
the service table.
2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* ntoskrnl/ke/i386/stkswitch.S (KeSwitchStackAndRet,
KePushAndStackSwitchAndSysRet): Push one value only.
* ntoskrnl/ps/w32call.c (NtCallbackReturn, NtW32Call): Moved
these functions to a new file. Restore the old trap frame after
returning from a callback.
2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* lib/user32/windows/message.c (CallWindowProcA, CallWindowProcW):
Convert message to Unicode or ASCII if necessary.
2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* include/user32/callback.h: Added WM_CREATE and WM_NCCALCSIZE
callbacks.
* lib/user32/windows/window.c (User32SendCREATEMessageForKernel,
User32SendNCCREATEMessageForKernel): Implemented.
* subsys/win32k/ntuser/callback.c (W32kSendCREATEMessage):
Implemented.
2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* include/structs.h: Added Unicode and ASCII versions of
CREATESTRUCT.
2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* tools/helper.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.
2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* subsys/system/winlogon/winlogon.c (WinMain): Check for
failure when creating a window system.
2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* ntoskrnl/ob/handle.c (ObDuplicateObject): Added this internal
function for duplicating objects.
* ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the parent
process's window station to the child process.
* ntoskrnl/ps/process.c (PsInitProcessManagement): Initialize the
first process's window station.
2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* ntoskrnl/mm/marea.c (MmCreateMemoryArea): Initialise
page operation structure members.
* ntoskrnl/mm/pageop.c (MmReleasePageOp, MmGetPageOp): Increment
or decrement the page operation count in the memory area.
* ntoskrnl/mm/virtual.c (MmNotPresentFaultVirtualMemory,
MmPageOutVirtualMemory): Check for a deleted memory area before
handling the fault.
* ntoskrnl/mm/virtual.c (MmFreeVirtualMemory): Wait for all
page operations to finish before freeing the memory area.
2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* ntoskrnl/ke/i386/syscall.S (interrupt_handler2e): Corrected
test for previous mode, upper 16-bit of CS on the stack after an
interrupt are arbitary.
2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* lib/user32/misc/winsta.c: Cleaned up indentation.
2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* apps/tests/winhello/winhello.c (WinMain, MainWndProc):
Cleaned up formatting, some more error checks.
2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* ntoskrnl/mm/virtual.c (MmSecureVirtualMemory,
MmUnsecureVirtualMemory, NtQueryVirtualMemory): Corrected indentation.
2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* ntoskrnl/ke/i386/exp.c (KiDoubleFaultHandler): Print CR3
correctly.
2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
* ntoskrnl/include/internal/ps.h: Added KTHREAD_STACK_LIMIT definition.
* ntoskrnl/ke/i386/tskswitch.S (Ki386ContextSwitch): Force all the
pages of the kernel stack to be accessible from this process.
2002-06-04 David Welch <welch@cwcom.net>
* ntoskrnl/cc/view.c (ReadCacheSegmentChain): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/cc/copy.c (CcRosCreateCacheSegment): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/cc/copy.c (CcFreeCachePage): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/include/internal/mm.h: Changed prototypes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/include/internal/ps.h (KPROCESS): Changed type of
page directory base to PHYSICAL_ADDRESS.
* ntoskrnl/include/internal/i386/mm.h: Changed prototypes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/ke/kthread.c (KeFreeStackPage): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/ke/kthread.c (KeInitializeThread): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/ke/process.c (KeAttachProcess, KeDetachProcess): Changes
to use PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/ke/kernel.c (PcrPages, KeApplicationProcessorInit): Changes
to use PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/balance.c (MM_ALLOCATION_REQUEST): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/balance.c (MmReleasePageMemoryConsumer): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/balance.c (MmRequestPageMemoryConsumer): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/cont.c (MmFreeContinuousPage): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/cont.c (MmAllocateContinuousAlignedMemory): Changes to
use PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/freelist.c (MmTransferOwnershipPage,
MmGetLRUFirstUserPage, MmGetLRUNextUserPage, MmGetContinuousPages,
MmInitializePageList, MmSetFlagsPage, MmSetRmapListHeadPage,
MmGetRmapListHeadPage, MmMarkPageMapped, MmMarkPageUnmapped,
MmGetFlagsPage, MmSetSavedSwapEntryPage, MmGetSavedSwapEntryPage,
MmReferencePage, MmGetReferenceCountPage, MmIsUsablePage,
MmDereferencePage, MmGetLockCountPage, MmLockPage, MmUnlockPage,
MmAllocPage): Changes to use PHYSICAL_ADDRESS type for physical
addresses.
* ntoskrnl/mm/iospace.c (MmMapIoSpace): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/kmap.c (ExAllocatePage, MiZeroPage, MiCopyFromUserPage,
ExAllocatePageWithPhysPage): Changes to use PHYSICAL_ADDRESS type for
physical addresses.
* ntoskrnl/mm/marea.c (MmFreeMemoryArea): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/mdl.c (MmUnlockPages, MmMapLockedPages,
MmProbeAndLockPages): Changes to use PHYSICAL_ADDRESS type for
physical addresses.
* ntoskrnl/mm/mm.c (MmSharedDataPagePhysicalAddress,
MmCommitPagedPoolAddress, MmNotPresentFault): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/mminit.c (MmInitVirtualMemory): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/ncache.c (MmAllocateNonCachedMemory,
MmFreeNonCachedPage): Changes to use PHYSICAL_ADDRESS type for
physical addresses.
* ntoskrnl/mm/npool.c (grow_kernel_pool): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/rmap.c (MmPageOutPhysicalAddress, MmInsertRmap,
MmDeleteAllRmaps, MmDeleteRmap): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/section.c (MiReadPage, MmNotPresentFaultSectionView,
MmAccessFaultSectionView, MmPageOutDeleteMapping,
MmPageOutSectionView, MmFreeSectionPage): Changes to use
PHYSICAL_ADDRESS type for physical addresses.
* ntoskrnl/mm/slab.c (ExGrowSlabCache): Changes to use
PHYSICAL_ADDRESS type for physical address.
* ntoskrnl/mm/virtual.c (MmPageOutVirtualMemory,
MmNotPresentFaultVirtualMemory, MmFreeVirtualMemoryPage): Changes to
use PHYSICAL_ADDRESS type for physical address.
* ntoskrnl/mm/wset.c (MmTrimUserMemory): Changes to use
PHYSICAL_ADDRESS type for physical address.
* ntoskrnl/mm/page.c (Mmi386ReleaseMmInfo, MmCopyMmInfo,
MmGetPhysicalAddressForProcess, MmCreateVirtualMapping,
MmCreateVirtualMappingUnsafe, MmCreateVirtualMappingForProcess,
MmDeleteVirtualMapping): Changes to use PHYSICAL_ADDRESS type for
physical address.
* ntoskrnl/ps/process (PsInitProcessManagment): Changes to use
PHYSICAL_ADDRESS type for physical address.
* ntoskrnl/ps/thread.c (PsAllocateCallbackStack): Changes to use
PHYSICAL_ADDRESS type for physical address.
2002-06-04 David Welch <welch@cwcom.net>
* Lots of change since the ChangeLog was last updated.
2001-03-18 David Welch <welch@cwcom.net>
* ntoskrnl/ke/apc.c (KiDeliverApc): Bug fix.
* ntoskrnl/ke/apc.c (KeInsertQueueApc): More comments.
* ntoskrnl/ke/catch.c (KiDispatchException): Bug fix.
* ntoskrnl/ke/timer.c (KeDelayExecutionThread): Don't use removed
function KeAddTimeoutThread.
* ntoskrnl/ke/timer.c (KeAddTimeoutThread): Removed.
* ntoskrnl/ke/wait.c (KeWaitForSingleObject, KeWaitForMultipleObjects):
Don't use KeAddTimeoutThread.
* ntoskrnl/mm/freelist.c (MmAllocateContiguousAlignedMemory): Bug fix
* ntoskrnl/mm/freelist.c (MmAllocatePage): Allocate from the top
memory.
2001-03-17 David Welch <welch@cwcom.net>
* ntoskrnl/ke/catch.c (KiDispatchException): Implementation of
exception handling, user-mode only.
2001-03-16 David Welch <welch@cwcom.net>
* include/ddk/zw.h: Corrected declarations of NtCreateProfile,
NtQueryIntervalProfile, NtSetIntervalProfile.
* include/ddk/zwtypes.h: Added definitions of KPROFILE_SOURCE.
* ntoskrnl/include/internal/ke.h: Added the interrupted EIP as a
parameter to KiUpdateSystemTime for profiling purposes.
* ntoskrnl/include/internal/nt: Added declaration for profiling
support initialization.
* ntoskrnl/ke/timer.c (KiUpdateSystemTime, KeExpireTimers): Call
the profiling code on a timer interrupt with the interrupt EIP.
* ntoskrnl/ke/i386/irq.c (KiDispatchInterrupt): Pass the interrupted
EIP to KiUpdateSystemTime.
* ntoskrnl/mm/virtual.c (NtReadVirtualMemory, NtWriteVirtualMemory):
Release the MDLs used properly.
* ntoskrnl/nt/nt.c: Call the profiling support initialization.
* ntoskrnl/nt/ntevent.c (NtCreateEvent): Don't try copying the
ObjectAttributes parameter if it is NULL.
* ntoskrnl/nt/profile.c: Implemented profiling.
2001-03-16 David Welch <welch@cwcom.net>
* ntoskrnl/include/internal/safe.h: Corrected typo.
* ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtQueryEvent):
Corrected typos.
* ntoskrnl/rtl/mem.c: Missing header file.
2001-03-16 David Welch <welch@cwcom.net>
* ntoskrnl/include/internal/safe.h: Add definitions for handling
potentially unsafe pointers.
2001-03-16 David Welch <welch@cwcom.net>
* ntoskrnl/include/internal/mm.h: Removed MmSafeCopyToUser and
MmSafeCopyFromUser as source files need these but don't want internal
mm definitions.
* ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtPulseEvent,
NtQueryEvent, NtResetEvent, NtSetEvent): Copy data to and from
user mode safely.
* ntoskrnl/rtl/mem.c (MmCopyToCaller, MmCopyFromCaller): Helper
functions for copying data to and from potentially unsafe pointers.
2000-12-23 David Welch <welch@cwcom.net>
* All task switching is done in software.
* Beginnings of v86 mode support.
2000-12-22 David Welch <welch@cwcom.net>
* ntoskrnl/ps/kill.c (PiTerminateProcessThreads): Drop
PiThreadListLock before calling PsTerminateOtherThread
2000-12-16 David Welch <welch@cwcom.net>
* ntoskrnl/ex/fmutex.c (ExReleaseFastMutexUnsafe): Only set the
fast mutex's owner back to NULL if it is being released
2000-12-10 David Welch <welch@cwcom.net>
* ntoskrnl/ke/i386/vm86_sup.S (Ki386RetToV86Mode): Added function
to do the raw switch to v86 mode.
* ntoskrnl/include/internal/vm86.h: Definitions for the v86 mode
support.
2000-12-10 David Welch <welch@cwcom.net>
* ntoskrnl/ke/i386/trap.s (PsBeginThreadWithContextInternal): Moved
to ntoskrnl/ke/i386/bswitch.S.
* ntoskrnl/ke/i386/trap.s (interrupt_handler2e): Moved to
ntoskrnl/ke/i386/syscall.S.
* ntoskrnl/ke/i386/trap.s (old_interrupt_handler2e): Removed.
2000-12-04 David Welch <welch@cwcom.net>
* ntoskrnl/ke/i386/irq.c (KiInterruptDispatch): Record the last PC
value for a rescheduled thread.
* ntoskrnl/ke/i386/irqhand.s: Construct a primitive trap frame
in interrupt handlers.
2000-08-30 David Welch <welch@cwcom.net>
* Added calibration of KeStallExecutionProcessor timing
(code from linux 2.2.16).
* Corrected compilation bugs in user32 library.
* Corrected compilation bugs related to anonymous structs
in ndis code.
* Pass command line to kernel from loadros.
* Corrected PIC mask calculation.
2000-05-27 David Welch <welch@cwcom.net>
* Fixed issue with closing non-existent or already closed
handle.
2000-01-26 David Welch <welch@cwcom.net>
* ZwCreateProcess now maps ntdll rather than the user-mode
code.
1999-09-06 David Welch <welch@cwcom.net>
* Implemented ZwOpenProcess.
* Partially implemented killing other threads (possible memory
leaks).
* Made a start on a proper implemention of APCs (based on
article in NT insider).
1998-12-08 David Welch <welch@cwcom.net>
* Corrected bug in shell (Read two keypresses and assumed they
where the key going up and down respectively).
* Corrected race in dpc handling.
* Took out cleanup sections in ZwReadFile (now handled by the
APC).
* Disabled broken code in kernel32.