Merge 13543:13754 from trunk.
Modified: branches/cache_manager_rewrite/reactos/Makefile
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/multiboot.c
Modified: branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf
Modified:
branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff
Modified: branches/cache_manager_rewrite/reactos/bootdata/txtsetup.sif
Modified: branches/cache_manager_rewrite/reactos/doc/README.WINE
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/fcb.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ntfs/fcb.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/blockdev.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/create.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dir.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dirwr.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fcb.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fsctl.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/rw.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/shutdown.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/vfat.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/volume.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/lib/ip/transport/tcp/even
t.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/oskittcp/int
erface.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/afd/afd/read.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/afd/include/afd.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/miniport.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/tcpip/tcpip/fileobjs.
c
Modified:
branches/cache_manager_rewrite/reactos/drivers/storage/atapi/atapi.c
Modified: branches/cache_manager_rewrite/reactos/drivers/usb/Makefile
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/core/hcd-pci
.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/core/hcd.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/core/hub.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/core/makefil
e
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/core/message
.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/core/usb.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/core/usbcore
.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/core/usbcore
.def
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/host/makefil
e
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/host/ohci-hc
d.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/host/ohci-pc
i.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/host/ohci.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/host/ohci_ma
in.c
Added:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/host/ohci_ma
in.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/linux/linux_
wrapper.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/linux/pci_ha
l.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/linux/pci_id
s.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/sys/linuxwra
pper.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/usb/cromwell/usb_wrapper.
h
Modified: branches/cache_manager_rewrite/reactos/hal/hal/hal.c
Modified:
branches/cache_manager_rewrite/reactos/hal/halx86/generic/timer.c
Modified: branches/cache_manager_rewrite/reactos/include/base.h
Modified: branches/cache_manager_rewrite/reactos/include/ddk/csq.h
Modified: branches/cache_manager_rewrite/reactos/include/ddk/extypes.h
Modified: branches/cache_manager_rewrite/reactos/include/ddk/psfuncs.h
Modified: branches/cache_manager_rewrite/reactos/include/ddk/types.h
Added: branches/cache_manager_rewrite/reactos/include/expat/
Added: branches/cache_manager_rewrite/reactos/include/lsass/lsasrv.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/alloc.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/assert.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/conio.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/ctype.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/dir.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/direct.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/errno.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/fcntl.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/float.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/internal/
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/io.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/locale.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/malloc.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/math.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/mbctype.h
Deleted:
branches/cache_manager_rewrite/reactos/include/msvcrt/mbstring.h
Deleted:
branches/cache_manager_rewrite/reactos/include/msvcrt/msvcrtdbg.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/process.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/search.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/share.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/signal.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/stdarg.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/stddef.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/stdio.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/stdlib.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/string.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/sys/
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/time.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/wchar.h
Deleted: branches/cache_manager_rewrite/reactos/include/msvcrt/wine/
Modified: branches/cache_manager_rewrite/reactos/include/napi/teb.h
Modified: branches/cache_manager_rewrite/reactos/include/ntdll/ntdll.h
Modified: branches/cache_manager_rewrite/reactos/include/ntdll/rtl.h
Modified: branches/cache_manager_rewrite/reactos/include/ntos/zw.h
Modified: branches/cache_manager_rewrite/reactos/include/sm/api.h
Modified: branches/cache_manager_rewrite/reactos/include/sm/helper.h
Modified: branches/cache_manager_rewrite/reactos/include/tchar.h
Modified: branches/cache_manager_rewrite/reactos/include/win32k/gdiobj.h
Modified: branches/cache_manager_rewrite/reactos/include/win32k/ntuser.h
Added: branches/cache_manager_rewrite/reactos/include/wine/cfgmgr32.h
Modified: branches/cache_manager_rewrite/reactos/include/wine/mmsystem.h
Modified: branches/cache_manager_rewrite/reactos/include/wine/rpcfc.h
Modified: branches/cache_manager_rewrite/reactos/include/wine/unicode.h
Modified:
branches/cache_manager_rewrite/reactos/lib/comdlg32/Makefile.ros-templat
e
Added: branches/cache_manager_rewrite/reactos/lib/cpl/desk/de.rc
Modified: branches/cache_manager_rewrite/reactos/lib/cpl/desk/desk.rc
[truncated at 100 lines; 717 more skipped]
_____
Modified: branches/cache_manager_rewrite/reactos/Makefile
--- branches/cache_manager_rewrite/reactos/Makefile 2005-02-26
17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/Makefile 2005-02-26
17:47:14 UTC (rev 13756)
@@ -41,6 +41,9 @@
# vfatlib
LIB_FSLIB = vfatlib
+# libunicode, must be empty!
+LIBUNICODE =
+
# Static libraries
LIB_STATIC = string rosrtl epsapi uuid libwine zlib rtl tgetopt pseh
adns dxguid strmiids crt rossym wdmguid
@@ -59,8 +62,8 @@
gdi32 gdiplus glu32 hid imagehlp imm32 iphlpapi kernel32
lzexpand mesa32 midimap mmdrv mpr msacm msafd \
msgina msi msimg32 msvcrt20 msvideo mswsock netapi32 ntdll ole32
oleaut32 oledlg olepro32 opengl32 \
packet psapi riched20 richedit rpcrt4 samlib secur32 setupapi
shell32 shlwapi smdll snmpapi syssetup \
- twain unicode user32 userenv version wininet winmm winspool
ws2help ws2_32 wsock32 wshirda dnsapi \
- urlmon shdocvw dinput dinput8 dxdiagn devenum dsound $(DLLS_KBD)
$(DLLS_CPL) $(DLLS_SHELLEXT)
+ twain user32 userenv version wininet winmm winspool ws2help
ws2_32 wsock32 wshirda dnsapi \
+ urlmon shdocvw dinput dinput8 dxdiagn devenum dsound lsasrv
$(DLLS_KBD) $(DLLS_CPL) $(DLLS_SHELLEXT)
SUBSYS = smss win32k csrss ntvdm
@@ -102,7 +105,7 @@
# autochk cmd format services setup usetup welcome winlogon msiexec
SYS_APPS = autochk calc cmd explorer expand format ibrowser msiexec
regedt32 regsvr32 \
reporterror services setup taskmgr userinit usetup welcome vmwinst \
- winlogon regedit winefile notepad reactos
+ winlogon regedit winefile notepad reactos lsass
# System services
SYS_SVC = rpcss eventlog umpnpmgr
@@ -980,8 +983,6 @@
$(RM) $(INSTALL_DIR)/system32/config/*.*
$(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/system32/*.*
$(RM) $(INSTALL_DIR)/system32/*.*
- $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/symbols/*.*
- $(RM) $(INSTALL_DIR)/symbols/*.*
$(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/media/fonts/*.*
$(RM) $(INSTALL_DIR)/media/fonts/*.*
$(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/media/*.*
@@ -996,8 +997,6 @@
$(RMDIR) $(INSTALL_DIR)/system32/config
$(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/system32
$(RMDIR) $(INSTALL_DIR)/system32
- $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/symbols
- $(RMDIR) $(INSTALL_DIR)/symbols
$(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/media/fonts
$(RMDIR) $(INSTALL_DIR)/media/fonts
$(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/media
@@ -1020,8 +1019,6 @@
$(RMKDIR) $(INSTALL_DIR)/media
$(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/media/fonts
$(RMKDIR) $(INSTALL_DIR)/media/fonts
- $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/symbols
- $(RMKDIR) $(INSTALL_DIR)/symbols
$(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32
$(RMKDIR) $(INSTALL_DIR)/system32
$(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32/config
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/multiboot.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/multiboot.c
2005-02-26 17:11:06 UTC (rev 13755)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/multiboot.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -4,7 +4,7 @@
* FILE: boot/freeldr/freeldr/multiboot.c
* PURPOSE: ReactOS Loader
* PROGRAMMERS: Alex Ionescu (alex(a)relsoft.net)
- * Hartmutt Birr - SMP/PAE Code
+ * Hartmut Birr - SMP/PAE Code
*/
#include <freeldr.h>
@@ -54,7 +54,7 @@
#define ApicPageTableIndexPae (APIC_BASE >> 21)
-#define KernelEntryPoint (KernelEntry - KERNEL_BASE_PHYS) +
KernelBase
+#define KernelEntryPoint (KernelEntry - KERNEL_BASE_PHYS) +
KernelBase
/* Load Address of Next Module */
ULONG_PTR NextModuleBase = 0;
@@ -217,7 +217,7 @@
/* Jump to Kernel */
PagedJump = (ASMCODE)KernelEntryPoint;
PagedJump(Magic, &LoaderBlock);
- }
+}
/*++
* FrLdrGetKernelBase
@@ -239,27 +239,24 @@
FASTCALL
FrLdrGetKernelBase(VOID)
{
- PCHAR p1;
- PCHAR p2;
+ PCHAR p;
/* Read Command Line */
- for(p1 = (PCHAR)&LoaderBlock.CommandLine; *p1 && (p2 = strchr(p1,
'/')); p2++) {
+ p = (PCHAR)LoaderBlock.CommandLine;
+ while ((p = strchr(p, '/')) != NULL) {
/* Find "/3GB" */
- if (!strnicmp(p2, "3GB", 3)) {
+ if (!strnicmp(p + 1, "3GB", 3)) {
/* Make sure there's nothing following it */
- if (p2[3] == ' ' || p2[3] == 0) {
+ if (p[4] == ' ' || p[4] == 0) {
/* Use 3GB */
KernelBase = 0xC0000000;
-
- } else {
-
- /* Use 2GB */
- KernelBase = 0x80000000;
}
}
+
+ p++;
}
/* Set KernelBase */
_____
Modified: branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf
--- branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf
2005-02-26 17:47:14 UTC (rev 13756)
@@ -254,6 +254,15 @@
HKLM,"SYSTEM\CurrentControlSet\Control\Session Manager\Memory
Management","PagingFiles",0x00010000, \
"C:\reactos\pagefile.sys"
+; Subsystems
+HKLM,"SYSTEM\CurrentControlSet\Control\Session
Manager\Subsystems","Debug",0x00020000,""
+HKLM,"SYSTEM\CurrentControlSet\Control\Session
Manager\Subsystems","Kmode",0x00020000,"%SystemRoot%\system32\win32k.sys
"
+HKLM,"SYSTEM\CurrentControlSet\Control\Session
Manager\Subsystems","Optional",0x00070000,"Posix Os2"
+HKLM,"SYSTEM\CurrentControlSet\Control\Session
Manager\Subsystems","Os2",0x00020000,"%SystemRoot%\system32\os2ss.exe"
+HKLM,"SYSTEM\CurrentControlSet\Control\Session
Manager\Subsystems","Posix",0x00020000,"%SystemRoot%\system32\psxss.exe"
+HKLM,"SYSTEM\CurrentControlSet\Control\Session
Manager\Subsystems","Required",0x00070000,"Debug Windows"
+HKLM,"SYSTEM\CurrentControlSet\Control\Session
Manager\Subsystems","Windows",0x00020000,"%SystemRoot%\system32\csrss.ex
e"
+
; 3Com 3c905 Driver
HKLM,"SYSTEM\CurrentControlSet\Services\3c90x","ErrorControl",0x00010001
,0x00000000
HKLM,"SYSTEM\CurrentControlSet\Services\3c90x","Group",0x00000000,"NDIS"
_____
Modified:
branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff
--- branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff
2005-02-26 17:47:14 UTC (rev 13756)
@@ -74,7 +74,6 @@
lib\dinput8\dinput8.dll 1
lib\dsound\dsound.dll 1
lib\dxdiagn\dxdiagn.dll 1
-lib\expat\expat.dll 1
lib\fmifs\fmifs.dll 1
lib\freetype\freetype.dll 1
lib\gdi32\gdi32.dll 1
@@ -97,6 +96,7 @@
lib\midimap\midimap.dll 1
lib\mmdrv\mmdrv.dll 1
lib\mpr\mpr.dll 1
+lib\msacm\msacm32.dll 1
lib\msafd\msafd.dll 1
lib\msgina\msgina.dll 1
lib\msimg32\msimg32.dll 1
@@ -120,7 +120,6 @@
lib\syssetup\syssetup.dll 1
lib\twain\twain_32.dll 1
lib\urlmon\urlmon.dll 1
-lib\unicode\wine_unicode.dll 1
lib\user32\user32.dll 1
lib\userenv\userenv.dll 1
lib\version\version.dll 1
_____
Modified: branches/cache_manager_rewrite/reactos/bootdata/txtsetup.sif
--- branches/cache_manager_rewrite/reactos/bootdata/txtsetup.sif
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/bootdata/txtsetup.sif
2005-02-26 17:47:14 UTC (rev 13756)
@@ -22,7 +22,6 @@
class2.sys = 3
disk.sys = 3
floppy.sys = 3
-hal.dll = 2
keyboard.sys = 3
l_intl.nls = 2
ntfs.sys = 3
@@ -48,7 +47,16 @@
[Computer]
pci_up = "Standard-PC"
+pci_mp = "Standard-PC Multiprocessor"
+[Files.pci_up]
+; <filename> = <directory_id>,<new name>
+hal.dll = 2
+
+[Files.pci_mp]
+; <filename> = <directory_id>,<new name>
+halmp.dll = 2,hal.dll
+
[Display]
;<id> = <user friendly name>,<spare>,<service key name>
vga = "VGA Display",,Vga
_____
Modified: branches/cache_manager_rewrite/reactos/doc/README.WINE
--- branches/cache_manager_rewrite/reactos/doc/README.WINE
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/doc/README.WINE
2005-02-26 17:47:14 UTC (rev 13756)
@@ -10,8 +10,8 @@
If you find that a function in ReactOS that is not implemented properly
and is based on WINE sources, check the latest Winehq CVS and see if
it has been fixed there. If so, please submit a patch to
-ros-kernel(a)reactos.com. Otherwise please send a patch to both
-wine-patches(a)winehq.com and ros-kernel(a)reactos.com
+ros-dev(a)reactos.com. Otherwise please send a patch to both
+wine-patches(a)winehq.com and ros-dev(a)reactos.com
When porting a dll from WINE to ReactOS please take a look at how
comctl32 has been imported. We start by creating a makefile that has
@@ -26,51 +26,52 @@
work to import a new dll.
The following build tools are derived from Wine.
-reactos/tools/makedep # fast dependancy tool
reactos/tools/bin2res # Resource to binary converter
-reactos/tools/winebuild # Wine Build tool for Creating
*.def files
+reactos/tools/winebuild # Synced to Wine-20050211
reactos/tools/wmc # Wine Message Compiler
+reactos/tools/wrc # Synced to Wine-20050211
-
The following shared libraries are a 100% port from Winehq sources.
-reactos/lib/cabinet # Synced to Wine-20050111
-reactos/lib/comctl32 # Synced to Wine-20050111
-reactos/lib/comdlg32 # Synced to Wine-20050111
-reactos/lib/dinput # Synced to Wine-20050111
-reactos/lib/dinput8 # Synced to Wine-20050111
-reactos/lib/icmp # Synced to Wine-20050111
+reactos/lib/cabinet # Synced to Wine-20050211
+reactos/lib/comctl32 # Synced to Wine-20050211
+reactos/lib/comdlg32 # Synced to Wine-20050211
+reactos/lib/dinput # Synced to Wine-20050211
+reactos/lib/dinput8 # Synced to Wine-20050211
+reactos/lib/icmp # Synced to Wine-20050211
reactos/lib/iphlpapi # Out of sync
reactos/lib/imagehlp # Patches for BindImage need review and
submission to winehq.
reactos/lib/msvcrt20 # Out of sync
-reactos/lib/mpr # Synced to Wine-20050111
+reactos/lib/mpr # Synced to Wine-20050211
reactos/lib/msacm # Out of sync
-reactos/lib/msi # Synced to Wine-20050111
+reactos/lib/msimg32 # Synced to Wine-20050211
+reactos/lib/msi # Synced to Wine-20050211
reactos/lib/msvideo # Out of sync
reactos/lib/netapi32 # Out of sync
reactos/lib/odbc32 # In sync. Depends on port of Linux
ODBC.
-reactos/lib/ole32 # Synced to Wine-20050111
-reactos/lib/oleaut32 # Synced to Wine-20050111
-reactos/lib/oledlg # Synced to Wine-20050111
-reactos/lib/olepro32 # Synced to Wine-20050111
-reactos/lib/richedit # Synced to Wine-20050111
-reactos/lib/rpcrt4 # Synced to Wine-20050111
+reactos/lib/ole32 # Synced to Wine-20050211
+reactos/lib/oleaut32 # Synced to Wine-20050211
+reactos/lib/oledlg # Synced to Wine-20050211
+reactos/lib/olepro32 # Synced to Wine-20050211
+reactos/lib/richedit # Synced to Wine-20050211
+reactos/lib/rpcrt4 # Synced to Wine-20050211
reactos/lib/setupapi # Synced to Wine-20050125 # CVS
-reactos/lib/shell32 # Synced to Wine-20050111
-reactos/lib/shdocvw # Synced to Wine-20050111
-reactos/lib/shlwapi # Synced to Wine-20050111
+reactos/lib/shell32 # Synced to Wine-20050211
+reactos/lib/shdocvw # Synced to Wine-20050211
+reactos/lib/shlwapi # Synced to Wine-20050211
reactos/lib/twain # Out of sync
-reactos/lib/unicode # Dependancy on this lib needs to be
removed. Synced to Wine-20050111
-reactos/lib/urlmon # Synced to Wine-20050111
+reactos/lib/unicode # Dependancy on this lib needs to be
removed. Synced to Wine-20050211
+reactos/lib/urlmon # Synced to Wine-20050211
reactos/lib/version # Out of sync
reactos/lib/wininet # Out of sync
-reactos/lib/winmm # Synced to Wine-20050111
-reactos/lib/winmm/midimap # Synced to Wine-20050111
-reactos/lib/winmm/wavemap # Synced to Wine-20050111
+reactos/lib/winmm # Synced to Wine-20050211
+reactos/lib/winmm/midimap # Synced to Wine-20050211
+reactos/lib/winmm/wavemap # Synced to Wine-20050211
ReactOS shares the following programs with Winehq.
reactos/subsys/system/regedit # Out of sync
reactos/subsys/system/expand # Out of sync
+reactos/subsys/system/msiexec # Synced to Wine-20050211
In addition the following libs, dlls and source files are mostly based
on code ported
from Winehq CVS. If you are looking to update something in these files
@@ -80,7 +81,7 @@
reactos/lib/uuid #
advapi32 -
- reactos/lib/advapi32/crypyto/*.c # Synced to Wine-20041201
+ reactos/lib/advapi32/crypt/*.c # ekohl says we're not sharing
this
gdi32 -
reactos/lib/gdi32/objects/linedda.c # Out of sync
@@ -100,3 +101,31 @@
reactos/lib/user32/misc/wsprintf.c # Out of sync
reactos/lib/user32/windows/mdi.c # Out of sync
+- Cd to the parent directory of your top-level "reactos" directory
+- Check out the Wine release: "cvs -d
:pserver:cvs@cvs.winehq.com:2401/home/wine co wine -r Wine-20050211"
+- Create "vendor" directory (as a sibling of your top-level
"reactos"
directory)
+- Cd to the vendor dir and check out the current vendor drop:
+ "svn co
svn://svn.reactos.com/vendor/wine"quot;.
+- For each component shared with Wine (e.g. cabinet):
+ "del vendor\wine\dlls\cabinet\current\*"
+ "copy wine\dlls\cabinet vendor\wine\dlls\cabinet\current"
+ "del vendor\wine\dlls\cabinet\current\.cvsignore"
+ Check svn status, svn add/delete files as needed
+ Tag new Wine release "svn copy vendor\wine\dlls\cabinet\current
vendor\wine\dlls\cabinet\Wine-20050211"
+- Commit the vendor drop: svn commit vendor\wine -m "Wine-20050211
vendor drop"
+- Determine the revision number of the last Wine tag by looking at
http://svn.reactos.com/viewcvs/tags/
+ and finding the last Wine-yyyymmdd-sync tag, e.g. Wine-20050111-sync
had rev 13007
+- For each component shared with Wine (e.g. cabinet):
+- "cd reactos\lib\cabinet"
+- Check for changes in the ReactOS tree: "svn diff -r 13007" (13007 is
the revno of the previous sync).
+ If any changes are found, see if they're present in the Wine code. If
not, submit to WineHQ
+ if apropriate.
+- Merge in Wine changes:
+ "svn merge
svn://svn.reactos.com/vendor/wine/dlls/cabinet/Wine-20050111
+
svn://svn.reactos.com/vendor/wine/dlls/cabinet/current"
+- Fix any merge conflicts
+- Build and test (building will sometimes require adjusting header
files)
+- Check which files were changed: "svn status"
+- For each of the changed files, get the WineHQ CVS log. Copy author
and CVS commit message into a
+ commit log
+- Commit changed files "svn commit" using generated commit log as
commit message
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/fcb.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/fcb.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/fcb.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -250,6 +250,7 @@
KEBUGCHECK(0);
}
#else
+ Status = STATUS_SUCCESS;
CcInitializeCacheMap(FileObject,
(PCC_FILE_SIZES)(&Fcb->RFCB.AllocationSize),
FALSE,
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ntfs/fcb.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/ntfs/fcb.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/ntfs/fcb.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -254,6 +254,7 @@
KEBUGCHECK(0);
}
#else
+ Status = STATUS_SUCCESS;
CcInitializeCacheMap(FileObject,
(PCC_FILE_SIZES)(&Fcb->RFCB.AllocationSize),
FALSE,
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/blockdev.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/blockdev.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/blockdev.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -15,7 +15,7 @@
/* FUNCTIONS
***************************************************************/
-NTSTATUS STDCALL
+static NTSTATUS STDCALL
VfatReadWritePartialCompletion (IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp,
IN PVOID Context)
@@ -272,9 +272,9 @@
NTSTATUS
VfatBlockDeviceIoControl (IN PDEVICE_OBJECT DeviceObject,
IN ULONG CtlCode,
- IN PVOID InputBuffer,
+ IN PVOID InputBuffer OPTIONAL,
IN ULONG InputBufferSize,
- IN OUT PVOID OutputBuffer,
+ IN OUT PVOID OutputBuffer OPTIONAL,
IN OUT PULONG OutputBufferSize,
IN BOOLEAN Override)
{
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/create.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/create.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/create.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -186,7 +186,7 @@
*/
{
PWCHAR PathNameBuffer;
- ULONG PathNameBufferLength;
+ USHORT PathNameBufferLength;
NTSTATUS Status;
PVOID Context = NULL;
PVOID Page;
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dir.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dir.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dir.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -33,7 +33,7 @@
TimeFields.Day = pddate->Day;
TimeFields.Month = pddate->Month;
- TimeFields.Year = DeviceExt->BaseDateYear + pddate->Year;
+ TimeFields.Year = (CSHORT)(DeviceExt->BaseDateYear + pddate->Year);
RtlTimeFieldsToTime (&TimeFields, &LocalTime);
ExLocalTimeToSystemTime(&LocalTime, SystemTime);
@@ -261,7 +261,7 @@
pInfo->NextEntryOffset =
ULONG_ROUND_UP (sizeof (FILE_BOTH_DIR_INFORMATION) +
DirContext->LongNameU.Length);
RtlCopyMemory(pInfo->ShortName, DirContext->ShortNameU.Buffer,
DirContext->ShortNameU.Length);
- pInfo->ShortNameLength = DirContext->ShortNameU.Length;
+ pInfo->ShortNameLength = (CCHAR)DirContext->ShortNameU.Length;
RtlCopyMemory (pInfo->FileName, DirContext->LongNameU.Buffer,
DirContext->LongNameU.Length);
// pInfo->FileIndex=;
FsdDosDateTimeToSystemTime (DeviceExt,
DirContext->DirEntry.Fat.CreationDate,
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dirwr.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dirwr.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dirwr.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -45,7 +45,7 @@
return STATUS_SUCCESS;
}
- ASSERT (pFcb->parrentFcb);
+ ASSERT (pFcb->parentFcb);
Offset.u.HighPart = 0;
Offset.u.LowPart = dirIndex * SizeDirEntry;
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fcb.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fcb.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fcb.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -72,7 +72,7 @@
VOID
vfatInitFcb(PVFATFCB Fcb, PUNICODE_STRING NameU)
{
- ULONG PathNameBufferLength;
+ USHORT PathNameBufferLength;
if (NameU)
PathNameBufferLength = NameU->Length + sizeof(WCHAR);
@@ -460,7 +460,7 @@
{
PVFATFCB rcFCB;
PWCHAR PathNameBuffer;
- ULONG PathNameLength;
+ USHORT PathNameLength;
ULONG Size;
ULONG hash;
@@ -583,7 +583,7 @@
fileObject->SectionObjectPointer = &fcb->SectionObjectPointers;
fileObject->FsContext = fcb;
fileObject->FsContext2 = newCCB;
- DPRINT ("file open: fcb:%x PathName:%wZ file size: %d\n", fcb,
&fcb->PathNameU, fcb->entry.FileSize);
+ DPRINT ("file open: fcb:%x PathName:%wZ\n", fcb, &fcb->PathNameU);
return STATUS_SUCCESS;
}
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fsctl.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fsctl.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fsctl.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -109,8 +109,8 @@
}
else if (DiskGeometry.MediaType == RemovableMedia &&
PartitionInfo.PartitionNumber > 0 &&
- PartitionInfo.StartingOffset.QuadPart == 0LL &&
- PartitionInfo.PartitionLength.QuadPart > 0LL)
+ PartitionInfo.StartingOffset.QuadPart == 0 &&
+ PartitionInfo.PartitionLength.QuadPart > 0)
{
/* This is possible a removable media formated as super floppy
*/
*RecognizedFS = TRUE;
@@ -298,7 +298,7 @@
FatInfo.SectorsPerCluster = BootFatX->SectorsPerCluster;
FatInfo.rootDirectorySectors = BootFatX->SectorsPerCluster;
FatInfo.BytesPerCluster = BootFatX->SectorsPerCluster *
DiskGeometry.BytesPerSector;
- FatInfo.Sectors = PartitionInfo.PartitionLength.QuadPart /
DiskGeometry.BytesPerSector;
+ FatInfo.Sectors =
(ULONG)(PartitionInfo.PartitionLength.QuadPart /
DiskGeometry.BytesPerSector);
if (FatInfo.Sectors / FatInfo.SectorsPerCluster < 65525)
{
DPRINT("FATX16\n");
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/rw.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/rw.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/rw.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -12,13 +12,7 @@
/* INCLUDES
*****************************************************************/
-#include <ddk/ntddk.h>
-#include <wchar.h>
-#include <ntos/minmax.h>
-
#define NDEBUG
-#include <debug.h>
-
#include "vfat.h"
/*
@@ -728,7 +722,7 @@
{
DPRINT("VfatReadFile returned STATUS_VERIFY_REQUIRED\n");
DeviceToVerify = IoGetDeviceToVerify(PsGetCurrentThread());
- IoSetDeviceToVerify(PsGetCurrentThread(), NULL);
+ IoSetDeviceToVerify(PsGetCurrentThread(), DeviceToVerify);
Status = IoVerifyVolume (DeviceToVerify, FALSE);
if (NT_SUCCESS(Status))
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/shutdown.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/shutdown.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/shutdown.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -14,6 +14,34 @@
/* FUNCTIONS
****************************************************************/
+NTSTATUS
+VfatDiskShutDown(PVCB Vcb)
+{
+ PIRP Irp;
+ KEVENT Event;
+ NTSTATUS Status;
+ IO_STATUS_BLOCK IoStatus;
+
+ KeInitializeEvent(&Event, NotificationEvent, FALSE);
+ Irp = IoBuildSynchronousFsdRequest(IRP_MJ_SHUTDOWN,
Vcb->StorageDevice,
+ NULL, 0, NULL, &Event,
&IoStatus);
+ if (Irp)
+ {
+ Status = IoCallDriver(Vcb->StorageDevice, Irp);
+ if (Status == STATUS_PENDING)
+ {
+ KeWaitForSingleObject(&Event, Executive, KernelMode, FALSE,
NULL);
+ Status = IoStatus.Status;
+ }
+ }
+ else
+ {
+ Status = IoStatus.Status;
+ }
+
+ return Status;
+}
+
NTSTATUS STDCALL
VfatShutdown(PDEVICE_OBJECT DeviceObject, PIRP Irp)
{
@@ -37,15 +65,24 @@
ExAcquireResourceExclusiveLite(&DeviceExt->DirResource, TRUE);
Status = VfatFlushVolume(DeviceExt, DeviceExt->VolumeFcb);
- ExReleaseResourceLite(&DeviceExt->DirResource);
- if (!NT_SUCCESS(Status))
- {
+ if (NT_SUCCESS(Status))
+ {
+ Status = VfatDiskShutDown(DeviceExt);
+ if (!NT_SUCCESS(Status))
+ DPRINT1("VfatDiskShutDown failed, status = %x\n",
Status);
+ }
+ else
+ {
DPRINT1("VfatFlushVolume failed, status = %x\n", Status);
- Irp->IoStatus.Status = Status;
}
+ ExReleaseResourceLite(&DeviceExt->DirResource);
+
/* FIXME: Unmount the logical volume */
+
+ if (!NT_SUCCESS(Status))
+ Irp->IoStatus.Status = Status;
}
- ExReleaseResourceLite(&VfatGlobalData->VolumeListLock);
+ ExReleaseResourceLite(&VfatGlobalData->VolumeListLock);
/* FIXME: Free all global acquired resources */
@@ -53,13 +90,13 @@
}
else
{
+ Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
Status = STATUS_INVALID_DEVICE_REQUEST;
}
- Irp->IoStatus.Status = Status;
Irp->IoStatus.Information = 0;
+ IoCompleteRequest(Irp, IO_NO_INCREMENT);
- IoCompleteRequest(Irp, IO_NO_INCREMENT);
return(Status);
}
_____
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/vfat.h
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/vfat.h
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/vfat.h
2005-02-26 17:47:14 UTC (rev 13756)
@@ -36,6 +36,7 @@
#define ROUND_UP(N, S) ((((N) + (S) - 1) / (S)) * (S))
#define ROUND_DOWN(N, S) ((N) - ((N) % (S)))
+#include <pshpack1.h>
struct _BootSector
{
unsigned char magic0, res0, magic1;
@@ -53,7 +54,7 @@
unsigned char VolumeLabel[11], SysType[8];
unsigned char Res2[448];
unsigned short Signatur1;
-} __attribute__((packed));
+};
struct _BootSector32
{
@@ -81,7 +82,7 @@
unsigned char VolumeLabel[11], SysType[8]; // 71
unsigned char Res2[420]; // 90
unsigned short Signature1; // 510
-} __attribute__((packed));
+};
struct _BootSectorFatX
{
@@ -91,7 +92,7 @@
unsigned short FATCount; // 12
unsigned long Unknown; // 14
unsigned char Unused[4078]; // 18
-} __attribute__((packed));
+};
struct _FsInfoSector
{
@@ -102,35 +103,17 @@
unsigned long NextCluster; // 492
unsigned char Res7[12]; // 496
unsigned long Signatur2; // 508
-} __attribute__((packed));
+};
typedef struct _BootSector BootSector;
-#define VFAT_CASE_LOWER_BASE 8 // base is lower case
-#define VFAT_CASE_LOWER_EXT 16 // extension is lower
case
-
-#define LONGNAME_MAX_LENGTH 256 // max length for a long
filename
-
-#define ENTRY_DELETED(DeviceExt, DirEntry) ((DeviceExt)->Flags &
VCB_IS_FATX ? FATX_ENTRY_DELETED(&((DirEntry)->FatX)) :
FAT_ENTRY_DELETED(&((DirEntry)->Fat)))
-#define ENTRY_VOLUME(DeviceExt, DirEntry) ((DeviceExt)->Flags &
VCB_IS_FATX ? FATX_ENTRY_VOLUME(&((DirEntry)->FatX)) :
FAT_ENTRY_VOLUME(&((DirEntry)->Fat)))
-#define ENTRY_END(DeviceExt, DirEntry) ((DeviceExt)->Flags &
VCB_IS_FATX ? FATX_ENTRY_END(&((DirEntry)->FatX)) :
FAT_ENTRY_END(&((DirEntry)->Fat)))
-
-#define FAT_ENTRY_DELETED(DirEntry) ((DirEntry)->Filename[0] == 0xe5)
-#define FAT_ENTRY_END(DirEntry) ((DirEntry)->Filename[0] == 0)
-#define FAT_ENTRY_LONG(DirEntry) (((DirEntry)->Attrib & 0x3f) ==
0x0f)
-#define FAT_ENTRY_VOLUME(DirEntry) (((DirEntry)->Attrib & 0x1f) ==
0x08)
-
-#define FATX_ENTRY_DELETED(DirEntry) ((DirEntry)->FilenameLength ==
0xe5)
-#define FATX_ENTRY_END(DirEntry) ((DirEntry)->FilenameLength ==
0xff)
-#define FATX_ENTRY_LONG(DirEntry) (FALSE)
-#define FATX_ENTRY_VOLUME(DirEntry) (((DirEntry)->Attrib & 0x1f) ==
0x08)
-
-#define FAT_ENTRIES_PER_PAGE (PAGE_SIZE / sizeof (FAT_DIR_ENTRY))
-#define FATX_ENTRIES_PER_PAGE (PAGE_SIZE / sizeof (FATX_DIR_ENTRY))
-
struct _FATDirEntry
{
- unsigned char Filename[8], Ext[3];
+ union
+ {
+ struct { unsigned char Filename[8], Ext[3]; };
+ unsigned char ShortName[11];
+ };
unsigned char Attrib;
unsigned char lCase;
unsigned char CreationTimeMs;
@@ -140,7 +123,7 @@
unsigned short UpdateDate; //date
create/update
unsigned short FirstCluster;
unsigned long FileSize;
-} __attribute__((packed));
+};
typedef struct _FATDirEntry FAT_DIR_ENTRY, *PFAT_DIR_ENTRY;
@@ -157,18 +140,8 @@
unsigned short CreationDate; // 58
unsigned short AccessTime; // 60
unsigned short AccessDate; // 62
-} __attribute__((packed));
-
-typedef struct _FATXDirEntry FATX_DIR_ENTRY, *PFATX_DIR_ENTRY;
-
-union _DIR_ENTRY
-{
- FAT_DIR_ENTRY Fat;
- FATX_DIR_ENTRY FatX;
};
-typedef union _DIR_ENTRY DIR_ENTRY, *PDIR_ENTRY;
-
struct _slot
{
unsigned char id; // sequence number for slot
@@ -179,11 +152,44 @@
WCHAR name5_10[6]; // 6 more characters in name
unsigned char start[2]; // starting cluster number
WCHAR name11_12[2]; // last 2 characters in name
-} __attribute__((packed));
+};
-
typedef struct _slot slot;
+#include <poppack.h>
+
+#define VFAT_CASE_LOWER_BASE 8 // base is lower case
+#define VFAT_CASE_LOWER_EXT 16 // extension is lower
case
+
+#define LONGNAME_MAX_LENGTH 256 // max length for a long
filename
+
+#define ENTRY_DELETED(DeviceExt, DirEntry) ((DeviceExt)->Flags &
VCB_IS_FATX ? FATX_ENTRY_DELETED(&((DirEntry)->FatX)) :
FAT_ENTRY_DELETED(&((DirEntry)->Fat)))
+#define ENTRY_VOLUME(DeviceExt, DirEntry) ((DeviceExt)->Flags &
VCB_IS_FATX ? FATX_ENTRY_VOLUME(&((DirEntry)->FatX)) :
FAT_ENTRY_VOLUME(&((DirEntry)->Fat)))
+#define ENTRY_END(DeviceExt, DirEntry) ((DeviceExt)->Flags &
VCB_IS_FATX ? FATX_ENTRY_END(&((DirEntry)->FatX)) :
FAT_ENTRY_END(&((DirEntry)->Fat)))
+
+#define FAT_ENTRY_DELETED(DirEntry) ((DirEntry)->Filename[0] == 0xe5)
+#define FAT_ENTRY_END(DirEntry) ((DirEntry)->Filename[0] == 0)
+#define FAT_ENTRY_LONG(DirEntry) (((DirEntry)->Attrib & 0x3f) ==
0x0f)
+#define FAT_ENTRY_VOLUME(DirEntry) (((DirEntry)->Attrib & 0x1f) ==
0x08)
+
+#define FATX_ENTRY_DELETED(DirEntry) ((DirEntry)->FilenameLength ==
0xe5)
+#define FATX_ENTRY_END(DirEntry) ((DirEntry)->FilenameLength ==
0xff)
+#define FATX_ENTRY_LONG(DirEntry) (FALSE)
+#define FATX_ENTRY_VOLUME(DirEntry) (((DirEntry)->Attrib & 0x1f) ==
0x08)
+
+#define FAT_ENTRIES_PER_PAGE (PAGE_SIZE / sizeof (FAT_DIR_ENTRY))
+#define FATX_ENTRIES_PER_PAGE (PAGE_SIZE / sizeof (FATX_DIR_ENTRY))
+
+typedef struct _FATXDirEntry FATX_DIR_ENTRY, *PFATX_DIR_ENTRY;
+
+union _DIR_ENTRY
+{
+ FAT_DIR_ENTRY Fat;
+ FATX_DIR_ENTRY FatX;
+};
+
+typedef union _DIR_ENTRY DIR_ENTRY, *PDIR_ENTRY;
+
#define BLOCKSIZE 512
#define FAT16 (1)
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/volume.c
--- branches/cache_manager_rewrite/reactos/drivers/fs/vfat/volume.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/fs/vfat/volume.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -204,7 +204,7 @@
LabelLen = FsLabelInfo->VolumeLabelLength / sizeof(WCHAR);
RtlZeroMemory(&VolumeLabelDirEntry, SizeDirEntry);
StringW.Buffer = FsLabelInfo->VolumeLabel;
- StringW.Length = StringW.MaximumLength =
FsLabelInfo->VolumeLabelLength;
+ StringW.Length = StringW.MaximumLength =
(USHORT)FsLabelInfo->VolumeLabelLength;
StringO.Buffer = cString;
StringO.Length = 0;
StringO.MaximumLength = 42;
@@ -288,7 +288,7 @@
}
/* Update volume label in memory */
- DeviceObject->Vpb->VolumeLabelLength =
FsLabelInfo->VolumeLabelLength;
+ DeviceObject->Vpb->VolumeLabelLength =
(USHORT)FsLabelInfo->VolumeLabelLength;
RtlCopyMemory(DeviceObject->Vpb->VolumeLabel,
FsLabelInfo->VolumeLabel, DeviceObject->Vpb->VolumeLabelLength);
return Status;
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/lib/ip/transport/tcp/even
t.c
---
branches/cache_manager_rewrite/reactos/drivers/lib/ip/transport/tcp/even
t.c 2005-02-26 17:11:06 UTC (rev 13755)
+++
branches/cache_manager_rewrite/reactos/drivers/lib/ip/transport/tcp/even
t.c 2005-02-26 17:47:14 UTC (rev 13756)
@@ -10,8 +10,6 @@
#include "precomp.h"
-extern VOID DrainSignals();
-
int TCPSocketState(void *ClientData,
void *WhichSocket,
void *WhichConnection,
@@ -32,10 +30,9 @@
if( !Connection ) {
TI_DbgPrint(DEBUG_TCP,("Socket closing.\n"));
Connection = FileFindConnectionByContext( WhichSocket );
- if( !Connection ) {
- TcpipRecursiveMutexLeave( &TCPLock );
+ if( !Connection )
return 0;
- } else
+ else
TI_DbgPrint(DEBUG_TCP,("Found socket %x\n", Connection));
}
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/oskittcp/int
erface.c
---
branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/oskittcp/int
erface.c 2005-02-26 17:11:06 UTC (rev 13755)
+++
branches/cache_manager_rewrite/reactos/drivers/lib/oskittcp/oskittcp/int
erface.c 2005-02-26 17:47:14 UTC (rev 13756)
@@ -120,6 +120,9 @@
so->so_connection = context;
so->so_state = SS_NBIO;
so->so_error = 0;
+ so->so_q = so->so_q0 = NULL;
+ so->so_qlen = 0;
+ so->so_head = NULL;
*aso = so;
}
return error;
@@ -377,7 +380,6 @@
*newso = so;
/*so->so_state &= ~SS_COMP;*/
- so->so_q = NULL;
mnam.m_data = &sa;
mnam.m_len = sizeof(sa);
@@ -385,6 +387,9 @@
(void) soaccept(so, &mnam);
so->so_state = SS_NBIO | SS_ISCONNECTED;
+ so->so_q = so->so_q0 = NULL;
+ so->so_qlen = 0;
+ so->so_head = 0;
OS_DbgPrint(OSK_MID_TRACE,("error = %d\n", error));
if (name) {
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/afd/afd/read.c
--- branches/cache_manager_rewrite/reactos/drivers/net/afd/afd/read.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/net/afd/afd/read.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -123,7 +123,7 @@
PIRP NextIrp;
AFD_DbgPrint(MID_TRACE,("Socket shutdown from remote side\n"));
-
+
/* Kill remaining recv irps */
while( !IsListEmpty( &FCB->PendingIrpList[FUNCTION_RECV] ) ) {
NextIrpEntry =
@@ -138,7 +138,7 @@
}
/* Handle closing signal */
- FCB->PollState |= AFD_EVENT_DISCONNECT;
+ FCB->PollState |= AFD_EVENT_DISCONNECT | SOCKET_STATE_EOF_READ;
PollReeval( FCB->DeviceExt, FCB->FileObject );
}
@@ -270,7 +270,8 @@
if( !SocketAcquireStateLock( FCB ) ) return LostSocket( Irp, FALSE
);
- if( FCB->State != SOCKET_STATE_CONNECTED ) {
+ if( FCB->State != SOCKET_STATE_CONNECTED &&
+ FCB->State != SOCKET_STATE_CONNECTING ) {
AFD_DbgPrint(MID_TRACE,("Called recv on wrong kind of socket
(s%x)\n",
FCB->State));
return STATUS_UNSUCCESSFUL;
@@ -307,15 +308,19 @@
Status = STATUS_SUCCESS;
}
} else {
- AFD_DbgPrint(MID_TRACE,("EOF Happened already\n"));
- FCB->Recv.Content = 0;
- FCB->Recv.BytesUsed = 0;
- Status = STATUS_END_OF_FILE;
+ if( FCB->PollState & SOCKET_STATE_EOF_READ )
+ Status = STATUS_END_OF_FILE;
+ else
+ Status = STATUS_SUCCESS;
+
+ AFD_DbgPrint(MID_TRACE,("EOF Happened already\n"));
+ FCB->Recv.Content = 0;
+ FCB->Recv.BytesUsed = 0;
ProcessClose( FCB );
return UnlockAndMaybeComplete
- ( FCB, STATUS_SUCCESS, Irp, 0, NULL, FALSE);
+ ( FCB, Status, Irp, 0, NULL, FALSE);
}
if( NT_SUCCESS(Status) ) {
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/afd/include/afd.h
--- branches/cache_manager_rewrite/reactos/drivers/net/afd/include/afd.h
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/net/afd/include/afd.h
2005-02-26 17:47:14 UTC (rev 13756)
@@ -44,6 +44,7 @@
#define SOCKET_STATE_CONNECTED 3
#define SOCKET_STATE_LISTENING 4
#define SOCKET_STATE_MASK 0x0000ffff
+#define SOCKET_STATE_EOF_READ 0x20000000
#define SOCKET_STATE_LOCKED 0x40000000
#define SOCKET_STATE_NEW 0x80000000
#define SOCKET_STATE_CLOSED 0x00000100
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/miniport.c
---
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/miniport.c
2005-02-26 17:11:06 UTC (rev 13755)
+++
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/miniport.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -603,7 +603,7 @@
Adapter->NdisMiniportBlock.MiniportAdapterContext,
Oid,
Adapter->QueryBuffer,
- Size,
+ Adapter->QueryBufferLength,
BytesWritten,
&BytesNeeded);
}
@@ -1290,14 +1290,14 @@
NTSTATUS Status;
UINT SelectedMediumIndex = 0;
NDIS_OID AddressOID;
- BOOLEAN Success;
+ BOOLEAN Success = FALSE;
ULONG ResourceCount;
ULONG ResourceListSize;
UNICODE_STRING ParamName;
PNDIS_CONFIGURATION_PARAMETER ConfigParam;
NDIS_HANDLE ConfigHandle;
ULONG Size;
- KIRQL OldIrql;
+/* FIXME - KIRQL OldIrql; */
/*
* Prepare wrapper context used by HW and configuration routines.
@@ -1461,7 +1461,7 @@
/* FIXME: Support other types of media */
NDIS_DbgPrint(MIN_TRACE, ("error: unsupported media\n"));
ASSERT(FALSE);
- KeReleaseSpinLock(&Adapter->NdisMiniportBlock.Lock, OldIrql);
+/* FIXME - KeReleaseSpinLock(&Adapter->NdisMiniportBlock.Lock,
OldIrql); */
return STATUS_UNSUCCESSFUL;
}
@@ -1564,6 +1564,8 @@
break;
case IRP_MN_STOP_DEVICE:
+ /* FIXME */
+ Status = STATUS_UNSUCCESSFUL;
break;
Status = NdisIForwardIrpAndWait(Adapter, Irp);
if (NT_SUCCESS(Status) && NT_SUCCESS(Irp->IoStatus.Status))
@@ -1576,7 +1578,8 @@
default:
IoSkipCurrentIrpStackLocation(Irp);
- return
IoCallDriver(Adapter->NdisMiniportBlock.NextDeviceObject, Irp);
+ Status =
IoCallDriver(Adapter->NdisMiniportBlock.NextDeviceObject, Irp);
+ break;
}
return Status;
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/tcpip/tcpip/fileobjs.
c
---
branches/cache_manager_rewrite/reactos/drivers/net/tcpip/tcpip/fileobjs.
c 2005-02-26 17:11:06 UTC (rev 13755)
+++
branches/cache_manager_rewrite/reactos/drivers/net/tcpip/tcpip/fileobjs.
c 2005-02-26 17:47:14 UTC (rev 13756)
@@ -471,8 +471,10 @@
Connection = Request->Handle.ConnectionContext;
+ TcpipRecursiveMutexEnter( &TCPLock, TRUE );
TCPClose(Connection);
DeleteConnectionEndpoint(Connection);
+ TcpipRecursiveMutexLeave( &TCPLock );
TI_DbgPrint(MAX_TRACE, ("Leaving.\n"));
_____
Modified:
branches/cache_manager_rewrite/reactos/drivers/storage/atapi/atapi.c
--- branches/cache_manager_rewrite/reactos/drivers/storage/atapi/atapi.c
2005-02-26 17:11:06 UTC (rev 13755)
+++ branches/cache_manager_rewrite/reactos/drivers/storage/atapi/atapi.c
2005-02-26 17:47:14 UTC (rev 13756)
@@ -2231,7 +2231,7 @@
DPRINT("SCSIOP_SYNCRONIZE_CACHE: TargetId: %lu\n",
Srb->TargetId);
- if (!(DeviceExtension->DeviceFlags[Srb->TargetId] & DEVICE_NO_FLUSH))
+ if (DeviceExtension->DeviceFlags[Srb->TargetId] & DEVICE_NO_FLUSH)
{
/*
* NOTE: Don't flush the cache for CD/DVD drives. Although
@@ -2240,9 +2240,16 @@
* it doesn't make sense to flush cache on devices we don't
* write to.
*/
- return STATUS_SUCCESS;
+ return SRB_STATUS_INVALID_REQUEST;
}
[truncated at 1000 lines; 51148 more skipped]