aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjames <james@e7ae566f-a301-0410-adde-c780ea21d3b5>2007-03-06 06:48:09 +0000
committerjames <james@e7ae566f-a301-0410-adde-c780ea21d3b5>2007-03-06 06:48:09 +0000
commitf9ad66c789308d99576ca5d28b1bedf973957ab2 (patch)
tree2bd88a8bf758ac32c8e8e85bfdeb2cd068626536
parentAllow installation of TAP-Win64 (diff)
downloadopenvpn-f9ad66c789308d99576ca5d28b1bedf973957ab2.tar.xz
Changes to Windows build environment, to allow straightforward building
directly from an svn checkout or export. install-win32/version.nsi contains high-level version info. The script install-win32/winconfig should be run initially to set up build configuration files. Then make can be executed as such: . autodefs/nsidefs.sh make -f makefile.w32 -j 2 git-svn-id: http://svn.openvpn.net/projects/openvpn/branches/BETA21/openvpn@1757 e7ae566f-a301-0410-adde-c780ea21d3b5
-rw-r--r--config-win32.h (renamed from config-win32.h.in)3
-rw-r--r--configure.ac2
-rw-r--r--install-win32/macro.pl28
-rw-r--r--install-win32/nsitran.pl16
-rwxr-xr-xinstall-win32/openvpn.nsi (renamed from install-win32/openvpn.nsi.in)3
-rwxr-xr-xinstall-win32/prebuild159
-rw-r--r--install-win32/preconfig.patch76
-rw-r--r--install-win32/version.nsi9
-rw-r--r--install-win32/winconfig27
-rwxr-xr-xmakefile.w325
-rwxr-xr-xtap-win32/SOURCES.in (renamed from tap-win32/SOURCES)4
-rwxr-xr-xtap-win32/amd64/OemWin2k.inf183
-rwxr-xr-xtap-win32/amd64/tap.cat6
-rwxr-xr-xtap-win32/i386/OemWin2k.inf.in (renamed from tap-win32/i386/OemWin2k.inf)2
-rwxr-xr-xtap-win32/i386/tap.cat6
-rw-r--r--tap-win32/inf64.patch14
16 files changed, 106 insertions, 437 deletions
diff --git a/config-win32.h.in b/config-win32.h
index 20ed726..2457318 100644
--- a/config-win32.h.in
+++ b/config-win32.h
@@ -35,6 +35,7 @@
#include <windows.h>
#include <winsock2.h>
+#include "autodefs/nsidefs.h"
#define sleep(x) Sleep((x)*1000)
@@ -227,7 +228,7 @@ typedef unsigned long in_addr_t;
#define PACKAGE_TARNAME "openvpn"
/* Define to the version of this package. */
-#define PACKAGE_VERSION "@VERSION@" /* AUTO_VERSION */
+#define PACKAGE_VERSION "PRODUCT_VERSION"
/* Define to the full name and version of this package. */
#ifdef DEBUG_LABEL
diff --git a/configure.ac b/configure.ac
index 12e11e3..c443f68 100644
--- a/configure.ac
+++ b/configure.ac
@@ -672,4 +672,4 @@ if test "$PASSWORD_SAVE" = "yes"; then
AC_DEFINE(ENABLE_PASSWORD_SAVE, 1, [Allow --askpass and --auth-user-pass passwords to be read from a file])
fi
-AC_OUTPUT(Makefile openvpn.spec config-win32.h install-win32/openvpn.nsi)
+AC_OUTPUT(Makefile openvpn.spec)
diff --git a/install-win32/macro.pl b/install-win32/macro.pl
new file mode 100644
index 0000000..e3a7f30
--- /dev/null
+++ b/install-win32/macro.pl
@@ -0,0 +1,28 @@
+die "usage: macro.pl <control-file>" if (@ARGV < 1);
+($control_file) = @ARGV;
+
+open(CONTROL, "< $control_file") or die "cannot open $control_file";
+
+%Parms = ();
+
+while (<CONTROL>) {
+ chomp;
+ if (/^!define\s+(\w+)\s+['"]?(.+?)['"]?\s*$/) {
+ $Parms{$1} = $2
+ }
+}
+
+while (<STDIN>) {
+ s{
+ @@
+ \s*
+ (
+ \w+
+ )
+ \s*
+ @@
+ }{
+ $Parms{$1}
+ }xge;
+ print;
+}
diff --git a/install-win32/nsitran.pl b/install-win32/nsitran.pl
new file mode 100644
index 0000000..7c04e40
--- /dev/null
+++ b/install-win32/nsitran.pl
@@ -0,0 +1,16 @@
+($mode) = @ARGV;
+
+while (<STDIN>) {
+ chomp;
+ if (/^\s*$/) {
+ print "\n";
+ } elsif (/^[#;](.*)$/) {
+ print "//$1\n" if ($mode eq "c");
+ print "#$1\n" if ($mode eq "sh");
+ print "//$1\n" if ($mode eq "js");
+ } elsif (/^!define\s+(\w+)\s+(.+)$/) {
+ print "#define $1 $2\n" if ($mode eq "c");
+ print "export $1=$2\n" if ($mode eq "sh");
+ print "var $1=$2;\n" if ($mode eq "js");
+ }
+}
diff --git a/install-win32/openvpn.nsi.in b/install-win32/openvpn.nsi
index 298046e..2ab2f54 100755
--- a/install-win32/openvpn.nsi.in
+++ b/install-win32/openvpn.nsi
@@ -7,6 +7,7 @@
; OpenVPN install script for Windows, using NSIS
+!include "version.nsi"
!include "MUI.nsh"
!include "setpath.nsi"
!include "GetWindowsVersion.nsi"
@@ -15,7 +16,7 @@
!define BIN "${HOME}\bin"
!define PRODUCT_NAME "OpenVPN"
-!define VERSION "@VERSION@" # AUTO_VERSION
+!define VERSION "${PRODUCT_VERSION}"
!define TAP "tap0901"
!define TAPDRV "${TAP}.sys"
diff --git a/install-win32/prebuild b/install-win32/prebuild
deleted file mode 100755
index 7aec69a..0000000
--- a/install-win32/prebuild
+++ /dev/null
@@ -1,159 +0,0 @@
-# Given a standard OpenVPN tarball tree,
-# build a Windows tree which is NSIS-ready.
-#
-# Requires:
-# MinGW
-# MSYS GNU shell environment
-# See other requirements below
-
-# Top level directory.
-H=/c/src
-
-# Output NSIS-ready tree here (will be deleted
-# if already exists).
-OUT=$H/21
-
-# Source distribution is here. Can be the top
-# level directory of exploded tarball.
-IN=/y/openvpn/21/openvpn
-
-# Already built OpenSSL tree.
-SSL=$H/openssl-0.9.7l
-
-# Already built LZO tree.
-LZO=$H/lzo-2.02
-
-# Already built dmalloc tree.
-# Optional, but leave defined even if you are not using
-# dmalloc.
-DMALLOC=$H/dmalloc-5.4.2
-
-# TAP binaries should be here: tap0901.sys and tapinstall.exe
-# These must be built with MS DDK.
-TAPBIN=$H/tapbin-0901
-TAPBIN64=$H/tapbin64-0901
-
-# u2d.c should exist here.
-SCRIPTS=$IN/install-win32
-
-# Put service.[ch] here from MS Platform SDK.
-SVC_TEMPLATE=$H/svc-template
-
-# Misc files/directories which should be copied to OUT (optional)
-MISC=$H/add
-
-# Temporary directory
-TMP=/tmp
-
-# End of user-defined parameters.
-
-U2D=$TMP/u2d
-
-echo BUILD u2d
-gcc -O2 $SCRIPTS/u2d.c -o $U2D
-
-echo BUILD output dir from source
-rm -rf $OUT
-mkdir $OUT
-mkdir $OUT/pkcs11-headers
-
-cp $IN/*.[ch] $OUT
-rm -f $OUT/config.h
-cp $IN/pkcs11-headers/*.h $OUT/pkcs11-headers
-
-if [ $MISC ]; then
- cp $MISC/*.* $OUT
-fi
-
-echo BUILD makefile
-
-sed "s#^OPENSSL = .*\$#OPENSSL = $SSL#" <$IN/makefile.w32 | \
-sed "s#^LZO = .*\$#LZO = $LZO#" | \
-sed "s#^DMALLOC = .*\$#DMALLOC = $DMALLOC#" >$OUT/Makefile
-
-echo BUILD bin
-
-mkdir $OUT/bin
-for f in libeay32.dll libssl32.dll openssl.exe ; do
- cp $SSL/$f $OUT/bin
- strip $OUT/bin/$f
-done
-
-echo BUILD install-win32
-
-mkdir $OUT/install-win32
-
-cp $IN/install-win32/openvpn.nsi $OUT/install-win32
-cp $IN/install-win32/setpath.nsi $OUT/install-win32
-cp $IN/install-win32/GetWindowsVersion.nsi $OUT/install-win32
-cp $IN/images/install-whirl.bmp $OUT/install-win32
-cp $IN/images/openvpn.ico $OUT/install-win32
-cp $IN/INSTALL-win32.txt $OUT/install-win32
-cat $IN/COPYING $IN/COPYRIGHT.GPL | $U2D >$OUT/install-win32/license.txt
-
-$U2D <$IN/sample-config-files/client.conf >$OUT/install-win32/client.ovpn
-$U2D <$IN/sample-config-files/server.conf >$OUT/install-win32/server.ovpn
-cp $IN/install-win32/sample.ovpn $OUT/install-win32
-$U2D <$IN/easy-rsa/1.0/openssl.cnf >$OUT/install-win32/openssl.cnf.sample
-
-echo BUILD tap-win32 for x86 and amd64
-
-mkdir $OUT/tap-win32
-cp $IN/tap-win32/*.[ch] $OUT/tap-win32
-cp $IN/tap-win32/*.rc $OUT/tap-win32
-cp $IN/tap-win32/MAKEFILE $OUT/tap-win32
-cp $IN/tap-win32/SOURCES $OUT/tap-win32
-
-mkdir $OUT/tap-win32/i386
-cp $TAPBIN/OemWin2k.inf $OUT/tap-win32/i386
-cp $TAPBIN/tap.cat $OUT/tap-win32/i386
-cp $TAPBIN/tap0901.sys $OUT/tap-win32/i386
-
-mkdir $OUT/tap-win32/amd64
-cp $TAPBIN64/OemWin2k.inf $OUT/tap-win32/amd64
-cp $TAPBIN64/tap.cat $OUT/tap-win32/amd64
-cp $TAPBIN64/tap0901.sys $OUT/tap-win32/amd64
-
-mkdir $OUT/bin/ti3790-i386
-cp $TAPBIN/tapinstall.exe $OUT/bin/ti3790-i386
-mkdir $OUT/bin/ti3790-amd64
-cp $TAPBIN64/tapinstall.exe $OUT/bin/ti3790-amd64
-
-echo BUILD service-win32
-
-mkdir $OUT/service-win32
-cp $IN/service-win32/Makefile $OUT/service-win32
-cp $IN/service-win32/mkpatch $OUT/service-win32
-cp $IN/service-win32/openvpnserv.c $OUT/service-win32
-cp $IN/service-win32/service.patch $OUT/service-win32
-
-cp $SVC_TEMPLATE/service.[ch] $OUT/service-win32
-cp $OUT/service-win32/service.h $OUT/service-win32/service.h.orig
-cp $OUT/service-win32/service.c $OUT/service-win32/service.c.orig
-
-pushd $OUT/service-win32
-
-# Vista security theatre
-cp `which patch` p.exe
-
-./p <service.patch
-popd
-
-echo BUILD easy-rsa
-cp -a $IN/easy-rsa $OUT
-
-echo BUILD sample-keys
-cp -a $IN/sample-keys $OUT
-
-echo COMPILE OpenVPN
-pushd $OUT
-make
-strip openvpn.exe
-popd
-
-echo COMPILE OpenVPN Service
-pushd $OUT/service-win32
-make clean
-make
-strip openvpnserv.exe
-popd
diff --git a/install-win32/preconfig.patch b/install-win32/preconfig.patch
deleted file mode 100644
index 62bb895..0000000
--- a/install-win32/preconfig.patch
+++ /dev/null
@@ -1,76 +0,0 @@
---- openvpn.nsi 2005-12-27 19:34:10.000000000 -0700
-+++ planet.nsi 2005-12-29 16:00:41.253252888 -0700
-@@ -19,11 +19,19 @@
- !define TAP "tap0801"
- !define TAPDRV "${TAP}.sys"
-
-+# PRECONFIG
-+
- ; something like "-DBG2"
--!define OUTFILE_LABEL ""
-+!define OUTFILE_LABEL "-PC"
-
- ; something like "DEBUG2"
--!define TITLE_LABEL ""
-+!define TITLE_LABEL "Planet"
-+
-+!define PRECONFIG_DIR "..\..\preconfig"
-+!define GUI_EXE "openvpn-gui-1.0.3.exe"
-+!define CONFIG_FILE "planet.ovpn"
-+
-+# END PRECONFIG
-
- ; Default service settings
- !define SERV_CONFIG_DIR "$INSTDIR\config"
-@@ -188,6 +196,10 @@
-
- File "${HOME}\openvpn.exe"
-
-+# PRECONFIG
-+ File "${PRECONFIG_DIR}\${GUI_EXE}"
-+# END PRECONFIG
-+
- SectionEnd
-
- Section "OpenVPN RSA Certificate Management Scripts" SecOpenVPNEasyRSA
-@@ -222,6 +234,10 @@
-
- SetOutPath "$INSTDIR\config"
-
-+# PRECONFIG
-+ File "${PRECONFIG_DIR}\${CONFIG_FILE}"
-+# END PRECONFIG
-+
- FileOpen $R0 "$INSTDIR\config\README.txt" w
- FileWrite $R0 "This directory should contain OpenVPN configuration files$\r$\n"
- FileWrite $R0 "each having an extension of .${SERV_CONFIG_EXT}$\r$\n"
-@@ -422,8 +438,16 @@
- !insertmacro WriteRegStringIfUndef HKCR "OpenVPNFile\shell\run" "" "Start OpenVPN on this config file"
- !insertmacro WriteRegStringIfUndef HKCR "OpenVPNFile\shell\run\command" "" '"$INSTDIR\bin\openvpn.exe" --pause-exit --config "%1"'
-
-- ; Create start menu shortcuts to addtap.bat and deltapall.bat
- noass:
-+
-+# PRECONFIG
-+ ; Create GUI shortcut
-+ IfFileExists "$INSTDIR\bin\${GUI_EXE}" "" nogui
-+ CreateShortCut "$SMPROGRAMS\OpenVPN\OpenVPN GUI.lnk" "$INSTDIR\bin\${GUI_EXE}" ""
-+ nogui:
-+# END PRECONFIG
-+
-+ ; Create start menu shortcuts to addtap.bat and deltapall.bat
- IfFileExists "$INSTDIR\bin\addtap.bat" "" trydeltap
- CreateShortCut "$SMPROGRAMS\OpenVPN\Add a new TAP-Win32 virtual ethernet adapter.lnk" "$INSTDIR\bin\addtap.bat" ""
-
-@@ -513,6 +537,11 @@
-
- RMDir /r $SMPROGRAMS\OpenVPN
-
-+# PRECONFIG
-+ Delete "$INSTDIR\config\${CONFIG_FILE}"
-+ Delete "$INSTDIR\bin\${GUI_EXE}"
-+# END PRECONFIG
-+
- Delete "$INSTDIR\bin\openvpn.exe"
- Delete "$INSTDIR\bin\openvpnserv.exe"
- Delete "$INSTDIR\bin\libeay32.dll"
diff --git a/install-win32/version.nsi b/install-win32/version.nsi
new file mode 100644
index 0000000..7aeaca4
--- /dev/null
+++ b/install-win32/version.nsi
@@ -0,0 +1,9 @@
+; Version numbers and settings
+
+!define PRODUCT_VERSION "2.1_rc2c"
+!define OPENSSL_VERSION "0.9.7l"
+
+; TAP Adapter
+!define PRODUCT_TAP_MAJOR_VER 9
+!define PRODUCT_TAP_MINOR_VER 2
+!define PRODUCT_TAP_RELDATE "03/05/2007"
diff --git a/install-win32/winconfig b/install-win32/winconfig
new file mode 100644
index 0000000..01deebd
--- /dev/null
+++ b/install-win32/winconfig
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+# prepare files for building on Windows
+# run from top directory: install-win32/winconfig
+
+c=`pwd`
+
+rm -rf autodefs
+mkdir autodefs
+
+TRAN="perl install-win32/nsitran.pl"
+VER=install-win32/version.nsi
+MACRO="perl install-win32/macro.pl $HSV"
+PATCH="/tmp/p.exe"
+
+cp `which patch` $PATCH
+
+$TRAN c <$VER >autodefs/nsidefs.h
+$TRAN sh <$VER >autodefs/nsidefs.sh
+
+$MACRO $VER <tap-win32/SOURCES.in >tap-win32/SOURCES
+$MACRO $VER <tap-win32/i386/OemWin2k.inf.in >tap-win32/i386/OemWin2k.inf
+rm -rf tap-win32/amd64
+mkdir tap-win32/amd64
+cp tap-win32/i386/OemWin2k.inf tap-win32/amd64
+cd tap-win32/amd64
+$PATCH <../inf64.patch
diff --git a/makefile.w32 b/makefile.w32
index bb9af54..22ed843 100755
--- a/makefile.w32
+++ b/makefile.w32
@@ -35,7 +35,10 @@
# Change these to point to your OpenSSL, LZO, and
# (optionally) dmalloc top-level directories.
-OPENSSL = /c/src/openssl-0.9.7i
+# Make sure to define OPENSSL_VERSION as an environmental
+# variable before calling make.
+OPENSSL = /c/src/openssl-${OPENSSL_VERSION}
+
LZO = /c/src/lzo-2.02
DMALLOC = /c/src/dmalloc-5.4.2
diff --git a/tap-win32/SOURCES b/tap-win32/SOURCES.in
index f3d9ce5..63479a0 100755
--- a/tap-win32/SOURCES
+++ b/tap-win32/SOURCES.in
@@ -14,8 +14,8 @@ INCLUDES=$(DDK_INCLUDE_PATH)
# TAP_WIN32_MIN_x values defined in
# config-win32.h
C_DEFINES=
-C_DEFINES=$(C_DEFINES) -DTAP_DRIVER_MAJOR_VERSION=9
-C_DEFINES=$(C_DEFINES) -DTAP_DRIVER_MINOR_VERSION=2
+C_DEFINES=$(C_DEFINES) -DTAP_DRIVER_MAJOR_VERSION=@@PRODUCT_TAP_MAJOR_VER@@
+C_DEFINES=$(C_DEFINES) -DTAP_DRIVER_MINOR_VERSION=@@PRODUCT_TAP_MINOR_VER@@
# Use 00:FF:XX:XX:XX:XX format MAC addresses where
# the Xs are random (like Linux tap driver).
diff --git a/tap-win32/amd64/OemWin2k.inf b/tap-win32/amd64/OemWin2k.inf
deleted file mode 100755
index 69f95c8..0000000
--- a/tap-win32/amd64/OemWin2k.inf
+++ /dev/null
@@ -1,183 +0,0 @@
-; ****************************************************************************
-; * Copyright (C) 2002-2006 OpenVPN Solutions LLC *
-; * This program is free software; you can redistribute it and/or modify *
-; * it under the terms of the GNU General Public License version 2 *
-; * as published by the Free Software Foundation. *
-; ****************************************************************************
-
-; SYNTAX CHECKER
-; cd \WINDDK\3790\tools\chkinf
-; chkinf c:\src\openvpn\tap-win32\i386\oemwin2k.inf
-; OUTPUT -> file:///c:/WINDDK/3790/tools/chkinf/htm/c%23+src+openvpn+tap-win32+i386+__OemWin2k.htm
-
-; INSTALL/REMOVE DRIVER
-; tapinstall install OemWin2k.inf TAP0901
-; tapinstall update OemWin2k.inf TAP0901
-; tapinstall remove TAP0901
-
-;*********************************************************
-; Note to Developers:
-;
-; If you are bundling the TAP-Win32 driver with your app,
-; you should try to rename it in such a way that it will
-; not collide with other instances of TAP-Win32 defined
-; by other apps. Multiple versions of the TAP-Win32
-; driver, each installed by different apps, can coexist
-; on the same machine if you follow these guidelines:
-;
-; (1) Rename all tapXXXX instances in this file to
-; something different (use at least 5 characters
-; for this name!)
-; (2) Change the "!define TAP" definition in openvpn.nsi
-; to match what you changed tapXXXX to.
-; (3) Change TARGETNAME in SOURCES to match what you
-; changed tapXXXX to.
-; (4) Change TAP_COMPONENT_ID in common.h to match what
-; you changed tapXXXX to.
-; (5) Change SZDEPENDENCIES in service.h to match what
-; you changed tapXXXX to.
-; (6) Change DeviceDescription and Provider strings.
-; (7) Change PRODUCT_STRING in constants.h to what you
-; set DeviceDescription to.
-;
-;*********************************************************
-
-[Version]
- Signature = "$Windows NT$"
- CatalogFile = tap.cat
- ClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318}
- Provider = %Provider%
- Class = Net
-
-; This version number should match the version
-; number given in SOURCES.
- DriverVer=03/05/2007,9.00.00.0002
-
-[Strings]
- DeviceDescription = "TAP-Win32 Adapter V9"
- Provider = "TAP-Win32 Provider V9"
-
-;----------------------------------------------------------------
-; Manufacturer + Product Section (Done)
-;----------------------------------------------------------------
-[Manufacturer]
- %Provider% = tap0901, NTamd64
-
-[tap0901.NTamd64]
- %DeviceDescription% = tap0901.ndi, tap0901
-
-;---------------------------------------------------------------
-; Driver Section (Done)
-;---------------------------------------------------------------
-
-;----------------- Characteristics ------------
-; NCF_PHYSICAL = 0x04
-; NCF_VIRTUAL = 0x01
-; NCF_SOFTWARE_ENUMERATED = 0x02
-; NCF_HIDDEN = 0x08
-; NCF_NO_SERVICE = 0x10
-; NCF_HAS_UI = 0x80
-;----------------- Characteristics ------------
-
-[tap0901.ndi]
- CopyFiles = tap0901.driver, tap0901.files
- AddReg = tap0901.reg
- AddReg = tap0901.params.reg
- Characteristics = 0x81
-
-[tap0901.ndi.Services]
- AddService = tap0901, 2, tap0901.service
-
-[tap0901.reg]
- HKR, Ndi, Service, 0, "tap0901"
- HKR, Ndi\Interfaces, UpperRange, 0, "ndis5"
- HKR, Ndi\Interfaces, LowerRange, 0, "ethernet"
- HKR, , Manufacturer, 0, "%Provider%"
- HKR, , ProductName, 0, "%DeviceDescription%"
-
-[tap0901.params.reg]
- HKR, Ndi\params\MTU, ParamDesc, 0, "MTU"
- HKR, Ndi\params\MTU, Type, 0, "int"
- HKR, Ndi\params\MTU, Default, 0, "1500"
- HKR, Ndi\params\MTU, Optional, 0, "0"
- HKR, Ndi\params\MTU, Min, 0, "100"
- HKR, Ndi\params\MTU, Max, 0, "1500"
- HKR, Ndi\params\MTU, Step, 0, "1"
- HKR, Ndi\params\MediaStatus, ParamDesc, 0, "Media Status"
- HKR, Ndi\params\MediaStatus, Type, 0, "enum"
- HKR, Ndi\params\MediaStatus, Default, 0, "0"
- HKR, Ndi\params\MediaStatus, Optional, 0, "0"
- HKR, Ndi\params\MediaStatus\enum, "0", 0, "Application Controlled"
- HKR, Ndi\params\MediaStatus\enum, "1", 0, "Always Connected"
- HKR, Ndi\params\MAC, ParamDesc, 0, "MAC Address"
- HKR, Ndi\params\MAC, Type, 0, "edit"
- HKR, Ndi\params\MAC, Optional, 0, "1"
- HKR, Ndi\params\AllowNonAdmin, ParamDesc, 0, "Non-Admin Access"
- HKR, Ndi\params\AllowNonAdmin, Type, 0, "enum"
- HKR, Ndi\params\AllowNonAdmin, Default, 0, "1"
- HKR, Ndi\params\AllowNonAdmin, Optional, 0, "0"
- HKR, Ndi\params\AllowNonAdmin\enum, "0", 0, "Not Allowed"
- HKR, Ndi\params\AllowNonAdmin\enum, "1", 0, "Allowed"
-
-;----------------------------------------------------------------
-; Service Section
-;----------------------------------------------------------------
-
-;---------- Service Type -------------
-; SERVICE_KERNEL_DRIVER = 0x01
-; SERVICE_WIN32_OWN_PROCESS = 0x10
-;---------- Service Type -------------
-
-;---------- Start Mode ---------------
-; SERVICE_BOOT_START = 0x0
-; SERVICE_SYSTEM_START = 0x1
-; SERVICE_AUTO_START = 0x2
-; SERVICE_DEMAND_START = 0x3
-; SERVICE_DISABLED = 0x4
-;---------- Start Mode ---------------
-
-[tap0901.service]
- DisplayName = %DeviceDescription%
- ServiceType = 1
- StartType = 3
- ErrorControl = 1
- LoadOrderGroup = NDIS
- ServiceBinary = %12%\tap0901.sys
-
-;-----------------------------------------------------------------
-; File Installation
-;-----------------------------------------------------------------
-
-;----------------- Copy Flags ------------
-; COPYFLG_NOSKIP = 0x02
-; COPYFLG_NOVERSIONCHECK = 0x04
-;----------------- Copy Flags ------------
-
-; SourceDisksNames
-; diskid = description[, [tagfile] [, <unused>, subdir]]
-; 1 = "Intel Driver Disk 1",e100bex.sys,,
-
-[SourceDisksNames]
- 1 = %DeviceDescription%, tap0901.sys
-
-; SourceDisksFiles
-; filename_on_source = diskID[, [subdir][, size]]
-; e100bex.sys = 1,, ; on distribution disk 1
-
-[SourceDisksFiles]
-tap0901.sys = 1
-
-[DestinationDirs]
- tap0901.files = 11
- tap0901.driver = 12
-
-[tap0901.files]
-; TapPanel.cpl,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK
-; cipsrvr.exe,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK
-
-[tap0901.driver]
- tap0901.sys,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK
-
-;---------------------------------------------------------------
-; End
-;---------------------------------------------------------------
diff --git a/tap-win32/amd64/tap.cat b/tap-win32/amd64/tap.cat
deleted file mode 100755
index 4492fa2..0000000
--- a/tap-win32/amd64/tap.cat
+++ /dev/null
@@ -1,6 +0,0 @@
-; ****************************************************************************
-; * Copyright (C) 2002-2005 OpenVPN Solutions LLC *
-; * This program is free software; you can redistribute it and/or modify *
-; * it under the terms of the GNU General Public License version 2 *
-; * as published by the Free Software Foundation. *
-; ****************************************************************************
diff --git a/tap-win32/i386/OemWin2k.inf b/tap-win32/i386/OemWin2k.inf.in
index 792cbb8..a5450ad 100755
--- a/tap-win32/i386/OemWin2k.inf
+++ b/tap-win32/i386/OemWin2k.inf.in
@@ -51,7 +51,7 @@
; This version number should match the version
; number given in SOURCES.
- DriverVer=03/05/2007,9.00.00.0002
+ DriverVer=@@PRODUCT_TAP_RELDATE@@,@@PRODUCT_TAP_MAJOR_VER@@.00.00.@@PRODUCT_TAP_MINOR_VER@@
[Strings]
DeviceDescription = "TAP-Win32 Adapter V9"
diff --git a/tap-win32/i386/tap.cat b/tap-win32/i386/tap.cat
deleted file mode 100755
index 4492fa2..0000000
--- a/tap-win32/i386/tap.cat
+++ /dev/null
@@ -1,6 +0,0 @@
-; ****************************************************************************
-; * Copyright (C) 2002-2005 OpenVPN Solutions LLC *
-; * This program is free software; you can redistribute it and/or modify *
-; * it under the terms of the GNU General Public License version 2 *
-; * as published by the Free Software Foundation. *
-; ****************************************************************************
diff --git a/tap-win32/inf64.patch b/tap-win32/inf64.patch
new file mode 100644
index 0000000..a619a3e
--- /dev/null
+++ b/tap-win32/inf64.patch
@@ -0,0 +1,14 @@
+--- i386/OemWin2k.inf Mon Mar 5 23:17:34 2007
++++ amd64/OemWin2k.inf Mon Mar 5 23:17:35 2007
+@@ -61,9 +61,9 @@
+ ; Manufacturer + Product Section (Done)
+ ;----------------------------------------------------------------
+ [Manufacturer]
+- %Provider% = tap0901
++ %Provider% = tap0901, NTamd64
+
+-[tap0901]
++[tap0901.NTamd64]
+ %DeviceDescription% = tap0901.ndi, tap0901
+
+ ;---------------------------------------------------------------