[or-cvs] r18672: {torvm} Update openvpn, winpcap drivers. Build cleanup. (in torvm/trunk/build/win32: . files patches)

coderman at seul.org coderman at seul.org
Sun Feb 22 06:07:40 UTC 2009


Author: coderman
Date: 2009-02-22 01:07:40 -0500 (Sun, 22 Feb 2009)
New Revision: 18672

Modified:
   torvm/trunk/build/win32/Makefile
   torvm/trunk/build/win32/files/buildall.sh
   torvm/trunk/build/win32/files/install.bat
   torvm/trunk/build/win32/patches/openvpn-tor-tap-win32-driver.patch
   torvm/trunk/build/win32/patches/winpcap-tor-device-mods.patch
Log:
Update openvpn, winpcap drivers. Build cleanup.

Modified: torvm/trunk/build/win32/Makefile
===================================================================
--- torvm/trunk/build/win32/Makefile	2009-02-22 01:43:24 UTC (rev 18671)
+++ torvm/trunk/build/win32/Makefile	2009-02-22 06:07:40 UTC (rev 18672)
@@ -112,6 +112,10 @@
 PTHREADS_URL=ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-2-8-0-release.tar.gz
 PTHREADS_SUM=da8371cb20e8e238f96a1d0651212f154d84a9ac
 
+LIBEVENT_F=libevent-1.4.8-stable.tar.gz
+LIBEVENT_URL=http://www.monkey.org/~provos/libevent-1.4.8-stable.tar.gz
+LIBEVENT_SUM=82c05a893688810aafc2b372b567a837eb115732
+
 ACONF_F=autoconf2.5-2.61-1-bin.tar.bz2
 ACONF_URL=http://downloads.sourceforge.net/mingw/autoconf2.5-2.61-1-bin.tar.bz2?modtime=1190249465&big_mirror=1
 ACONF_SUM=7f05699dfeb0fea12b490da7204eeb89644a3bf7
@@ -168,20 +172,21 @@
 SDL_URL=http://www.libsdl.org/release/SDL-1.2.13.tar.gz
 SDL_SUM=51fcaa3e1d5c01fd813ea08688780f86b19cf539
 
-WPCAPSRC_F=WpcapSrc_4_1_beta4.zip
-WPCAPSRC_URL=http://www.winpcap.org/install/bin/WpcapSrc_4_1_beta4.zip
-WPCAPSRC_SUM=1450c4d293a38c25ec8cd8a9be30e04858df36d9
+WPCAPSRC_VER=4_1_beta5
+WPCAPSRC_F=WpcapSrc_$(WPCAPSRC_VER).zip
+WPCAPSRC_URL=http://www.winpcap.org/install/bin/$(WPCAPSRC_F)
+WPCAPSRC_SUM=bf2de680542626738765733f0c61f0c60c37de6c
 
 QEMU_F=qemu-0.9.1.tar.gz
-QEMU_URL=http://bellard.org/qemu/qemu-0.9.1.tar.gz
+QEMU_URL=http://bellard.org/qemu/$(QEMU_F)
 QEMU_SUM=630ea20b5989f0df00128de7f7be661c573ed041
 
-OVPN_F=openvpn-2.1_rc10.tar.gz
-OVPN_URL=http://openvpn.net/release/openvpn-2.1_rc10.tar.gz
-OVPN_SUM=b7f4af94704caa8aa3279ccbc391b98cf7ed953e
+OVPN_F=openvpn-2.1_rc15.tar.gz
+OVPN_URL=http://openvpn.net/release/$(OVPN_F)
+OVPN_SUM=a07f9b24947428e905d0c41339b9ed522358c672
 
 WINDDK_F=1830_usa_ddk.iso
-WINDDK_URL=http://download.microsoft.com/download/9/0/f/90f019ac-8243-48d3-91cf-81fc4093ecfd/1830_usa_ddk.iso
+WINDDK_URL=http://download.microsoft.com/download/9/0/f/90f019ac-8243-48d3-91cf-81fc4093ecfd/$(WINDDK_F)
 WINDDK_SUM=0d2154d88a5ee252cc908630c77863bb42777387
 
 QT_VER=4.4.3
@@ -191,7 +196,7 @@
 QT_SUM=669d494b9c37353f87c13765ed9f3ea97c0fa9e0
 
 POLIPO_F=polipo-20080907.tar.gz
-POLIPO_URL=http://www.pps.jussieu.fr/~jch/software/files/polipo/polipo-20080907.tar.gz
+POLIPO_URL=http://www.pps.jussieu.fr/~jch/software/files/polipo/$(POLIPO_F)
 POLIPO_SUM=dda211e3027310891fb555c1fe5fa2f5b274aa0f
 
 MARBLE_NAME=marble-latest
@@ -234,7 +239,7 @@
 # buildscripts need some dire clean up...
 OK:=echo -n
 
-ALLFILES=$(ZLIB_F) $(GZIP_F) $(BZIP2_F) $(LIBARCH_F) $(BINUTILS_F) $(GCCORE_F) $(GPP_F) $(MINGWRUN_F) $(MINGWUTIL_F) $(MAKE_F) $(W32API_F) $(MSYS_F) $(MSYSCORE_F) $(BASH_F) $(DIFFUTIL_F) $(LIBTOOL_F) $(MINIRES_F) $(MSYSZLIB_F) $(MSYSCRYPT_F) $(M4_F) $(SSL_F) $(SSH_F) $(ZLIBSRC_F) $(PTHREADS_F) $(AMAKE_F) $(ACONF_F) $(PERL_F) $(GROFF_F) $(CMAKE_F) $(QT_F) $(NSIS_F) $(SSLSRC_F) $(PY2EXE_F) $(WIX_F) $(GNURX_F) $(POLIPO_F) $(SDL_F) $(WPCAPSRC_F) $(QEMU_F) $(OVPN_F)
+ALLFILES=$(ZLIB_F) $(GZIP_F) $(BZIP2_F) $(LIBARCH_F) $(BINUTILS_F) $(GCCORE_F) $(GPP_F) $(MINGWRUN_F) $(MINGWUTIL_F) $(MAKE_F) $(W32API_F) $(MSYS_F) $(MSYSCORE_F) $(BASH_F) $(DIFFUTIL_F) $(LIBTOOL_F) $(MINIRES_F) $(MSYSZLIB_F) $(MSYSCRYPT_F) $(M4_F) $(SSL_F) $(SSH_F) $(ZLIBSRC_F) $(PTHREADS_F) $(LIBEVENT_F) $(AMAKE_F) $(ACONF_F) $(PERL_F) $(GROFF_F) $(CMAKE_F) $(QT_F) $(NSIS_F) $(SSLSRC_F) $(PY2EXE_F) $(WIX_F) $(GNURX_F) $(POLIPO_F) $(SDL_F) $(WPCAPSRC_F) $(QEMU_F) $(OVPN_F)
 
 # adjust if we're dealing with non source, zip or tar archives for a package
 SEVNZIP_OPT_DL=
@@ -275,6 +280,7 @@
 	@if [ ! -e $(WDLDIR)/$(SSH_F) ]; then $(DLCMD) "$(SSH_URL)" $(SSH_SUM) "$(WDLDIR)/$(SSH_F)"; fi
 	@if [ ! -e $(WDLDIR)/$(ZLIBSRC_F) ]; then $(DLCMD) "$(ZLIBSRC_URL)" $(ZLIBSRC_SUM) "$(WDLDIR)/$(ZLIBSRC_F)"; fi
 	@if [ ! -e $(WDLDIR)/$(PTHREADS_F) ]; then $(DLCMD) "$(PTHREADS_URL)" $(PTHREADS_SUM) "$(WDLDIR)/$(PTHREADS_F)"; fi
+	@if [ ! -e $(WDLDIR)/$(LIBEVENT_F) ]; then $(DLCMD) "$(LIBEVENT_URL)" $(LIBEVENT_SUM) "$(WDLDIR)/$(LIBEVENT_F)"; fi
 	@if [ ! -e $(WDLDIR)/$(ACONF_F) ]; then $(DLCMD) "$(ACONF_URL)" $(ACONF_SUM) "$(WDLDIR)/$(ACONF_F)"; fi
 	@if [ ! -e $(WDLDIR)/$(AMAKE_F) ]; then $(DLCMD) "$(AMAKE_URL)" $(AMAKE_SUM) "$(WDLDIR)/$(AMAKE_F)"; fi
 	@if [ ! -e $(WDLDIR)/$(PERL_F) ]; then $(DLCMD) "$(PERL_URL)" $(PERL_SUM) "$(WDLDIR)/$(PERL_F)"; fi
@@ -351,8 +357,9 @@
 	mv $(ISODIR)/dl/$(SDL_F) $(ISODIR)/dl/src/; \
 	mv $(ISODIR)/dl/$(OVPN_F) $(ISODIR)/dl/src/; \
 	mv $(ISODIR)/dl/$(ZLIBSRC_F) $(ISODIR)/dl/src/; \
