You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
690 lines
30 KiB
690 lines
30 KiB
/***************************************************************************
|
|
* Copyright (C) 2004 by Christoph Thielecke *
|
|
* crissi99@gmx.de *
|
|
* *
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
* it under the terms of the GNU General Public License as published by *
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
* (at your option) any later version. *
|
|
* *
|
|
* 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; if not, write to the *
|
|
* Free Software Foundation, Inc., *
|
|
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
|
***************************************************************************/
|
|
#ifndef VPNACCOUNTDATA_H
|
|
#define VPNACCOUNTDATA_H
|
|
|
|
#include <tqstring.h>
|
|
#include <tqobject.h>
|
|
#include <tqstringlist.h>
|
|
|
|
/**
|
|
* holds the data for a account
|
|
* @author Christoph Thielecke
|
|
*/
|
|
class VpnAccountData : public TQObject
|
|
{
|
|
public:
|
|
enum ConnectionType {cisco=0, racoon=1, freeswan=2, pptp=3,openvpn=4,l2tpd_racoon=5,l2tpd_freeswan=6,ciscoorig=7,vtun=8,ssh=9,other=99};
|
|
enum AuthenticationType {cert=0, psk=1, hybrid=2, unknownauth=99};
|
|
enum L2tpDaemonType { l2tpd=0, openl2tp=1};
|
|
|
|
/**
|
|
* Konstruktor
|
|
* @param ConnType Type (cisco, freeswan,racoon, etc)
|
|
* @param Name The name of the account
|
|
* @param Gateway The hostname/IP of the VPN gateway
|
|
* @return nothing
|
|
*/
|
|
VpnAccountData( ConnectionType ConnType, const TQString &Name);
|
|
|
|
/**
|
|
* Destruktor
|
|
*/
|
|
~VpnAccountData();
|
|
|
|
/*
|
|
Copy constructor
|
|
*/
|
|
VpnAccountData(const VpnAccountData&);
|
|
|
|
ConnectionType getConnectionType() const; //< returns Connection type
|
|
TQString getName() const; //< returns Name
|
|
TQString getGateway() const; //< returns Gateway
|
|
TQString getID() const; //< returns ID
|
|
TQString getUserName() const; //< returns UserName
|
|
TQString getUserPassword() const; //< returns UserPassword
|
|
TQString getIkeGroup() const; //< returns IkeGroup
|
|
TQString getEncryptionAlgorithm() const; //< returns EncryptionAlgorithm
|
|
TQString getAuthenticationAlgorithm() const; //< returns AuthenticationAlgorithm
|
|
TQString getPerfectForwardSecrety() const; //< returns PerfectForwardSecrecy
|
|
TQString getNtDomainName() const; //< returns NtDomainName
|
|
TQString getApplicationVersion() const; //< returns ApplicationVersion
|
|
TQString getRemoteNetAddr() const; //<returns remoteNetAddr
|
|
TQString getRemoteNetMask() const; //<returns remoteNetMask
|
|
TQString getPreSharedKey() const; // returns PreSharedKey
|
|
TQString getX509Certificate() const; //< returns x509 certificate
|
|
TQString getCaCertificate() const; //< returns x509 certificate (CA)
|
|
TQString getNetworkDevice() const; //< returns NetworkDevice
|
|
TQString getCertPath() const; //<returns CertPath
|
|
TQString getSpecialRemoteID() const; //< returns SpecialRemoteID;
|
|
TQString getSpecialLocalID() const; //< returns SpecialLocalID;
|
|
TQString getLocalIDType() const; //< return Local ID type for racoon
|
|
TQString getRemoteIDType() const; //< return Remote ID type for racoon
|
|
TQString getPingHostIP() const; //< returns last part of IP (host) for ping test
|
|
TQString getPrivateKeyPass() const; //< returns PrivateKeyPass
|
|
TQString getPrivateKey() const; //< returns PrivateKey
|
|
TQString getDnsServer() const;
|
|
TQString getLocalVirtualIP() const; //< returns LocalVirtualIP
|
|
TQString getRemoteVirtualIP() const; //< returns RemoteVirtualIP (tun at openvpn,pptp) or Netmask for (tap at openvpn)
|
|
TQString getPreSharedKeyFile() const;
|
|
TQString getCommandBeforeConnect() const;
|
|
TQString getCommandAfterConnect() const;
|
|
TQString getCommandBeforeDisconnect() const;
|
|
TQString getCommandAfterDisconnect() const;
|
|
TQString getSpecialServerCertificate() const;
|
|
TQString getHashAlgo() const;
|
|
TQString getTunnelDeviceType() const;
|
|
TQString getDescription() const;
|
|
TQString getNsCertType() const;
|
|
TQString getVirtualIP() const;
|
|
TQString getUserdefiniedCipher() const;
|
|
TQString getTlsAuthFile() const;
|
|
TQString getHttpProxy() const;
|
|
TQString getExchangeMode() const;
|
|
TQString getTlsRemoteHost() const;
|
|
TQString getRightNextHop() const;
|
|
TQString getLeftNextHop() const;
|
|
TQString getHttpProxyAuthType() const;
|
|
TQString getHttpProxyUser() const;
|
|
TQString getHttpProxyPass() const;
|
|
TQString getPkcs11Providers() const;
|
|
TQString getPkcs11SlotType() const;
|
|
TQString getPkcs11Slot() const;
|
|
TQString getPkcs11IdType() const;
|
|
TQString getPkcs11Id() const;
|
|
TQString getPkcs11SignMode() const;
|
|
TQString getAuthMethod() const;
|
|
TQString getSearchDomainInResolvConf() const;
|
|
TQString getDomainInResolvConf() const;
|
|
TQString getAuthenticationDirection() const;
|
|
TQString getCiscoNatMode() const;
|
|
TQString getIpsecEsp() const;
|
|
TQString getIpsecIke() const;
|
|
TQString getVtunProfile() const;
|
|
TQString getIpsecVpnMode() const;
|
|
TQString getLeftSourceIp() const;
|
|
TQString getRightSourceIp() const;
|
|
TQString getVirtualSubnetworks() const;
|
|
TQString getSshConfigRemoteScript() const;
|
|
|
|
int getLocalPort() const; //< returns LocalPort
|
|
int getRemotePort() const; //< returns RemotePort
|
|
int getUdpPort() const; //< returns UdpPort
|
|
int getMtu() const;
|
|
int getMru() const;
|
|
int getUserdefinedPort() const;
|
|
int getConnectionStatusCheckSuccessCount() const;
|
|
int getConnectionStatusInterval() const;
|
|
int getHttpProxyPort() const;
|
|
int getHttpProxyTimeout() const;
|
|
int getReconnectDelay() const;
|
|
int getMssfix() const;
|
|
int getFragment() const;
|
|
int getPeerTimeout() const;
|
|
int getCommandAfterConnectDelayTime() const;
|
|
int getDpdIdleTimeout() const;
|
|
int getMaxConnectTries() const;
|
|
int getRenegSec() const;
|
|
int getTunnelPing() const;
|
|
int getTunnelPingRestart() const;
|
|
|
|
AuthenticationType getAuthType() const; //< returns AuthType
|
|
TQStringList getAdditionalNetworkRoutes() const;
|
|
bool getSaveUserPassword() const; //< returns saveUserPassword
|
|
bool getSavePsk() const; //< returns savePSK
|
|
bool getUseSingleDes() const; //< returns useSingleDes
|
|
bool getUseIkeGroup() const; //< returns useIkeGroup
|
|
bool getUsePerfectForwardSecrety() const; //< returns usePerfectSecrecy
|
|
bool getUseNtDomainName() const; //< returns useNtDomainName
|
|
bool getUseApplicationVersion() const; //< returns useApplicationVersion
|
|
bool getUseLocalPort() const; //< returns useLocalPort
|
|
bool getUseRemotePort() const; //< returns useRemotePort
|
|
bool getUseAdvancedSettings() const; //< returns useAdvancedSettings
|
|
bool getUseGlobalIpsecSecret() const; //< returns useGlobalIpsecSecret
|
|
bool getDoPingIP() const; //< returns doPingIP
|
|
bool getUseSpecialRemoteID() const; //< returns useSpecialRemoteID
|
|
bool getUseSpecialLocalID() const; //< returns useSpecialLocalID
|
|
bool getUseUdp() const; //< returns useUdp
|
|
bool getUseUdpPort() const; //< returns useUdpPort
|
|
bool getUseDnsUpdate() const;
|
|
bool getUseDnsServer() const;
|
|
bool getRefuse40BitEncryption() const;
|
|
bool getRefuse128BitEncryption() const;
|
|
bool getAllowStatefulMode() const;
|
|
bool getRequireMppe() const;
|
|
bool getUseNoIpDefault() const;
|
|
bool getDisableMPPEComp() const;
|
|
bool getExecuteCmdBeforeConnect() const;
|
|
bool getExecuteCmdAfterConnect() const;
|
|
bool getExecuteCmdBeforeDisconnect() const;
|
|
bool getExecuteCmdAfterDisconnect() const;
|
|
bool getUseNoBsdComp() const;
|
|
bool getUseNoDeflate() const;
|
|
bool getReplaceDefaultRoute() const;
|
|
bool getUseMtu() const;
|
|
bool getUseMru() const;
|
|
bool getUseVirtualIP() const;
|
|
bool getPskIsInFile() const;
|
|
bool getUseAdditionalNetworkRoutes() const;
|
|
bool getUseSpecialServerCertificate() const;
|
|
bool getUseUserdefinedPort() const;
|
|
bool getUseNsCertType() const;
|
|
bool getUseConnectionStatusCheck() const;
|
|
bool getDoReconnectAfterConnectionLost() const;
|
|
bool getDisableLzoCompression() const;
|
|
bool getAuthWithUsernameAndPassword() const;
|
|
bool getAllowEmptyGroupPassword() const;
|
|
bool getUseUserdefiniedCipher() const;
|
|
bool getUseRedirectGateway() const;
|
|
bool getUseTlsAuth() const;
|
|
bool getUseHttpProxy() const;
|
|
bool getDontSaveUsername() const;
|
|
bool getUseModeConfig() const;
|
|
bool getUseReconnectDelay() const;//< if true kvpnc will wait ReconnectDelay before do reconnect instead of immediately reconnect
|
|
bool getUseTlsRemoteHost() const;
|
|
bool getDisableOpportunisticEncryption() const;
|
|
bool getUseMssfix() const;
|
|
bool getUseFragment() const;
|
|
bool getDisableCcp() const;
|
|
bool getUseSmartcard() const;
|
|
bool getUseXauthInteractive() const;
|
|
bool getSavePrivateKeyPassword() const;
|
|
bool getUseHttpProxyAuth () const;
|
|
bool getUseOnlyCaCertAndUserAuth() const;
|
|
bool getUseMailAddressAsIdentifier() const;
|
|
bool getUseRightNextHop() const;
|
|
bool getUseLeftNextHop() const;
|
|
bool getUsePkcs11Providers() const;
|
|
bool getAllowEmptyPrivateKeyPassword() const;
|
|
bool getAllowIpAddressChangeOfPeer() const;
|
|
bool getUseSearchDomainInResolvConf() const;
|
|
bool getUseDomainInResolvConf() const;
|
|
bool getDisableDataEncryption() const;
|
|
bool getUseAuthenticationAlgorithm() const;
|
|
bool getFixPathMtuDiscoveryProblem() const;
|
|
bool getUseRemoteNetwork() const;
|
|
bool getDisableHeaderCompression() const;
|
|
bool getDisableMagicNumberNegotiation() const;
|
|
bool getDisableIpx() const;
|
|
bool getDisableProtocolFieldCompression() const;
|
|
bool getDisableAdressControlCompression() const;
|
|
bool getUseCustomIke() const;
|
|
bool getUseCustomEsp() const;
|
|
bool getVerifyCaCert() const;
|
|
bool getUseDpdIdleTimeout() const;
|
|
bool getHideGroupPasswordInAccountDataDialog() const;
|
|
bool getUseLeftSourceIp() const;
|
|
bool getUseRightSourceIp() const;
|
|
bool getUseVirtualSubnetworks() const;
|
|
bool getDisablePushFromServer () const;
|
|
bool getDisableBind() const;
|
|
bool getUseRenegSec() const;
|
|
bool getUseTunnelPing() const;
|
|
bool getUseTunnelPingRestart() const;
|
|
bool getRequireEap() const;
|
|
bool getUseSshConfigRemoteScript() const;
|
|
bool getAskUserPasswordOnEachConnect() const;
|
|
bool getUseCiscoCertStore() const;
|
|
bool getUseNat() const;
|
|
L2tpDaemonType getL2tpDaemon() const;
|
|
|
|
|
|
|
|
|
|
/**
|
|
* Sets the connection type
|
|
* @param type The type
|
|
*/
|
|
void setConnectionType( ConnectionType type );
|
|
|
|
/**
|
|
* Sets the name of the profile
|
|
* @param Name The new name
|
|
*/
|
|
void setName( const TQString &Name );
|
|
|
|
/**
|
|
* Sets the IP/DNS name of the gateway
|
|
* @param Gateway the IP/DNS name
|
|
*/
|
|
void setGateway( const TQString &Gateway );
|
|
|
|
/**
|
|
* Sets the remote ID (cisco)
|
|
* @param ID The ID
|
|
*/
|
|
void setID( const TQString &ID );
|
|
|
|
/**
|
|
* Sets the group password (cisco)
|
|
* @param GroupPassword The password
|
|
*/
|
|
void setGroupPassword( const TQString &GroupPassword );
|
|
|
|
/**
|
|
* Sets the username (cisco)
|
|
* @param Username The username
|
|
*/
|
|
void setUserName( const TQString &Username );
|
|
|
|
/**
|
|
* Sets the user password
|
|
* @param UserPassword The password
|
|
*/
|
|
void setUserPassword( const TQString &UserPassword );
|
|
|
|
/**
|
|
* Sets if user password should be stored or not
|
|
* @param saveUserPassword True if password should be stored
|
|
*/
|
|
void setSaveUserPassword( bool saveUserPassword );
|
|
|
|
/**
|
|
* Sets if group password should be stored or not
|
|
* @param saveGroupPassword True if password should be stored
|
|
*/
|
|
void setSavePsk( bool savePsk );
|
|
|
|
/**
|
|
* Sets the IKE group (cisco)
|
|
* @param IkeGroup The group
|
|
*/
|
|
void setIkeGroup( const TQString &IkeGroup );
|
|
void setEncryptionAlgorithm( const TQString &EncryptionAlgorithm );
|
|
void setAuthenticationAlgorithm( const TQString &AuthenticationAlgorithm );
|
|
|
|
void setPerfectForwardSecrety( const TQString &PerfectForwardSecrecy );
|
|
void setNtDomainName( const TQString &Name );
|
|
void setApplicationVersion( const TQString &version );
|
|
void setUseSingleDes( bool useSingleDes );
|
|
void setLocalPort( int port );
|
|
void setRemotePort( int port );
|
|
void setUseIkeGroup( bool useIkeGroup );
|
|
void setUsePerfectForwardSecrety( bool usePerfectForwardSecrety );
|
|
void setUseNtDomainName( bool useNtDomainName );
|
|
void setUseApplicationVersion( bool useApplicationVersion );
|
|
void setUseLocalPort( bool useLocalPort );
|
|
void setUseRemotePort( bool useRemotePort );
|
|
void setUseAdvancedSettings( bool useAdvancedSettings );
|
|
void setUseGlobalIpsecSecret( bool useGlobalIpsecSecret );
|
|
void setRemoteNetAddr( const TQString &RemoteNetAddr );
|
|
void setRemoteNetMask( const TQString &RemoteNetMask );
|
|
void setPreSharedKey( const TQString &PreSharedKey );
|
|
void setX509Certificate( const TQString &x509Certificate );
|
|
void setCaCertificate( const TQString &CaCertificate );
|
|
void setNetworkDevice( const TQString &NetworkDevice );
|
|
void setCertPath( const TQString &CertPath );
|
|
void setAuthType( AuthenticationType authtype );
|
|
void setDoPingIP( bool pingIP );
|
|
void setPingHostIP( const TQString &pingHostIP );
|
|
void setPrivateKeyPass( const TQString &PrivateKeyPass );
|
|
void setPrivateKey( const TQString &PrivateKey );
|
|
void setUseSpecialRemoteID( bool useSpecialRemoteID );
|
|
void setUseSpecialLocalID( bool useSpecialLocalID );
|
|
void setSpecialRemoteID( const TQString &SpecialRemoteID );
|
|
void setSpecialLocalID( const TQString &SpecialLocalID );
|
|
void setLocalIDType( const TQString &LocalIDType);
|
|
void setRemoteIDType( const TQString &RemoteIDType);
|
|
void setUseUdp( bool useUdp );
|
|
void setUseUdpPort( bool useUdpPort);
|
|
void setUdpPort( int UdpPort );
|
|
void setUseDnsUpdate(bool useDnsUpdate );
|
|
void setUseDnsServer(bool useDnsServer );
|
|
void setDnsServer(const TQString &DnsServer );
|
|
void setRefuse40BitEncryption(bool refuse40BitEncryption );
|
|
void setRefuse128BitEncryption(bool refuse128BitEncryption );
|
|
void setAllowStatefulMode(bool allowStatefulMode );
|
|
void setRequireMppe(bool requireMppe );
|
|
void setUseNoIpDefault (bool useNoIpDefault );
|
|
void setDisableMPPEComp (bool disableMPPEComp );
|
|
void setLocalVirtualIP( const TQString &LocalVirtualIP );
|
|
void setRemoteVirtualIP( const TQString &RemoteVirtualIP );
|
|
void setPreSharedKeyFile( const TQString &PreSharedKeyFile );
|
|
void setExecuteCmdBeforeConnect(bool executeCmdBeforeConnect);
|
|
void setExecuteCmdAfterConnect(bool executeCmdAfterConnect);
|
|
void setExecuteCmdBeforeDisconnect(bool executeCmdBeforeDisonnect);
|
|
void setExecuteCmdAfterDisconnect(bool executeCmdAfterDisonnect);
|
|
void setCommandBeforeConnect(const TQString &CommandBeforeConnect);
|
|
void setCommandAfterConnect(const TQString &CommandAfterConnect);
|
|
void setCommandBeforeDisconnect(const TQString &CommandBeforeDisconnect);
|
|
void setCommandAfterDisconnect(const TQString &CommandAfterDisconnect);
|
|
void setUseNoBsdComp(bool useNoBsdComp);
|
|
void setUseNoDeflate(bool useNoDeflate);
|
|
void setReplaceDefaultRoute(bool setReplaceDefaultRoute);
|
|
void setUseMtu(bool useMtu);
|
|
void setUseMru(bool useMru);
|
|
void setMtu (int Mtu);
|
|
void setMru (int Mru);
|
|
void setUseVirtualIP (bool useVirtualIP);
|
|
void setVirtualIP( const TQString &VirtualIP );
|
|
void setPskIsInFile(bool PskIsInFile );
|
|
void setUseAdditionalNetworkRoutes( bool useAdditionalNetworkRoutes );
|
|
void setAdditionalNetworkRoutes( TQStringList AdditionalNetworkRoutes );
|
|
void setUseSpecialServerCertificate(bool useSpecialServerCertificate);
|
|
void setSpecialServerCertificate(const TQString &SpecialServerCertificate);
|
|
void setHashAlgo(const TQString &HashAlgo);
|
|
void setTunnelDeviceType(const TQString &TunnelDeviceType);
|
|
void setUseUserdefinedPort(bool useUserdefinedPort);
|
|
void setUserdefinedPort(int UserdefinedPort);
|
|
void setDescription( const TQString &Description );
|
|
void setNsCertType( const TQString &NsCertType );
|
|
void setUseNsCertType ( bool useNsCertType );
|
|
void setUseConnectionStatusCheck ( bool useConnectionStatusCheck );
|
|
void setConnectionStatusCheckSuccessCount ( int connectionStatusCheckSuccessCount );
|
|
void setConnectionStatusInterval ( int connectionStatusInterval );
|
|
void setDoReconnectAfterConnectionLost( bool doReconnectAfterConnectionLost );
|
|
void setDisableLzoCompression( bool disableLzoCompression);
|
|
void setAuthWithUsernameAndPassword( bool authWithUsernameAndPassword );
|
|
void setAllowEmptyGroupPassword( bool allowEmptyGroupPassword );
|
|
void setUseUserdefiniedCipher( bool useUserdefiniedCipher );
|
|
void setUserdefiniedCipher( TQString UserdefiniedCipher );
|
|
void setUseRedirectGateway( bool useRedirectGateway );
|
|
void setUseTlsAuth( bool useTlsAuth );
|
|
void setTlsAuthFile( TQString TlsAuthFile );
|
|
void setUseHttpProxy( bool useHttpProxy );
|
|
void setHttpProxy( TQString HttpProxy );
|
|
void setHttpProxyPort ( int HttpProxyPort );
|
|
void setHttpProxyTimeout ( int HttpProxyTimeout );
|
|
void setDontSaveUsername( bool dontSaveUsername );
|
|
void setUseModeConfig( bool useModeConfig );
|
|
void setExchangeMode( TQString ExchangeMode );
|
|
void setUseReconnectDelay( bool useReconnectDelay );
|
|
void setReconnectDelay( int ReconnectDelay );
|
|
void setUseTlsRemoteHost( bool useTlsRemoteHost );
|
|
void setTlsRemoteHost( TQString TlsRemoteHost );
|
|
void setDisableOpportunisticEncryption( bool );
|
|
void setRightNextHop( TQString RightNextHop );
|
|
void setLeftNextHop( TQString LeftNextHop );
|
|
void setUseMssfix( bool useMssfix );
|
|
void setUseFragment( bool useFragment);
|
|
void setMssfix( int Mssfix );
|
|
void setFragment( int Fragment );
|
|
void setPeerTimeout( int PeerTimeout );
|
|
void setDisableCcp( bool disableCcp );
|
|
void setUseSmartcard( bool useSmartcard );
|
|
void setUseXauthInteractive( bool useXauthInteractive );
|
|
void setSavePrivateKeyPassword ( bool savePrivateKeyPassword );
|
|
void setUseHttpProxyAuth (bool useHttpProxyAuth );
|
|
void setHttpProxyAuthType(TQString HttpProxyAuthType );
|
|
void setHttpProxyUser(TQString HttpProxyUser );
|
|
void setHttpProxyPass(TQString HttpProxyPass );
|
|
void setUseOnlyCaCertAndUserAuth(bool useOnlyCaCertAndUserAuth );
|
|
void setUseMailAddressAsIdentifier(bool useMailAddressAsIdentifier );
|
|
void setUseRightNextHop(bool useRightNextHop);
|
|
void setUseLeftNextHop (bool useLeftNextHop);
|
|
void setPkcs11Providers(TQString Pkcs11Providers);
|
|
void setPkcs11SlotType(TQString Pkcs11SlotType);
|
|
void setPkcs11Slot(TQString Pkcs11Slot);
|
|
void setPkcs11IdType(TQString Pkcs11IdType);
|
|
void setPkcs11Id(TQString Pkcs11Id);
|
|
void setPkcs11SignMode(TQString Pkcs11SignMode);
|
|
void setUsePkcs11Providers(bool usePkcs11Providers);
|
|
void setAllowEmptyPrivateKeyPassword (bool allowEmptyPrivateKeyPassword );
|
|
void setAllowIpAddressChangeOfPeer( bool allowIpAddressChangeOfPeer );
|
|
void setAuthMethod( TQString AuthMethod );
|
|
void setCommandAfterConnectDelayTime( int CommandAfterConnectDelayTime );
|
|
void setUseSearchDomainInResolvConf( bool useSearchDomainInResolvConf );
|
|
void setUseDomainInResolvConf( bool useDomainInResolvConf );
|
|
void setSearchDomainInResolvConf(TQString SearchDomainInResolvConf );
|
|
void setDomainInResolvConf(TQString DomainInResolvConf );
|
|
void setAuthenticationDirection(TQString AuthenticationDirection );
|
|
void setCiscoNatMode(TQString CiscoNatMode );
|
|
void setIpsecEsp(TQString IpsecEsp);
|
|
void setIpsecIke(TQString IpsecIke);
|
|
void setVtunProfile(TQString VtunProfile);
|
|
void setDisableDataEncryption(bool disableDataEncryption);
|
|
void setUseAuthenticationAlgorithm(bool useAuthenticationAlgorithm);
|
|
void setFixPathMtuDiscoveryProblem( bool fixPathMtuDiscoveryProblem);
|
|
void setUseRemoteNetwork(bool useRemoteNetwork);
|
|
void setIpsecVpnMode(TQString IpsecVpnMode);
|
|
void setDisableHeaderCompression(bool disableHeaderCompression);
|
|
void setDisableMagicNumberNegotiation(bool disableMagicNumberNegotiation);
|
|
void setDisableIpx(bool disableIpx);
|
|
void setDisableProtocolFieldCompression(bool disableProtocolFieldCompression);
|
|
void setDisableAdressControlCompression(bool disableAdressControlCompression);
|
|
void setUseCustomIke(bool useCustomIke );
|
|
void setUseCustomEsp(bool useCustomEsp);
|
|
void setVerifyCaCert(bool verifyCaCert);
|
|
void setUseDpdIdleTimeout(bool useDpdIdleTimeout);
|
|
void setDpdIdleTimeout(int DpdIdleTimeout);
|
|
void setHideGroupPasswordInAccountDataDialog(bool hideGroupPasswordInAccountDataDialog);
|
|
void setMaxConnectTries(int MaxConnectTries);
|
|
void setL2tpDaemon(L2tpDaemonType L2tpDaemon );
|
|
void setUseLeftSourceIp(bool useLeftSourceIp);
|
|
void setUseRightSourceIp(bool useLeftRightIp);
|
|
void setLeftSourceIp(TQString LeftSourceIp);
|
|
void setRightSourceIp(TQString RightSourceIp);
|
|
void setUseVirtualSubnetworks(bool useVirtualSubnetworks);
|
|
void setVirtualSubnetworks(TQString VirtualSubnetworks);
|
|
void setDisablePushFromServer( bool disablePushFromServer);
|
|
void setDisableBind( bool disableBind );
|
|
void setUseRenegSec(bool useRenegSec);
|
|
void setRenegSec(int RenegSec);
|
|
void setUseTunnelPing(bool useTunnelPing);
|
|
void setTunnelPing(int TunnelPing);
|
|
void setUseTunnelPingRestart(bool useTunnelPingRestart);
|
|
void setTunnelPingRestart(int TunnelPingRestart);
|
|
void setRequireEap(bool requireEap);
|
|
void setUseSshConfigRemoteScript(bool useSshConfigRemoteScript);
|
|
void setSshConfigRemoteScript( TQString SshConfigRemoteScript);
|
|
void setAskUserPasswordOnEachConnect ( bool askUserPasswordOnEachConnect );
|
|
void setUseCiscoCertStore(bool useCiscoCertStore);
|
|
void setUseNat(bool useNat);
|
|
|
|
protected:
|
|
TQString Name; //< Name of the profile
|
|
TQString Gateway; //< IP/DNS name of the gateway
|
|
TQString ID; //< ID of remote gateway
|
|
TQString Username; //< Username (cisco)
|
|
TQString UserPassword; //< User password (cisco)
|
|
TQString IkeGroup; //< DH group for PFS (cisco,racoon)
|
|
TQString PerfectForwardSecrecy; //< Type of PFS (cisco, racoon)
|
|
TQString EncryptionAlgorithm; // phase 2 (ipsec)
|
|
TQString AuthenticationAlgorithm; // phase 2 (ipsec)
|
|
TQString NtDomainName; //< NT domain name for authentication (cisco/pptp)
|
|
TQString ApplicationVersion; //< userdefined application version (cisco)
|
|
TQString RemoteNetAddr; //< Remote network addr of VPN
|
|
TQString RemoteNetMask; //< Remote network mask of VPN
|
|
TQString PreSharedKey; //< Pre shared key (freeswan/racoon)
|
|
TQString x509Certificate; //< Path to X.509 certificate file
|
|
TQString CaCertificate; //< Path to CA certificate file
|
|
TQString NetworkDevice; //< Network device
|
|
TQString PrivateKeyPass; //< Password for private key
|
|
TQString PrivateKey; //< Path to private key file
|
|
TQString CertPath; //< Global certificate path
|
|
TQString AuthType; //< Authentication type (cert/psk)
|
|
TQString pingHostIP; //< IP of the host which should be pinged
|
|
TQString SpecialRemoteID; //< userdefined ID of remote gateway
|
|
TQString SpecialLocalID; //< userdefined ID of remote gateway
|
|
TQString LocalIDType; //< type of the local ID for racoon
|
|
TQString RemoteIDType; //< type of the remote ID for racoon
|
|
TQString LocalVirtualIP; //< Local virtual IP for tunnel (openvpn)
|
|
TQString RemoteVirtualIP; //< Remote virtual IP for tunnel (openvpn)
|
|
TQString PreSharedKeyFile; //< for openvpn
|
|
TQString HashAlgo; // Hash algorithm for racoon
|
|
TQString UseUserdefiniedCipher; //< Cipher for OpenVPN
|
|
TQString DnsServer; //< userdefined DNS server for pptp
|
|
TQString SearchDomainInResolvConf;
|
|
TQString DomainInResolvConf;
|
|
TQString CommandBeforeConnect;
|
|
TQString CommandAfterConnect;
|
|
TQString CommandBeforeDisconnect;
|
|
TQString CommandAfterDisconnect;
|
|
TQString Description; //< Description of the profile
|
|
TQString SpecialServerCertificate;
|
|
TQString VirtualIP; //< Virtual IP for freeswan/racoon
|
|
TQString TunnelDeviceType; //< Type of tunnel device which should be used e.g. tun or tap for openvpn
|
|
TQString NsCertType; //< openvpn
|
|
TQString UserdefiniedCipher; //< Ciphers for OpenVPN
|
|
TQString TlsAuthFile;
|
|
TQString HttpProxy;
|
|
TQString ExchangeMode; //< IKE exchange mode
|
|
TQString TlsRemoteHost;
|
|
TQString RightNextHop; // freeswan
|
|
TQString LeftNextHop; // freeswan
|
|
TQString HttpProxyAuthType;
|
|
TQString HttpProxyUser;
|
|
TQString HttpProxyPass;
|
|
TQString Pkcs11Providers;
|
|
TQString Pkcs11SlotType;
|
|
TQString Pkcs11Slot;
|
|
TQString Pkcs11IdType;
|
|
TQString Pkcs11Id;
|
|
TQString Pkcs11SignMode;
|
|
TQString AuthMethod; //< authorization method for pptp (chap/pap)
|
|
TQString AuthenticationDirection; //< openvpn key and tls-auth direction (none,0,1)
|
|
TQString CiscoNatMode;
|
|
TQString IpsecEsp; // IPsec ESP mode
|
|
TQString IpsecIke; //< IPsec IKE mode
|
|
TQString VtunProfile;
|
|
TQString IpsecVpnMode; //< IPSec tunnel type (transport | tunnel)
|
|
TQString LeftSourceIp;
|
|
TQString RightSourceIp;
|
|
TQString VirtualSubnetworks;
|
|
TQString SshConfigRemoteScript;
|
|
|
|
TQStringList AdditionalNetworkRoutes;
|
|
|
|
bool saveUserPassword; //< True if the user password should be stored (cisco)
|
|
bool savePsk; //< True if the PSK should be stored
|
|
bool useAdvancedSettings; //< True if advanced settings should be used (cisco)
|
|
bool useIkeGroup; //< True if userdefined IKE group should be used
|
|
bool usePerfectForwardSecrety; //< True if userdefined PFS should be used
|
|
bool useNtDomainName; //< True if NT domain name should eb used for authentication
|
|
bool useApplicationVersion; //< True if userdefined application version should be used
|
|
bool useLocalPort; //< True if userdefined local port should be used
|
|
bool useRemotePort; //< True if userdefined remote port should be used
|
|
bool useSingleDes; //< True if DES instead of 3DES should be used
|
|
bool useGlobalIpsecSecret; //< True if global group password from /etc/vpnc.conf should be used
|
|
bool doPingIP; //< True if pingHostIP should be pinged after connection is established
|
|
bool useSpecialRemoteID; //< True if userdefined ID of remote gateway instead of certificate issuer should be used
|
|
bool useSpecialLocalID; //< True if userdefined ID of local instead of certificate client should be used
|
|
bool useUdp; //< True if NAT-T should be used
|
|
bool useUdpPort; //< True if userdefined UDP port should be used
|
|
bool useDnsUpdate; //< False if we don't update resolv.conf
|
|
bool useDnsServer; //< True if userdefined DNS server should be used
|
|
bool refuse40BitEncryption; //< True if 40 bit encryption is refused (pptp)
|
|
bool refuse128BitEncryption; //< True if 128 bit encryption is refused (pptp)
|
|
bool allowStatefulMode;
|
|
bool requireMppe; //< True if MPPE is required (pptp)
|
|
bool useNoIpDefault;
|
|
bool disableMPPEComp;
|
|
bool executeCmdBeforeConnect;
|
|
bool executeCmdAfterConnect;
|
|
bool executeCmdBeforeDisconnect;
|
|
bool executeCmdAfterDisconnect;
|
|
bool useNoBsdComp;
|
|
bool useNoDeflate;
|
|
bool replaceDefaultRoute; //< for PPTP
|
|
bool useMtu;
|
|
bool useMru;
|
|
bool useVirtualIP; //< freeswan/racoon
|
|
bool PskIsInFile; //< Read PSK from file
|
|
bool useAdditionalNetworkRoutes;
|
|
bool useSpecialServerCertificate;
|
|
bool useUserdefinedPort;
|
|
bool useNsCertType; // <openvpn
|
|
bool useConnectionStatusCheck; //< if true it checks if the gateway is alive within a given time
|
|
bool doReconnectAfterConnectionLost;
|
|
bool disableLzoCompression;
|
|
bool authWithUsernameAndPassword; //< openvpn, xauth
|
|
bool allowEmptyGroupPassword; //< allows empty group password for vpnc
|
|
bool useUserdefiniedCipher;
|
|
bool useRedirectGateway;//< redirect gateway for openvpn
|
|
bool useTlsAuth; //< Add an additional layer of HMAC authentication on top of the TLS control channel to protect against DoS attacks (openvpn)
|
|
bool useHttpProxy;
|
|
bool dontSaveUsername;
|
|
bool useModeConfig;
|
|
bool useReconnectDelay;
|
|
bool useTlsRemoteHost;
|
|
bool disableOpportunisticEncryption;
|
|
bool useMssfix;
|
|
bool useFragment;
|
|
bool disableCcp;
|
|
bool useSmartcard;
|
|
bool useXauthInteractive;
|
|
bool savePrivateKeyPassword;
|
|
bool useHttpProxyAuth;
|
|
bool useOnlyCaCertAndUserAuth; //< use only a CA certificate and authentication with username and password (openvpn)
|
|
bool useMailAddressAsIdentifier; //< x509 cert
|
|
bool useRightNextHop;
|
|
bool useLeftNextHop;
|
|
bool usePkcs11Providers;
|
|
bool allowEmptyPrivateKeyPassword;
|
|
bool allowIpAddressChangeOfPeer;
|
|
bool useSearchDomainInResolvConf;
|
|
bool useDomainInResolvConf;
|
|
bool disableDataEncryption;
|
|
bool useAuthenticationAlgorithm;
|
|
bool fixPathMtuDiscoveryProblem; //< see http://pptpclient.sourceforge.net/howto-diagnosis.phtml#connections_freeze
|
|
bool useRemoteNetwork; //< specify a remote network
|
|
bool disableHeaderCompression; //< Disable Van Jacobson style TCP/IP header compression in both the transmit and the receive direction.
|
|
bool disableMagicNumberNegotiation; //< Disable magic number negotiation. With this option, pppd cannot detect a looped-back line. This option should only be needed if the peer is buggy.
|
|
bool disableIpx; //< Disable the IPXCP and IPX protocols.
|
|
bool disableProtocolFieldCompression; //< Disable protocol field compression negotiation in both the receive and the transmit direction.
|
|
bool disableAdressControlCompression; //< Disable Address/Control compression in both directions (send and receive).
|
|
bool useCustomIke;
|
|
bool useCustomEsp;
|
|
bool verifyCaCert; //< verify ca cert of remote host on racoon
|
|
bool useDpdIdleTimeout; //< dead peer detection idle timeout (vpnc)
|
|
bool hideGroupPasswordInAccountDataDialog;
|
|
bool useLeftSourceIp;
|
|
bool useRightSourceIp;
|
|
bool useVirtualSubnetworks;
|
|
bool disablePushFromServer; //< openvpn, no pull mode
|
|
bool disableBind; //< Do not bind to local address and port. The IP stack will allocate a dynamic port for returning packets. Since the value of the dynamic port could not be known in advance by a peer, this option is only suitable for peers which will be initiating connections by using the --remote option.
|
|
bool useRenegSec;
|
|
bool useTunnelPing;
|
|
bool useTunnelPingRestart;
|
|
bool requireEap;
|
|
bool useSshConfigRemoteScript;
|
|
bool askUserPasswordOnEachConnect; //< ask for user password on each connect
|
|
bool useCiscoCertStore;
|
|
bool useNat;
|
|
int Mtu;
|
|
int Mru;
|
|
int UdpPort; //< Port number of UDP port
|
|
int LocalPort; //< userdefined local port
|
|
int RemotePort; //< userdefined remote port
|
|
int UserdefinedPort;
|
|
int connectionStatusCheckSuccessCount; //< in which count a check must be successful
|
|
int connectionStatusInterval; //< interval which is used for check
|
|
int HttpProxyPort;
|
|
int HttpProxyTimeout;
|
|
int ReconnectDelay;
|
|
int MaxConnectTries;
|
|
int Mssfix;
|
|
int Fragment;
|
|
int PeerTimeout; // timeout given from peer (cisco for example gives that)
|
|
int CommandAfterConnectDelayTime; //< time which is wait after connect before the cmd after connect should be executed
|
|
int DpdIdleTimeout;
|
|
int RenegSec;
|
|
int TunnelPing;
|
|
int TunnelPingRestart;
|
|
|
|
public:
|
|
ConnectionType connectiontype; //< Type of the connection (cisco, freeswan, racoon, etc.)
|
|
AuthenticationType authtype; //< Type of authentication (cert, psk)
|
|
L2tpDaemonType L2tpDaemon;
|
|
|
|
};
|
|
|
|
#endif
|