diff options
8 files changed, 247 insertions, 246 deletions
diff --git a/config/openvpn-client-export/client-export/template/config-import b/config/openvpn-client-export/client-export/template/config-import index 6b4465c2..74f273bd 100755 --- a/config/openvpn-client-export/client-export/template/config-import +++ b/config/openvpn-client-export/client-export/template/config-import @@ -1,3 +1,3 @@ -;!@Install@!UTF-8!
-RunProgram="procchain.exe procchain-import"
-;!@InstallEnd@!
+;!@Install@!UTF-8! +RunProgram="procchain.exe procchain-import" +;!@InstallEnd@! diff --git a/config/openvpn-client-export/client-export/template/config-standard b/config/openvpn-client-export/client-export/template/config-standard index 19e410e9..2dfce2dc 100755 --- a/config/openvpn-client-export/client-export/template/config-standard +++ b/config/openvpn-client-export/client-export/template/config-standard @@ -1,3 +1,3 @@ -;!@Install@!UTF-8!
-RunProgram="procchain.exe procchain-standard"
-;!@InstallEnd@!
+;!@Install@!UTF-8! +RunProgram="procchain.exe procchain-standard" +;!@InstallEnd@! diff --git a/config/openvpn-client-export/client-export/template/procchain-import b/config/openvpn-client-export/client-export/template/procchain-import index 3b7c74fb..c70ad842 100755 --- a/config/openvpn-client-export/client-export/template/procchain-import +++ b/config/openvpn-client-export/client-export/template/procchain-import @@ -1,2 +1,2 @@ -"openvpn-install.exe"
-"openvpn-postinstall.exe" /Import
+"openvpn-install.exe" +"openvpn-postinstall.exe" /Import diff --git a/config/openvpn-client-export/client-export/template/procchain-standard b/config/openvpn-client-export/client-export/template/procchain-standard index b9d1a1e5..670aadea 100755 --- a/config/openvpn-client-export/client-export/template/procchain-standard +++ b/config/openvpn-client-export/client-export/template/procchain-standard @@ -1,2 +1,2 @@ -"openvpn-install.exe"
-"openvpn-postinstall.exe"
+"openvpn-install.exe" +"openvpn-postinstall.exe" diff --git a/config/openvpn-client-export/readme.txt b/config/openvpn-client-export/readme.txt index c1c0e3b7..071b6d59 100755 --- a/config/openvpn-client-export/readme.txt +++ b/config/openvpn-client-export/readme.txt @@ -1,44 +1,44 @@ -pfSense OpenVPN Client Export Package
--------------------------------------
-
-This package includes a webConfigurator interface that allows for easy
-expory of user based OpenVPN configurations and pre-configured windows
-installer packages.
-
-Contents
---------
-client-export - tgz archive root path
-client-export/vpn_openvpn_export.php - pfSense php interface code
-client-export/template - installer template path
-client-export/template/7zS.sfx - 7zip windows self extractor
-client-export/template/config-import - 7zip sfx configuration
-client-export/template/config-standard - 7zip sfx configuration
-client-export/template/procchain.exe - process chain utility
-client-export/template/openvpn-install.exe - openvpn installer
-client-export/template/openvpn-postinstall.exe - post installer
-client-export/template/procchain-import - procchain configuration
-client-export/template/procchain-standard - procchain configuration
-client-export/template/config - OpenVPN configuration import path
-source/openvpn-postinstall.nsi - post install NSIS script
-source/openvpn-postinstall.ico - post install icon
-source/procchain.cpp - C++ source for process chain utility
-openvpn-client-export.inc - pfSense php pagkage include file
-openvpn-client-export.xml - pfSense xml package description
-
-Configuration
--------------
-Before the package can be used, place the OpenVPN installer of your
-choice in the template directory and name it 'openvpn-install.exe'.
-Then use tar to archive the entire client-export directory from the
-root package directory using the following command ...
-
-tar zcvf openvpn-client-export.tgz client-export
-
-With the archive created, you will have three relevent files in the
-root package directory ...
-
-openvpn-client-export.inc
-openvpn-client-export.tgz
-openvpn-client-export.xml
-
-These files are the only files required for distribution.
+pfSense OpenVPN Client Export Package +------------------------------------- + +This package includes a webConfigurator interface that allows for easy +expory of user based OpenVPN configurations and pre-configured windows +installer packages. + +Contents +-------- +client-export - tgz archive root path +client-export/vpn_openvpn_export.php - pfSense php interface code +client-export/template - installer template path +client-export/template/7zS.sfx - 7zip windows self extractor +client-export/template/config-import - 7zip sfx configuration +client-export/template/config-standard - 7zip sfx configuration +client-export/template/procchain.exe - process chain utility +client-export/template/openvpn-install.exe - openvpn installer +client-export/template/openvpn-postinstall.exe - post installer +client-export/template/procchain-import - procchain configuration +client-export/template/procchain-standard - procchain configuration +client-export/template/config - OpenVPN configuration import path +source/openvpn-postinstall.nsi - post install NSIS script +source/openvpn-postinstall.ico - post install icon +source/procchain.cpp - C++ source for process chain utility +openvpn-client-export.inc - pfSense php pagkage include file +openvpn-client-export.xml - pfSense xml package description + +Configuration +------------- +Before the package can be used, place the OpenVPN installer of your +choice in the template directory and name it 'openvpn-install.exe'. +Then use tar to archive the entire client-export directory from the +root package directory using the following command ... + +tar zcvf openvpn-client-export.tgz client-export + +With the archive created, you will have three relevent files in the +root package directory ... + +openvpn-client-export.inc +openvpn-client-export.tgz +openvpn-client-export.xml + +These files are the only files required for distribution. diff --git a/config/openvpn-client-export/source/openvpn-postinstall.nsi b/config/openvpn-client-export/source/openvpn-postinstall.nsi index d23ecdb4..4f03783d 100755 --- a/config/openvpn-client-export/source/openvpn-postinstall.nsi +++ b/config/openvpn-client-export/source/openvpn-postinstall.nsi @@ -1,112 +1,112 @@ -;--------------------------------
-; OpenVPN NSIS Post-Installer
-;--------------------------------
-
-;--------------------------------
-;Include Modern UI
-
- !include "MUI.nsh"
- !include "FileFunc.nsh"
- !include "LogicLib.nsh"
-
-;--------------------------------
-; General
-;--------------------------------
-
- Name "OpenVPN Configuration"
- OutFile "openvpn-postinstall.exe"
- SetCompressor /SOLID lzma
-
- ShowInstDetails show
-
-;--------------------------------
-;Include Settings
-;--------------------------------
-
- !define MUI_ICON "openvpn-postinstall.ico"
- !define MUI_ABORTWARNING
-
-;--------------------------------
-;Pages
-;--------------------------------
-
- !insertmacro MUI_PAGE_INSTFILES
- !insertmacro Locate
- !insertmacro GetParameters
- !insertmacro GetOptions
-
-;--------------------------------
-;Languages
-;--------------------------------
-
- !insertmacro MUI_LANGUAGE "English"
-
-;--------------------------------
-;Functions
-;--------------------------------
-
-Function .onInit
-
- Var /GLOBAL CONFPATH
- ReadRegStr $CONFPATH HKLM "Software\OpenVPN" "config_dir"
-
-FunctionEnd
-
-Function CopyConfFile
-
- CopyFiles $R9 $CONFPATH\$R7
- Push $0
-
-FunctionEnd
-
-Function ImportConfFile
-
- ExecWait "rundll32.exe cryptext.dll,CryptExtAddPFX $R9"
- Push $0
-
-FunctionEnd
-
-;--------------------------------
-;Installer Sections
-;--------------------------------
-
-Section "Imort Configuration" SectionImport
-
- DetailPrint "Installing configuration files ..."
- ${Locate} ".\config" "/L=F /M=*.ovpn" "CopyConfFile"
-
- DetailPrint "Installing certificate and key files ..."
- ${Locate} ".\config" "/L=F /M=*.crt" "CopyConfFile"
- ${Locate} ".\config" "/L=F /M=*.key" "CopyConfFile"
-
- ${GetParameters} $R0
- ${GetOptions} $R0 "/Import" $R1
- IfErrors p12_copy p12_import
-
- p12_copy:
- ${Locate} ".\config" "/L=F /M=*.p12" "CopyConfFile"
- Goto p12_done
-
- p12_import:
- ${Locate} ".\config" "/L=F /M=*.p12" "ImportConfFile"
- Goto p12_done
-
- p12_done:
-
-SectionEnd
-
-;--------------------------------
-;Descriptions
-;--------------------------------
-
- ;Language strings
- LangString DESC_SectionImport ${LANG_ENGLISH} "Import OpenVPN Configurations and Key Files."
-
- ;Assign language strings to sections
- !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
- !insertmacro MUI_DESCRIPTION_TEXT ${SectionImport} $(DESC_SectionImport)
- !insertmacro MUI_FUNCTION_DESCRIPTION_END
-
-;--------------------------------
-; END
-;--------------------------------
+;-------------------------------- +; OpenVPN NSIS Post-Installer +;-------------------------------- + +;-------------------------------- +;Include Modern UI + + !include "MUI.nsh" + !include "FileFunc.nsh" + !include "LogicLib.nsh" + +;-------------------------------- +; General +;-------------------------------- + + Name "OpenVPN Configuration" + OutFile "openvpn-postinstall.exe" + SetCompressor /SOLID lzma + + ShowInstDetails show + +;-------------------------------- +;Include Settings +;-------------------------------- + + !define MUI_ICON "openvpn-postinstall.ico" + !define MUI_ABORTWARNING + +;-------------------------------- +;Pages +;-------------------------------- + + !insertmacro MUI_PAGE_INSTFILES + !insertmacro Locate + !insertmacro GetParameters + !insertmacro GetOptions + +;-------------------------------- +;Languages +;-------------------------------- + + !insertmacro MUI_LANGUAGE "English" + +;-------------------------------- +;Functions +;-------------------------------- + +Function .onInit + + Var /GLOBAL CONFPATH + ReadRegStr $CONFPATH HKLM "Software\OpenVPN" "config_dir" + +FunctionEnd + +Function CopyConfFile + + CopyFiles $R9 $CONFPATH\$R7 + Push $0 + +FunctionEnd + +Function ImportConfFile + + ExecWait "rundll32.exe cryptext.dll,CryptExtAddPFX $R9" + Push $0 + +FunctionEnd + +;-------------------------------- +;Installer Sections +;-------------------------------- + +Section "Imort Configuration" SectionImport + + DetailPrint "Installing configuration files ..." + ${Locate} ".\config" "/L=F /M=*.ovpn" "CopyConfFile" + + DetailPrint "Installing certificate and key files ..." + ${Locate} ".\config" "/L=F /M=*.crt" "CopyConfFile" + ${Locate} ".\config" "/L=F /M=*.key" "CopyConfFile" + + ${GetParameters} $R0 + ${GetOptions} $R0 "/Import" $R1 + IfErrors p12_copy p12_import + + p12_copy: + ${Locate} ".\config" "/L=F /M=*.p12" "CopyConfFile" + Goto p12_done + + p12_import: + ${Locate} ".\config" "/L=F /M=*.p12" "ImportConfFile" + Goto p12_done + + p12_done: + +SectionEnd + +;-------------------------------- +;Descriptions +;-------------------------------- + + ;Language strings + LangString DESC_SectionImport ${LANG_ENGLISH} "Import OpenVPN Configurations and Key Files." + + ;Assign language strings to sections + !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN + !insertmacro MUI_DESCRIPTION_TEXT ${SectionImport} $(DESC_SectionImport) + !insertmacro MUI_FUNCTION_DESCRIPTION_END + +;-------------------------------- +; END +;-------------------------------- diff --git a/config/openvpn-client-export/source/procchain.cpp b/config/openvpn-client-export/source/procchain.cpp index b95536cc..dec1c284 100755 --- a/config/openvpn-client-export/source/procchain.cpp +++ b/config/openvpn-client-export/source/procchain.cpp @@ -1,80 +1,80 @@ -
-/*
- * Copyright (c) 2008
- * Shrew Soft Inc. All rights reserved.
- *
- * AUTHOR : Matthew Grooms
- * mgrooms@shrew.net
- *
- */
-
-#include <windows.h>
-#include <stdio.h>
-
-bool runproc( char * path )
-{
- STARTUPINFO si;
- memset( &si, 0, sizeof( si ) );
- si.cb = sizeof( si );
-
- PROCESS_INFORMATION pi;
- memset( &pi, 0, sizeof( pi ) );
-
- // Start the child process.
- if( !CreateProcess(
- NULL, // No module name (use command line).
- path, // Command line.
- NULL, // Process handle not inheritable.
- NULL, // Thread handle not inheritable.
- FALSE, // Set handle inheritance to FALSE.
- 0, // No creation flags.
- NULL, // Use parent's environment block.
- NULL, // Use parent's starting directory.
- &si, // Pointer to STARTUPINFO structure.
- &pi ) ) // Pointer to PROCESS_INFORMATION structure.
- {
- return false;
- }
-
- // Wait until child process exits.
- WaitForSingleObject( pi.hProcess, INFINITE );
-
- // Get the exit code
- DWORD ExitCode;
- GetExitCodeProcess( pi.hProcess, &ExitCode );
-
- // Close process and thread handles.
- CloseHandle( pi.hProcess );
- CloseHandle( pi.hThread );
-
- return ( ExitCode == 0 );
-}
-
-int APIENTRY WinMain(
- HINSTANCE hinstance,
- HINSTANCE hPrevInstance,
- LPSTR lpCmdLine,
- int nCmdShow )
-{
- FILE * fp;
- if( fopen_s( &fp, lpCmdLine, "r" ) )
- return -1;
-
- while( true )
- {
- char cmd[ MAX_PATH ];
- memset( cmd, 0, MAX_PATH );
- if( fgets( cmd, MAX_PATH, fp ) == NULL )
- break;
-
- char * term = strchr( cmd, '\n' );
- if( term != NULL )
- *term = 0;
-
- if( !runproc( cmd ) )
- return -2;
- }
-
- return 0;
-}
-
+ +/* + * Copyright (c) 2008 + * Shrew Soft Inc. All rights reserved. + * + * AUTHOR : Matthew Grooms + * mgrooms@shrew.net + * + */ + +#include <windows.h> +#include <stdio.h> + +bool runproc( char * path ) +{ + STARTUPINFO si; + memset( &si, 0, sizeof( si ) ); + si.cb = sizeof( si ); + + PROCESS_INFORMATION pi; + memset( &pi, 0, sizeof( pi ) ); + + // Start the child process. + if( !CreateProcess( + NULL, // No module name (use command line). + path, // Command line. + NULL, // Process handle not inheritable. + NULL, // Thread handle not inheritable. + FALSE, // Set handle inheritance to FALSE. + 0, // No creation flags. + NULL, // Use parent's environment block. + NULL, // Use parent's starting directory. + &si, // Pointer to STARTUPINFO structure. + &pi ) ) // Pointer to PROCESS_INFORMATION structure. + { + return false; + } + + // Wait until child process exits. + WaitForSingleObject( pi.hProcess, INFINITE ); + + // Get the exit code + DWORD ExitCode; + GetExitCodeProcess( pi.hProcess, &ExitCode ); + + // Close process and thread handles. + CloseHandle( pi.hProcess ); + CloseHandle( pi.hThread ); + + return ( ExitCode == 0 ); +} + +int APIENTRY WinMain( + HINSTANCE hinstance, + HINSTANCE hPrevInstance, + LPSTR lpCmdLine, + int nCmdShow ) +{ + FILE * fp; + if( fopen_s( &fp, lpCmdLine, "r" ) ) + return -1; + + while( true ) + { + char cmd[ MAX_PATH ]; + memset( cmd, 0, MAX_PATH ); + if( fgets( cmd, MAX_PATH, fp ) == NULL ) + break; + + char * term = strchr( cmd, '\n' ); + if( term != NULL ) + *term = 0; + + if( !runproc( cmd ) ) + return -2; + } + + return 0; +} + diff --git a/pkg_config.7.xml b/pkg_config.7.xml index ee286aa9..97b83fcf 100755 --- a/pkg_config.7.xml +++ b/pkg_config.7.xml @@ -722,6 +722,7 @@ <required_version>1.2</required_version> <maintainer>erik@erikkristensen.com</maintainer> <configurationfile>nrpe2.xml</configurationfile> + </package> <package> <name>OpenVPN-Enhancements</name> <maintainer>mfuchs77@googlemail.com</maintainer> |