+	mv $(ISODIR)/dl/$(LIBEVENT_F) $(ISODIR)/dl/src/; \
 	echo "--- Repacking WinPCAP archive ..."; \
-	$(UNZIP) $(WDLDIR)/$(WPCAPSRC_F); mv winpcap WpcapSrc_4_1_beta4; tar cf $(ISODIR)/dl/src/WpcapSrc_4_1_beta4.tar WpcapSrc_4_1_beta4; gzip -9 $(ISODIR)/dl/src/WpcapSrc_4_1_beta4.tar; rm -rf WpcapSrc_4_1_beta4 $(ISODIR)/dl/$(WPCAPSRC_F); \
+	$(UNZIP) $(WDLDIR)/$(WPCAPSRC_F); mv winpcap WpcapSrc_$(WPCAPSRC_VER); tar cf $(ISODIR)/dl/src/WpcapSrc_$(WPCAPSRC_VER).tar WpcapSrc_$(WPCAPSRC_VER); gzip -9 $(ISODIR)/dl/src/WpcapSrc_$(WPCAPSRC_VER).tar; rm -rf WpcapSrc_$(WPCAPSRC_VER) $(ISODIR)/dl/$(WPCAPSRC_F); \
 	echo "--- Repacking Py2Exe archive ..."; \
 	$(UNZIP) $(WDLDIR)/$(PY2EXE_F) -d tmp; mv tmp/py2exe* py2exe;rmdir tmp; tar zcf $(ISODIR)/dl/$(PY2EXE_TGZ) py2exe; rm -rf py2exe $(ISODIR)/dl/$(PY2EXE_F); \
 	echo "--- Repacking NSIS archive ..."; \

Modified: torvm/trunk/build/win32/files/buildall.sh
===================================================================
--- torvm/trunk/build/win32/files/buildall.sh	2009-02-22 01:43:24 UTC (rev 18671)
+++ torvm/trunk/build/win32/files/buildall.sh	2009-02-22 06:07:40 UTC (rev 18672)
@@ -1,168 +1,184 @@
 #!/bin/bash
-export PATH=.:/usr/local/bin:/usr/bin:/bin:/mingw/bin:/wix:/lib:/usr/local/lib:/usr/libexec
-export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/lib:/mingw/lib
+# wrap the actual build process so we capture stdout/stderr
+# and also transfer over the build log and shutdown, if needed.
+if [[ "$1" != "dobuild" ]]; then
+  # only set various environment settings on the first pass
+  export PATH=.:/usr/local/bin:/usr/bin:/bin:/mingw/bin:/wix:/lib:/usr/local/lib:/usr/libexec:$PATH
+  export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:/lib:/mingw/lib:$LD_LIBRARY_PATH
 
-export KERNEL_IMAGE=/src/add/vmlinuz
-export VMHDD_IMAGE=/src/add/hdd.img
-
-# set sysdrive, ddir, and brootdir in parent env if needed.
-if [[ "$sysdrive" == "" ]]; then
-  sysdrive=`echo $SYSTEMDRIVE | sed 's/:.*//'`
+  export KERNEL_IMAGE=/src/add/vmlinuz
+  export VMHDD_IMAGE=/src/add/hdd.img
+  
+  # set sysdrive, ddir, and brootdir in parent env if needed.
+  if [[ "$sysdrive" == "" ]]; then
+    sysdrive=`echo $SYSTEMDRIVE | sed 's/:.*//'`
+    if [ ! -d /$sysdrive ]; then
+      # msys not happy about whatever odd location windows installed into...
+      sysdrive=c
+    fi
+  fi
+  # make sure we express sys drive as lower case because of msys pedantic'ness
+  # or that of the sub scripts and whatever else get confused...
+  # boy, wouldn't tr be nice? tr -t '[:upper:]' '[:lower:]'
+  for DL in a b c d e f g h i j k l m n o p q r s t u v w x y z; do
+    echo $sysdrive | grep -i "^[${DL}]" >/dev/null
+    if (( $? == 0 )); then
+      sysdrive=$DL
+    fi
+  done
   if [ ! -d /$sysdrive ]; then
-    # msys not happy about whatever odd location windows installed into...
+    echo "Bogus sysdrive Windows root set: $sysdrive , using defaults..."
     sysdrive=c
   fi
-fi
-# make sure we express sys drive as lower case because of msys pedantic'ness
-# or that of the sub scripts and whatever else get confused...
-# boy, wouldn't tr be nice? tr -t '[:upper:]' '[:lower:]'
-for DL in a b c d e f g h i j k l m n o p q r s t u v w x y z; do
-  echo $sysdrive | grep -i "^[${DL}]" >/dev/null
-  if (( $? == 0 )); then
-    sysdrive=$DL
+  echo "Using Windows system drive root /$sysdrive , ${sysdrive}:\\"
+  export sysdrive
+  if [[ "$ddir" == "" ]]; then
+    ddir=/$sysdrive/Tor_VM
   fi
-done
-if [ ! -d /$sysdrive ]; then
-  echo "Bogus sysdrive Windows root set: $sysdrive , using defaults..."
-  sysdrive=c
-fi
-echo "Using Windows system drive root /$sysdrive , ${sysdrive}:\\"
-export sysdrive
-if [[ "$ddir" == "" ]]; then
-  ddir=/$sysdrive/Tor_VM
-fi
-if [[ "$brootdir" == "" ]]; then
-  brootdir=/$sysdrive/Tor_Win32
-fi
-echo "Using Tor VM destination folder: $ddir"
-echo "Using Bundle destination folder: $brootdir"
-export ddir
-export brootdir
+  if [[ "$brootdir" == "" ]]; then
+    brootdir=/$sysdrive/Tor_Win32
+  fi
+  echo "Using Tor VM destination folder: $ddir"
+  echo "Using Bundle destination folder: $brootdir"
+  export ddir
+  export brootdir
+  
+  # make sure some default windows paths are available too
+  export PATH=$PATH:/$sysdrive/WINDOWS/system32:/$sysdrive/WINDOWS:/$sysdrive/WINDOWS/System32/Wbem
+  
+  # the build state file is solely used to toggle targets on or off
+  # intended to be used when developing or automated via buildbot, etc.
+  if [[ "$bstatefile" == "" ]]; then
+    export bstatefile="/src/build.state"
+  fi
+  if [ -f $bstatefile ]; then
+    source $bstatefile
+  else
+    echo '#!/bin/bash' > $bstatefile
+    chmod +x $bstatefile
+  fi
+  
+  export libdir="${ddir}/lib"
+  export bindir="${ddir}/bin"
+  export statedir="${ddir}/state"
+  export instdir="${brootdir}/Installer"
+  export thandir="${brootdir}/Thandy"
+  export bundledir="${brootdir}/Bundle"
+  
+  if [[ "$SEVNZIP_INST" == "" ]]; then
+    export SEVNZIP_INST=true
+  fi
+  SEVNZIP_DEF_INSTPATH="/${sysdrive}/Program Files/7-Zip"
+  if [ -d "$SEVNZIP_DEF_INSTPATH" ]; then
+    export PATH="$PATH:${SEVNZIP_DEF_INSTPATH}"
+  fi
+  
+  export ZLIB_VER="1.2.3"
+  export ZLIB_DIR="zlib-${ZLIB_VER}"
+  export ZLIB_FILE="zlib-${ZLIB_VER}.tar.gz"
 
-# make sure some default windows paths are available too
-export PATH=$PATH:/$sysdrive/WINDOWS/system32:/$sysdrive/WINDOWS:/$sysdrive/WINDOWS/System32/Wbem
+  export LIBEVENT_VER=1.4.8-stable
+  export LIBEVENT_FILE="libevent-${LIBEVENT_VER}.tar.gz"
+  export LIBEVENT_DIR="libevent-${LIBEVENT_VER}"
+  
+  export TOR_DIR="tor-latest"
+  export TOR_FILE="tor-latest.tar.gz"
+  
+  export PTHREAD_VER=2-8-0
+  export PTHREAD_DIR="pthreads-w32-${PTHREAD_VER}-release"
+  export PTHREAD_FILE="${PTHREAD_DIR}.tar.gz"
+  
+  export OPENSSL_VER="0.9.8j"
+  export OPENSSL_DIR="openssl-${OPENSSL_VER}"
+  export OPENSSL_FILE="openssl-${OPENSSL_VER}.tar.gz"
+  
+  export GROFF_VER="1.19.2"
+  export GROFF_DIR="groff-${GROFF_VER}"
+  export GROFF_FILE="groff-${GROFF_VER}.tar.gz"
 
-# the build state file is solely used to toggle targets on or off
-# intended to be used when developing or automated via buildbot, etc.
-if [[ "$bstatefile" == "" ]]; then
-  export bstatefile="/src/build.state"
-fi
-if [ -f $bstatefile ]; then
-  source $bstatefile
-else
-  echo '#!/bin/bash' > $bstatefile
-  chmod +x $bstatefile
-fi
+  export SDL_VER=1.2.13
+  export SDL_DIR="SDL-${SDL_VER}"
+  export SDL_FILE="${SDL_DIR}.tar.gz"
 
