diff options
Diffstat (limited to 'config/openvpn-client-export/source')
-rwxr-xr-x | config/openvpn-client-export/source/openvpn-postinstall.nsi | 224 | ||||
-rwxr-xr-x | config/openvpn-client-export/source/procchain.cpp | 160 |
2 files changed, 192 insertions, 192 deletions
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; +} + |