Merge r17394:17744 from trunk.
Modified: branches/cache_manager_rewrite/reactos/Makefile
Modified:
branches/cache_manager_rewrite/reactos/apps/utils/net/arp/arp.c
Modified:
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnclass
.cpp
Modified:
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnmisc.
cpp
Modified:
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnmisc.
h
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/hw
pci.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/i3
86.h
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/i3
86disk.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/ma
chpc.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/ma
chxbox.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/disk/partiti
on.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/disk
.h
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/free
ldr.h
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/mach
ine.h
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/inifile/inif
ile.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/linuxboot.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/machine.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/miscboot.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/arcn
ame.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reac
tos.c
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/setu
pldr.c
Modified: branches/cache_manager_rewrite/reactos/bootdata/hivecls.inf
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/readme.txt
Modified: branches/cache_manager_rewrite/reactos/bootdata/txtsetup.sif
Modified:
branches/cache_manager_rewrite/reactos/drivers/bus/serenum/detect.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/bus/serenum/fdo.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/bus/serenum/misc.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/bus/serenum/pdo.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/bus/serenum/serenum.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/dd/serial/devctrl.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/dd/serial/info.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/serial/pnp.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/blockdev.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/cdfs.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/fat.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/fs_rec.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/fs_rec.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/fs_rec.rc
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/fs_rec.xml
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/ntfs.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/udfs.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ms/create.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ms/finfo.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ms/fsctrl.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ms/msfs.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ms/msfs.h
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ms/msfs.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ms/rw.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/create.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/finfo.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/fsctrl.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/npfs.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/npfs.h
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/npfs.rc
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/npfs.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/rw.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/np/volume.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/cleanup.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/close.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/direntry.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/dirwr.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/ea.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fastio.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fat.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fcb.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/finfo.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/flush.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/fsctl.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/iface.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/vfat/misc.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/string.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/vfatfs.rc
Modified:
branches/cache_manager_rewrite/reactos/drivers/fs/vfat/volume.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/input/i8042prt/i8042prt.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/input/i8042prt/i8042prt.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/input/i8042prt/i8042prt.x
ml
Modified:
branches/cache_manager_rewrite/reactos/drivers/input/i8042prt/keyboard.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/input/i8042prt/mouse.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/input/i8042prt/ps2pp.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/input/i8042prt/registry.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/include/debug.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/include/efilter.
h
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/include/miniport
.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/include/ndissys.
h
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/include/protocol
.h
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/40gone.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/50gone.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/SOURCES
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/buffer.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/cl.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/config.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/control.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/efilter.c
Modified:
branches/cache_manager_rewrite/reactos/drivers/net/ndis/ndis/hardware.c
[truncated at 100 lines; 763 more skipped]
Property changes on: branches/cache_manager_rewrite/reactos
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.zip
*.iso
*.cab
*.bat
*.log
makefile.auto
config.xml
obj-*
output-*
doxy-doc
cd
reactos
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.zip
*.iso
*.img
*.cab
*.bat
*.log
*.patch
*.diff
makefile.auto
config.xml
obj-*
output-*
doxy-doc
cd
reactos
ros
_____
Modified: branches/cache_manager_rewrite/reactos/Makefile
--- branches/cache_manager_rewrite/reactos/Makefile 2005-10-17
18:04:11 UTC (rev 18526)
+++ branches/cache_manager_rewrite/reactos/Makefile 2005-10-17
19:29:51 UTC (rev 18527)
@@ -308,6 +308,10 @@
$(ECHO_RBUILD)
$(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) mingw
+.PHONY: msvc
+msvc: $(RBUILD_TARGET)
+ $(ECHO_RBUILD)
+ $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) msvc
$(BUGCODES_H) $(BUGCODES_RC): $(WMC_TARGET) $(NTOSKRNL_MC)
$(ECHO_WMC)
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/arp
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
_____
Modified:
branches/cache_manager_rewrite/reactos/apps/utils/net/arp/arp.c
--- branches/cache_manager_rewrite/reactos/apps/utils/net/arp/arp.c
2005-10-17 18:04:11 UTC (rev 18526)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/arp/arp.c
2005-10-17 19:29:51 UTC (rev 18527)
@@ -8,8 +8,8 @@
* GM 27/06/05 Created
*
*/
-
-
+
+#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
@@ -18,11 +18,8 @@
#include <ctype.h>
#include <winsock2.h>
#include <iphlpapi.h>
+
-#define WIN32_LEAN_AND_MEAN
-#define UNICODE
-#define _UNICODE
-
/*
* Globals
*/
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/finger
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/ftp
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/ipconfig
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/netstat
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/ping
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/route
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
_____
Modified:
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnclass
.cpp
---
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnclass
.cpp 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnclass
.cpp 2005-10-17 19:29:51 UTC (rev 18527)
@@ -78,7 +78,7 @@
telSetConsoleTitle("No Connection");
// Change the icon
- hConsoleWindow = GetConsoleWindow();
+ hConsoleWindow = TelnetGetConsoleWindow();
iconChange = SetIcon(hConsoleWindow, 0, &oldBIcon, &oldSIcon,
ini.get_startdir());
if (WSAStartup(MAKEWORD(1, 1), &WsaData)) {
@@ -105,7 +105,7 @@
Console(GetStdHandle(STD_OUTPUT_HANDLE)),
TelHandler(Network, Console, Parser),
ThreadParams(TelHandler),
-Clipboard(GetConsoleWindow(), Network),
+Clipboard(TelnetGetConsoleWindow(), Network),
Mouse(Clipboard),
Scroller(Mouse, ini.get_scroll_size()),
Parser(Console, KeyTrans, Scroller, Network, Charmap) {
@@ -117,7 +117,7 @@
Console(GetStdHandle(STD_OUTPUT_HANDLE)),
TelHandler(Network, Console, Parser),
ThreadParams(TelHandler),
-Clipboard(GetConsoleWindow(), Network),
+Clipboard(TelnetGetConsoleWindow(), Network),
Mouse(Clipboard),
Scroller(Mouse, ini.get_scroll_size()),
Parser(Console, KeyTrans, Scroller, Network, Charmap) {
_____
Modified:
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnmisc.
cpp
---
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnmisc.
cpp 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnmisc.
cpp 2005-10-17 19:29:51 UTC (rev 18527)
@@ -110,7 +110,7 @@
// Paul Brannan 8/7/98
// This code is from Michael 'Hacker' Krelin (author of KINSole)
// (slightly modified)
-HWND GetConsoleWindow() {
+HWND TelnetGetConsoleWindow() {
DWORD pid = GetCurrentProcessId(), wpid;
char title[512], *t = title;
HWND hrv = NULL;
_____
Modified:
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnmisc.
h
---
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnmisc.
h 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/apps/utils/net/telnet/src/tnmisc.
h 2005-10-17 19:29:51 UTC (rev 18527)
@@ -9,7 +9,7 @@
int GetWin32Version(void);
-HWND GetConsoleWindow();
+HWND TelnetGetConsoleWindow(void);
bool SetIcon(HWND hConsoleWindow, HANDLE hIcon, LPARAM *pOldBIcon,
LPARAM *pOldSIcon,
const char *icondir);
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/tracert
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/net/whois
___________________________________________________________________
Name: svn:ignore
- *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
makefile
+ *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/ps
___________________________________________________________________
Name: svn:ignore
- *.o
*.a
*.d
*.exe
*.coff
*.sym
*.map
makefile
+ *.o
*.a
*.d
*.exe
*.coff
*.sym
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/apps/utils/rosperf
___________________________________________________________________
Name: svn:ignore
- *.o
*.a
*.d
*.exe
*.coff
*.sym
*.map
makefile
+ *.o
*.a
*.d
*.exe
*.coff
*.sym
*.map
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/boot/freeldr/bootsect
___________________________________________________________________
Name: svn:ignore
- *.exe
makefile
+ *.exe
GNUmakefile
Property changes on:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr
___________________________________________________________________
Name: svn:ignore
- *.d
*.map
*.exe
*.sys
makefile
+ *.d
*.map
*.exe
*.sys
GNUmakefile
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/hw
pci.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/hw
pci.c 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/hw
pci.c 2005-10-17 19:29:51 UTC (rev 18527)
@@ -293,7 +293,7 @@
/* Initialize resource descriptor */
memset(FullResourceDescriptor, 0, Size);
- FullResourceDescriptor->InterfaceType = Internal;
+ FullResourceDescriptor->InterfaceType = PCIBus;
FullResourceDescriptor->BusNumber = 0;
FullResourceDescriptor->PartialResourceList.Count = 0;
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/i3
86.h
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/i3
86.h 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/i3
86.h 2005-10-17 19:29:51 UTC (rev 18527)
@@ -34,6 +34,7 @@
extern BOOL i386DiskGetBootPath(char *BootPath, unsigned Size);
extern VOID i386DiskGetBootDevice(PULONG BootDevice);
extern BOOL i386DiskBootingFromFloppy(VOID);
+extern BOOL i386DiskNormalizeSystemPath(char *SystemPath, unsigned
Size);
#endif /* __I386_I386_H_ */
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/i3
86disk.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/i3
86disk.c 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/i3
86disk.c 2005-10-17 19:29:51 UTC (rev 18527)
@@ -165,6 +165,38 @@
memcpy(Buffer, Ptr, BufferSize);
+#ifdef DEBUG
+ DbgPrint((DPRINT_DISK, "size of buffer:
%x\n", Ptr[0]));
+ DbgPrint((DPRINT_DISK, "information flags:
%x\n", Ptr[1]));
+ DbgPrint((DPRINT_DISK, "number of physical cylinders on drive:
%u\n", *(PULONG)&Ptr[2]));
+ DbgPrint((DPRINT_DISK, "number of physical heads on drive:
%u\n", *(PULONG)&Ptr[4]));
+ DbgPrint((DPRINT_DISK, "number of physical sectors per track:
%u\n", *(PULONG)&Ptr[6]));
+ DbgPrint((DPRINT_DISK, "total number of sectors on drive:
%I64u\n", *(unsigned long long*)&Ptr[8]));
+ DbgPrint((DPRINT_DISK, "bytes per sector:
%u\n", Ptr[12]));
+ if (Ptr[0] >= 0x1e)
+ {
+ DbgPrint((DPRINT_HB, "EED configuration parameters:
%x:%x\n", Ptr[13], Ptr[14]));
+ if (Ptr[13] != 0xffff && Ptr[14] != 0xffff)
+ {
+ PUCHAR SpecPtr = (PUCHAR)((Ptr[13] << 4) + Ptr[14]);
+ DbgPrint((DPRINT_DISK, "SpecPtr:
%x\n", SpecPtr));
+ DbgPrint((DPRINT_DISK, "physical I/O port base address:
%x\n", *(PUSHORT)&SpecPtr[0]));
+ DbgPrint((DPRINT_DISK, "disk-drive control port address:
%x\n", *(PUSHORT)&SpecPtr[2]));
+ DbgPrint((DPRINT_DISK, "drive flags:
%x\n", SpecPtr[4]));
+ DbgPrint((DPRINT_DISK, "proprietary information:
%x\n", SpecPtr[5]));
+ DbgPrint((DPRINT_DISK, "IRQ for drive:
%u\n", SpecPtr[6]));
+ DbgPrint((DPRINT_DISK, "sector count for multi-sector
transfers: %u\n", SpecPtr[7]));
+ DbgPrint((DPRINT_DISK, "DMA control:
%x\n", SpecPtr[8]));
+ DbgPrint((DPRINT_DISK, "programmed I/O control:
%x\n", SpecPtr[9]));
+ DbgPrint((DPRINT_DISK, "drive options:
%x\n", *(PUSHORT)&SpecPtr[10]));
+ }
+ }
+ if (Ptr[0] >= 0x42)
+ {
+ DbgPrint((DPRINT_HB, "signature:
%x\n", Ptr[15]));
+ }
+#endif
+
return TRUE;
}
@@ -172,6 +204,7 @@
{
PARTITION_TABLE_ENTRY PartitionTableEntry;
UCHAR VolumeType;
+ ULONG ActivePartition;
DbgPrint((DPRINT_FILESYSTEM, "FsOpenVolume() DriveNumber: 0x%x
PartitionNumber: 0x%x\n", i386BootDrive, i386BootPartition));
@@ -204,7 +237,7 @@
if (i386BootPartition == 0)
{
// Partition requested was zero which means the boot
partition
- if (! DiskGetActivePartitionEntry(i386BootDrive,
&PartitionTableEntry))
+ if (! DiskGetActivePartitionEntry(i386BootDrive,
&PartitionTableEntry, &ActivePartition))
{
/* Try partition-less disk */
*StartSector = 0;
@@ -301,6 +334,10 @@
(P) == PARTITION_FAT32_XINT13 || \
(P) == PARTITION_XINT13)
+#define IsContainerPartition(P) \
+ ((P) == PARTITION_EXTENDED || \
+ (P) == PARTITION_XINT13_EXTENDED)
+
BOOL i386DiskGetSystemVolume(char *SystemPath,
char *RemainingPath,
PULONG Device,
@@ -344,7 +381,8 @@
{
return FALSE;
}
- if
(IsRecognizedPartition(PartitionTableEntry.SystemIndicator))
+ if
(!IsContainerPartition(PartitionTableEntry.SystemIndicator) &&
+ PartitionTableEntry.SystemIndicator !=
PARTITION_ENTRY_UNUSED)
{
if (++RosPartition == PartitionNumber)
{
@@ -425,6 +463,46 @@
return TRUE;
}
+BOOL
+i386DiskNormalizeSystemPath(char *SystemPath, unsigned Size)
+{
+ CHAR BootPath[256];
+ ULONG PartitionNumber;
+ ULONG DriveNumber;
+ PARTITION_TABLE_ENTRY PartEntry;
+ char *p;
+
+ if (!DissectArcPath(SystemPath, BootPath, &DriveNumber,
&PartitionNumber))
+ {
+ return FALSE;
+ }
+
+ if (0 != PartitionNumber)
+ {
+ return TRUE;
+ }
+
+ if (! DiskGetActivePartitionEntry(DriveNumber,
+ &PartEntry,
+ &PartitionNumber) ||
+ PartitionNumber < 1 || 9 < PartitionNumber)
+ {
+ return FALSE;
+ }
+
+ p = SystemPath;
+ while ('\0' != *p && 0 != strnicmp(p, "partition(", 10)) {
+ p++;
+ }
+ p = strchr(p, ')');
+ if (NULL == p || '0' != *(p - 1)) {
+ return FALSE;
+ }
+ *(p - 1) = '0' + PartitionNumber;
+
+ return TRUE;
+}
+
#endif /* defined __i386__ */
/* EOF */
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/ma
chpc.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/ma
chpc.c 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/ma
chpc.c 2005-10-17 19:29:51 UTC (rev 18527)
@@ -54,6 +54,7 @@
MachVtbl.DiskGetBootPath = i386DiskGetBootPath;
MachVtbl.DiskGetBootDevice = i386DiskGetBootDevice;
MachVtbl.DiskBootingFromFloppy = i386DiskBootingFromFloppy;
+ MachVtbl.DiskNormalizeSystemPath = i386DiskNormalizeSystemPath;
MachVtbl.DiskReadLogicalSectors = PcDiskReadLogicalSectors;
MachVtbl.DiskGetPartitionEntry = PcDiskGetPartitionEntry;
MachVtbl.DiskGetDriveGeometry = PcDiskGetDriveGeometry;
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/ma
chxbox.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/ma
chxbox.c 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/arch/i386/ma
chxbox.c 2005-10-17 19:29:51 UTC (rev 18527)
@@ -52,6 +52,7 @@
MachVtbl.DiskGetBootPath = i386DiskGetBootPath;
MachVtbl.DiskGetBootDevice = i386DiskGetBootDevice;
MachVtbl.DiskBootingFromFloppy = i386DiskBootingFromFloppy;
+ MachVtbl.DiskNormalizeSystemPath = i386DiskNormalizeSystemPath;
MachVtbl.DiskReadLogicalSectors = XboxDiskReadLogicalSectors;
MachVtbl.DiskGetPartitionEntry = XboxDiskGetPartitionEntry;
MachVtbl.DiskGetDriveGeometry = XboxDiskGetDriveGeometry;
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/disk/partiti
on.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/disk/partiti
on.c 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/disk/partiti
on.c 2005-10-17 19:29:51 UTC (rev 18527)
@@ -26,12 +26,14 @@
#include <machine.h>
-BOOL DiskGetActivePartitionEntry(ULONG DriveNumber,
PPARTITION_TABLE_ENTRY PartitionTableEntry)
+BOOL DiskGetActivePartitionEntry(ULONG DriveNumber,
+ PPARTITION_TABLE_ENTRY
PartitionTableEntry,
+ ULONG *ActivePartition)
{
ULONG BootablePartitionCount = 0;
- ULONG ActivePartition = 0;
MASTER_BOOT_RECORD MasterBootRecord;
+ *ActivePartition = 0;
// Read master boot record
if (!DiskReadBootRecord(DriveNumber, 0, &MasterBootRecord))
{
@@ -42,22 +44,22 @@
if (MasterBootRecord.PartitionTable[0].BootIndicator == 0x80)
{
BootablePartitionCount++;
- ActivePartition = 0;
+ *ActivePartition = 1;
}
if (MasterBootRecord.PartitionTable[1].BootIndicator == 0x80)
{
BootablePartitionCount++;
- ActivePartition = 1;
+ *ActivePartition = 2;
}
if (MasterBootRecord.PartitionTable[2].BootIndicator == 0x80)
{
BootablePartitionCount++;
- ActivePartition = 2;
+ *ActivePartition = 3;
}
if (MasterBootRecord.PartitionTable[3].BootIndicator == 0x80)
{
BootablePartitionCount++;
- ActivePartition = 3;
+ *ActivePartition = 4;
}
// Make sure there was only one bootable partition
@@ -73,7 +75,9 @@
}
// Copy the partition table entry
- RtlCopyMemory(PartitionTableEntry,
&MasterBootRecord.PartitionTable[ActivePartition],
sizeof(PARTITION_TABLE_ENTRY));
+ RtlCopyMemory(PartitionTableEntry,
+ &MasterBootRecord.PartitionTable[*ActivePartition
- 1],
+ sizeof(PARTITION_TABLE_ENTRY));
return TRUE;
}
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/disk
.h
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/disk
.h 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/disk
.h 2005-10-17 19:29:51 UTC (rev 18527)
@@ -130,7 +130,7 @@
// Fixed Disk Partition Management Functions
//
////////////////////////////////////////////////////////////////////////
///////////////
-BOOL DiskGetActivePartitionEntry(ULONG DriveNumber,
PPARTITION_TABLE_ENTRY PartitionTableEntry);
+BOOL DiskGetActivePartitionEntry(ULONG DriveNumber,
PPARTITION_TABLE_ENTRY PartitionTableEntry, ULONG *ActivePartition);
BOOL DiskGetPartitionEntry(ULONG DriveNumber, ULONG PartitionNumber,
PPARTITION_TABLE_ENTRY PartitionTableEntry);
BOOL DiskGetFirstPartitionEntry(PMASTER_BOOT_RECORD MasterBootRecord,
PPARTITION_TABLE_ENTRY PartitionTableEntry);
BOOL DiskGetFirstExtendedPartitionEntry(PMASTER_BOOT_RECORD
MasterBootRecord, PPARTITION_TABLE_ENTRY PartitionTableEntry);
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/free
ldr.h
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/free
ldr.h 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/free
ldr.h 2005-10-17 19:29:51 UTC (rev 18527)
@@ -35,8 +35,6 @@
#include <portio.h>
#include <reactos.h>
-#define ROUND_UP(N, S) (((N) + (S) - 1) & ~((S) - 1))
-#define ROUND_DOWN(N, S) ((N) & ~((S) - 1))
#define Ke386EraseFlags(x) __asm__ __volatile__("pushl $0 ;
popfl\n")
extern BOOL UserInterfaceUp; /* Tells us if the user interface is
displayed */
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/mach
ine.h
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/mach
ine.h 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/include/mach
ine.h 2005-10-17 19:29:51 UTC (rev 18527)
@@ -61,6 +61,7 @@
BOOL (*DiskGetBootPath)(char *BootPath, unsigned Size);
VOID (*DiskGetBootDevice)(PULONG BootDevice);
BOOL (*DiskBootingFromFloppy)(VOID);
+ BOOL (*DiskNormalizeSystemPath)(char *SystemPath, unsigned Size);
BOOL (*DiskReadLogicalSectors)(ULONG DriveNumber, ULONGLONG
SectorNumber, ULONG SectorCount, PVOID Buffer);
BOOL (*DiskGetPartitionEntry)(ULONG DriveNumber, ULONG
PartitionNumber, PPARTITION_TABLE_ENTRY PartitionTableEntry);
BOOL (*DiskGetDriveGeometry)(ULONG DriveNumber, PGEOMETRY
DriveGeometry);
@@ -97,6 +98,7 @@
#define MachDiskGetBootPath(Path, Size)
MachVtbl.DiskGetBootPath((Path), (Size))
#define MachDiskGetBootDevice(BootDevice)
MachVtbl.DiskGetBootDevice(BootDevice)
#define MachDiskBootingFromFloppy()
MachVtbl.DiskBootingFromFloppy()
+#define MachDiskNormalizeSystemPath(Path, Size)
MachVtbl.DiskNormalizeSystemPath((Path), (Size))
#define MachDiskReadLogicalSectors(Drive, Start, Count, Buf)
MachVtbl.DiskReadLogicalSectors((Drive), (Start), (Count), (Buf))
#define MachDiskGetPartitionEntry(Drive, Part, Entry)
MachVtbl.DiskGetPartitionEntry((Drive), (Part), (Entry))
#define MachDiskGetDriveGeometry(Drive, Geom)
MachVtbl.DiskGetDriveGeometry((Drive), (Geom))
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/inifile/inif
ile.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/inifile/inif
ile.c 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/inifile/inif
ile.c 2005-10-17 19:29:51 UTC (rev 18527)
@@ -218,7 +218,7 @@
RtlZeroMemory(SectionItem, sizeof(INI_SECTION_ITEM));
// Allocate the setting name buffer
- SectionItem->ItemName = MmAllocateMemory(strlen(SettingName));
+ SectionItem->ItemName = MmAllocateMemory(strlen(SettingName) +
1);
if (!SectionItem->ItemName)
{
MmFreeMemory(SectionItem);
@@ -226,7 +226,7 @@
}
// Allocate the setting value buffer
- SectionItem->ItemValue = MmAllocateMemory(strlen(SettingValue));
+ SectionItem->ItemValue = MmAllocateMemory(strlen(SettingValue) +
1);
if (!SectionItem->ItemValue)
{
MmFreeMemory(SectionItem->ItemName);
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/linuxboot.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/linuxboot.c
2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/linuxboot.c
2005-10-17 19:29:51 UTC (rev 18527)
@@ -81,6 +81,11 @@
}
// Open the boot volume
+ if (!MachDiskNormalizeSystemPath(LinuxBootPath,
sizeof(LinuxBootPath)))
+ {
+ UiMessageBox("Invalid boot path");
+ goto LinuxBootFailed;
+ }
if (!FsOpenSystemVolume(LinuxBootPath, NULL, NULL))
{
UiMessageBox("Failed to open boot drive.");
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/machine.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/machine.c
2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/machine.c
2005-10-17 19:29:51 UTC (rev 18527)
@@ -42,6 +42,7 @@
#undef MachDiskGetBootPath
#undef MachDiskGetBootDevice
#undef MachDiskBootingFromFloppy
+#undef MachDiskNormalizeSystemPath
#undef MachDiskReadLogicalSectors
#undef MachDiskGetPartitionEntry
#undef MachDiskGetDriveGeometry
@@ -192,6 +193,12 @@
}
BOOL
+MachDiskNormalizeSystemPath(char *SystemPath, unsigned Size)
+{
+ return MachVtbl.DiskNormalizeSystemPath(SystemPath, Size);
+}
+
+BOOL
MachDiskReadLogicalSectors(ULONG DriveNumber, ULONGLONG SectorNumber,
ULONG SectorCount, PVOID Buffer)
{
return MachVtbl.DiskReadLogicalSectors(DriveNumber, SectorNumber,
SectorCount, Buffer);
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/miscboot.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/miscboot.c
2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/miscboot.c
2005-10-17 19:29:51 UTC (rev 18527)
@@ -54,6 +54,12 @@
return;
}
+ if (!MachDiskNormalizeSystemPath(FileName, sizeof(FileName)))
+ {
+ UiMessageBox("Invalid path to boot sector file");
+ return;
+ }
+
if (!FsOpenSystemVolume(FileName, FileName, NULL))
{
UiMessageBox("Failed to open boot drive.");
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/arcn
ame.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/arcn
ame.c 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/arcn
ame.c 2005-10-17 19:29:51 UTC (rev 18527)
@@ -73,7 +73,7 @@
p = p + 11;
*BootPartition = atoi(p);
p = strchr(p, ')');
- if ((p == NULL) || (*BootPartition == 0))
+ if (p == NULL)
return FALSE;
p++;
}
_____
Modified:
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reac
tos.c
---
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reac
tos.c 2005-10-17 18:04:11 UTC (rev 18526)
+++
branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reac
tos.c 2005-10-17 19:29:51 UTC (rev 18527)
@@ -671,6 +671,12 @@
}
else
{
+ if (! MachDiskNormalizeSystemPath(SystemPath,
+ sizeof(SystemPath)))
+ {
+ UiMessageBox("Invalid system path");
+ return;
+ }
[truncated at 1000 lines; 142966 more skipped]