-function pkgbuilt () {
-  echo "export $1=yes" >> $bstatefile
-}
+  export OPENVPN_VER=2.1_rc15
+  export OPENVPN_DIR="openvpn-${OPENVPN_VER}"
+  export OPENVPN_FILE="${OPENVPN_DIR}.tar.gz"
 
-export libdir="${ddir}/lib"
-export bindir="${ddir}/bin"
-export statedir="${ddir}/state"
-export instdir="${brootdir}/Installer"
-export thandir="${brootdir}/Thandy"
-export bundledir="${brootdir}/Bundle"
+  export WPCAP_VER=4_1_beta5
+  export WPCAP_DIR="WpcapSrc_${WPCAP_VER}"
+  export WPCAP_FILE="${WPCAP_DIR}.tar.gz"
+  export WPCAP_INCLUDE="-I/src/${WPCAP_DIR}/wpcap/libpcap -I/src/${WPCAP_DIR}/wpcap/libpcap/Win32/Include"
+  export WPCAP_LDFLAGS="-L/src/${WPCAP_DIR}/wpcap/PRJ -L/src/${WPCAP_DIR}/packetNtx/Dll/Project"
 
-if [[ "$SEVNZIP_INST" == "" ]]; then
-  export SEVNZIP_INST=true
-fi
-SEVNZIP_DEF_INSTPATH="/$sysdrive/Program Files/7-Zip"
-if [ -d "$SEVNZIP_DEF_INSTPATH" ]; then
-  export PATH="$PATH:${SEVNZIP_DEF_INSTPATH}"
-fi
+  export QEMU_VER=0.9.1
+  export QEMU_DIR="qemu-${QEMU_VER}"
+  export QEMU_FILE="${QEMU_DIR}.tar.gz"
 
-export ZLIB_VER="1.2.3"
-export ZLIB_DIR="zlib-${ZLIB_VER}"
-export ZLIB_FILE="zlib-${ZLIB_VER}.tar.gz"
+  export CMAKE_VER="2.6.2"
+  export CMAKE_DIR="cmake-${CMAKE_VER}"
+  export CMAKE_FILE="cmake-${CMAKE_VER}.tar.gz"
+  export CMAKEBIN="/$sysdrive/Program Files/CMake/bin"
+  export PATH="${PATH}:${CMAKEBIN}:/src/$CMAKE_DIR/bin"
+  
+  export QT_VER="4.4.3"
+  export QT_DIR="qt-${QT_VER}"
+  export QT_FILE="qt-${QT_VER}.tgz"
+  export QT_ROOT="/$sysdrive/Qt/${QT_VER}"
+  export QT_BIN="${QT_ROOT}/bin"
+  export QTDIR="${sysdrive}:\Qt\4.4.3"
+  export QMAKESPEC=win32-g++
+  export PATH="$PATH:$QT_BIN:$QTDIR\bin"
+  
+  export PYTHON_ROOT=/$sysdrive/Python26
+  export PATH=$PATH:$PYTHON_ROOT
+  
+  export MARBLE_DIR=marble-latest
+  export MARBLE_FILE="${MARBLE_DIR}.tar.gz"
+  export MARBLE_DEST=/marble
+  export MARBLE_OPTS="-DQTONLY=ON -DCMAKE_INSTALL_PREFIX=${MARBLE_DEST} -DPACKAGE_ROOT_PREFIX=${MARBLE_DEST} -DMARBLE_DATA_PATH=data"
+  
+  export VIDALIA_FILE=vidalia-latest.tar.gz
+  export VIDALIA_DIR=vidalia-latest
+  # XXX need to resolve why this wont build against the installed marble, only the build tree
+  export VIDALIA_OPTS="-DCMAKE_BUILD_TYPE=release"
+  export VIDALIA_MARBLE_OPTS="-DUSE_MARBLE=1 -DMARBLE_LIBRARY_DIR=/src/${MARBLE_DIR}/src/lib -DMARBLE_DATA_DIR=/src/${MARBLE_DIR}/data -DMARBLE_INCLUDE_DIR=${MARBLE_DEST}/include/marble -DMARBLE_PLUGIN_DIR=/src/${MARBLE_DIR}/src/plugins"
+  
+  export GNURX_FILE=mingw-libgnurx-2.5.1-src.tar.gz
+  export GNURX_DIR=mingw-libgnurx-2.5.1
+  
+  export POLIPO_FILE=polipo-20080907.tar.gz
+  export POLIPO_DIR=polipo-20080907
+  
+  export TORBUTTON_FILE=torbutton-1.2.0.xpi
+  
+  export NSIS_DIR=nsis-2.42
+  export PATH="${PATH}:/${NSIS_DIR}/Bin:/${NSIS_DIR}:/${NSIS_DIR}/bin"
+  
+  if [ -d "$VS80COMNTOOLS" ]; then
+    export VSTOOLSDIR="$VS80COMNTOOLS"
+    export VSTOOLSENV="$VS80COMNTOOLS\vsvars32.bat"
+  elif [ -d "$VS90COMNTOOLS" ]; then
+    export VSTOOLSDIR="$VS90COMNTOOLS"
+    export VSTOOLSENV="$VS90COMNTOOLS\vsvars32.bat"
+  else
+    unset VSTOOLSDIR
+    unset VSTOOLSENV
+  fi
+  if [ -f "$VSTOOLSENV" ]; then
+    echo "Using VisualStudio environment script at $VSTOOLSENV."
+    export PATH="$PATH:$VSTOOLSDIR:$VSTOOLSDIR\Bin:$VSTOOLSDIR\VC\bin:$VSTOOLSDIR\Common7\IDE:$VSTOOLSDIR\SDK\v2.0\bin"
+    echo "Using new PATH=$PATH"
+  fi
+  
+  # always set these since we may need to copy over failure logs
+  # and don't have a proper login shell env
+  if [ -f ~/.ssh/user ]; then
+    export BUILD_SCP_USER=`cat ~/.ssh/user`
+    export BUILD_SCP_HOST=`cat ~/.ssh/host`
+    export BUILD_SCP_DIR=`cat ~/.ssh/dest`
+  fi
 
-export WPCAP_DIR=/usr/src/WpcapSrc_4_1_beta4
-export WPCAP_INCLUDE="-I${WPCAP_DIR}/wpcap/libpcap -I${WPCAP_DIR}/wpcap/libpcap/Win32/Include"
-export WPCAP_LDFLAGS="-L${WPCAP_DIR}/wpcap/PRJ -L${WPCAP_DIR}/packetNtx/Dll/Project"
-
-export TORSVN_DIR="tor-latest"
-export TORSVN_FILE="tor-latest.tar.gz"
-
-export PTHREAD_VER=2-8-0
-export PTHREAD_DIR="pthreads-w32-${PTHREAD_VER}-release"
-export PTHREAD_FILE="${PTHREAD_DIR}.tar.gz"
-
-export OPENSSL_VER="0.9.8j"
-export OPENSSL_DIR="openssl-${OPENSSL_VER}"
-export OPENSSL_FILE="openssl-${OPENSSL_VER}.tar.gz"
-
-export GROFF_VER="1.19.2"
-export GROFF_DIR="groff-${GROFF_VER}"
-export GROFF_FILE="groff-${GROFF_VER}.tar.gz"
-
-export CMAKE_VER="2.6.2"
-export CMAKE_DIR="cmake-${CMAKE_VER}"
-export CMAKE_FILE="cmake-${CMAKE_VER}.tar.gz"
-export CMAKEBIN="/$sysdrive/Program\ Files/CMake/bin"
-export PATH="${PATH}:${CMAKEBIN}:/src/$CMAKE_DIR/bin"
-
-export QT_VER="4.4.3"
-export QT_DIR="qt-${QT_VER}"
-export QT_FILE="qt-${QT_VER}.tgz"
-export QT_ROOT="/$sysdrive/Qt/${QT_VER}"
-export QT_BIN="${QT_ROOT}/bin"
-export QTDIR="${sysdrive}:\Qt\4.4.3"
-export QMAKESPEC=win32-g++
-export PATH="$PATH:$QT_BIN:$QTDIR\bin"
-
-export PYTHON_ROOT=/$sysdrive/Python26
-export PATH=$PATH:$PYTHON_ROOT
-
-export MARBLE_DIR=marble-latest
-export MARBLE_FILE="${MARBLE_DIR}.tar.gz"
-export MARBLE_DEST=/marble
-export MARBLE_OPTS="-DQTONLY=ON -DCMAKE_INSTALL_PREFIX=${MARBLE_DEST} -DPACKAGE_ROOT_PREFIX=${MARBLE_DEST} -DMARBLE_DATA_PATH=marble"
-
-export VIDALIA_FILE=vidalia-latest.tar.gz
-export VIDALIA_DIR=vidalia-latest
-# XXX need to resolve why this wont build against the installed marble, only the build tree
-export VIDALIA_OPTS="-DCMAKE_BUILD_TYPE=release"
-export VIDALIA_MARBLE_OPTS="-DUSE_MARBLE=1 -DMARBLE_LIBRARY_DIR=/src/${MARBLE_DIR}/src/lib -DMARBLE_DATA_DIR=/src/${MARBLE_DIR}/data -DMARBLE_INCLUDE_DIR=${MARBLE_DEST}/include/marble -DMARBLE_PLUGIN_DIR=/src/${MARBLE_DIR}/src/plugins"
-
-export GNURX_FILE=mingw-libgnurx-2.5.1-src.tar.gz
-export GNURX_DIR=mingw-libgnurx-2.5.1
-
-export POLIPO_FILE=polipo-20080907.tar.gz
-export POLIPO_DIR=polipo-20080907
-
-export TORBUTTON_FILE=torbutton-1.2.0.xpi
-
-export NSIS_DIR=nsis-2.42
-export PATH="${PATH}:/${NSIS_DIR}/Bin:/${NSIS_DIR}:/${NSIS_DIR}/bin"
-
-if [ -d "$VS80COMNTOOLS" ]; then
-  export VSTOOLSDIR="$VS80COMNTOOLS"
-  export VSTOOLSENV="$VS80COMNTOOLS\vsvars32.bat"
-elif [ -d "$VS90COMNTOOLS" ]; then
-  export VSTOOLSDIR="$VS90COMNTOOLS"
-  export VSTOOLSENV="$VS90COMNTOOLS\vsvars32.bat"
-else
-  unset VSTOOLSDIR
-  unset VSTOOLSENV
-fi
-if [ -f "$VSTOOLSENV" ]; then
-  echo "Using VisualStudio environment script at $VSTOOLSENV."
-  export PATH="$PATH:$VSTOOLSDIR:$VSTOOLSDIR\Bin:$VSTOOLSDIR\VC\bin:$VSTOOLSDIR\Common7\IDE:$VSTOOLSDIR\SDK\v2.0\bin"
-  echo "Using new PATH=$PATH"
-fi
-
-# always set these since we may need to copy over failure logs
-# and don't have a proper login shell env
-if [ -f ~/.ssh/user ]; then
-  export BUILD_SCP_USER=`cat ~/.ssh/user`
-  export BUILD_SCP_HOST=`cat ~/.ssh/host`
-  export BUILD_SCP_DIR=`cat ~/.ssh/dest`
-fi
-
-# wrap the actual build process so we capture stdout/stderr
-# and also transfer over the build log and shutdown, if needed.
-if [[ "$1" != "dobuild" ]]; then
+  # the shell option gives a login shell with all of the env setup properly
   if [[ "$1" == "shell" ]]; then
     exec /bin/bash -l
   fi
