Modified: branches/cache_manager_rewrite/reactos/CREDITS
Modified: branches/cache_manager_rewrite/reactos/Makefile
Modified: branches/cache_manager_rewrite/reactos/ReactOS.xml
Deleted: branches/cache_manager_rewrite/reactos/apps/Makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/testsets/Makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/testsets/loadlib/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/testsets/msvcrt/fileio/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/binpatch/Makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/cat/makefile
Modified: branches/cache_manager_rewrite/reactos/apps/utils/directory.xml
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/driver/load/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/driver/unload/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/infinst/makefile
Modified: branches/cache_manager_rewrite/reactos/apps/utils/net/arp/arp.c
Modified: branches/cache_manager_rewrite/reactos/apps/utils/net/directory.xml
Modified: branches/cache_manager_rewrite/reactos/apps/utils/net/finger/finger.xml
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/net/ftp/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/net/roshttpd/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/ip.h
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/ip_icmp.h
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/makefile
Modified: branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/tracert.c
Added: branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/tracert.h
Modified: branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/tracert.rc
Added: branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/tracert.xml
Modified: branches/cache_manager_rewrite/reactos/apps/utils/net/whois/whois.xml
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/nts2w32err/makefile
Modified: branches/cache_manager_rewrite/reactos/apps/utils/nts2w32err/nts2w32err.c
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/objdir/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/partinfo/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/patchnv4/Makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/pesum/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/pice/loader/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/pice/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/pice/module/makefile
Modified: branches/cache_manager_rewrite/reactos/apps/utils/pice/module/symbols.c
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/pnpdump/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/ps/makefile
Added: branches/cache_manager_rewrite/reactos/apps/utils/ps/ps.xml
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/sc/makefile
Modified: branches/cache_manager_rewrite/reactos/apps/utils/sdkparse/test.h
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/shutdown/Makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/stats/Makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/theme/dump/Makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/tickcount/makefile
Deleted: branches/cache_manager_rewrite/reactos/apps/utils/winetest/makefile
Deleted: branches/cache_manager_rewrite/reactos/boot/freeldr/Makefile
Deleted: branches/cache_manager_rewrite/reactos/boot/freeldr/fdebug/Makefile
Modified: branches/cache_manager_rewrite/reactos/boot/freeldr/freeldr/reactos/reactos.c
Deleted: branches/cache_manager_rewrite/reactos/boot/freeldr/install/Makefile
Deleted: branches/cache_manager_rewrite/reactos/boot/freeldr/tools/Makefile
Modified: branches/cache_manager_rewrite/reactos/bootdata/hivesys.inf
Modified: branches/cache_manager_rewrite/reactos/bootdata/packages/reactos.dff
Deleted: branches/cache_manager_rewrite/reactos/dk/
Deleted: branches/cache_manager_rewrite/reactos/drivers/Makefile
Deleted: branches/cache_manager_rewrite/reactos/drivers/bus/Makefile
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/acpi/acpi.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/serenum/detect.c
Deleted: branches/cache_manager_rewrite/reactos/drivers/bus/serenum/makefile
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/serenum/pdo.c
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/serenum/serenum.c
Modified: branches/cache_manager_rewrite/reactos/drivers/bus/serenum/serenum.h
Deleted: branches/cache_manager_rewrite/reactos/drivers/dd/Makefile
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/beep/beep.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/blue/blue.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/blue/blue.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/bootvid/bootvid.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/bootvid/bootvid.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/debugout/debugout.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/debugout/debugout.xml
Deleted: branches/cache_manager_rewrite/reactos/drivers/dd/green/makefile
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/mpu401/mpu401.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/mpu401/mpu401.h
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/mpu401/mpu401.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/mpu401/portio.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/mpu401/settings.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/null/null.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/parallel/parallel.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/parallel/parallel.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/ramdrv/ramdrv.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/ramdrv/ramdrv.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/serial/serial.h
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/sndblst/portio.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/sndblst/settings.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/sndblst/sndblst.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/sndblst/sndblst.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/sound/sb16.c
Modified: branches/cache_manager_rewrite/reactos/drivers/dd/sound/sound.xml
Deleted: branches/cache_manager_rewrite/reactos/drivers/dd/test/makefile
Deleted: branches/cache_manager_rewrite/reactos/drivers/fs/Makefile
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/cdfs.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/cdfs.h
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/cdfs.xml
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/create.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/dirctl.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/fcb.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/cdfs/fsctl.c
Deleted: branches/cache_manager_rewrite/reactos/drivers/fs/ext2/makefile
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/ext2/super.c
Modified: branches/cache_manager_rewrite/reactos/drivers/fs/fs_rec/cdfs.c
[truncated at 100 lines; 1130 more skipped]
--- branches/cache_manager_rewrite/reactos/CREDITS 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/CREDITS 2005-08-13 23:59:17 UTC (rev 17374)
@@ -46,6 +46,7 @@
David Welch <welch@cwcom.net>
Jonathan Wilson <jonwil@tpgi.com.au>
Art Yerkes <ayerkes@speakeasy.net>
+Magnus Olsen (magnus@greatlord.com)
Graphic Design from
--- branches/cache_manager_rewrite/reactos/Makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/Makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,3 +1,52 @@
+# Well-known targets:
+#
+# all (default target)
+# This target builds all of ReactOS.
+#
+# module
+# These targets builds a single module. Replace module with the name of
+# the module you want to build.
+#
+# bootcd
+# This target builds an ISO (ReactOS.iso) from which ReactOS can be booted
+# and installed.
+#
+# livecd
+# This target builds an ISO (ReactOS-Live.iso) from which ReactOS can be
+# booted, but not installed.
+#
+# install
+# This target installs all of ReactOS to a location specified by the
+# ROS_INSTALL environment variable.
+#
+# module_install
+# These targets installs a single module to a location specified by the
+# ROS_INSTALL environment variable. Replace module with the name of the
+# module you want to install.
+#
+# clean
+# This target cleans (deletes) all files that are generated when building
+# ReactOS.
+#
+# module_clean
+# These targets cleans (deletes) files that are generated when building a
+# single module. Replace module with the name of the module you want to
+# clean.
+#
+# depends
+# This target does a complete dependency check of the ReactOS codebase.
+# This can require several minutes to complete. If you only need to check
+# dependencies for a single or few modules then you can use the
+# module_depends targets instead. This target can also repair a damaged or
+# missing makefile.auto if needed.
+#
+# module_depends
+# These targets do a dependency check of individual modules. Replace module
+# with the name of the module for which you want to check dependencies.
+# This is faster than the depends target which does a complete dependency
+# check of the ReactOS codebase.
+#
+#
# Accepted environment variables:
#
# ROS_PREFIX
@@ -50,6 +99,12 @@
#
# ROS_RBUILDFLAGS
# Pass parameters to rbuild.
+# -v Be verbose.
+# -c Clean as you go. Delete generated files as soon as they are not needed anymore.
+# -dd Disable automatic dependencies.
+# -dm{module} Check only automatic dependencies for this module.
+# -mi Let make handle creation of install directories. Rbuild will not generate the directories.
+# -ps Generate proxy makefiles in source tree instead of the output tree.
.PHONY: all
.PHONY: clean
--- branches/cache_manager_rewrite/reactos/ReactOS.xml 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/ReactOS.xml 2005-08-13 23:59:17 UTC (rev 17374)
@@ -57,6 +57,9 @@
<directory name="media">
<xi:include href="media/directory.xml" />
</directory>
+ <directory name="modules">
+ <xi:include href="modules/directory.xml" />
+ </directory>
<directory name="ntoskrnl">
<xi:include href="ntoskrnl/ntoskrnl.xml" />
</directory>
--- branches/cache_manager_rewrite/reactos/apps/Makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/Makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,13 +0,0 @@
-# $Id$
-#
-# ReactOS apps and tools makefile to generate Doxygen documentation
-#
-
-
-docu:
- doxygen Doxyfile
-
-.PHONY: docu
-
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/testsets/Makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/testsets/Makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,162 +0,0 @@
-#
-# ReactOS system testsets makefile
-#
-
-PATH_TO_TOP = ../..
-
-include $(PATH_TO_TOP)/rules.mak
-
-
-# Testset applications
-TEST_SETS = loadlib
-
-TEST_KERNEL32 =
-
-TEST_MSVCRT =
-
-TEST_COM =
-
-TEST_SEH =
-
-TEST_REGRESSIONS =
-
-all: $(TEST_SETS) $(TEST_KERNEL32) $(TEST_MSVCRT) $(TEST_COM) $(TEST_SEH) $(TEST_REGRESSIONS)
-
-depends:
-
-implib: $(TEST_SETS:%=%_implib) \
- $(TEST_KERNEL32:%=%_implib) \
- $(TEST_MSVCRT:%=%_implib) \
- $(TEST_COM:%=%_implib) \
- $(TEST_SEH:%=%_implib) \
- $(TEST_REGRESSIONS:%=%_implib)
-
-clean: $(TEST_SETS:%=%_clean) \
- $(TEST_KERNEL32:%=%_clean) \
- $(TEST_MSVCRT:%=%_clean) \
- $(TEST_COM:%=%_clean) \
- $(TEST_SEH:%=%_clean) \
- $(TEST_REGRESSIONS:%=%_clean)
-
-install: $(TEST_SETS:%=%_install) \
- $(TEST_KERNEL32:%=%_install) \
- $(TEST_MSVCRT:%=%_install) \
- $(TEST_COM:%=%_install) \
- $(TEST_SEH:%=%_install) \
- $(TEST_REGRESSIONS:%=%_install)
-
-.PHONY: all depends implib clean install
-
-
-#
-# Testset Applications
-#
-$(TEST_SETS): %:
- $(MAKE) -C $*
-
-$(TEST_SETS:%=%_implib): %_implib:
- $(MAKE) -C $* implib
-
-$(TEST_SETS:%=%_clean): %_clean:
- $(MAKE) -C $* clean
-
-$(TEST_SETS:%=%_install): %_install:
- $(MAKE) -C $* install
-
-.PHONY: $(TEST_SETS) $(TEST_SETS:%=%_implib) $(TEST_SETS:%=%_clean) $(TEST_SETS:%=%_install)
-
-
-#
-# Kernel32 Test Applications
-#
-$(TEST_KERNEL32): %:
- $(MAKE) -C kernel32/$*
-
-$(TEST_KERNEL32:%=%_implib): %_implib:
- $(MAKE) -C kernel32/$* implib
-
-$(TEST_KERNEL32:%=%_clean): %_clean:
- $(MAKE) -C kernel32/$* clean
-
-$(TEST_KERNEL32:%=%_install): %_install:
- $(MAKE) -C kernel32/$* install
-
-.PHONY: $(TEST_KERNEL32) $(TEST_KERNEL32:%=%_implib) $(TEST_KERNEL32:%=%_clean) $(TEST_KERNEL32:%=%_install)
-
-
-#
-# msvcrt Test Applications
-#
-$(TEST_MSVCRT): %:
- $(MAKE) -C msvcrt/$*
-
-$(TEST_MSVCRT:%=%_implib): %_implib:
- $(MAKE) -C msvcrt/$* implib
-
-$(TEST_MSVCRT:%=%_clean): %_clean:
- $(MAKE) -C msvcrt/$* clean
-
-$(TEST_MSVCRT:%=%_install): %_install:
- $(MAKE) -C msvcrt/$* install
-
-.PHONY: $(TEST_MSVCRT) $(TEST_MSVCRT:%=%_implib) $(TEST_MSVCRT:%=%_clean) $(TEST_MSVCRT:%=%_install)
-
-
-#
-# COM Test Applications
-#
-$(TEST_COM): %:
- $(MAKE) -C com/$*
-
-$(TEST_COM:%=%_implib): %_implib:
- $(MAKE) -C com/$* implib
-
-$(TEST_COM:%=%_clean): %_clean:
- $(MAKE) -C com/$* clean
-
-$(TEST_COM:%=%_install): %_install:
- $(MAKE) -C com/$* install
-
-.PHONY: $(TEST_COM) $(TEST_COM:%=%_implib) $(TEST_COM:%=%_clean) $(TEST_COM:%=%_install)
-
-
-#
-# SEH Test Applications
-#
-$(TEST_SEH): %:
- $(MAKE) -C seh/$*
-
-$(TEST_SEH:%=%_implib): %_implib:
- $(MAKE) -C seh/$* implib
-
-$(TEST_SEH:%=%_clean): %_clean:
- $(MAKE) -C seh/$* clean
-
-$(TEST_SEH:%=%_install): %_install:
- $(MAKE) -C seh/$* install
-
-.PHONY: $(TEST_SEH) $(TEST_SEH:%=%_implib) $(TEST_SEH:%=%_clean) $(TEST_SEH:%=%_install)
-
-
-#
-# Regression Test Applications
-#
-$(TEST_REGRESSIONS): %:
- $(MAKE) -C regres/$*
-
-$(TEST_REGRESSIONS:%=%_implib): %_implib:
- $(MAKE) -C regres/$* implib
-
-$(TEST_REGRESSIONS:%=%_clean): %_clean:
- $(MAKE) -C regres/$* clean
-
-$(TEST_REGRESSIONS:%=%_install): %_install:
- $(MAKE) -C regres/$* install
-
-.PHONY: $(TEST_REGRESSIONS) $(TEST_REGRESSIONS:%=%_implib) $(TEST_REGRESSIONS:%=%_clean) $(TEST_REGRESSIONS:%=%_install)
-
-
-etags:
- find . -name "*.[ch]" -print | etags --language=c -
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/testsets/loadlib/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/testsets/loadlib/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,24 +0,0 @@
-#
-# $Id: makefile,v 1.0
-
-PATH_TO_TOP = ../../..
-
-TARGET_NORC = yes
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = console
-
-TARGET_NAME = loadlib
-
-TARGET_CFLAGS = -Wall -Werror -D__USE_W32API -DUNICODE -D_UNICODE
-
-TARGET_SDKLIBS = kernel32.a ntdll.a
-
-TARGET_OBJECTS = $(TARGET_NAME).o
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/testsets/msvcrt/fileio/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/testsets/msvcrt/fileio/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,27 +0,0 @@
-#
-# $Id: makefile,v 1.0
-
-PATH_TO_TOP = ../../../..
-
-TEST_ROOT = $(PATH_TO_TOP)/apps/testsets/test
-
-TARGET_NORC = yes
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = console
-
-TARGET_NAME = fileio
-
-#TARGET_CFLAGS = -I$(TEST_ROOT) -DDBG -DUNICODE -D_UNICODE
-TARGET_CFLAGS = -I$(TEST_ROOT) -DDBG
-
-TARGET_SDKLIBS = ntdll.a kernel32.a
-
-TARGET_OBJECTS = $(TARGET_NAME).o wfileio.o main.o
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/utils/binpatch/Makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/binpatch/Makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,21 +0,0 @@
-PATH_TO_TOP = ../../..
-
-TARGET_NORC = yes
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = console
-
-TARGET_NAME = binpatch
-
-TARGET_SDKLIBS =
-
-TARGET_OBJECTS = patch.o
-
-TARGET_CFLAGS += -Wall -Werror
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/utils/cat/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/cat/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,21 +0,0 @@
-# $Id$
-
-PATH_TO_TOP = ../../..
-
-TARGET_NORC = yes
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = console
-
-TARGET_NAME = cat
-
-TARGET_OBJECTS = $(TARGET_NAME).o
-
-TARGET_CFLAGS = -Wall -Werror
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/utils/directory.xml 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/directory.xml 2005-08-13 23:59:17 UTC (rev 17374)
@@ -4,4 +4,7 @@
<directory name="rosperf">
<xi:include href="rosperf/rosperf.xml" />
</directory>
+<directory name="ps">
+ <xi:include href="ps/ps.xml" />
+</directory>
--- branches/cache_manager_rewrite/reactos/apps/utils/driver/load/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/driver/load/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,21 +0,0 @@
-PATH_TO_TOP = ../../../..
-
-TARGET_NORC = yes
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = console
-
-TARGET_NAME = load
-
-TARGET_CFLAGS = -DUNICODE -D_UNICODE
-
-TARGET_SDKLIBS = ntdll.a
-
-TARGET_OBJECTS = $(TARGET_NAME).o
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/utils/driver/unload/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/driver/unload/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,21 +0,0 @@
-PATH_TO_TOP = ../../../..
-
-TARGET_NORC = yes
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = console
-
-TARGET_NAME = unload
-
-TARGET_CFLAGS = -DUNICODE -D_UNICODE
-
-TARGET_SDKLIBS = ntdll.a
-
-TARGET_OBJECTS = $(TARGET_NAME).o
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/utils/infinst/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/infinst/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,21 +0,0 @@
-PATH_TO_TOP = ../../..
-
-TARGET_NORC = yes
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = windows
-
-TARGET_NAME = infinst
-
-TARGET_SDKLIBS = comdlg32.a setupapi.a
-
-TARGET_OBJECTS = infinst.o
-
-TARGET_CFLAGS = -Wall -Werror
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/utils/net/arp/arp.c 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/arp/arp.c 2005-08-13 23:59:17 UTC (rev 17374)
@@ -17,10 +17,8 @@
#include "trace.h"
+VOID WINAPI SnmpSvcInitUptime();
-VOID SNMP_FUNC_TYPE SnmpSvcInitUptime();
-DWORD SNMP_FUNC_TYPE SnmpSvcGetUptime();
-
////////////////////////////////////////////////////////////////////////////////
const char szUsage[] = { "\n" \
--- branches/cache_manager_rewrite/reactos/apps/utils/net/directory.xml 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/directory.xml 2005-08-13 23:59:17 UTC (rev 17374)
@@ -22,6 +22,9 @@
<directory name="telnet">
<xi:include href="telnet/telnet.xml" />
</directory>
+<directory name="tracert">
+ <xi:include href="tracert/tracert.xml" />
+</directory>
<directory name="whois">
<xi:include href="whois/whois.xml" />
</directory>
--- branches/cache_manager_rewrite/reactos/apps/utils/net/finger/finger.xml 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/finger/finger.xml 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,5 +1,6 @@
<module name="finger" type="win32cui" installbase="system32" installname="finger.exe">
<include base="finger">.</include>
+ <define name="__USE_W32API" />
<define name="__USE_W32_SOCKETS" />
<library>kernel32</library>
<library>ws2_32</library>
--- branches/cache_manager_rewrite/reactos/apps/utils/net/ftp/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/ftp/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,5 +0,0 @@
-# This file is automatically generated.
-
-TOP = ..\..\..\..
-DEFAULT = ftp
-include $(TOP)/proxy.mak
--- branches/cache_manager_rewrite/reactos/apps/utils/net/roshttpd/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/roshttpd/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,31 +0,0 @@
-# $Id$
-
-PATH_TO_TOP = ../../../..
-
-TARGET_PATH = common
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = console
-
-TARGET_NAME = roshttpd
-
-TARGET_CPPFLAGS = -I./include -DUNICODE -D_UNICODE -DDBG -D__USE_W32API -Wno-deprecated
-
-TARGET_GCCLIBS = stdc++
-
-TARGET_SDKLIBS = kernel32.a ws2_32.a user32.a
-
-MAIN_OBJECTS = roshttpd.o config.o error.o http.o httpd.o
-
-COMMON_OBJECTS = common/list.o common/socket.o common/thread.o
-
-TARGET_OBJECTS = $(MAIN_OBJECTS) $(COMMON_OBJECTS)
-
-TARGET_CLEAN = common/*.o
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
-
-# EOF
--- branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/ip.h 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/ip.h 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,195 +0,0 @@
-/*
- * Copyright (c) 1982, 1986, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)ip.h 8.2 (Berkeley) 6/1/94
- * $FreeBSD: src/sys/netinet/ip.h,v 1.16 1999/08/28 00:49:19 peter Exp $
- */
-
-#ifndef _NETINET_IP_H_
-#define _NETINET_IP_H_
-
-/*
- * Definitions for internet protocol version 4.
- * Per RFC 791, September 1981.
- */
-#define IPVERSION 4
-
-/* A little magic to make the Windows build happy. */
-#if defined(_MSC_VER) || defined(__MINGW32__)
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#include <time.h>
-
-typedef u_short n_short;
-typedef u_int n_long;
-typedef u_int n_time;
-
-#define EMSGSIZE WSAEMSGSIZE
-#define ENETUNREACH WSAENETUNREACH
-#define EHOSTUNREACH WSAEHOSTUNREACH
-#endif
-
-/*
- * Structure of an internet header, naked of options.
- */
-struct ip {
-#ifdef _IP_VHL
- u_char ip_vhl; /* version << 4 | header length >> 2 */
-#else
-#if BYTE_ORDER == LITTLE_ENDIAN
- u_int ip_hl:4, /* header length */
- ip_v:4; /* version */
-#endif
-#if BYTE_ORDER == BIG_ENDIAN
- u_int ip_v:4, /* version */
- ip_hl:4; /* header length */
-#endif
-#endif /* not _IP_VHL */
- u_char ip_tos; /* type of service */
- u_short ip_len; /* total length */
- u_short ip_id; /* identification */
- u_short ip_off; /* fragment offset field */
-#define IP_RF 0x8000 /* reserved fragment flag */
-#define IP_DF 0x4000 /* don't fragment flag */
-#define IP_MF 0x2000 /* more fragments flag */
-#define IP_OFFMASK 0x1fff /* mask for fragmenting bits */
- u_char ip_ttl; /* time to live */
- u_char ip_p; /* protocol */
- u_short ip_sum; /* checksum */
- struct in_addr ip_src,ip_dst; /* source and dest address */
-};
-
-#ifdef _IP_VHL
-#define IP_MAKE_VHL(v, hl) ((v) << 4 | (hl))
-#define IP_VHL_HL(vhl) ((vhl) & 0x0f)
-#define IP_VHL_V(vhl) ((vhl) >> 4)
-#define IP_VHL_BORING 0x45
-#endif
-
-#define IP_MAXPACKET 65535 /* maximum packet size */
-
-/*
- * Definitions for IP type of service (ip_tos)
- */
-#define IPTOS_LOWDELAY 0x10
-#define IPTOS_THROUGHPUT 0x08
-#define IPTOS_RELIABILITY 0x04
-#define IPTOS_MINCOST 0x02
-
-/*
- * Definitions for IP precedence (also in ip_tos) (hopefully unused)
- */
-#define IPTOS_PREC_NETCONTROL 0xe0
-#define IPTOS_PREC_INTERNETCONTROL 0xc0
-#define IPTOS_PREC_CRITIC_ECP 0xa0
-#define IPTOS_PREC_FLASHOVERRIDE 0x80
-#define IPTOS_PREC_FLASH 0x60
-#define IPTOS_PREC_IMMEDIATE 0x40
-#define IPTOS_PREC_PRIORITY 0x20
-#define IPTOS_PREC_ROUTINE 0x00
-
-/*
- * Definitions for options.
- */
-#define IPOPT_COPIED(o) ((o)&0x80)
-#define IPOPT_CLASS(o) ((o)&0x60)
-#define IPOPT_NUMBER(o) ((o)&0x1f)
-
-#define IPOPT_CONTROL 0x00
-#define IPOPT_RESERVED1 0x20
-#define IPOPT_DEBMEAS 0x40
-#define IPOPT_RESERVED2 0x60
-
-#define IPOPT_EOL 0 /* end of option list */
-#define IPOPT_NOP 1 /* no operation */
-
-#define IPOPT_RR 7 /* record packet route */
-#define IPOPT_TS 68 /* timestamp */
-#define IPOPT_SECURITY 130 /* provide s,c,h,tcc */
-#define IPOPT_LSRR 131 /* loose source route */
-#define IPOPT_SATID 136 /* satnet id */
-#define IPOPT_SSRR 137 /* strict source route */
-#define IPOPT_RA 148 /* router alert */
-
-/*
- * Offsets to fields in options other than EOL and NOP.
- */
-#define IPOPT_OPTVAL 0 /* option ID */
-#define IPOPT_OLEN 1 /* option length */
-#define IPOPT_OFFSET 2 /* offset within option */
-#define IPOPT_MINOFF 4 /* min value of above */
-
-/*
- * Time stamp option structure.
- */
-struct ip_timestamp {
- u_char ipt_code; /* IPOPT_TS */
- u_char ipt_len; /* size of structure (variable) */
- u_char ipt_ptr; /* index of current entry */
-#if BYTE_ORDER == LITTLE_ENDIAN
- u_int ipt_flg:4, /* flags, see below */
- ipt_oflw:4; /* overflow counter */
-#endif
-#if BYTE_ORDER == BIG_ENDIAN
- u_int ipt_oflw:4, /* overflow counter */
- ipt_flg:4; /* flags, see below */
-#endif
- union ipt_timestamp {
- n_long ipt_time[1];
- struct ipt_ta {
- struct in_addr ipt_addr;
- n_long ipt_time;
- } ipt_ta[1];
- } ipt_timestamp;
-};
-
-/* flag bits for ipt_flg */
-#define IPOPT_TS_TSONLY 0 /* timestamps only */
-#define IPOPT_TS_TSANDADDR 1 /* timestamps and addresses */
-#define IPOPT_TS_PRESPEC 3 /* specified modules only */
-
-/* bits for security (not byte swapped) */
-#define IPOPT_SECUR_UNCLASS 0x0000
-#define IPOPT_SECUR_CONFID 0xf135
-#define IPOPT_SECUR_EFTO 0x789a
-#define IPOPT_SECUR_MMMM 0xbc4d
-#define IPOPT_SECUR_RESTR 0xaf13
-#define IPOPT_SECUR_SECRET 0xd788
-#define IPOPT_SECUR_TOPSECRET 0x6bc5
-
-/*
- * Internet implementation parameters.
- */
-#define MAXTTL 255 /* maximum time to live (seconds) */
-#define IPDEFTTL 64 /* default ttl, from RFC 1340 */
-#define IPFRAGTTL 60 /* time to live for frags, slowhz */
-#define IPTTLDEC 1 /* subtracted when forwarding */
-
-#define IP_MSS 576 /* default maximum segment size */
-
-#endif
--- branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/ip_icmp.h 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/ip_icmp.h 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,186 +0,0 @@
-/*
- * Copyright (c) 1982, 1986, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)ip_icmp.h 8.1 (Berkeley) 6/10/93
- * $FreeBSD: src/sys/netinet/ip_icmp.h,v 1.13 1999/08/28 00:49:24 peter Exp $
- */
-
-#ifndef _NETINET_IP_ICMP_H_
-#define _NETINET_IP_ICMP_H_
-
-/*
- * Interface Control Message Protocol Definitions.
- * Per RFC 792, September 1981.
- */
-
-/*
- * Internal of an ICMP Router Advertisement
- */
-struct icmp_ra_addr {
- u_int32_t ira_addr;
- u_int32_t ira_preference;
-};
-
-/*
- * Structure of an icmp header.
- */
-struct icmp {
- u_char icmp_type; /* type of message, see below */
- u_char icmp_code; /* type sub code */
- u_short icmp_cksum; /* ones complement cksum of struct */
- union {
- u_char ih_pptr; /* ICMP_PARAMPROB */
- struct in_addr ih_gwaddr; /* ICMP_REDIRECT */
- struct ih_idseq {
- n_short icd_id;
- n_short icd_seq;
- } ih_idseq;
- int ih_void;
-
- /* ICMP_UNREACH_NEEDFRAG -- Path MTU Discovery (RFC1191) */
- struct ih_pmtu {
- n_short ipm_void;
- n_short ipm_nextmtu;
- } ih_pmtu;
-
- struct ih_rtradv {
- u_char irt_num_addrs;
- u_char irt_wpa;
- u_int16_t irt_lifetime;
- } ih_rtradv;
- } icmp_hun;
-#define icmp_pptr icmp_hun.ih_pptr
-#define icmp_gwaddr icmp_hun.ih_gwaddr
-#define icmp_id icmp_hun.ih_idseq.icd_id
-#define icmp_seq icmp_hun.ih_idseq.icd_seq
-#define icmp_void icmp_hun.ih_void
-#define icmp_pmvoid icmp_hun.ih_pmtu.ipm_void
-#define icmp_nextmtu icmp_hun.ih_pmtu.ipm_nextmtu
-#define icmp_num_addrs icmp_hun.ih_rtradv.irt_num_addrs
-#define icmp_wpa icmp_hun.ih_rtradv.irt_wpa
-#define icmp_lifetime icmp_hun.ih_rtradv.irt_lifetime
- union {
- struct id_ts {
- n_time its_otime;
- n_time its_rtime;
- n_time its_ttime;
- } id_ts;
- struct id_ip {
- struct ip idi_ip;
- /* options and then 64 bits of data */
- } id_ip;
- struct icmp_ra_addr id_radv;
- u_int32_t id_mask;
- char id_data[1];
- } icmp_dun;
-#define icmp_otime icmp_dun.id_ts.its_otime
-#define icmp_rtime icmp_dun.id_ts.its_rtime
-#define icmp_ttime icmp_dun.id_ts.its_ttime
-#define icmp_ip icmp_dun.id_ip.idi_ip
-#define icmp_radv icmp_dun.id_radv
-#define icmp_mask icmp_dun.id_mask
-#define icmp_data icmp_dun.id_data
-};
-
-/*
- * Lower bounds on packet lengths for various types.
- * For the error advice packets must first insure that the
- * packet is large enough to contain the returned ip header.
- * Only then can we do the check to see if 64 bits of packet
- * data have been returned, since we need to check the returned
- * ip header length.
- */
-#define ICMP_MINLEN 8 /* abs minimum */
-#define ICMP_TSLEN (8 + 3 * sizeof (n_time)) /* timestamp */
-#define ICMP_MASKLEN 12 /* address mask */
-#define ICMP_ADVLENMIN (8 + sizeof (struct ip) + 8) /* min */
-#ifndef _IP_VHL
-#define ICMP_ADVLEN(p) (8 + ((p)->icmp_ip.ip_hl << 2) + 8)
- /* N.B.: must separately check that ip_hl >= 5 */
-#else
-#define ICMP_ADVLEN(p) (8 + (IP_VHL_HL((p)->icmp_ip.ip_vhl) << 2) + 8)
- /* N.B.: must separately check that header length >= 5 */
-#endif
-
-/*
- * Definition of type and code field values.
- */
-#define ICMP_ECHOREPLY 0 /* echo reply */
-#define ICMP_UNREACH 3 /* dest unreachable, codes: */
-#define ICMP_UNREACH_NET 0 /* bad net */
-#define ICMP_UNREACH_HOST 1 /* bad host */
-#define ICMP_UNREACH_PROTOCOL 2 /* bad protocol */
-#define ICMP_UNREACH_PORT 3 /* bad port */
-#define ICMP_UNREACH_NEEDFRAG 4 /* IP_DF caused drop */
-#define ICMP_UNREACH_SRCFAIL 5 /* src route failed */
-#define ICMP_UNREACH_NET_UNKNOWN 6 /* unknown net */
-#define ICMP_UNREACH_HOST_UNKNOWN 7 /* unknown host */
-#define ICMP_UNREACH_ISOLATED 8 /* src host isolated */
-#define ICMP_UNREACH_NET_PROHIB 9 /* prohibited access */
-#define ICMP_UNREACH_HOST_PROHIB 10 /* ditto */
-#define ICMP_UNREACH_TOSNET 11 /* bad tos for net */
-#define ICMP_UNREACH_TOSHOST 12 /* bad tos for host */
-#define ICMP_UNREACH_FILTER_PROHIB 13 /* admin prohib */
-#define ICMP_UNREACH_HOST_PRECEDENCE 14 /* host prec vio. */
-#define ICMP_UNREACH_PRECEDENCE_CUTOFF 15 /* prec cutoff */
-#define ICMP_SOURCEQUENCH 4 /* packet lost, slow down */
-#define ICMP_REDIRECT 5 /* shorter route, codes: */
-#define ICMP_REDIRECT_NET 0 /* for network */
-#define ICMP_REDIRECT_HOST 1 /* for host */
-#define ICMP_REDIRECT_TOSNET 2 /* for tos and net */
-#define ICMP_REDIRECT_TOSHOST 3 /* for tos and host */
-#define ICMP_ECHO 8 /* echo service */
-#define ICMP_ROUTERADVERT 9 /* router advertisement */
-#define ICMP_ROUTERSOLICIT 10 /* router solicitation */
-#define ICMP_TIMXCEED 11 /* time exceeded, code: */
-#define ICMP_TIMXCEED_INTRANS 0 /* ttl==0 in transit */
-#define ICMP_TIMXCEED_REASS 1 /* ttl==0 in reass */
-#define ICMP_PARAMPROB 12 /* ip header bad */
-#define ICMP_PARAMPROB_OPTABSENT 1 /* req. opt. absent */
-#define ICMP_TSTAMP 13 /* timestamp request */
-#define ICMP_TSTAMPREPLY 14 /* timestamp reply */
-#define ICMP_IREQ 15 /* information request */
-#define ICMP_IREQREPLY 16 /* information reply */
-#define ICMP_MASKREQ 17 /* address mask request */
-#define ICMP_MASKREPLY 18 /* address mask reply */
-
-#define ICMP_MAXTYPE 18
-
-#define ICMP_INFOTYPE(type) \
- ((type) == ICMP_ECHOREPLY || (type) == ICMP_ECHO || \
- (type) == ICMP_ROUTERADVERT || (type) == ICMP_ROUTERSOLICIT || \
- (type) == ICMP_TSTAMP || (type) == ICMP_TSTAMPREPLY || \
- (type) == ICMP_IREQ || (type) == ICMP_IREQREPLY || \
- (type) == ICMP_MASKREQ || (type) == ICMP_MASKREPLY)
-
-#ifdef KERNEL
-void icmp_error __P((struct mbuf *, int, int, n_long, struct ifnet *));
-void icmp_input __P((struct mbuf *, int));
-#endif
-
-#endif
--- branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/makefile 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/makefile 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,20 +0,0 @@
-PATH_TO_TOP = ../../../..
-
-TARGET_TYPE = program
-
-TARGET_APPTYPE = console
-
-TARGET_NAME = tracert
-
-TARGET_INSTALLDIR = system32
-
-TARGET_SDKLIBS = ws2_32.a iphlpapi.a ntdll.a
-
-TARGET_OBJECTS = \
-$(TARGET_NAME).o
-
-TARGET_GCCLIBS =
-
-include $(PATH_TO_TOP)/rules.mak
-
-include $(TOOLS_PATH)/helper.mk
--- branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/tracert.c 2005-08-13 17:29:38 UTC (rev 17373)
+++ branches/cache_manager_rewrite/reactos/apps/utils/net/tracert/tracert.c 2005-08-13 23:59:17 UTC (rev 17374)
@@ -1,957 +1,656 @@
-/*-
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Van Jacobson.
- *
- * Redistribution and use in source and binary forms, with or without
[truncated at 1000 lines; 121029 more skipped]