diff options
35 files changed, 1 insertions, 2163 deletions
diff --git a/Makefile.am b/Makefile.am index a1c210e..33c4545 100644 --- a/Makefile.am +++ b/Makefile.am @@ -51,10 +51,7 @@ EXTRA_DIST = \ plugins \ win -SUBDIRS = \ - images \ - service-win32 \ - install-win32 +SUBDIRS = service-win32 TESTS = t_client.sh t_lpback.sh t_cltsrv.sh sbin_PROGRAMS = openvpn diff --git a/configure.ac b/configure.ac index aa1d509..747c7b4 100644 --- a/configure.ac +++ b/configure.ac @@ -988,8 +988,5 @@ AC_CONFIG_FILES([t_client.sh], [chmod +x t_client.sh]) AC_OUTPUT([ Makefile openvpn.spec - images/Makefile service-win32/Makefile - install-win32/Makefile - install-win32/settings ]) diff --git a/images/.svnignore b/images/.svnignore deleted file mode 100644 index 282522d..0000000 --- a/images/.svnignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/images/Makefile.am b/images/Makefile.am deleted file mode 100644 index 334554f..0000000 --- a/images/Makefile.am +++ /dev/null @@ -1,41 +0,0 @@ -# -# OpenVPN -- An application to securely tunnel IP networks -# over a single UDP port, with support for SSL/TLS-based -# session authentication and key exchange, -# packet encryption, packet authentication, and -# packet compression. -# -# Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net> -# -# 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. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program (see the file COPYING included with this -# distribution); if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# - -MAINTAINERCLEANFILES = $(srcdir)/Makefile.in - -images = \ - install-whirl.bmp \ - icon.ico - -if WIN32 - -imagedir = $(win32datadir)/images -dist_image_DATA = $(images) - -else - -dist_noinst_DATA = $(images) - -endif - diff --git a/images/icon.ico b/images/icon.ico Binary files differdeleted file mode 100755 index 03ea0b1..0000000 --- a/images/icon.ico +++ /dev/null diff --git a/images/install-whirl.bmp b/images/install-whirl.bmp Binary files differdeleted file mode 100755 index 03f33fc..0000000 --- a/images/install-whirl.bmp +++ /dev/null diff --git a/install-win32/.svnignore b/install-win32/.svnignore deleted file mode 100644 index 9bf9495..0000000 --- a/install-win32/.svnignore +++ /dev/null @@ -1,4 +0,0 @@ -*.o -Makefile.in -settings -Makefile diff --git a/install-win32/GetWindowsVersion.nsi b/install-win32/GetWindowsVersion.nsi deleted file mode 100644 index 103caff..0000000 --- a/install-win32/GetWindowsVersion.nsi +++ /dev/null @@ -1,109 +0,0 @@ -; Turn off old selected section -; GetWindowsVersion -; -; Based on Yazno's function -; Updated by Joost Verburg -; Updated for Windows 98 SE by Matthew Win Tibbals 5-21-03 -; Updated for Vista by Joe Cincotta 12-2-07 -; -; Returns on top of stack -; -; Windows Version (95, 98, ME, NT x.x, 2000, XP, 2003, VISTA) -; or -; '' (Unknown Windows Version) -; -; Usage: -; Call GetWindowsVersion -; Pop $R0 -; ; at this point $R0 is "NT 4.0" or whatnot -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -Function GetWindowsVersion - - Push $R0 - Push $R1 - - ClearErrors - - ReadRegStr $R0 HKLM \ - "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion - - IfErrors 0 lbl_winnt - - ; we are not NT - ReadRegStr $R0 HKLM \ - "SOFTWARE\Microsoft\Windows\CurrentVersion" VersionNumber - - StrCpy $R1 $R0 1 - StrCmp $R1 '4' 0 lbl_error - - StrCpy $R1 $R0 3 - - StrCmp $R1 '4.0' lbl_win32_95 - StrCmp $R1 '4.9' lbl_win32_ME lbl_win32_98 - - lbl_win32_95: - StrCpy $R0 '95' - Goto lbl_done - - lbl_win32_98: -;;beginning of additions to support win 98 SE - push $R0 - push "." - call strstr - pop $R0 - StrCpy $R0 $R0 "" 1 - StrCmp $R0 "10.2222" lbl_win32_98SE - StrCpy $R0 '98' ;;this line was not added - Goto lbl_done ;;this line was not added either - - lbl_win32_98SE: - StrCpy $R0 '98 SE' - Goto lbl_done -;;end of additions to support win 98 SE - lbl_win32_ME: - StrCpy $R0 'ME' - Goto lbl_done - - lbl_winnt: - - StrCpy $R1 $R0 1 - - StrCmp $R1 '3' lbl_winnt_x - StrCmp $R1 '4' lbl_winnt_x - - StrCpy $R1 $R0 3 - - StrCmp $R1 '5.0' lbl_winnt_2000 - StrCmp $R1 '5.1' lbl_winnt_XP - StrCmp $R1 '5.2' lbl_winnt_2003 - StrCmp $R1 '6.0' lbl_winnt_VISTA lbl_error - - lbl_winnt_x: - StrCpy $R0 "NT $R0" 6 - Goto lbl_done - - lbl_winnt_2000: - Strcpy $R0 '2000' - Goto lbl_done - - lbl_winnt_XP: - Strcpy $R0 'XP' - Goto lbl_done - - lbl_winnt_2003: - Strcpy $R0 '2003' - Goto lbl_done - - lbl_winnt_VISTA: - Strcpy $R0 'VISTA' - Goto lbl_done - - lbl_error: - Strcpy $R0 '' - lbl_done: - - Pop $R1 - Exch $R0 - -FunctionEnd -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; diff --git a/install-win32/Makefile.am b/install-win32/Makefile.am deleted file mode 100644 index 75932fe..0000000 --- a/install-win32/Makefile.am +++ /dev/null @@ -1,97 +0,0 @@ -# -# OpenVPN -- An application to securely tunnel IP networks -# over a single UDP port, with support for SSL/TLS-based -# session authentication and key exchange, -# packet encryption, packet authentication, and -# packet compression. -# -# Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net> -# -# 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. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program (see the file COPYING included with this -# distribution); if not, write to the Free Software Foundation, Inc., -# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# - -MAINTAINERCLEANFILES = $(srcdir)/Makefile.in - -dist_noinst_DATA = \ - openssl \ - GetWindowsVersion.nsi \ - build-pkcs11-helper.sh \ - buildinstaller \ - ddk-common \ - doclean \ - dosname.pl \ - getgui \ - getopenssl \ - getpkcs11helper \ - getprebuilt \ - getxgui \ - ifdef.pl \ - m4todef.pl \ - macro.pl \ - makeopenvpn \ - maketap \ - maketapinstall \ - maketext \ - openvpn.nsi \ - setpath.nsi \ - settings.in \ - trans.pl \ - u2d.c \ - winconfig - -if WIN32 - -nodist_doc_DATA = tmp/license.txt - -confdir = $(win32datadir)/config -nodist_conf_DATA = \ - tmp/openssl-1.0.0.cnf \ - tmp/client.ovpn \ - tmp/server.ovpn -dist_conf_DATA = \ - sample.ovpn - -easyrsadir = $(win32datadir)/easy-rsa/Windows -nodist_easyrsa_DATA = \ - $(top_srcdir)/easy-rsa/Windows/* - -keysdir = $(win32datadir)/sample-keys -nodist_keys_DATA = \ - $(top_srcdir)/sample-keys/* - -tmp: - mkdir tmp - -tmp/client.ovpn: tmp $(top_srcdir)/sample-config-files/client.conf - cp $(top_srcdir)/sample-config-files/client.conf tmp/client.ovpn - -tmp/server.ovpn: tmp $(top_srcdir)/sample-config-files/server.conf - cp $(top_srcdir)/sample-config-files/server.conf tmp/server.ovpn - -tmp/license.txt: tmp $(top_srcdir)/COPYING $(top_srcdir)/COPYRIGHT.GPL - cat $(top_srcdir)/COPYING $(top_srcdir)/COPYRIGHT.GPL > tmp/license.txt - -tmp/openssl-1.0.0.cnf: tmp $(top_srcdir)/easy-rsa/2.0/openssl-1.0.0.cnf - cp $(top_srcdir)/easy-rsa/2.0/openssl-1.0.0.cnf tmp/openssl-1.0.0.cnf - -clean-local: - -rm -fr tmp - -else - -dist_noinst_DATA += sample.ovpn - -endif - diff --git a/install-win32/build-pkcs11-helper.sh b/install-win32/build-pkcs11-helper.sh deleted file mode 100644 index fd336df..0000000 --- a/install-win32/build-pkcs11-helper.sh +++ /dev/null @@ -1,24 +0,0 @@ -F=pkcs11-helper-1.06-beta1 -OPENSSL_DIR=`pwd`/openssl-0.9.8h - -PKCS11_HELPER_DIR=`pwd`/pkcs11-helper -rm -rf $PKCS11_HELPER_DIR -mkdir $PKCS11_HELPER_DIR -tbz=$F.tar.bz2 - -rm -rf $F -tar xfj $tbz - -cd $F -./configure \ - MAN2HTML=true \ - --disable-crypto-engine-gnutls \ - --disable-crypto-engine-nss \ - PKG_CONFIG=true \ - OPENSSL_CFLAGS="-I${OPENSSL_DIR}/include" \ - OPENSSL_LIBS="-L${OPENSSL_DIR}/out -leay32" - -make -make install DESTDIR="${PKCS11_HELPER_DIR}" - -# ./configure doesn't need this any more: ac_cv_type_size_t=no diff --git a/install-win32/buildinstaller b/install-win32/buildinstaller deleted file mode 100644 index a17a027..0000000 --- a/install-win32/buildinstaller +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -# load version.nsi definitions -. autodefs/defs.sh - -# build the installer -rm -f $GENOUT/*.exe -'/c/Program Files/NSIS/makensis' $GENOUT/nsi/openvpn.nsi &>makensis.log -tail -20 makensis.log - -# sign the installer -if [ -d "$SIGNTOOL" ]; then - python $SIGNTOOL/signapp.py "$(echo $(pwd)/$GENOUT/*.exe)" -fi diff --git a/install-win32/ddk-common b/install-win32/ddk-common deleted file mode 100644 index b45c9e5..0000000 --- a/install-win32/ddk-common +++ /dev/null @@ -1,2 +0,0 @@ -# DDKs <= 5600 use "AMD64", later use "x64" -x64_tag=x64 diff --git a/install-win32/doclean b/install-win32/doclean deleted file mode 100644 index 3f39543..0000000 --- a/install-win32/doclean +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -# get version.nsi definitions -. autodefs/defs.sh - -[ "$CLEAN" = "yes" ] && rm -rf $GENOUT && KEEPAUTODEFS="yes" ./doclean diff --git a/install-win32/dosname.pl b/install-win32/dosname.pl deleted file mode 100644 index a678e66..0000000 --- a/install-win32/dosname.pl +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/perl - -# convert a unix filename to a DOS filename - -while ($unixname = shift(@ARGV)) { - $unixname =~ s#^/([a-zA-Z])(/|$)#$1:\\#g; - $unixname =~ s#/#\\#g; - print "$unixname\n"; -} diff --git a/install-win32/getgui b/install-win32/getgui deleted file mode 100644 index aa83e85..0000000 --- a/install-win32/getgui +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -# Get and sign the OpenVPN GUI - -# load version.nsi definitions -. autodefs/defs.sh - -GUI="$OPENVPN_GUI_DIR/$OPENVPN_GUI" - -if [ -f "$GUI" ]; then - mkdir -p $GENOUT/bin &>/dev/null - cp $GUI $GENOUT/bin -fi - -if [ -f "$GENOUT/bin/$OPENVPN_GUI" ]; then - echo '!define OPENVPN_GUI_DEFINED' >autodefs/guidefs.nsi -else - cat /dev/null >autodefs/guidefs.nsi -fi diff --git a/install-win32/getopenssl b/install-win32/getopenssl deleted file mode 100644 index b772741..0000000 --- a/install-win32/getopenssl +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh - -# get version.nsi definitions -. autodefs/defs.sh - -# Get OpenSSL binaries -if [ -d "$OPENSSL_DIR" ] ; then - mkdir -p $GENOUT/lib &>/dev/null - mkdir -p $GENOUT/bin &>/dev/null - for f in libeay32.dll libssl32.dll out/openssl.exe ; do - cp $OPENSSL_DIR/$f $GENOUT/lib - if [ -z "$NO_STRIP" ]; then - strip $GENOUT/lib/`basename $f` - fi - done - mv $GENOUT/lib/openssl.exe $GENOUT/bin -else - echo OpenSSL DIR $OPENSSL_DIR NOT FOUND -fi diff --git a/install-win32/getpkcs11helper b/install-win32/getpkcs11helper deleted file mode 100644 index 8fcfdd4..0000000 --- a/install-win32/getpkcs11helper +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh - -# get version.nsi definitions -. autodefs/defs.sh - -# Get PKCS11-helper libraries -if [ -d "$PKCS11_HELPER_DIR" ] ; then - mkdir -p $GENOUT/lib &>/dev/null - for f in libpkcs11-helper-1.dll ; do - cp $PKCS11_HELPER_DIR/usr/local/bin/$f $GENOUT/lib - if [ -z "$NO_STRIP" ]; then - strip $GENOUT/lib/$f - fi - done -else - echo PKCS11-helper DIR $PKCS11_HELPER_DIR NOT FOUND -fi diff --git a/install-win32/getprebuilt b/install-win32/getprebuilt deleted file mode 100644 index 36c4827..0000000 --- a/install-win32/getprebuilt +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -# get version.nsi definitions -. autodefs/defs.sh - -# Get PKCS11-helper libraries -if [ -d "$GENOUT_PREBUILT" ] && ! [ -d "$GENOUT" ]; then - echo LOADING prebuilt binaries from $GENOUT_PREBUILT - cp -a $GENOUT_PREBUILT $GENOUT -fi diff --git a/install-win32/getxgui b/install-win32/getxgui deleted file mode 100644 index 3a1e626..0000000 --- a/install-win32/getxgui +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -# Get and sign the OpenVPN XML-based GUI - -# load version.nsi definitions -. autodefs/defs.sh - -if [ -d "$OPENVPN_XGUI_DIR" ]; then - SIGNED_EXES="gui/ovpn-xgui-en.exe sta/ovpn-tray.exe" - UNSIGNED_EXES="xmlserv/ovpn-xmlserv.exe" - EXES="$SIGNED_EXES $UNSIGNED_EXES" - - mkdir -p $GENOUT/bin &>/dev/null - - if [ -z "$NO_STRIP" ]; then - for f in $EXES; do - cp $OPENVPN_XGUI_DIR/$f $GENOUT/bin - strip $GENOUT/bin/`basename $f` - done - fi - - rm -rf $GENOUT/htdocs - cp -a $OPENVPN_XGUI_DIR/ajax/htdocs $GENOUT/htdocs - - echo '!define OPENVPN_XGUI_DEFINED' >autodefs/xguidefs.nsi -else - cat /dev/null >autodefs/xguidefs.nsi -fi diff --git a/install-win32/ifdef.pl b/install-win32/ifdef.pl deleted file mode 100644 index d240ebb..0000000 --- a/install-win32/ifdef.pl +++ /dev/null @@ -1,53 +0,0 @@ -#!/usr/bin/perl - -# Simple ifdef/else/endif processor. - -die "usage: ifdef [-C<command-prefix>] [-Dname ...] [control-file ...] " if (@ARGV[0] =~ /^(-h|--help)$/); - -%Parms = (); - -$pre = "!"; -while ($arg=shift(@ARGV)) { - if ($arg =~ /^-/) { - if ($arg =~ /^-D(\w+)$/) { - $Parms{$1} = 1; - } elsif ($arg =~ /-C(.*)$/) { - $pre = $1; - } else { - die "unrecognized option: $arg"; - } - } else { - open(CONTROL, "< $arg") or die "cannot open $arg"; - while (<CONTROL>) { - if (/^!define\s+(\w+)/) { - $Parms{$1} = 1; - } - } - } -} - -sub ifdef { - my ($var, $enabled) = @_; - my $def = 0; - $def = 1 if (defined $Parms{$var}) || ($var eq "true"); - $def = 0 if $var eq "false"; - while (<STDIN>) { - if (/^\s*\Q$pre\Eifdef\s+(\w+)\s*$/) { - return 1 if ifdef ($1, $def & $enabled); - } elsif (/^\s*\Q$pre\Eelseif\s+(\w+)\s*$/) { - $def = $def ^ 1; - return ifdef ($1, $def & $enabled); - } elsif (/^\s*\Q$pre\Eelse\s*$/) { - $def = $def ^ 1; - } elsif (/^\s*\Q$pre\Eendif\s*$/) { - return 0; - } elsif (/^\s*\Q$pre\E/) { - die "unrecognized command: $_"; - } else { - print if $def && $enabled; - } - } - return 1; -} - -ifdef("true", 1); diff --git a/install-win32/m4todef.pl b/install-win32/m4todef.pl deleted file mode 100644 index d2705b0..0000000 --- a/install-win32/m4todef.pl +++ /dev/null @@ -1,15 +0,0 @@ -#!/usr/bin/perl - -# used to convert version.m4 to simple -# definition format - -while (<STDIN>) { - chomp; - if (/^\s*$/) { - print "\n"; - } elsif (/^define\((\w+),\[(.*?)\]\)/) { - print "!define $1 \"$2\"\n"; - } elsif (/^dnl(.*)$/) { - print "#$1\n"; - } -} diff --git a/install-win32/macro.pl b/install-win32/macro.pl deleted file mode 100644 index 08ba58a..0000000 --- a/install-win32/macro.pl +++ /dev/null @@ -1,61 +0,0 @@ -#!/usr/bin/perl - -# Simple macro processor. - -# Macros are defined in a control file that follows -# a simple definition-based grammar as documented in the -# trans script. Stdin is then copied to stdout, and any -# occurrence of @@MACRO@@ is substituted. Macros can also -# be specified on the command line. - -die "usage: macro [-O<openquote>] [-C<closequote>] [-Dname=var ...] [control-file ...] " if (@ARGV < 1); - -%Parms = (); -$open_quote = "@@"; -$close_quote = "@@"; - -while ($arg=shift(@ARGV)) { - if ($arg =~ /^-/) { - if ($arg =~ /^-D(\w+)(?:=(.*))?$/) { - $Parms{$1} = $2 - } elsif ($arg =~ /-O(.*)$/) { - $open_quote = $1; - } elsif ($arg =~ /-C(.*)$/) { - $close_quote = $1; - } else { - die "unrecognized option: $arg"; - } - } else { - open(CONTROL, "< $arg") or die "cannot open $arg"; - while (<CONTROL>) { - if (/^!define\s+(\w+)(?:\s+['"]?(.*?)['"]?)?\s*$/) { - $Parms{$1} = $2; - } - } - } -} - -sub print_symbol_table { - foreach my $k (sort (keys(%Parms))) { - my $v = $Parms{$k}; - print "[$k] -> \"$v\"\n"; - } -} - -#print_symbol_table (); -#exit 0; - -while (<STDIN>) { - s{ - \Q$open_quote\E - \s* - ( - \w+ - ) - \s* - \Q$close_quote\E - }{ - $Parms{$1} - }xge; - print; -} diff --git a/install-win32/makeopenvpn b/install-win32/makeopenvpn deleted file mode 100755 index ced2a54..0000000 --- a/install-win32/makeopenvpn +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh - -H=`pwd` - -case "`uname -o 2>/dev/null`" in - *inux) - - # cross-compiling, make dude's life easier - XAUTOCONF="--host=i586-mingw32msvc --build=i386-linux $XAUTOCONF" - export CC=i586-mingw32msvc-gcc - export CXXCPP=i586-mingw32msvc-cpp - export CXX=i586-mingw32msvc-g++ - # this requires the human to setup these environ vars: - # OPENSSL_DIR LZO_DIR PKCS11_HELPER_DIR - OPENSSL_INC_DIR=$OPENSSL_DIR/include - OPENSSL_LIB_DIR=$OPENSSL_DIR/out - LZO_INC_DIR=$LZO_DIR/include - LZO_LIB_DIR=$LZO_DIR/src/.libs - PKCS11_INC_DIR=$PKCS11_HELPER_DIR/include/pkcs11-helper-1.0/ - PKCS11_LIB_DIR=$PKCS11_HELPER_DIR/lib/.libs/ - ;; - *) - # get version.nsi definitions - . autodefs/defs.sh - XAUTOCONF="" - # default configuration creates relative-path environ vars: - OPENSSL_INC_DIR=$H/$OPENSSL_DIR/include - OPENSSL_LIB_DIR=$H/$OPENSSL_DIR/out - LZO_INC_DIR=$H/$LZO_DIR/include - LZO_LIB_DIR=$H/$LZO_DIR - PKCS11_INC_DIR=$H/$PKCS11_HELPER_DIR/usr/local/include - PKCS11_LIB_DIR=$H/$PKCS11_HELPER_DIR/usr/local/lib - ;; -esac -if $CC --version &>/dev/null && [ -d "$OPENSSL_DIR" ] && [ -d "$LZO_DIR" ] && [ -d "$PKCS11_HELPER_DIR" ]; then - # build OpenVPN binary - - if ! [ -f Makefile ]; then - autoreconf -i -v \ - && ./configure $XAUTOCONF \ - --enable-strict \ - --prefix=$H/windest \ - MAN2HTML=true \ - --with-ssl-headers=$OPENSSL_INC_DIR \ - --with-ssl-lib=$OPENSSL_LIB_DIR \ - --with-lzo-headers=$LZO_INC_DIR \ - --with-lzo-lib=$LZO_LIB_DIR \ - --with-pkcs11-helper-headers=$PKCS11_INC_DIR \ - --with-pkcs11-helper-lib=$PKCS11_LIB_DIR \ - || exit 1 - fi - - make -j $MAKE_JOBS && make install - - if [ -n "$GENOOUT" ];then - # copy OpenVPN and service executables to GENOUT/bin - mkdir -p $GENOUT/bin &>/dev/null - cp windest/sbin/openvpn.exe $GENOUT/bin - cp windest/sbin/openvpnserv.exe $GENOUT/bin - if [ -z "$NO_STRIP" ]; then - strip $GENOUT/bin/openvpn.exe - strip $GENOUT/bin/openvpnserv.exe - fi - fi -else - echo DID NOT BUILD openvpn.exe and openvpnserv.exe because one or more of gcc, OPENSSL_DIR, LZO_DIR, or PKCS11_HELPER_DIR directories were missing -fi diff --git a/install-win32/maketap b/install-win32/maketap deleted file mode 100644 index b9c4070..0000000 --- a/install-win32/maketap +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh - -# Get the x86 and x64 versions of the TAP driver - -# get version.nsi definitions -. autodefs/defs.sh - -if [ -d "$TAPBINSRC" ]; then - mkdir -p $GENOUT/driver/i386 &>/dev/null - mkdir -p $GENOUT/driver/amd64 &>/dev/null - for arch in i386 amd64; do - s=$TAPBINSRC/$arch - cp $s/*.sys $s/*.cat $s/*.inf $GENOUT/driver/$arch - done -else - echo Cannot find pre-built tap drivers -fi diff --git a/install-win32/maketapinstall b/install-win32/maketapinstall deleted file mode 100644 index 9fe0470..0000000 --- a/install-win32/maketapinstall +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh - -# Get the x86 and x64 versions of the tapinstall tool - -# get version.nsi definitions -. autodefs/defs.sh - -if [ -d "$TAPBINSRC" ]; then - mkdir -p $GENOUT/tapinstall/i386 &>/dev/null - mkdir -p $GENOUT/tapinstall/amd64 &>/dev/null - cp $TAPBINSRC/i386/tapinstall.exe $GENOUT/tapinstall/i386 - cp $TAPBINSRC/amd64/tapinstall.exe $GENOUT/tapinstall/amd64 -else - echo Cannot find pre-built tapinstall -fi diff --git a/install-win32/maketext b/install-win32/maketext deleted file mode 100644 index 9a94a81..0000000 --- a/install-win32/maketext +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/sh - -# get version.nsi definitions -. autodefs/defs.sh - -mkdir -p $GENOUT/text &>/dev/null - -# build license file -cat COPYING COPYRIGHT.GPL >$GENOUT/text/license.txt - -# copy install file -cp INSTALL-win32.txt $GENOUT/text/INSTALL-win32.txt - -# copy sample configuration files and docs -s=$GENOUT/samples -mkdir -p $s &>/dev/null -cp sample-config-files/client.conf $s/client.$PRODUCT_FILE_EXT -cp sample-config-files/server.conf $s/server.$PRODUCT_FILE_EXT -cp install-win32/sample.ovpn $s/sample.$PRODUCT_FILE_EXT - -# get easy-rsa (Windows) -e=$GENOUT/easy-rsa -mkdir -p $e &>/dev/null -cp easy-rsa/1.0/openssl.cnf $e/openssl.cnf.sample -cp easy-rsa/Windows/* $e - -# get images -i=$GENOUT/images -mkdir -p $i &>/dev/null -cp images/*.ico $i -cp images/*.bmp $i - -# get NSI files -n=$GENOUT/nsi -mkdir -p $n &>/dev/null -cp autodefs/defs.nsi $n -cp autodefs/guidefs.nsi $n -cp autodefs/xguidefs.nsi $n -cp install-win32/openvpn.nsi $n -cp install-win32/setpath.nsi $n -cp install-win32/GetWindowsVersion.nsi $n - -if [ -n "$EXTRACT_FILES" ]; then - cp "$EXTRACT_FILES/MultiFileExtract.nsi" $n -fi - -# get OpenVPN client config files -if [ -n "$SAMPCONF_DIR" ]; then - c=$GENOUT/conf - mkdir -p $c &>/dev/null - test -n "$SAMPCONF_CONF" && cp "../$SAMPCONF_DIR/$SAMPCONF_CONF" $c - test -n "$SAMPCONF_CONF2" && cp "../$SAMPCONF_DIR/$SAMPCONF_CONF2" $c - test -n "$SAMPCONF_P12" && cp "../$SAMPCONF_DIR/$SAMPCONF_P12" $c - test -n "$SAMPCONF_TA" && cp "../$SAMPCONF_DIR/$SAMPCONF_TA" $c - test -n "$SAMPCONF_CA" && cp "../$SAMPCONF_DIR/$SAMPCONF_CA" $c - test -n "$SAMPCONF_CRT" && cp "../$SAMPCONF_DIR/$SAMPCONF_CRT" $c - test -n "$SAMPCONF_KEY" && cp "../$SAMPCONF_DIR/$SAMPCONF_KEY" $c - test -n "$SAMPCONF_DH" && cp "../$SAMPCONF_DIR/$SAMPCONF_DH" $c -fi diff --git a/install-win32/openssl/README.txt b/install-win32/openssl/README.txt deleted file mode 100644 index 6a042f4..0000000 --- a/install-win32/openssl/README.txt +++ /dev/null @@ -1,21 +0,0 @@ -Rebuild OpenSSL tarball without symbolic links, so -it can be extracted on Windows (run on Unix): - - [download tarball and .asc sig] - gpg --verify openssl-0.9.8k.tar.gz.asc - tar xfz openssl-0.9.8k.tar.gz - tar cfzh openssl-0.9.8k-nolinks.tar.gz openssl-0.9.8k - -To apply patch (in MSYS shell): - - cd /c/src/openssl-0.9.8k - patch -p1 <../21/install-win32/openssl/openssl098.patch - -To build OpenSSL, open a command prompt window, then: - - cd \src\openssl-0.9.8k - ms\mw - -To build a new patch (optional): - - diff -urw openssl-0.9.8k.orig openssl-0.9.8k | grep -v '^Only in' >openssl098.patch diff --git a/install-win32/openssl/openssl097.patch b/install-win32/openssl/openssl097.patch deleted file mode 100644 index ccef40a..0000000 --- a/install-win32/openssl/openssl097.patch +++ /dev/null @@ -1,68 +0,0 @@ -[in msys bash window] -cd /c/src/openssl-0.9.7m -patch -p1 <../21/install-win32/openssl.patch - -[open command prompt window] -cd \src\openssl-0.9.7m -ms\mw - -diff -wur openssl-0.9.7m.orig/ms/mw.bat openssl-0.9.7m/ms/mw.bat ---- openssl-0.9.7m.orig/ms/mw.bat Sat Feb 22 11:02:46 2003 -+++ openssl-0.9.7m/ms/mw.bat Mon Jan 21 23:12:34 2008 -@@ -1,17 +1,23 @@ - @rem OpenSSL with Mingw32 - @rem -------------------- - -+@rem Include MinGW, MSYS, and ActiveState Perl in path -+set PATH=c:\perl\bin;c:\MinGW\bin;c:\msys\1.0\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem -+ - @rem Makefile - perl util\mkfiles.pl >MINFO --perl util\mk1mf.pl Mingw32 >ms\mingw32.mak -+perl util\mk1mf.pl no-idea no-mdc2 no-rc5 Mingw32 >ms\mingw32.mak -+ - @rem DLL definition files --perl util\mkdef.pl 32 libeay >ms\libeay32.def -+perl util\mkdef.pl no-idea no-mdc2 no-rc5 32 libeay >ms\libeay32.def - if errorlevel 1 goto end --perl util\mkdef.pl 32 ssleay >ms\ssleay32.def -+perl util\mkdef.pl no-idea no-mdc2 no-rc5 32 ssleay >ms\ssleay32.def - if errorlevel 1 goto end - - @rem Build the libraries --make -f ms/mingw32.mak -+ -+@rem JY added --win32 flag -+make --win32 -f ms/mingw32.mak - if errorlevel 1 goto end - - @rem Generate the DLLs and input libraries -@@ -20,7 +26,9 @@ - dllwrap --dllname libssl32.dll --output-lib out/libssl32.a --def ms/ssleay32.def out/libssl.a out/libeay32.a - if errorlevel 1 goto end - -+@rem JY added openssl.exe linked to DLL -+gcc -o openssl tmp\verify.o tmp\asn1pars.o tmp\req.o tmp\dgst.o tmp\dh.o tmp\dhparam.o tmp\enc.o tmp\passwd.o tmp\gendh.o tmp\errstr.o tmp\ca.o tmp\pkcs7.o tmp\crl2p7.o tmp\crl.o tmp\rsa.o tmp\rsautl.o tmp\dsa.o tmp\dsaparam.o tmp\x509.o tmp\genrsa.o tmp\gendsa.o tmp\s_server.o tmp\s_client.o tmp\speed.o tmp\s_time.o tmp\apps.o tmp\s_cb.o tmp\s_socket.o tmp\app_rand.o tmp\version.o tmp\sess_id.o tmp\ciphers.o tmp\nseq.o tmp\pkcs12.o tmp\pkcs8.o tmp\spkac.o tmp\smime.o tmp\rand.o tmp\engine.o tmp\ocsp.o tmp\prime.o tmp\openssl.o -leay32 -lssl32 -L. -lwsock32 -lgdi32 -+ - echo Done compiling OpenSSL - - :end -- -diff -wur openssl-0.9.7m.orig/util/pl/Mingw32.pl openssl-0.9.7m/util/pl/Mingw32.pl ---- openssl-0.9.7m.orig/util/pl/Mingw32.pl Sun May 16 23:28:32 2004 -+++ openssl-0.9.7m/util/pl/Mingw32.pl Mon Jan 21 17:52:36 2008 -@@ -99,10 +99,10 @@ - $n=&bname($target); - $ret.="$target: $files $dep_libs\n"; - $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n"; -- if (defined $sha1file) -- { -- $ret.="\t$openssl sha1 -hmac etaonrishdlcupfm -binary $target > $sha1file"; -- } -+# if (defined $sha1file) -+# { -+# $ret.="\t$openssl sha1 -hmac etaonrishdlcupfm -binary $target > $sha1file"; -+# } - $ret.="\n"; - return($ret); - } diff --git a/install-win32/openssl/openssl098.patch b/install-win32/openssl/openssl098.patch deleted file mode 100644 index 653d2fe..0000000 --- a/install-win32/openssl/openssl098.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff -urw tmp/openssl-0.9.8h/crypto/pqueue/pqueue.c openssl-0.9.8h/crypto/pqueue/pqueue.c ---- tmp/openssl-0.9.8h/crypto/pqueue/pqueue.c Tue Jun 28 06:53:34 2005 -+++ openssl-0.9.8h/crypto/pqueue/pqueue.c Wed Jun 4 02:52:42 2008 -@@ -199,10 +199,10 @@ - return found; - } - --#if PQ_64BIT_IS_INTEGER - void - pqueue_print(pqueue_s *pq) - { -+#if PQ_64BIT_IS_INTEGER - pitem *item = pq->items; - - while(item != NULL) -@@ -210,8 +210,8 @@ - printf("item\t" PQ_64BIT_PRINT "\n", item->priority); - item = item->next; - } -- } - #endif -+ } - - pitem * - pqueue_iterator(pqueue_s *pq) -diff -urw tmp/openssl-0.9.8h/ms/mw.bat openssl-0.9.8h/ms/mw.bat ---- tmp/openssl-0.9.8h/ms/mw.bat Sat Feb 22 11:00:10 2003 -+++ openssl-0.9.8h/ms/mw.bat Wed Jun 4 02:56:54 2008 -@@ -1,17 +1,23 @@ - @rem OpenSSL with Mingw32 - @rem -------------------- - -+@rem Include MinGW, MSYS, and ActiveState Perl in path -+set PATH=c:\bin;C:\Perl\bin\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;c:\MinGW\bin;c:\msys\1.0\bin -+ - @rem Makefile - perl util\mkfiles.pl >MINFO --perl util\mk1mf.pl Mingw32 >ms\mingw32.mak -+perl util\mk1mf.pl no-idea no-mdc2 no-rc5 Mingw32 >ms\mingw32.mak -+ - @rem DLL definition files --perl util\mkdef.pl 32 libeay >ms\libeay32.def -+perl util\mkdef.pl no-idea no-mdc2 no-rc5 32 libeay >ms\libeay32.def - if errorlevel 1 goto end --perl util\mkdef.pl 32 ssleay >ms\ssleay32.def -+perl util\mkdef.pl no-idea no-mdc2 no-rc5 32 ssleay >ms\ssleay32.def - if errorlevel 1 goto end - - @rem Build the libraries --make -f ms/mingw32.mak -+ -+@rem JY added --win32 -+make --win32 -f ms/mingw32.mak - if errorlevel 1 goto end - - @rem Generate the DLLs and input libraries diff --git a/install-win32/openvpn.nsi b/install-win32/openvpn.nsi deleted file mode 100755 index f06c5aa..0000000 --- a/install-win32/openvpn.nsi +++ /dev/null @@ -1,886 +0,0 @@ -; **************************************************************************** -; * Copyright (C) 2002-2010 OpenVPN Technologies, Inc. * -; * 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. * -; **************************************************************************** - -; OpenVPN install script for Windows, using NSIS - -SetCompressor lzma - -!include "MUI.nsh" - -!include "defs.nsi" -!include "guidefs.nsi" -!include "xguidefs.nsi" -!include "setpath.nsi" -!include "GetWindowsVersion.nsi" - -!ifdef EXTRACT_FILES -!include "MultiFileExtract.nsi" -!endif - -!define GEN ".." -!define BIN "${GEN}\bin" -!define LIB "${GEN}\lib" - -; Which GUI to use (XGUI has priority). -; We will define either USE_XGUI (XML-based version) or -; USE_GUI (Mathias Sundman version) but not both. -!ifdef OPENVPN_XGUI_DEFINED -!define USE_XGUI -!else -!ifdef OPENVPN_GUI_DEFINED -!define USE_GUI -!endif -!endif - -!define PRODUCT_ICON "icon.ico" - -!ifdef USE_XGUI -!define XGUI_POSTFIX "X" -!else -!define XGUI_POSTFIX "" -!endif - -!ifdef PRODUCT_TAP_DEBUG -!define DBG_POSTFIX "-DBG" -!else -!define DBG_POSTFIX "" -!endif - -!define VERSION "${PRODUCT_VERSION}${XGUI_POSTFIX}${DBG_POSTFIX}" - -!define TAP "${PRODUCT_TAP_ID}" -!define TAPDRV "${TAP}.sys" - -; Default service settings -!define SERV_CONFIG_DIR "$INSTDIR\config" -!define SERV_CONFIG_EXT "${PRODUCT_FILE_EXT}" -!define SERV_EXE_PATH "$INSTDIR\bin\${PRODUCT_UNIX_NAME}.exe" -!define SERV_LOG_DIR "$INSTDIR\log" -!define SERV_PRIORITY "NORMAL_PRIORITY_CLASS" -!define SERV_LOG_APPEND "0" - -; XGUI variables -!define XGUI_EXE ovpn-xgui-en.exe -!define XGUI_TRAY ovpn-tray.exe -!define XGUI_XMLSERV ovpn-xmlserv.exe -!define XGUI_HTDOCS htdocs - -!define XGUI_AJAX_GUI_NAME "${PRODUCT_NAME} Ajax GUI" -!define XGUI_TRANSITION_GUI_NAME "${PRODUCT_NAME} Transitional GUI" - -;-------------------------------- -;Configuration - - ;General - - OutFile "${GEN}\${PRODUCT_UNIX_NAME}-${VERSION}${OUTFILE_LABEL}-install.exe" - - ShowInstDetails show - ShowUninstDetails show - - ;Folder selection page - InstallDir "$PROGRAMFILES\${PRODUCT_NAME}" - - ;Remember install folder - InstallDirRegKey HKCU "Software\${PRODUCT_NAME}" "" - -;-------------------------------- -;Modern UI Configuration - - Name "${PRODUCT_NAME} ${VERSION} ${TITLE_LABEL}" - - !define MUI_WELCOMEPAGE_TEXT "This wizard will guide you through the installation of ${PRODUCT_NAME}, an Open Source VPN package by James Yonan.\r\n\r\nNote that the Windows version of ${PRODUCT_NAME} will only run on Win 2000, XP, or higher.\r\n\r\n\r\n" - - !define MUI_COMPONENTSPAGE_TEXT_TOP "Select the components to install/upgrade. Stop any ${PRODUCT_NAME} processes or the ${PRODUCT_NAME} service if it is running. All DLLs are installed locally." - - !define MUI_COMPONENTSPAGE_SMALLDESC - !ifdef USE_XGUI - !define MUI_FINISHPAGE_SHOWREADME "http://openvpn.net/" - !define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED - !else - !define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\INSTALL-win32.txt" - !endif - !define MUI_FINISHPAGE_NOAUTOCLOSE - !define MUI_ABORTWARNING - !define MUI_ICON "${GEN}\images\${PRODUCT_ICON}" - !define MUI_UNICON "${GEN}\images\${PRODUCT_ICON}" - !define MUI_HEADERIMAGE - !define MUI_HEADERIMAGE_BITMAP "${GEN}\images\install-whirl.bmp" - !define MUI_UNFINISHPAGE_NOAUTOCLOSE - - !insertmacro MUI_PAGE_WELCOME - !insertmacro MUI_PAGE_LICENSE "${GEN}\text\license.txt" - !insertmacro MUI_PAGE_COMPONENTS - !insertmacro MUI_PAGE_DIRECTORY - !insertmacro MUI_PAGE_INSTFILES - !insertmacro MUI_PAGE_FINISH - - !insertmacro MUI_UNPAGE_CONFIRM - !insertmacro MUI_UNPAGE_INSTFILES - !insertmacro MUI_UNPAGE_FINISH - - -;-------------------------------- -;Languages - - !insertmacro MUI_LANGUAGE "English" - -;-------------------------------- -;Language Strings - - LangString DESC_SecOpenVPNUserSpace ${LANG_ENGLISH} "Install ${PRODUCT_NAME} user-space components, including ${PRODUCT_UNIX_NAME}.exe." - -!ifdef USE_GUI - LangString DESC_SecOpenVPNGUI ${LANG_ENGLISH} "Install ${PRODUCT_NAME} GUI by Mathias Sundman" -!endif - -!ifdef USE_XGUI - LangString DESC_SecOpenVPNXGUI ${LANG_ENGLISH} "Install ${PRODUCT_NAME} XML-based GUI" -!endif - - LangString DESC_SecOpenVPNEasyRSA ${LANG_ENGLISH} "Install ${PRODUCT_NAME} RSA scripts for X509 certificate management." - - LangString DESC_SecOpenSSLDLLs ${LANG_ENGLISH} "Install OpenSSL DLLs locally (may be omitted if DLLs are already installed globally)." - - LangString DESC_SecPKCS11DLLs ${LANG_ENGLISH} "Install PKCS#11 helper DLLs locally (may be omitted if DLLs are already installed globally)." - - LangString DESC_SecTAP ${LANG_ENGLISH} "Install/Upgrade the TAP virtual device driver. Will not interfere with CIPE." - - LangString DESC_SecService ${LANG_ENGLISH} "Install the ${PRODUCT_NAME} service wrapper (${PRODUCT_UNIX_NAME}serv.exe)" - - LangString DESC_SecOpenSSLUtilities ${LANG_ENGLISH} "Install the OpenSSL Utilities (used for generating public/private key pairs)." - - LangString DESC_SecAddPath ${LANG_ENGLISH} "Add ${PRODUCT_NAME} executable directory to the current user's PATH." - - LangString DESC_SecAddShortcuts ${LANG_ENGLISH} "Add ${PRODUCT_NAME} shortcuts to the current user's Start Menu." - - LangString DESC_SecFileAssociation ${LANG_ENGLISH} "Register ${PRODUCT_NAME} config file association (*.${SERV_CONFIG_EXT})" - -;-------------------------------- -;Reserve Files - - ;Things that need to be extracted on first (keep these lines before any File command!) - ;Only useful for BZIP2 compression - - ReserveFile "${GEN}\images\install-whirl.bmp" - -;-------------------------------- -;Macros - -!macro WriteRegStringIfUndef ROOT SUBKEY KEY VALUE -Push $R0 -ReadRegStr $R0 "${ROOT}" "${SUBKEY}" "${KEY}" -StrCmp $R0 "" +1 +2 -WriteRegStr "${ROOT}" "${SUBKEY}" "${KEY}" '${VALUE}' -Pop $R0 -!macroend - -!macro DelRegStringIfUnchanged ROOT SUBKEY KEY VALUE -Push $R0 -ReadRegStr $R0 "${ROOT}" "${SUBKEY}" "${KEY}" -StrCmp $R0 '${VALUE}' +1 +2 -DeleteRegValue "${ROOT}" "${SUBKEY}" "${KEY}" -Pop $R0 -!macroend - -!macro DelRegKeyIfUnchanged ROOT SUBKEY VALUE -Push $R0 -ReadRegStr $R0 "${ROOT}" "${SUBKEY}" "" -StrCmp $R0 '${VALUE}' +1 +2 -DeleteRegKey "${ROOT}" "${SUBKEY}" -Pop $R0 -!macroend - -!macro DelRegKeyIfEmpty ROOT SUBKEY -Push $R0 -EnumRegValue $R0 "${ROOT}" "${SUBKEY}" 1 -StrCmp $R0 "" +1 +2 -DeleteRegKey /ifempty "${ROOT}" "${SUBKEY}" -Pop $R0 -!macroend - -;------------------------------------------ -;Set reboot flag based on tapinstall return - -Function CheckReboot - IntCmp $R0 1 "" noreboot noreboot - IntOp $R0 0 & 0 - SetRebootFlag true - DetailPrint "REBOOT flag set" - noreboot: -FunctionEnd - -;-------------------------------- -;Installer Sections - -Function .onInit - ClearErrors - -# Verify that user has admin privs - UserInfo::GetName - IfErrors ok - Pop $R0 - UserInfo::GetAccountType - Pop $R1 - StrCmp $R1 "Admin" ok - Messagebox MB_OK "Administrator privileges required to install ${PRODUCT_NAME} [$R0/$R1]" - Abort - ok: - -# Delete previous start menu - RMDir /r $SMPROGRAMS\${PRODUCT_NAME} - -!ifdef CHECK_WINDOWS_VERSION -# Check windows version - Call GetWindowsVersion - Pop $1 - StrCmp $1 "2000" goodwinver - StrCmp $1 "XP" goodwinver - StrCmp $1 "2003" goodwinver - StrCmp $1 "VISTA" goodwinver - - Messagebox MB_OK "Sorry, ${PRODUCT_NAME} does not currently support Windows $1" - Abort - -goodwinver: - System::Call "kernel32::GetCurrentProcess() i .s" - System::Call "kernel32::IsWow64Process(i s, *i .r0)" - IntCmp $0 0 init32bits - - ; we are running on 64-bit windows - StrCmp $1 "VISTA" vista64bummer - -# Messagebox MB_OK "Sorry, ${PRODUCT_NAME} doesn't currently support 64-bit Windows." -# Abort - -vista64bummer: - -# Messagebox MB_OK "Sorry, ${PRODUCT_NAME} doesn't currently support 64-bit Vista because Microsoft doesn't allow the installation of 64 bit unsigned drivers." -# Abort - -init32bits: - -!endif - -FunctionEnd - -!ifndef SF_SELECTED -!define SF_SELECTED 1 -!endif - -;-------------------- -;Pre-install section - -Section -pre - - ; Stop OpenVPN if currently running - DetailPrint "Previous Service REMOVE (if exists)" - nsExec::ExecToLog '"$INSTDIR\bin\${PRODUCT_UNIX_NAME}serv.exe" -remove' - Pop $R0 # return value/error/timeout - -!ifdef USE_XGUI - DetailPrint "Previous XML Service REMOVE (if exists)" - nsExec::ExecToLog '"$INSTDIR\bin\${XGUI_XMLSERV}" -remove' - Pop $R0 # return value/error/timeout -!endif - - Sleep 3000 - -SectionEnd - -Section "${PRODUCT_NAME} User-Space Components" SecOpenVPNUserSpace - - SetOverwrite on - SetOutPath "$INSTDIR\bin" - - File "${BIN}\${PRODUCT_UNIX_NAME}.exe" - -SectionEnd - -!ifdef USE_GUI -Section "${PRODUCT_NAME} GUI" SecOpenVPNGUI - - SetOverwrite on - SetOutPath "$INSTDIR\bin" - - File "${BIN}\${OPENVPN_GUI}" - -SectionEnd -!endif - -!ifdef USE_XGUI -Section "${PRODUCT_NAME} XML-based GUI" SecOpenVPNXGUI - - SetOverwrite on - - SetOutPath "$INSTDIR\bin" - File "${BIN}\${XGUI_EXE}" - File "${BIN}\${XGUI_TRAY}" - File "${BIN}\${XGUI_XMLSERV}" - - SetOutPath "$INSTDIR\${XGUI_HTDOCS}" - File "${GEN}\${XGUI_HTDOCS}\*.*" - -SectionEnd -!endif - -Section "${PRODUCT_NAME} RSA Certificate Management Scripts" SecOpenVPNEasyRSA - - SetOverwrite on - SetOutPath "$INSTDIR\easy-rsa" - - File "${GEN}\easy-rsa\openssl-1.0.0.cnf" - File "${GEN}\easy-rsa\vars.bat.sample" - - File "${GEN}\easy-rsa\init-config.bat" - - File "${GEN}\easy-rsa\README.txt" - File "${GEN}\easy-rsa\build-ca.bat" - File "${GEN}\easy-rsa\build-dh.bat" - File "${GEN}\easy-rsa\build-key-server.bat" - File "${GEN}\easy-rsa\build-key.bat" - File "${GEN}\easy-rsa\build-key-pkcs12.bat" - File "${GEN}\easy-rsa\clean-all.bat" - File "${GEN}\easy-rsa\index.txt.start" - File "${GEN}\easy-rsa\revoke-full.bat" - File "${GEN}\easy-rsa\serial.start" - -SectionEnd - -Section "${PRODUCT_NAME} Service" SecService - - SetOverwrite on - - SetOutPath "$INSTDIR\bin" - File "${BIN}\${PRODUCT_UNIX_NAME}serv.exe" - - SetOutPath "$INSTDIR\config" - - FileOpen $R0 "$INSTDIR\config\README.txt" w - FileWrite $R0 "This directory should contain ${PRODUCT_NAME} configuration files$\r$\n" - FileWrite $R0 "each having an extension of .${SERV_CONFIG_EXT}$\r$\n" - FileWrite $R0 "$\r$\n" - FileWrite $R0 "When ${PRODUCT_NAME} is started as a service, a separate ${PRODUCT_NAME}$\r$\n" - FileWrite $R0 "process will be instantiated for each configuration file.$\r$\n" - FileClose $R0 - - SetOutPath "$INSTDIR\sample-config" - File "${GEN}\samples\sample.${SERV_CONFIG_EXT}" - File "${GEN}\samples\client.${SERV_CONFIG_EXT}" - File "${GEN}\samples\server.${SERV_CONFIG_EXT}" - - CreateDirectory "$INSTDIR\log" - FileOpen $R0 "$INSTDIR\log\README.txt" w - FileWrite $R0 "This directory will contain the log files for ${PRODUCT_NAME}$\r$\n" - FileWrite $R0 "sessions which are being run as a service.$\r$\n" - FileClose $R0 - -SectionEnd - -Section "${PRODUCT_NAME} File Associations" SecFileAssociation -SectionEnd - -Section "OpenSSL DLLs" SecOpenSSLDLLs - - SetOverwrite on - SetOutPath "$INSTDIR\bin" - File "${LIB}\libeay32.dll" - File "${LIB}\libssl32.dll" - -SectionEnd - -Section "OpenSSL Utilities" SecOpenSSLUtilities - - SetOverwrite on - SetOutPath "$INSTDIR\bin" - File "${BIN}\openssl.exe" - -SectionEnd - -Section "PKCS#11 DLLs" SecPKCS11DLLs - - SetOverwrite on - SetOutPath "$INSTDIR\bin" - File "${LIB}\libpkcs11-helper-1.dll" - -SectionEnd - -Section "TAP Virtual Ethernet Adapter" SecTAP - - SetOverwrite on - - FileOpen $R0 "$INSTDIR\bin\addtap.bat" w - FileWrite $R0 "rem Add a new TAP virtual ethernet adapter$\r$\n" - FileWrite $R0 '"$INSTDIR\bin\tapinstall.exe" install "$INSTDIR\driver\OemWin2k.inf" ${TAP}$\r$\n' - FileWrite $R0 "pause$\r$\n" - FileClose $R0 - - FileOpen $R0 "$INSTDIR\bin\deltapall.bat" w - FileWrite $R0 "echo WARNING: this script will delete ALL TAP virtual adapters (use the device manager to delete adapters one at a time)$\r$\n" - FileWrite $R0 "pause$\r$\n" - FileWrite $R0 '"$INSTDIR\bin\tapinstall.exe" remove ${TAP}$\r$\n' - FileWrite $R0 "pause$\r$\n" - FileClose $R0 - - ; Check if we are running on a 64 bit system. - System::Call "kernel32::GetCurrentProcess() i .s" - System::Call "kernel32::IsWow64Process(i s, *i .r0)" - IntCmp $0 0 tap-32bit - -; tap-64bit: - - DetailPrint "We are running on a 64-bit system." - - SetOutPath "$INSTDIR\bin" - - File "${GEN}\tapinstall\amd64\tapinstall.exe" - - SetOutPath "$INSTDIR\driver" - - File "${GEN}\driver\amd64\OemWin2k.inf" - File "${GEN}\driver\amd64\${PRODUCT_TAP_ID}.cat" - File "${GEN}\driver\amd64\${TAPDRV}" - -goto tapend - -tap-32bit: - - DetailPrint "We are running on a 32-bit system." - - SetOutPath "$INSTDIR\bin" - File "${GEN}\tapinstall\i386\tapinstall.exe" - - SetOutPath "$INSTDIR\driver" - File "${GEN}\driver\i386\OemWin2k.inf" - File "${GEN}\driver\i386\${PRODUCT_TAP_ID}.cat" - File "${GEN}\driver\i386\${TAPDRV}" - - tapend: - -SectionEnd - -Section "Add ${PRODUCT_NAME} to PATH" SecAddPath - - ; remove previously set path (if any) - Push "$INSTDIR\bin" - Call RemoveFromPath - - ; append our bin directory to end of current user path - Push "$INSTDIR\bin" - Call AddToPath - -SectionEnd - -Section "Add Shortcuts to Start Menu" SecAddShortcuts - - SetOverwrite on - CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}" - CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}\Documentation" - WriteINIStr "$SMPROGRAMS\${PRODUCT_NAME}\Documentation\${PRODUCT_NAME} Windows Notes.url" "InternetShortcut" "URL" "http://openvpn.net/INSTALL-win32.html" - WriteINIStr "$SMPROGRAMS\${PRODUCT_NAME}\Documentation\${PRODUCT_NAME} Manual Page.url" "InternetShortcut" "URL" "http://openvpn.net/man.html" - WriteINIStr "$SMPROGRAMS\${PRODUCT_NAME}\Documentation\${PRODUCT_NAME} HOWTO.url" "InternetShortcut" "URL" "http://openvpn.net/howto.html" - WriteINIStr "$SMPROGRAMS\${PRODUCT_NAME}\Documentation\${PRODUCT_NAME} Web Site.url" "InternetShortcut" "URL" "http://openvpn.net/" - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Uninstall ${PRODUCT_NAME}.lnk" "$INSTDIR\Uninstall.exe" - -SectionEnd - -;-------------------- -;Post-install section - -Section -post - - SetOverwrite on - - ; delete old devcon.exe - Delete "$INSTDIR\bin\devcon.exe" - - ; Store README, license, icon - SetOverwrite on - SetOutPath $INSTDIR - !ifndef USE_XGUI - File "${GEN}\text\INSTALL-win32.txt" - !endif - File "${GEN}\text\license.txt" - File "${GEN}\images\${PRODUCT_ICON}" - - ; store sample config files - !ifdef SAMPCONF_DIR - SetOverwrite on - SetOutPath "$INSTDIR\config" - !ifdef SAMPCONF_CONF - File "${GEN}\conf\${SAMPCONF_CONF}" - !endif - !ifdef SAMPCONF_CONF2 - File "${GEN}\conf\${SAMPCONF_CONF2}" - !endif - !ifdef SAMPCONF_P12 - File "${GEN}\conf\${SAMPCONF_P12}" - !endif - !ifdef SAMPCONF_TA - File "${GEN}\conf\${SAMPCONF_TA}" - !endif - !ifdef SAMPCONF_CA - File "${GEN}\conf\${SAMPCONF_CA}" - !endif - !ifdef SAMPCONF_CRT - File "${GEN}\conf\${SAMPCONF_CRT}" - !endif - !ifdef SAMPCONF_KEY - File "${GEN}\conf\${SAMPCONF_KEY}" - !endif - !ifdef SAMPCONF_DH - File "${GEN}\conf\${SAMPCONF_DH}" - !endif - !endif - - ; Try to extract files if present - !ifdef EXTRACT_FILES - Push "$INSTDIR" - Call MultiFileExtract - Pop $R0 - IntCmp $R0 0 +3 +1 +1 - DetailPrint "MultiFileExtract Failed status=$R0" - goto +2 - DetailPrint "MultiFileExtract Succeeded" - !endif - - ; - ; install/upgrade TAP driver if selected, using tapinstall.exe - ; - SectionGetFlags ${SecTAP} $R0 - IntOp $R0 $R0 & ${SF_SELECTED} - IntCmp $R0 ${SF_SELECTED} "" notap notap - ; TAP install/update was selected. - ; Should we install or update? - ; If tapinstall error occurred, $5 will - ; be nonzero. - IntOp $5 0 & 0 - nsExec::ExecToStack '"$INSTDIR\bin\tapinstall.exe" hwids ${TAP}' - Pop $R0 # return value/error/timeout - IntOp $5 $5 | $R0 - DetailPrint "tapinstall hwids returned: $R0" - - ; If tapinstall output string contains "${TAP}" we assume - ; that TAP device has been previously installed, - ; therefore we will update, not install. - Push "${TAP}" - Call StrStr - Pop $R0 - - IntCmp $5 0 "" tapinstall_check_error tapinstall_check_error - IntCmp $R0 -1 tapinstall - - ;tapupdate: - DetailPrint "TAP UPDATE" - nsExec::ExecToLog '"$INSTDIR\bin\tapinstall.exe" update "$INSTDIR\driver\OemWin2k.inf" ${TAP}' - Pop $R0 # return value/error/timeout - Call CheckReboot - IntOp $5 $5 | $R0 - DetailPrint "tapinstall update returned: $R0" - Goto tapinstall_check_error - - tapinstall: - DetailPrint "TAP REMOVE OLD TAP" - - nsExec::ExecToLog '"$INSTDIR\bin\tapinstall.exe" remove TAP0801' - Pop $R0 # return value/error/timeout - DetailPrint "tapinstall remove TAP0801 returned: $R0" - - DetailPrint "TAP INSTALL (${TAP})" - nsExec::ExecToLog '"$INSTDIR\bin\tapinstall.exe" install "$INSTDIR\driver\OemWin2k.inf" ${TAP}' - Pop $R0 # return value/error/timeout - Call CheckReboot - IntOp $5 $5 | $R0 - DetailPrint "tapinstall install returned: $R0" - - tapinstall_check_error: - DetailPrint "tapinstall cumulative status: $5" - IntCmp $5 0 notap - MessageBox MB_OK "An error occurred installing the TAP device driver." - - notap: - - ; Store install folder in registry - WriteRegStr HKLM SOFTWARE\${PRODUCT_NAME} "" $INSTDIR - - ; install as a service if requested - SectionGetFlags ${SecService} $R0 - IntOp $R0 $R0 & ${SF_SELECTED} - IntCmp $R0 ${SF_SELECTED} "" noserv noserv - - ; set registry parameters for openvpnserv - !insertmacro WriteRegStringIfUndef HKLM "SOFTWARE\${PRODUCT_NAME}" "config_dir" "${SERV_CONFIG_DIR}" - !insertmacro WriteRegStringIfUndef HKLM "SOFTWARE\${PRODUCT_NAME}" "config_ext" "${SERV_CONFIG_EXT}" - !insertmacro WriteRegStringIfUndef HKLM "SOFTWARE\${PRODUCT_NAME}" "exe_path" "${SERV_EXE_PATH}" - !insertmacro WriteRegStringIfUndef HKLM "SOFTWARE\${PRODUCT_NAME}" "log_dir" "${SERV_LOG_DIR}" - !insertmacro WriteRegStringIfUndef HKLM "SOFTWARE\${PRODUCT_NAME}" "priority" "${SERV_PRIORITY}" - !insertmacro WriteRegStringIfUndef HKLM "SOFTWARE\${PRODUCT_NAME}" "log_append" "${SERV_LOG_APPEND}" - - ; install openvpnserv as a service (to be started manually from service control manager) - DetailPrint "Service INSTALL" - nsExec::ExecToLog '"$INSTDIR\bin\${PRODUCT_UNIX_NAME}serv.exe" -install' - Pop $R0 # return value/error/timeout - - noserv: - !ifdef USE_XGUI - IfFileExists "$INSTDIR\bin\${XGUI_XMLSERV}" "" fileass - ; install and automatically start XML service - DetailPrint "XML Service INSTALL" - nsExec::ExecToLog '"$INSTDIR\bin\${XGUI_XMLSERV}" -install' - Pop $R0 # return value/error/timeout - - Sleep 2000 - - DetailPrint "XML Service START" - nsExec::ExecToLog '"$INSTDIR\bin\${XGUI_XMLSERV}" -start' - Pop $R0 # return value/error/timeout - - !endif - - ; Create file association if requested - fileass: - SectionGetFlags ${SecFileAssociation} $R0 - IntOp $R0 $R0 & ${SF_SELECTED} - IntCmp $R0 ${SF_SELECTED} "" noass noass - WriteRegStr HKCR ".${SERV_CONFIG_EXT}" "" "${PRODUCT_NAME}File" - WriteRegStr HKCR "${PRODUCT_NAME}File" "" "${PRODUCT_NAME} Config File" - WriteRegStr HKCR "${PRODUCT_NAME}File\shell" "" "open" - WriteRegStr HKCR "${PRODUCT_NAME}File\DefaultIcon" "" "$INSTDIR\${PRODUCT_ICON},0" - WriteRegStr HKCR "${PRODUCT_NAME}File\shell\open\command" "" 'notepad.exe "%1"' - WriteRegStr HKCR "${PRODUCT_NAME}File\shell\run" "" "Start ${PRODUCT_NAME} on this config file" - WriteRegStr HKCR "${PRODUCT_NAME}File\shell\run\command" "" '"$INSTDIR\bin\${PRODUCT_UNIX_NAME}.exe" --pause-exit --config "%1"' - - ; Create start menu folders - noass: - CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}\Utilities" - CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}\Shortcuts" - - ; Create start menu and desktop shortcuts to OpenVPN GUI - !ifdef USE_GUI - IfFileExists "$INSTDIR\bin\${OPENVPN_GUI}" "" tryaddxgui - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${PRODUCT_NAME} GUI.lnk" "$INSTDIR\bin\${OPENVPN_GUI}" "" - CreateShortcut "$DESKTOP\${PRODUCT_NAME} GUI.lnk" "$INSTDIR\bin\${OPENVPN_GUI}" - !endif - - ; Create start menu and desktop shortcuts to OpenVPN XGUI - tryaddxgui: - !ifdef USE_XGUI - IfFileExists "$INSTDIR\bin\${XGUI_EXE}" "" tryaddtray - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${XGUI_TRANSITION_GUI_NAME}.lnk" "$INSTDIR\bin\${XGUI_EXE}" "" -# CreateShortcut "$DESKTOP\${XGUI_TRANSITION_GUI_NAME}.lnk" "$INSTDIR\bin\${XGUI_EXE}" - tryaddtray: - IfFileExists "$INSTDIR\bin\${XGUI_TRAY}" "" tryaddtap - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${XGUI_AJAX_GUI_NAME}.lnk" "$INSTDIR\bin\${XGUI_EXE}" "" - CreateShortcut "$DESKTOP\${XGUI_AJAX_GUI_NAME}.lnk" "$INSTDIR\bin\${XGUI_TRAY}" - !endif - - ; Create start menu shortcuts to addtap.bat and deltapall.bat - tryaddtap: - IfFileExists "$INSTDIR\bin\addtap.bat" "" trydeltap - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Utilities\Add a new TAP virtual ethernet adapter.lnk" "$INSTDIR\bin\addtap.bat" "" - - trydeltap: - IfFileExists "$INSTDIR\bin\deltapall.bat" "" config_shortcut - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Utilities\Delete ALL TAP virtual ethernet adapters.lnk" "$INSTDIR\bin\deltapall.bat" "" - - ; Create start menu shortcuts for config and log directories - config_shortcut: - IfFileExists "$INSTDIR\config" "" log_shortcut - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Shortcuts\${PRODUCT_NAME} configuration file directory.lnk" "$INSTDIR\config" "" - - log_shortcut: - IfFileExists "$INSTDIR\log" "" samp_shortcut - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Shortcuts\${PRODUCT_NAME} log file directory.lnk" "$INSTDIR\log" "" - - samp_shortcut: - IfFileExists "$INSTDIR\sample-config" "" genkey_shortcut - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Shortcuts\${PRODUCT_NAME} Sample Configuration Files.lnk" "$INSTDIR\sample-config" "" - - genkey_shortcut: - IfFileExists "$INSTDIR\bin\${PRODUCT_UNIX_NAME}.exe" "" noshortcuts - IfFileExists "$INSTDIR\config" "" noshortcuts - CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Utilities\Generate a static ${PRODUCT_NAME} key.lnk" "$INSTDIR\bin\${PRODUCT_UNIX_NAME}.exe" '--pause-exit --verb 3 --genkey --secret "$INSTDIR\config\key.txt"' "$INSTDIR\${PRODUCT_ICON}" 0 - - noshortcuts: - ; Create uninstaller - WriteUninstaller "$INSTDIR\Uninstall.exe" - - ; Show up in Add/Remove programs - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "DisplayName" "${PRODUCT_NAME} ${VERSION}" - WriteRegExpandStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "UninstallString" "$INSTDIR\Uninstall.exe" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "DisplayIcon" "$INSTDIR\${PRODUCT_ICON}" - WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" "DisplayVersion" "${VERSION}" - - ; Advise a reboot - ;Messagebox MB_OK "IMPORTANT: Rebooting the system is advised in order to finalize TAP driver installation/upgrade (this is an informational message only, pressing OK will not reboot)." - -SectionEnd - -;-------------------------------- -;Descriptions - -!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN - !insertmacro MUI_DESCRIPTION_TEXT ${SecOpenVPNUserSpace} $(DESC_SecOpenVPNUserSpace) - !ifdef USE_GUI - !insertmacro MUI_DESCRIPTION_TEXT ${SecOpenVPNGUI} $(DESC_SecOpenVPNGUI) - !endif - !ifdef USE_XGUI - !insertmacro MUI_DESCRIPTION_TEXT ${SecOpenVPNXGUI} $(DESC_SecOpenVPNXGUI) - !endif - !insertmacro MUI_DESCRIPTION_TEXT ${SecOpenVPNEasyRSA} $(DESC_SecOpenVPNEasyRSA) - !insertmacro MUI_DESCRIPTION_TEXT ${SecTAP} $(DESC_SecTAP) - !insertmacro MUI_DESCRIPTION_TEXT ${SecOpenSSLUtilities} $(DESC_SecOpenSSLUtilities) - !insertmacro MUI_DESCRIPTION_TEXT ${SecOpenSSLDLLs} $(DESC_SecOpenSSLDLLs) - !insertmacro MUI_DESCRIPTION_TEXT ${SecPKCS11DLLs} $(DESC_SecPKCS11DLLs) - !insertmacro MUI_DESCRIPTION_TEXT ${SecAddPath} $(DESC_SecAddPath) - !insertmacro MUI_DESCRIPTION_TEXT ${SecAddShortcuts} $(DESC_SecAddShortcuts) - !insertmacro MUI_DESCRIPTION_TEXT ${SecService} $(DESC_SecService) - !insertmacro MUI_DESCRIPTION_TEXT ${SecFileAssociation} $(DESC_SecFileAssociation) -!insertmacro MUI_FUNCTION_DESCRIPTION_END - -;-------------------------------- -;Uninstaller Section - -Function un.onInit - ClearErrors - UserInfo::GetName - IfErrors ok - Pop $R0 - UserInfo::GetAccountType - Pop $R1 - StrCmp $R1 "Admin" ok - Messagebox MB_OK "Administrator privileges required to uninstall ${PRODUCT_NAME} [$R0/$R1]" - Abort - ok: -FunctionEnd - -Section "Uninstall" - -!ifdef USE_XGUI - DetailPrint "XML Service REMOVE" - nsExec::ExecToLog '"$INSTDIR\bin\${XGUI_XMLSERV}" -remove' - Pop $R0 # return value/error/timeout -!endif - - ; Stop OpenVPN if currently running - DetailPrint "Service REMOVE" - nsExec::ExecToLog '"$INSTDIR\bin\${PRODUCT_UNIX_NAME}serv.exe" -remove' - Pop $R0 # return value/error/timeout - - Sleep 3000 - - DetailPrint "TAP REMOVE" - nsExec::ExecToLog '"$INSTDIR\bin\tapinstall.exe" remove ${TAP}' - Pop $R0 # return value/error/timeout - DetailPrint "tapinstall remove returned: $R0" - - Push "$INSTDIR\bin" - Call un.RemoveFromPath - - RMDir /r $SMPROGRAMS\${PRODUCT_NAME} - - ; delete sample config files - !ifdef SAMPCONF_DIR - !ifdef SAMPCONF_CONF - Delete "$INSTDIR\config\${SAMPCONF_CONF}" - !endif - !ifdef SAMPCONF_CONF2 - Delete "$INSTDIR\config\${SAMPCONF_CONF2}" - !endif - !ifdef SAMPCONF_P12 - Delete "$INSTDIR\config\${SAMPCONF_P12}" - !endif - !ifdef SAMPCONF_TA - Delete "$INSTDIR\config\${SAMPCONF_TA}" - !endif - !ifdef SAMPCONF_CA - Delete "$INSTDIR\config\${SAMPCONF_CA}" - !endif - !ifdef SAMPCONF_CRT - Delete "$INSTDIR\config\${SAMPCONF_CRT}" - !endif - !ifdef SAMPCONF_KEY - Delete "$INSTDIR\config\${SAMPCONF_KEY}" - !endif - !ifdef SAMPCONF_DH - Delete "$INSTDIR\config\${SAMPCONF_DH}" - !endif - !endif - - !ifdef USE_GUI - Delete "$INSTDIR\bin\${OPENVPN_GUI}" - Delete "$DESKTOP\${PRODUCT_NAME} GUI.lnk" - !endif - - !ifdef USE_XGUI - Delete "$INSTDIR\bin\${XGUI_EXE}" - Delete "$INSTDIR\bin\${XGUI_TRAY}" - Delete "$INSTDIR\bin\${XGUI_XMLSERV}" - RMDir /r "$INSTDIR\${XGUI_HTDOCS}" - Delete "$DESKTOP\${XGUI_AJAX_GUI_NAME}.lnk" - Delete "$DESKTOP\${XGUI_TRANSITION_GUI_NAME}.lnk" - !endif - - Delete "$INSTDIR\bin\${PRODUCT_UNIX_NAME}.exe" - Delete "$INSTDIR\bin\${PRODUCT_UNIX_NAME}serv.exe" - Delete "$INSTDIR\bin\libeay32.dll" - Delete "$INSTDIR\bin\libssl32.dll" - Delete "$INSTDIR\bin\libpkcs11-helper-1.dll" - Delete "$INSTDIR\bin\tapinstall.exe" - Delete "$INSTDIR\bin\addtap.bat" - Delete "$INSTDIR\bin\deltapall.bat" - - Delete "$INSTDIR\config\README.txt" - Delete "$INSTDIR\config\sample.${SERV_CONFIG_EXT}.txt" - - Delete "$INSTDIR\log\README.txt" - - Delete "$INSTDIR\driver\OemWin2k.inf" - Delete "$INSTDIR\driver\${PRODUCT_TAP_ID}.cat" - Delete "$INSTDIR\driver\${TAPDRV}" - - Delete "$INSTDIR\bin\openssl.exe" - - Delete "$INSTDIR\INSTALL-win32.txt" - Delete "$INSTDIR\${PRODUCT_ICON}" - Delete "$INSTDIR\license.txt" - Delete "$INSTDIR\Uninstall.exe" - - Delete "$INSTDIR\easy-rsa\openssl-1.0.0.cnf" - Delete "$INSTDIR\easy-rsa\vars.bat.sample" - Delete "$INSTDIR\easy-rsa\init-config.bat" - Delete "$INSTDIR\easy-rsa\README.txt" - Delete "$INSTDIR\easy-rsa\build-ca.bat" - Delete "$INSTDIR\easy-rsa\build-dh.bat" - Delete "$INSTDIR\easy-rsa\build-key-server.bat" - Delete "$INSTDIR\easy-rsa\build-key.bat" - Delete "$INSTDIR\easy-rsa\build-key-pkcs12.bat" - Delete "$INSTDIR\easy-rsa\clean-all.bat" - Delete "$INSTDIR\easy-rsa\index.txt.start" - Delete "$INSTDIR\easy-rsa\revoke-key.bat" - Delete "$INSTDIR\easy-rsa\revoke-full.bat" - Delete "$INSTDIR\easy-rsa\serial.start" - - Delete "$INSTDIR\sample-config\*.${PRODUCT_FILE_EXT}" - - RMDir "$INSTDIR\bin" - RMDir "$INSTDIR\config" - RMDir "$INSTDIR\driver" - RMDir "$INSTDIR\easy-rsa" - RMDir "$INSTDIR\sample-config" - RMDir /r "$INSTDIR\log" - RMDir "$INSTDIR" - - !insertmacro DelRegKeyIfUnchanged HKCR ".${SERV_CONFIG_EXT}" "${PRODUCT_NAME}File" - DeleteRegKey HKCR "${PRODUCT_NAME}File" - DeleteRegKey HKLM SOFTWARE\${PRODUCT_NAME} - DeleteRegKey HKCU "Software\${PRODUCT_NAME}" - DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" - - ;Messagebox MB_OK "IMPORTANT: If you intend on reinstalling ${PRODUCT_NAME} after this uninstall, and you are running Win2K, you are strongly urged to reboot before reinstalling (this is an informational message only, pressing OK will not reboot)." - -SectionEnd diff --git a/install-win32/setpath.nsi b/install-win32/setpath.nsi deleted file mode 100755 index a9626c3..0000000 --- a/install-win32/setpath.nsi +++ /dev/null @@ -1,231 +0,0 @@ -; Modify the user's PATH variable. -; -; Modified by JY to have both a RemoveFromPath -; and an un.RemoveFromPath which are basically -; copies of each other. Why does NSIS demand -; this nonsense? -; -; Modified Feb 14, 2005 by Mathias Sundman: -; Added code to remove the semicolon at the end of the path -; when uninstalling. -; -; Added code to make sure we don't insert an extra semicolon -; before our path if there already exist one at the end of -; the original path. -; -; Removed duplicated "un. and install" functions and made -; macros to duplicate the code instead. - -; example usage -; -;Section "Add to path" -; Push $INSTDIR -; Call AddToPath -;SectionEnd -; -;# ... -; -;Section "uninstall" -; # ... -; Push $INSTDIR -; Call un.RemoveFromPath -; # ... -;SectionEnd - -!verbose 3 -!include "WinMessages.NSH" -!verbose 4 - -;==================================================== -; AddToPath - Adds the given dir to the search path. -; Input - head of the stack -; Note - Win9x systems requires reboot -;==================================================== -Function AddToPath - Exch $0 - Push $1 - Push $2 - - Call IsNT - Pop $1 - StrCmp $1 1 AddToPath_NT - ; Not on NT - StrCpy $1 $WINDIR 2 - FileOpen $1 "$1\autoexec.bat" a - FileSeek $1 0 END - GetFullPathName /SHORT $0 $0 - FileWrite $1 "$\r$\nSET PATH=%PATH%;$0$\r$\n" - FileClose $1 - Goto AddToPath_done - - AddToPath_NT: - ReadRegStr $1 HKCU "Environment" "PATH" - StrCpy $2 $1 1 -1 # copy last char - StrCmp $2 ";" 0 +2 # if last char == ; - StrCpy $1 $1 -1 # remove last char - - StrCmp $1 "" AddToPath_NTdoIt - StrCpy $0 "$1;$0" - Goto AddToPath_NTdoIt - AddToPath_NTdoIt: - WriteRegExpandStr HKCU "Environment" "PATH" $0 - SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000 - - AddToPath_done: - Pop $2 - Pop $1 - Pop $0 -FunctionEnd - -;==================================================== -; RemoveFromPath - Remove a given dir from the path -; Input: head of the stack -;==================================================== -!macro RemoveFromPath un -Function ${un}RemoveFromPath - Exch $0 - Push $1 - Push $2 - Push $3 - Push $4 - Push $5 - - Call ${un}IsNT - Pop $1 - StrCmp $1 1 RemoveFromPath_NT - ; Not on NT - StrCpy $1 $WINDIR 2 - FileOpen $1 "$1\autoexec.bat" r - GetTempFileName $4 - FileOpen $2 $4 w - GetFullPathName /SHORT $0 $0 - StrCpy $0 "SET PATH=%PATH%;$0" - SetRebootFlag true - Goto RemoveFromPath_dosLoop - - RemoveFromPath_dosLoop: - FileRead $1 $3 - StrCmp $3 "$0$\r$\n" RemoveFromPath_dosLoop - StrCmp $3 "$0$\n" RemoveFromPath_dosLoop - StrCmp $3 "$0" RemoveFromPath_dosLoop - StrCmp $3 "" RemoveFromPath_dosLoopEnd - FileWrite $2 $3 - Goto RemoveFromPath_dosLoop - - RemoveFromPath_dosLoopEnd: - FileClose $2 - FileClose $1 - StrCpy $1 $WINDIR 2 - Delete "$1\autoexec.bat" - CopyFiles /SILENT $4 "$1\autoexec.bat" - Delete $4 - Goto RemoveFromPath_done - - RemoveFromPath_NT: - StrLen $2 $0 - ReadRegStr $1 HKCU "Environment" "PATH" - Push $1 - Push $0 - Call ${un}StrStr ; Find $0 in $1 - Pop $0 ; pos of our dir - IntCmp $0 -1 RemoveFromPath_done - ; else, it is in path - StrCpy $3 $1 $0 ; $3 now has the part of the path before our dir - IntOp $2 $2 + $0 ; $2 now contains the pos after our dir in the path (';') - IntOp $2 $2 + 1 ; $2 now containts the pos after our dir and the semicolon. - StrLen $0 $1 - StrCpy $1 $1 $0 $2 - StrCpy $3 "$3$1" - - StrCpy $5 $3 1 -1 # copy last char - StrCmp $5 ";" 0 +2 # if last char == ; - StrCpy $3 $3 -1 # remove last char - - WriteRegExpandStr HKCU "Environment" "PATH" $3 - SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment" /TIMEOUT=5000 - - RemoveFromPath_done: - Pop $5 - Pop $4 - Pop $3 - Pop $2 - Pop $1 - Pop $0 -FunctionEnd -!macroend -!insertmacro RemoveFromPath "" -!insertmacro RemoveFromPath "un." - - -;==================================================== -; StrStr - Finds a given string in another given string. -; Returns -1 if not found and the pos if found. -; Input: head of the stack - string to find -; second in the stack - string to find in -; Output: head of the stack -;==================================================== -!macro StrStr un -Function ${un}StrStr - Push $0 - Exch - Pop $0 ; $0 now have the string to find - Push $1 - Exch 2 - Pop $1 ; $1 now have the string to find in - Exch - Push $2 - Push $3 - Push $4 - Push $5 - - StrCpy $2 -1 - StrLen $3 $0 - StrLen $4 $1 - IntOp $4 $4 - $3 - - StrStr_loop: - IntOp $2 $2 + 1 - IntCmp $2 $4 0 0 StrStrReturn_notFound - StrCpy $5 $1 $3 $2 - StrCmp $5 $0 StrStr_done StrStr_loop - - StrStrReturn_notFound: - StrCpy $2 -1 - - StrStr_done: - Pop $5 - Pop $4 - Pop $3 - Exch $2 - Exch 2 - Pop $0 - Pop $1 -FunctionEnd -!macroend -!insertmacro StrStr "" -!insertmacro StrStr "un." - -;==================================================== -; IsNT - Returns 1 if the current system is NT, 0 -; otherwise. -; Output: head of the stack -;==================================================== -!macro IsNT un -Function ${un}IsNT - Push $0 - ReadRegStr $0 HKLM "SOFTWARE\Microsoft\Windows NT\CurrentVersion" CurrentVersion - StrCmp $0 "" 0 IsNT_yes - ; we are not NT. - Pop $0 - Push 0 - Return - - IsNT_yes: - ; NT!!! - Pop $0 - Push 1 -FunctionEnd -!macroend -!insertmacro IsNT "" -!insertmacro IsNT "un." - diff --git a/install-win32/settings.in b/install-win32/settings.in deleted file mode 100644 index 4a0a564..0000000 --- a/install-win32/settings.in +++ /dev/null @@ -1,71 +0,0 @@ -# Version numbers, settings, and dependencies -# for Windows OpenVPN installer. - -# Get the OpenVPN version number -!include "autodefs/version.in" - -# Branding -!define PRODUCT_NAME "OpenVPN" -!define PRODUCT_UNIX_NAME "openvpn" -!define PRODUCT_FILE_EXT "ovpn" - -# Allow --askpass and --auth-user-pass passwords to be read from a file -;!define ENABLE_PASSWORD_SAVE - -# Include the OpenVPN GUI exe in the installer. -# May be undefined. -!define OPENVPN_GUI_DIR "../openvpn-gui" -!define OPENVPN_GUI "openvpn-gui-1.0.3.exe" - -# Include the OpenVPN XML-based GUI exe in the installer. -# May be undefined. -;!define OPENVPN_XGUI_DIR "../ovpnxml" - -# Prebuilt libraries. DMALLOC is optional. -!define OPENSSL_DIR "../openssl.mingw/openssl-0.9.8o" -!define LZO_DIR "../lzo-2.02" -!define PKCS11_HELPER_DIR "../pkcs11-helper" -;!define DMALLOC_DIR "../dmalloc-5.4.2" - -# Prebuilt TAP drivers and tapinstall -!define TAPBINSRC "../tap_dist" - -# Directory containing python script for signing .exe files -!define SIGNTOOL "../signtool" - -# Optional directory of prebuilt OpenVPN binary components, -# to be used as a source when build-from-scratch prerequisites -# are not met. -;!define GENOUT_PREBUILT "../gen-prebuilt" - -# -j parameter passed to make -!define MAKE_JOBS 1 - -# output directory for built binaries -# and other generated files -!define GENOUT "gen" - -# delete GENOUT directory before starting -# set to "yes" or "no" -!define CLEAN "yes" - -# Don't strip executables and DLLs -;!define NO_STRIP - -; DEBUGGING -- set to something like "-DBG2" -!define OUTFILE_LABEL "" - -; DEBUGGING -- set to something like "DEBUG2" -!define TITLE_LABEL "" - -# include a sample configuration file and key -;!define SAMPCONF_DIR "test-key" -;!define SAMPCONF_CONF "test.ovpn" -;!define SAMPCONF_P12 "test.p12" -;!define SAMPCONF_TA "ta.key" -;!define SAMPCONF_CA "ca.crt" -;!define SAMPCONF_CRT "test.crt" -;!define SAMPCONF_KEY "test.key" - -# Extract files embedded in installer -;!define EXTRACT_FILES diff --git a/install-win32/trans.pl b/install-win32/trans.pl deleted file mode 100644 index 34fd207..0000000 --- a/install-win32/trans.pl +++ /dev/null @@ -1,97 +0,0 @@ -#!/usr/bin/perl - -# This script translates a simple definition-based grammar -# to either C, sh, Javascript, or in (in = identity grammar, i.e. -# same grammar as input). -# -# Input grammar: -# (1) comments having ';' or '#' as the first char in the line -# (2) a blank line -# (3) !include "file" -# (4) !define foo bar -# (5) !define foo "bar" -# -# Environmental variables can be used to override a setting. -# The special value "null" causes the variable to be undefined. -# If an environmental value is bracketed, i.e [abc], the brackets -# will be converted to double quotes prior to output. - -sub comment { - my ($cmt) = @_; - print "//$cmt\n" if ($mode =~ /^(c|js|h)$/); - print "#$cmt\n" if ($mode =~ /^(sh|nsi|in)$/); -} - -sub define { - my ($name, $value) = @_; - if ($mode eq "sh") { - $value="true" if !$value; - print "[ -z \"\$$name\" ] && export $name=$value\n"; - print "[ \"\$$name\" = \"$nulltag\" ] && unset $name\n"; - } else { - if ($ENV{$name}) { - $value = $ENV{$name}; - $value = "\"$1\"" if ($value =~ /\[(.*)\]$/); - } - if ($value ne $nulltag) { - print "#define $name $value\n" if ($mode =~ /^(c|h)$/); - print "!define $name $value\n" if ($mode =~ /^(nsi|in)$/); - print "var $name=$value;\n" if ($mode eq "js"); - } else { - print "//#undef $name\n" if ($mode =~ /^(c|h)$/); - print "#!undef $name\n" if ($mode eq "nsi"); - print ";!undef $name\n" if ($mode eq "in"); - print "//undef $name\n" if ($mode eq "js"); - } - } -} - -sub include_file { - local $_; - $include_file_level++; - die "!include file nesting too deep" if ($include_file_level > $max_inc_depth); - my ($parm) = @_; - my $fn = "$incdir/$parm"; - local *IN; - open(IN, "< $fn") or die "cannot open $fn"; - while (<IN>) { - chomp; - if (/^\s*$/) { - print "\n"; - } elsif (/^[#;](.*)$/) { - comment ($1); - } elsif (/^!define\s+(\w+)(?:\s+(.*?))?\s*$/) { - define ($1, $2); - } elsif (/^!include\s+"(.+)"$/) { - include_file ($1); - } else { - die "can't parse this line: $_\n"; - } - } - $include_file_level--; -} - -die "usage: trans <c|h|sh|js|nsi|in> [-I<dir>] [files ...]" if (@ARGV < 1); - -($mode) = shift(@ARGV); -die "mode must be one of c, h, sh, js, nsi, or in" if !($mode =~ /^(c|h|sh|js|nsi|in)$/); - -$nulltag = "null"; -$max_inc_depth = 10; -$include_file_level = 0; -$incdir = "."; - -comment(" This file was automatically generated by trans.pl"); - -while ($arg=shift(@ARGV)) { - if ($arg =~ /^-/) { - if ($arg =~ /^-I(.*)$/) { - $incdir = $1; - } else { - die "unrecognized option: $arg"; - } - } else { - print "\n"; - include_file ($arg); - } -} diff --git a/install-win32/u2d.c b/install-win32/u2d.c deleted file mode 100755 index bf1f5e8..0000000 --- a/install-win32/u2d.c +++ /dev/null @@ -1,20 +0,0 @@ -#include <stdio.h> - -int -main (int argc, char *argv[]) -{ - int c; - int enable = 1; - - while ((c = getchar()) != EOF) - { -#if 0 - if (c == '\r') - enable = 0; - if (enable && c == '\n') - putchar ('\r'); -#endif - putchar (c); - } - return 0; -} diff --git a/install-win32/winconfig b/install-win32/winconfig deleted file mode 100644 index 9d686c9..0000000 --- a/install-win32/winconfig +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -# prepare files for building on Windows -# run from top directory: install-win32/winconfig - -rm -rf autodefs -mkdir autodefs - -# build multi-grammar definition files -perl install-win32/m4todef.pl <version.m4 >autodefs/version.in -for g in "h" "sh" "nsi" "in" ; do - perl install-win32/trans.pl $g install-win32/settings.in >autodefs/defs.$g -done - -cat /dev/null >autodefs/guidefs.nsi - -echo '#include "autodefs/defs.h"' >autodefs.h -echo '#include "config.h"' >>autodefs.h |