@@ -192,6 +208,13 @@
   fi
 else
 
+
+# SECOND PASS - begin build process ...
+  
+function pkgbuilt () {
+  echo "export $1=yes" >> $bstatefile
+}
+
 if [[ "$MSYS_SETUP" != "yes" ]]; then
   echo "Setting up MSYS build environment..."
   if [ -f ~/.ssh/user ]; then
@@ -361,12 +384,32 @@
 fi
 
 
+if [[ "$LIBEVENT_BUILT" != "yes" ]]; then
+  echo "Building libevent ..."
+  cd /usr/src
+  tar zxf $LIBEVENT_FILE
+  cd $LIBEVENT_DIR
+  ./configure --prefix=/usr --enable-static --disable-shared
+  if (( $? != 0 )); then
+    echo "ERROR: libevent configure failed." >&2
+    exit 1
+  fi
+  make
+  if (( $? != 0 )); then
+    echo "ERROR: libevent build failed." >&2
+    exit 1
+  fi
+  make install
+
+  pkgbuilt LIBEVENT_BUILT
+fi
+
+
 if [[ "$SDL_BUILT" != "yes" ]]; then
   echo "Building SDL library ..."
   cd /usr/src
-  tar zxf SDL-1.2.13.tar.gz
-  mv SDL-1.2.13 SDL
-  cd SDL
+  tar zxf $SDL_FILE
+  cd $SDL_DIR
   ./configure --prefix=/usr
   if (( $? != 0 )); then
     echo "ERROR: SDL configure failed." >&2
@@ -387,9 +430,12 @@
 if [[ "$OPENVPN_BUILT" != "yes" ]]; then
   echo "Building openvpn tap-win32 driver ..."
   cd /usr/src
-  tar zxf openvpn-2.1_rc10.tar.gz
-  cd openvpn-2.1_rc10
-  patch -p1 < ../openvpn-tor-tap-win32-driver.patch 2>/dev/null
+  tar zxf $OPENVPN_FILE
+  cd $OPENVPN_DIR
+  if [ -f ../openvpn-tor-tap-win32-driver.patch ]; then
+    echo "Patching OpenVPN sources ..."
+    patch -p1 < ../openvpn-tor-tap-win32-driver.patch
+  fi
   aclocal -I . && autoheader && autoconf && automake --add-missing --copy
   if (( $? != 0 )); then
     echo "ERROR: openvpn autotools update failed." >&2
@@ -426,13 +472,16 @@
 fi
   
 
-if [[ "$WINPCAP_BUILT" != "yes" ]]; then
+if [[ "$WPCAP_BUILT" != "yes" ]]; then
   echo "Building WinPcap ..."
   cd /usr/src
-  tar zxf WpcapSrc_4_1_beta4.tar.gz
-  cd WpcapSrc_4_1_beta4
+  tar zxf $WPCAP_FILE
+  cd $WPCAP_DIR
   wpbase=`pwd`
-  patch -p1 < ../winpcap-tor-device-mods.patch 2>/dev/null
+  if [ -f ../winpcap-tor-device-mods.patch ]; then
+    echo "Patching WinPcap sources ..."
+    patch -p1 < ../winpcap-tor-device-mods.patch
+  fi
   cd packetNtx
   PCAPDIR=`pwd | sed 's/^.usr//' | sed 's/\//\\\/g'`
   BPATH="${MSYSROOT}${PCAPDIR}"
@@ -441,11 +490,12 @@
   echo "call CompileDriver" >> dobuild.bat
   echo "exit" >> dobuild.bat
   $COMSPEC /k dobuild.bat
-  if [ ! -f driver/bin/2k/i386/npf.sys ]; then
-    echo "ERROR: WinPcap NPF.sys driver build failed." >&2
+  NPFDRV_F=driver/bin/i386/npf.sys
+  if [ ! -f $NPFDRV_F ]; then
+    echo "ERROR: WinPcap npf.sys driver build failed." >&2
     exit 1
   fi
-  cp driver/bin/2k/i386/npf.sys $libdir/tornpf.sys
+  cp $NPFDRV_F $libdir/tornpf.sys
   cd Dll/Project
   make
   if (( $? != 0 )); then
@@ -462,16 +512,19 @@
   fi
   cp torpcap.dll $libdir/
 
-  pkgbuilt WINPCAP_BUILT
+  pkgbuilt WPCAP_BUILT
 fi
 
 
 if [[ "$QEMU_BUILT" != "yes" ]]; then
   echo "Building qemu ..."
   cd /usr/src
-  tar zxf qemu-0.9.1.tar.gz
-  cd qemu-0.9.1
-  patch -p1 < ../qemu-kernel-cmdline-from-stdin.patch 2> /dev/null
+  tar zxf $QEMU_FILE
+  cd $QEMU_DIR
+  if [ -f ../qemu-kernel-cmdline-from-stdin.patch ]; then
+    echo "Patching Qemu sources ..."
+    patch -p1 < ../qemu-kernel-cmdline-from-stdin.patch
+  fi
   if (( $? != 0 )); then
     echo "ERROR: Qemu cmdline via stdin patch failed." >&2
     exit 1
@@ -593,6 +646,63 @@
 fi
 
 
+if [[ "$TOR_BUILT" != "yes" ]]; then
+  echo "Building Tor stand alone ..."
+  cd /usr/src
+  tar zxf $TOR_FILE
+  cd $TOR_DIR
+  if [ ! -f configure ]; then
+    echo "Attempting autogen..."
+    aclocal
+    autoheader
+    autoconf
+    automake --add-missing --copy
+  fi
+  echo "Invoking configure"
+  (
+    export CFLAGS="-I /src/$ZLIB_DIR -I/src/$LIBEVENT_DIR -I/src/$OPENSSL_DIR"
+    ./configure --prefix=/src/$TOR_DIR \
+            --with-zlib-dir=/src/$ZLIB_DIR \
+            --with-libevent-dir=/src/$LIBEVENT_DIR \
+            --with-openssl-dir=/src/$OPENSSL_DIR \
+            --enable-shared \
+            --enable-threads \
+            --enable-local-appdata \
+            --disable-transparent
+    if (( $? != 0 )); then
+      echo "ERROR: torsvn autoconf configure failed." >&2
+      exit 1
+    fi
+    make
+    if (( $? != 0 )); then
+      echo "ERROR: make autoconf torsvn failed." >&2
+      exit 1
+    fi
+    make install
+  ) 
+  # prepare files needed for WiX MSI package build at expected locations
+  cp /src/$OPENSSL_DIR/cryptoeay32-0.9.8.dll bin/
+  cp /src/$OPENSSL_DIR/ssleay32-0.9.8.dll bin/
+  # line conversion prior to MSI packaging and other documentation prep
+  ( 
+    # this has to run detached or else troff tries to eat our controlling tty leading to badness...
+    # TODO : tech this thing how to wait properly ...
+    groff -m man -F /share -M /share/tmac -T html doc/tor.1 > Usage.html &
+  )
+  sleep 5
+  ls -lh Usage.html
+  for FILE in README ChangeLog LICENSE Authors src/config/torrc.sample; do
+    if [ -f $FILE ]; then
+      unix2dos $FILE
+    else
+      # must have the file present or the WiX MSI build fails
+      echo > $FILE
+    fi
+  done
+
+  pkgbuilt OPENSSL_BUILT
+fi
+
 if [[ "$PYCRYPTO_BUILT" != "yes" ]]; then
   echo "Building PyCrypto ..."
   cd /usr/src
@@ -841,12 +951,6 @@
 
 if [[ "$PACKAGES_BUILT" != "yes" ]]; then
   echo "Building bundle packages ..."
-  if [[ "$TORSVN_EXTR" != "yes" ]]; then
-    echo "Extracting sources for Tor from svn ..."
-    cd /usr/src
-    tar zxf $TORSVN_FILE
-    pkgbuilt TORSVN_EXTR
-  fi
   echo "Expanding package dir ..."
   cd /usr/src
   tar zxf pkg.tgz
@@ -896,7 +1000,15 @@
   cp ../torvm-w32/tor-icon-32.ico ./torvm.ico
   # DONT STRIP PY2EXEs!
   cp $thandir/Thandy.exe bin/
-  cp /src/$TORSVN_DIR/contrib/*.wxs ./
+  cp /src/$TOR_DIR/contrib/*.wxs ./
+  cp /src/$TOR_DIR/bin/*.exe bin/
+  mkdir -p src/config
+  mkdir -p share/tor
+  cp /src/$TOR_DIR/share/tor/geoip share/tor/
+  cp /src/$TOR_DIR/src/config/torrc.sample src/config/
+  for FNAME in README Usage.html Authors ChangeLog LICENSE; do
+    cp /src/$TOR_DIR/$FNAME ./
+  done
   cp -a $ddir ./
   # XXX replace this with Matt's torbutton NSIS magic
   candle.exe *.wxs
@@ -910,6 +1022,15 @@
     echo "ERROR: unable to build Tor VM MSI installer."
   fi
 
+  echo "Linking tor MSI installer package ..."
+  light.exe -out tor.msi WixUI_Tor.wixobj tor.wixobj -ext $WIX_UI
+  if [ -f tor.msi ]; then
+    cp tor.msi $bundledir
+    ls -l tor.msi
+  else
+    echo "ERROR: unable to build Tor MSI installer."
+  fi
+
   echo "Linking polipo MSI installer package ..."
   light.exe -out polipo.msi WixUI_Tor.wixobj polipo.wixobj -ext $WIX_UI
   if [ -f polipo.msi ]; then

Modified: torvm/trunk/build/win32/files/install.bat
===================================================================
--- torvm/trunk/build/win32/files/install.bat	2009-02-22 01:43:24 UTC (rev 18671)
+++ torvm/trunk/build/win32/files/install.bat	2009-02-22 06:07:40 UTC (rev 18672)
@@ -34,11 +34,6 @@
 cd %MDIR%\%MVER%\dl\
 bzip2 -d *.bz2
 gzip -d *.gz
-IF NOT EXIST "%DDRV%%MDIR%\%MVER%\7-Zip" (
-IF EXIST 7zip.msi (
-  msiexec /i 7zip.msi INSTALLDIR="%DDRV%%MDIR%\%MVER%\7-Zip" /QN
-)
-)
 cd /d %DDRV%
 cd %MDIR%\%MVER%
 for %%f in (dl\*.tar) do bsdtar xvf %%f
@@ -80,7 +75,7 @@
 
 %WD%bash --login %BUILDER%
 ECHO "Build completed."
-GOTO CLEANUP
+GOTO DONE
 
 :NOINSTALL
 ECHO "Found existing install directories.  Delete any previous install targets and try again."
@@ -90,13 +85,4 @@
 ECHO "Unable to locate a functional installer CDROM with win32 build image."
 GOTO CLEANUP
 
-:CLEANUP
-ECHO "Cleaning up after build..."
-cd %MDIR%\%MVER%\dl\
-IF EXIST "%DDRV%%MDIR%\%MVER%\7-Zip" (
-IF EXIST 7zip.msi (
-  msiexec /x 7zip.msi /QN
-)
-)
-
 :DONE

Modified: torvm/trunk/build/win32/patches/openvpn-tor-tap-win32-driver.patch
===================================================================
--- torvm/trunk/build/win32/patches/openvpn-tor-tap-win32-driver.patch	2009-02-22 01:43:24 UTC (rev 18671)
+++ torvm/trunk/build/win32/patches/openvpn-tor-tap-win32-driver.patch	2009-02-22 06:07:40 UTC (rev 18672)
@@ -1,6 +1,6 @@
-diff -Naur orig-openvpn-2.1_rc10/config-win32.h.in mod-openvpn-2.1_rc10/config-win32.h.in
---- orig-openvpn-2.1_rc10/config-win32.h.in	2008-08-10 18:35:25.000000000 +0000
-+++ mod-openvpn-2.1_rc10/config-win32.h.in	2008-09-26 09:09:34.498113800 +0000
+diff -Naur a/config-win32.h.in b/config-win32.h.in
+--- a/config-win32.h.in	2008-10-06 07:22:21.000000000 +0000
++++ b/config-win32.h.in	2009-02-22 04:17:44.807557536 +0000
 @@ -35,7 +35,6 @@
  
  #include <windows.h>
@@ -18,10 +18,10 @@
  
  /* Define to the full name of this package. */
  #define PACKAGE_NAME @PACKAGE_NAME@
-diff -Naur orig-openvpn-2.1_rc10/configure.ac mod-openvpn-2.1_rc10/configure.ac
---- orig-openvpn-2.1_rc10/configure.ac	2008-08-10 18:35:25.000000000 +0000
-+++ mod-openvpn-2.1_rc10/configure.ac	2008-09-26 08:44:00.800271312 +0000
-@@ -865,6 +865,8 @@
+diff -Naur a/configure.ac b/configure.ac
+--- a/configure.ac	2008-10-14 04:14:36.000000000 +0000
++++ b/configure.ac	2009-02-22 04:17:44.809557232 +0000
+@@ -866,6 +866,8 @@
  	openvpn.spec
  	config-win32.h
  	images/Makefile
@@ -30,18 +30,18 @@
  	service-win32/Makefile
  	install-win32/Makefile
  	install-win32/settings
-diff -Naur orig-openvpn-2.1_rc10/install-win32/maketap mod-openvpn-2.1_rc10/install-win32/maketap
---- orig-openvpn-2.1_rc10/install-win32/maketap	2008-08-10 18:35:23.000000000 +0000
-+++ mod-openvpn-2.1_rc10/install-win32/maketap	2008-09-26 08:53:30.634643320 +0000
-@@ -4,22 +4,27 @@
+diff -Naur a/install-win32/maketap b/install-win32/maketap
+--- a/install-win32/maketap	2008-10-07 21:10:10.000000000 +0000
++++ b/install-win32/maketap	2009-02-22 04:20:37.273338752 +0000
+@@ -4,15 +4,15 @@
  # Requires the Windows DDK
  
  # get version.nsi definitions
 -. autodefs/defs.sh
 +#. autodefs/defs.sh
  
--if [ -d "/c/WINDDK/$DDKVER" ] ; then
-+if [ -d $DDKDIR ] ; then
+-if [ -n "$DDKVER" ] && [ -d "/c/WINDDK/$DDKVER" ] ; then
++if [ -d "$DDKDIR" ] ; then
  
  # common declarations for all DDK build targets
  . install-win32/ddk-common
@@ -50,12 +50,9 @@
 -MACRO="perl install-win32/macro.pl autodefs/defs.in"
 +MACRO="perl install-win32/macro.pl install-win32/settings"
  IFDEF="perl install-win32/ifdef.pl"
--rm -rf tap-win32/amd64
-+if [ -d tap-win32/amd64 ]; then
-+  rm -rf tap-win32/amd64
-+fi
+ rm -rf tap-win32/amd64
  mkdir tap-win32/amd64
- $MACRO <tap-win32/SOURCES.in >tap-win32/SOURCES
+@@ -20,6 +20,9 @@
  $MACRO <tap-win32/i386/OemWin2k.inf.in | $IFDEF >tap-win32/i386/OemWin2k.inf
  $MACRO <tap-win32/i386/OemWin2k.inf.in | $IFDEF -DAMD64 >tap-win32/amd64/OemWin2k.inf
  
@@ -65,16 +62,16 @@
  if [ -n "$PRODUCT_TAP_DEBUG" ] ; then
      w2ktarget="w2k c"
      amdtarget="chk $x64_tag WNET"
-@@ -96,5 +101,5 @@
+@@ -96,5 +99,5 @@
  fi
  
  else
 -    echo Not building TAP driver -- DDK version $DDKVER NOT FOUND
 +    echo Not building TAP driver -- DDK installation at \"$DDKDIR\" NOT FOUND
  fi
-diff -Naur orig-openvpn-2.1_rc10/tap-win32/SOURCES.in mod-openvpn-2.1_rc10/tap-win32/SOURCES.in
---- orig-openvpn-2.1_rc10/tap-win32/SOURCES.in	2008-08-10 18:35:25.000000000 +0000
-+++ mod-openvpn-2.1_rc10/tap-win32/SOURCES.in	2008-09-26 08:57:16.360327800 +0000
+diff -Naur a/tap-win32/SOURCES.in b/tap-win32/SOURCES.in
+--- a/tap-win32/SOURCES.in	2008-09-30 02:34:09.000000000 +0000
++++ b/tap-win32/SOURCES.in	2009-02-22 04:17:44.810557080 +0000
 @@ -4,7 +4,7 @@
  MAJORCOMP=ntos
  MINORCOMP=ndis
@@ -96,9 +93,9 @@
  
  # Produce the same symbolic information for both free & checked builds.
  # This will allow us to perform full source-level debugging on both
-diff -Naur orig-openvpn-2.1_rc10/tap-win32/i386/OemWin2k.inf.in mod-openvpn-2.1_rc10/tap-win32/i386/OemWin2k.inf.in
---- orig-openvpn-2.1_rc10/tap-win32/i386/OemWin2k.inf.in	2008-08-10 18:35:25.000000000 +0000
-+++ mod-openvpn-2.1_rc10/tap-win32/i386/OemWin2k.inf.in	2008-09-26 08:05:21.851805064 +0000
+diff -Naur a/tap-win32/i386/OemWin2k.inf.in b/tap-win32/i386/OemWin2k.inf.in
+--- a/tap-win32/i386/OemWin2k.inf.in	2008-10-06 07:22:21.000000000 +0000
++++ b/tap-win32/i386/OemWin2k.inf.in	2009-02-22 04:17:44.811556928 +0000
 @@ -6,9 +6,9 @@
  ; ****************************************************************************
  
@@ -241,27 +238,23 @@
  
  ;---------------------------------------------------------------
  ;                                      End
-diff -Naur orig-openvpn-2.1_rc10/tap-win32/resource.rc mod-openvpn-2.1_rc10/tap-win32/resource.rc
---- orig-openvpn-2.1_rc10/tap-win32/resource.rc	2008-08-10 18:35:25.000000000 +0000
-+++ mod-openvpn-2.1_rc10/tap-win32/resource.rc	2008-09-26 08:53:59.067320896 +0000
-@@ -33,11 +33,11 @@
+diff -Naur a/tap-win32/resource.rc b/tap-win32/resource.rc
+--- a/tap-win32/resource.rc	2008-10-06 07:28:13.000000000 +0000
++++ b/tap-win32/resource.rc	2009-02-22 04:22:10.483168704 +0000
+@@ -33,8 +33,8 @@
  				VFT2_DRV_COMM
  */
  
 -#define VER_COMPANYNAME_STR         "The OpenVPN Project"
+-#define VER_FILEDESCRIPTION_STR     "TAP-Win32 Virtual Network Driver"
 +#define VER_COMPANYNAME_STR         "The Tor Project, Inc."
- #define VER_FILEDESCRIPTION_STR     "TAP-Win32 Virtual Network Driver"
++#define VER_FILEDESCRIPTION_STR     "Tor VM TAP-Win32 Virtual Network Driver"
  #define VER_ORIGINALFILENAME_STR    TAP_COMPONENT_ID ".sys"
--#define VER_LEGALCOPYRIGHT_YEARS    "2003-2006"
--#define VER_LEGALCOPYRIGHT_STR      "Telethra, Inc."
-+#define VER_LEGALCOPYRIGHT_YEARS    "2003-2008"
-+#define VER_LEGALCOPYRIGHT_STR      "Telethra, Inc. & TPI"
- 
- 
- #define VER_PRODUCTNAME_STR         VER_FILEDESCRIPTION_STR
-diff -Naur orig-openvpn-2.1_rc10/tap-win32/tapdrvr.c mod-openvpn-2.1_rc10/tap-win32/tapdrvr.c
---- orig-openvpn-2.1_rc10/tap-win32/tapdrvr.c	2008-08-10 18:35:25.000000000 +0000
-+++ mod-openvpn-2.1_rc10/tap-win32/tapdrvr.c	2008-09-26 09:12:24.573258448 +0000
+ #define VER_LEGALCOPYRIGHT_YEARS    "2003-2008"
+ #define VER_LEGALCOPYRIGHT_STR      "OpenVPN Technologies, Inc."
+diff -Naur a/tap-win32/tapdrvr.c b/tap-win32/tapdrvr.c
+--- a/tap-win32/tapdrvr.c	2008-10-06 07:22:21.000000000 +0000
++++ b/tap-win32/tapdrvr.c	2009-02-22 04:17:44.919540512 +0000
 @@ -39,10 +39,10 @@
  // TAP_IOCTL_CONFIG_TUN ioctl.
  //======================================================
@@ -274,23 +267,21 @@
  
  #define NDIS_MINIPORT_DRIVER
  #define BINARY_COMPATIBLE 0
-diff -Naur orig-openvpn-2.1_rc10/version.m4 mod-openvpn-2.1_rc10/version.m4
---- orig-openvpn-2.1_rc10/version.m4	2008-09-10 06:55:52.000000000 +0000
-+++ mod-openvpn-2.1_rc10/version.m4	2008-09-23 10:11:57.426120280 +0000
-@@ -1,6 +1,12 @@
+diff -Naur a/version.m4 b/version.m4
+--- a/version.m4	2008-11-19 18:08:50.000000000 +0000
++++ b/version.m4	2009-02-22 04:24:31.835679856 +0000
+@@ -1,6 +1,11 @@
 -dnl define the OpenVPN version
 +define(PRODUCT_NAME,[TorTap32])
- define(PRODUCT_VERSION,[2.1_rc10])
+ define(PRODUCT_VERSION,[2.1_rc15])
 -dnl define the TAP version
 -define(PRODUCT_TAP_ID,[tap0901])
 +define(PRODUCT_TAP_ID,[tortap91])
  define(PRODUCT_TAP_WIN32_MIN_MAJOR,[9])
--define(PRODUCT_TAP_WIN32_MIN_MINOR,[1])
-+define(PRODUCT_TAP_WIN32_MIN_MINOR,[4])
+ define(PRODUCT_TAP_WIN32_MIN_MINOR,[1])
 +define(PRODUCT_TAP_MAJOR_VER,[9])
 +define(PRODUCT_TAP_MINOR_VER,[4])
-+define(PRODUCT_TAP_RELDATE,[09/22/2008])
-+define(PRODUCT_TAP_DEVICE_DESCRIPTION,[Tor TAP-Win32 Adapter V9 for Qemu])
-+define(PRODUCT_TAP_PROVIDER,[Tor TAP-Win32 Provider V9])
++define(PRODUCT_TAP_RELDATE,[02/22/2009])
++define(PRODUCT_TAP_DEVICE_DESCRIPTION,[Tor VM TAP-Win32 Adapter V9])
++define(PRODUCT_TAP_PROVIDER,[Tor VM TAP-Win32 Provider V9])
 +define(PRODUCT_TAP_CHARACTERISTICS,[0x81])
-+

Modified: torvm/trunk/build/win32/patches/winpcap-tor-device-mods.patch
===================================================================
--- torvm/trunk/build/win32/patches/winpcap-tor-device-mods.patch	2009-02-22 01:43:24 UTC (rev 18671)
+++ torvm/trunk/build/win32/patches/winpcap-tor-device-mods.patch	2009-02-22 06:07:40 UTC (rev 18672)
@@ -1,6 +1,6 @@
-diff -Naur orig-winpcap/Common/WpcapNames.h mod-winpcap/Common/WpcapNames.h
---- orig-winpcap/Common/WpcapNames.h	2007-11-14 20:22:04.000000000 +0000
-+++ mod-winpcap/Common/WpcapNames.h	2008-09-27 09:13:29.564581776 +0000
+diff -Naur a/Common/WpcapNames.h b/Common/WpcapNames.h
+--- a/Common/WpcapNames.h	2007-11-14 19:22:04.000000000 +0000
++++ b/Common/WpcapNames.h	2009-02-22 04:07:19.666593408 +0000
 @@ -39,45 +39,45 @@
  //  - please do not use prefix names longer than 70 chars. 
  //  - the following characters are surely accepted in the prefixes:  "[A-Z][a-z][0-9]_-',"   
@@ -72,10 +72,10 @@
  
  #endif //__WPCAPNAMES_H_EED6D131C6DB4dd696757D219977A7E5
  
-diff -Naur orig-winpcap/packetNtx/Dll/AdInfo.c mod-winpcap/packetNtx/Dll/AdInfo.c
---- orig-winpcap/packetNtx/Dll/AdInfo.c	2007-11-13 22:59:14.000000000 +0000
-+++ mod-winpcap/packetNtx/Dll/AdInfo.c	2008-10-05 03:35:04.323075776 +0000
-@@ -96,7 +96,7 @@
+diff -Naur a/packetNtx/Dll/AdInfo.c b/packetNtx/Dll/AdInfo.c
+--- a/packetNtx/Dll/AdInfo.c	2008-11-19 06:16:24.000000000 +0000
++++ b/packetNtx/Dll/AdInfo.c	2009-02-22 04:07:19.667593256 +0000
+@@ -105,7 +105,7 @@
  #endif /* HAVE_DAG_API */
  
  /// Title of error windows
@@ -84,9 +84,9 @@
  
  ULONG inet_addrU(const WCHAR *cp);
  
-diff -Naur orig-winpcap/packetNtx/Dll/Packet.def mod-winpcap/packetNtx/Dll/Packet.def
---- orig-winpcap/packetNtx/Dll/Packet.def	2006-08-09 00:11:04.000000000 +0000
-+++ mod-winpcap/packetNtx/Dll/Packet.def	1970-01-01 00:00:00.000000000 +0000
+diff -Naur a/packetNtx/Dll/Packet.def b/packetNtx/Dll/Packet.def
+--- a/packetNtx/Dll/Packet.def	2006-08-08 23:11:04.000000000 +0000
++++ b/packetNtx/Dll/Packet.def	1970-01-01 00:00:00.000000000 +0000
 @@ -1,35 +0,0 @@
 -LIBRARY packet
 -
@@ -123,10 +123,10 @@
 -		PacketIsDumpEnded
 -		PacketSetLoopbackBehavior
 -		PacketGetAirPcapHandle
-diff -Naur orig-winpcap/packetNtx/Dll/Packet32.c mod-winpcap/packetNtx/Dll/Packet32.c
---- orig-winpcap/packetNtx/Dll/Packet32.c	2007-11-13 22:59:30.000000000 +0000
-+++ mod-winpcap/packetNtx/Dll/Packet32.c	2008-09-27 09:17:40.512431904 +0000
-@@ -849,16 +849,14 @@
+diff -Naur a/packetNtx/Dll/Packet32.c b/packetNtx/Dll/Packet32.c
+--- a/packetNtx/Dll/Packet32.c	2008-11-18 19:17:42.000000000 +0000
++++ b/packetNtx/Dll/Packet32.c	2009-02-22 04:07:19.670592800 +0000
+@@ -862,16 +862,14 @@
  		err = GetLastError();
  		if (err == ERROR_SERVICE_EXISTS) 
  		{
@@ -145,9 +145,9 @@
  		result = TRUE;
  	}
  
-diff -Naur orig-winpcap/packetNtx/Dll/Project/GNUmakefile mod-winpcap/packetNtx/Dll/Project/GNUmakefile
---- orig-winpcap/packetNtx/Dll/Project/GNUmakefile	2006-11-17 02:29:18.000000000 +0000
-+++ mod-winpcap/packetNtx/Dll/Project/GNUmakefile	2008-10-05 03:29:27.294311936 +0000
+diff -Naur a/packetNtx/Dll/Project/GNUmakefile b/packetNtx/Dll/Project/GNUmakefile
+--- a/packetNtx/Dll/Project/GNUmakefile	2006-11-17 01:29:18.000000000 +0000
++++ b/packetNtx/Dll/Project/GNUmakefile	2009-02-22 04:07:19.671592648 +0000
 @@ -1,23 +1,22 @@
  # Makefile for cygwin gcc
  # Nate Lawson <nate at rootlabs.com>
@@ -177,9 +177,9 @@
  
 -install: Packet.dll
 -	cp Packet.dll c:/winnt/system32
-diff -Naur orig-winpcap/packetNtx/Dll/torpkt.def mod-winpcap/packetNtx/Dll/torpkt.def
---- orig-winpcap/packetNtx/Dll/torpkt.def	1970-01-01 00:00:00.000000000 +0000
-+++ mod-winpcap/packetNtx/Dll/torpkt.def	2008-10-05 03:30:05.596489120 +0000
+diff -Naur a/packetNtx/Dll/torpkt.def b/packetNtx/Dll/torpkt.def
+--- a/packetNtx/Dll/torpkt.def	1970-01-01 00:00:00.000000000 +0000
++++ b/packetNtx/Dll/torpkt.def	2009-02-22 04:07:19.671592648 +0000
 @@ -0,0 +1,34 @@
 +LIBRARY torpkt
 +
@@ -215,9 +215,9 @@
 +		PacketSetDumpLimits
 +		PacketIsDumpEnded
 +		PacketSetLoopbackBehavior
-diff -Naur orig-winpcap/packetNtx/Dll/version.rc2 mod-winpcap/packetNtx/Dll/version.rc2
---- orig-winpcap/packetNtx/Dll/version.rc2	2006-07-25 00:46:54.000000000 +0000
-+++ mod-winpcap/packetNtx/Dll/version.rc2	2008-10-05 03:33:27.420807160 +0000
+diff -Naur a/packetNtx/Dll/version.rc2 b/packetNtx/Dll/version.rc2
+--- a/packetNtx/Dll/version.rc2	2006-07-24 23:46:54.000000000 +0000
++++ b/packetNtx/Dll/version.rc2	2009-02-22 04:07:19.671592648 +0000
 @@ -26,20 +26,20 @@
      BEGIN
          BLOCK "000004b0"
@@ -246,9 +246,9 @@
  			VALUE "ProductVersion",    WINPCAP_VER_STRING
              VALUE "Build Description", WINPCAP_BUILD_DESCRIPTION
          END
-diff -Naur orig-winpcap/packetNtx/driver/NPF.RC mod-winpcap/packetNtx/driver/NPF.RC
---- orig-winpcap/packetNtx/driver/NPF.RC	2007-11-01 21:34:16.000000000 +0000
-+++ mod-winpcap/packetNtx/driver/NPF.RC	2008-09-26 07:18:26.893743736 +0000
+diff -Naur a/packetNtx/driver/NPF.RC b/packetNtx/driver/NPF.RC
+--- a/packetNtx/driver/NPF.RC	2007-11-01 20:34:16.000000000 +0000
++++ b/packetNtx/driver/NPF.RC	2009-02-22 04:07:19.672592496 +0000
 @@ -22,22 +22,22 @@
      BEGIN
          BLOCK "000004b0"
@@ -279,9 +279,9 @@
          END
      END
      BLOCK "VarFileInfo"
-diff -Naur orig-winpcap/packetNtx/driver/dump.c mod-winpcap/packetNtx/driver/dump.c
---- orig-winpcap/packetNtx/driver/dump.c	2008-05-09 17:37:06.000000000 +0000
-+++ mod-winpcap/packetNtx/driver/dump.c	2008-09-26 07:13:21.962100392 +0000
+diff -Naur a/packetNtx/driver/dump.c b/packetNtx/driver/dump.c
+--- a/packetNtx/driver/dump.c	2008-05-09 16:37:06.000000000 +0000
++++ b/packetNtx/driver/dump.c	2009-02-22 04:07:19.673592344 +0000
 @@ -247,6 +247,7 @@
          return ntStatus;
      }  
@@ -299,23 +299,13 @@
     
     return ntStatus;
     
-diff -Naur orig-winpcap/version.h mod-winpcap/version.h
---- orig-winpcap/version.h	2008-05-21 22:35:42.000000000 +0000
-+++ mod-winpcap/version.h	2008-09-27 09:19:29.530858584 +0000
-@@ -15,23 +15,23 @@
- // 4.1.0.1124 -->  WinPcap  4.1 beta3
- // 4.1.0.1237 -->  WinPcap  4.1 beta4
+diff -Naur a/version.h b/version.h
+--- a/version.h	2008-12-23 14:51:46.000000000 +0000
++++ b/version.h	2009-02-22 04:15:03.551072248 +0000
+@@ -24,9 +24,9 @@
+ #define WINPCAP_PACKET9x_STRING_VERSION	"4.1 BUILD 1452"
+ #define WINPCAP_WPCAP_STRING_VERSION "4.1 beta5"
  
--#define WINPCAP_MAJOR	4
-+#define WINPCAP_MAJOR	9
- #define WINPCAP_MINOR	1
--#define WINPCAP_REV		0
-+#define WINPCAP_REV	0
- #define WINPCAP_BUILD	1237
- #define WINPCAP_VER_STRING	"4.1.0.1237"
- #define WINPCAP_PACKET9x_STRING_VERSION	"4.1 beta4"
- #define WINPCAP_WPCAP_STRING_VERSION "4.1 beta4"
- 
 -#define WINPCAP_COMPANY_NAME 			"CACE Technologies, Inc."
 +#define WINPCAP_COMPANY_NAME 			"The Tor Project, Inc."
  
@@ -324,16 +314,9 @@
  
  #define WINPCAP_COPYRIGHT_STRING 		"Copyright © 2005-2008 CACE Technologies. Copyright © 1999-2005 NetGroup, Politecnico di Torino."
  #define WINPCAP_WANPACKET_COPYRIGHT_STRING "Copyright © 2005-2008 CACE Technologies. Copyright © 2003-2005 NetGroup, Politecnico di Torino."
- #define WINPCAP_INSTALLERHELPER_COPYRIGHT_STRING "Copyright © 2007-2008 CACE Technologies."
- #define WINPCAP_RPCAPD_COPYRIGHT_STRING "Copyright © 2005-2008 CACE Technologies. Copyright © 2003-2005 NetGroup, Politecnico di Torino."
- 
--#define WINPCAP_BUILD_DESCRIPTION 		""
-+#define WINPCAP_BUILD_DESCRIPTION 		"Modified WinPcap Driver for Tor Qemu VM"
- #define WINPCAP_PRIVATE_BUILD			""
- #define WINPCAP_LIBPCAP_VERSION			"1.0 - branch"
-diff -Naur orig-winpcap/wpcap/PRJ/GNUmakefile mod-winpcap/wpcap/PRJ/GNUmakefile
---- orig-winpcap/wpcap/PRJ/GNUmakefile	2008-05-20 17:30:46.000000000 +0000
-+++ mod-winpcap/wpcap/PRJ/GNUmakefile	2008-10-05 03:43:00.025757976 +0000
+diff -Naur a/wpcap/PRJ/GNUmakefile b/wpcap/PRJ/GNUmakefile
+--- a/wpcap/PRJ/GNUmakefile	2008-12-21 12:46:22.000000000 +0000
++++ b/wpcap/PRJ/GNUmakefile	2009-02-22 05:31:11.507637296 +0000
 @@ -1,5 +1,6 @@
  # Makefile for cygwin gcc
  # Nate Lawson <nate at rootlabs.com>
@@ -341,7 +324,7 @@
  
  # Set according to your system type
  SYSTYPE = "NT"
-@@ -18,21 +19,19 @@
+@@ -18,22 +19,20 @@
  YFLAGS = -y -p pcap_
  
  PACKET_DIR = packetNTx
@@ -358,138 +341,38 @@
  	-DSIZEOF_LONG_LONG=8 \
 -	-DHAVE_REMOTE -DHAVE_AIRPCAP_API \
 +	-DHAVE_REMOTE \
+ 	-DHAVE_TC_API \
  	-mno-cygwin -shared ${OPTFLAGS}
 -LDFLAGS = -Wl,--out-implib,../lib/libwpcap.a
 -LIBS = -L ../../${PACKET_DIR}/DLL/Project -lPacket -lws2_32
-+LDFLAGS = -Wl,--out-implib,libtorpcap.a
++LDFLAGS = -Wl,--out-implib,../lib/libtorpcap.a
 +LIBS = -L ../../${PACKET_DIR}/DLL/Project -ltorpkt -lws2_32
  OBJS = ../libpcap/bpf/net/bpf_filter.o \
  	../libpcap/bpf_dump.o \
  	../libpcap/bpf_image.o \
-@@ -63,13 +62,14 @@
- 	../Win32-Extensions/Win32-Extensions.o
- 
+@@ -66,13 +65,13 @@
  main: ${OBJS}
+ 	@${RM} -rf ../lib/
+ 	mkdir ../lib/
 -	${CC} ${CFLAGS} ${LDFLAGS} -o wpcap.dll wpcap.def ${OBJS} ${LIBS}
 +	${CC} ${CFLAGS} ${LDFLAGS} -o torpcap.dll torpcap.def ${OBJS} ${LIBS}
  
--install:
+ install:
 -	cp wpcap.dll ${INSTALL_DIR}
-+# by default, we don't want clean to delete the generated grammar
-+realclean: clean
-+	${RM} ../libpcap/scanner.c ../libpcap/grammar.c
++	cp torpcap.dll ${INSTALL_DIR}
  
  clean:
 -	${RM} ${OBJS} ../libpcap/scanner.c ../libpcap/grammar.c wpcap.a wpcap.dll
-+	${RM} ${OBJS} torpcap.a torpcap.dll
++	${RM} ${OBJS} ../libpcap/scanner.c ../libpcap/grammar.c torpcap.a torpcap.dll
  
  # Keeps intermediate .c files from being deleted
  .SECONDARY: ../libpcap/scanner.c ../libpcap/grammar.c
-diff -Naur orig-winpcap/wpcap/PRJ/WPCAP.DEF mod-winpcap/wpcap/PRJ/WPCAP.DEF
---- orig-winpcap/wpcap/PRJ/WPCAP.DEF	2008-04-25 18:45:08.000000000 +0000
-+++ mod-winpcap/wpcap/PRJ/WPCAP.DEF	1970-01-01 00:00:00.000000000 +0000
-@@ -1,92 +0,0 @@
--LIBRARY wpcap.dll
--
--DESCRIPTION 'Win32 Packet Capture Library'
--
--EXPORTS
--		pcap_lookupdev
--		pcap_lookupnet
--		pcap_open_live
--		pcap_open_offline
--		pcap_close
--		pcap_getnonblock
--		pcap_setnonblock
--		pcap_loop
--		pcap_dispatch
--		pcap_read
--		pcap_setuserbuffer
--		pcap_offline_read
--		pcap_next
--		pcap_stats
--		pcap_stats_ex
--		pcap_setfilter
--		pcap_perror
--		pcap_strerror
--		pcap_geterr
--		pcap_compile
--		pcap_compile_nopcap
--		pcap_freecode
--		pcap_datalink
--		pcap_snapshot
--		pcap_is_swapped
--		pcap_major_version
--		pcap_minor_version
--		pcap_file
--		pcap_fileno
--		pcap_dump_open
--		pcap_dump_close
--		pcap_dump_flush
--		pcap_dump
--		pcap_dump_file
--		pcap_setbuff
--		pcap_setmode
--		pcap_sendpacket
--		pcap_sendqueue_alloc
--		pcap_sendqueue_destroy
--		pcap_sendqueue_queue
--		pcap_sendqueue_transmit
--		pcap_next_etherent
--		pcap_getevent
--		pcap_setmintocopy
--		pcap_open_dead
--		pcap_findalldevs
--		pcap_freealldevs
--		pcap_live_dump
--		pcap_live_dump_ended
--		bpf_filter
--		bpf_validate
--		bpf_image
--		bpf_dump
--		wsockinit
--		endservent
--		getservent
--		eproto_db
--		pcap_stats_ex
--		pcap_open
--		pcap_createsrcstr
--		pcap_parsesrcstr
--		pcap_findalldevs_ex
--		pcap_remoteact_accept
--		pcap_remoteact_list
--		pcap_remoteact_close
--		pcap_remoteact_cleanup
--		install_bpf_program
--		pcap_next_ex
--		pcap_offline_filter
--		pcap_setsampling
--		pcap_breakloop
--		pcap_list_datalinks
--		pcap_list_datalinks
--		pcap_set_datalink
--		pcap_datalink_name_to_val
--		pcap_datalink_val_to_name
--		pcap_datalink_val_to_description
--		pcap_lib_version
--		pcap_dump_file
--		pcap_dump_ftell
--		pcap_get_airpcap_handle
--		pcap_create
--		pcap_activate
--		pcap_set_promisc
--		pcap_set_snaplen
--		pcap_set_timeout
--		pcap_set_buffer_size
-\ No newline at end of file
-diff -Naur orig-winpcap/wpcap/PRJ/torpcap.def mod-winpcap/wpcap/PRJ/torpcap.def
---- orig-winpcap/wpcap/PRJ/torpcap.def	1970-01-01 00:00:00.000000000 +0000
-+++ mod-winpcap/wpcap/PRJ/torpcap.def	2008-10-05 03:43:39.914693936 +0000
-@@ -0,0 +1,92 @@
+diff -Naur a/wpcap/PRJ/torpcap.def b/wpcap/PRJ/torpcap.def
+--- a/wpcap/PRJ/torpcap.def	1970-01-01 00:00:00.000000000 +0000
++++ b/wpcap/PRJ/torpcap.def	2009-02-22 04:12:32.836984272 +0000
+@@ -0,0 +1,91 @@
 +LIBRARY torpcap.dll
 +
-+DESCRIPTION 'Tor VM Win32 Packet Capture Library'
-+
 +EXPORTS
 +		pcap_lookupdev
 +		pcap_lookupnet
@@ -578,3 +461,4 @@
 +		pcap_set_snaplen
 +		pcap_set_timeout
 +		pcap_set_buffer_size
++		pcap_hopen_offline



More information about the tor-commits mailing list