Mixes for Privacy and Anonymity in the Internet
|
Static Public Member Functions | |
static SINT32 | createMixOnCDConfiguration (const UINT8 *strFileName) |
Writes a default configuration file into the file named by filename. More... | |
static SINT32 | saveToFile (XERCES_CPP_NAMESPACE::DOMDocument *a_doc, const UINT8 *a_strFileName) |
Saves the given XML Document to a file. More... | |
Public Attributes | |
XERCES_CPP_NAMESPACE::DOMDocument ** | m_termsAndConditionsTemplates |
UINT32 | m_nrOfTermsAndConditionsTemplates |
Private Member Functions | |
SINT32 | setNewValues (CACmdLnOptions &newOptions) |
Copies options from newOptions . More... | |
SINT32 | clearTargetInterfaces () |
SINT32 | clearListenerInterfaces () |
SINT32 | parseInfoServices (DOMElement *a_infoServiceNode) |
** More... | |
SINT32 | clearVisibleAddresses () |
SINT32 | addVisibleAddresses (DOMNode *nodeProxy) |
** Add all the visible addresses to the list of visible addresses found in the XML description of the <Proxy> element given. More... | |
SINT32 | readXmlConfiguration (XERCES_CPP_NAMESPACE::DOMDocument *&docConfig, const UINT8 *const configFileName) |
Tries to read the XML configuration file configFile and parses (but not process) it. More... | |
SINT32 | readXmlConfiguration (XERCES_CPP_NAMESPACE::DOMDocument *&docConfig, const UINT8 *const buf, UINT32 len) |
Tries to read the XML configuration from byte array buf . More... | |
SINT32 | processXmlConfiguration (XERCES_CPP_NAMESPACE::DOMDocument *docConfig) |
SINT32 | setGeneralOptions (DOMElement *elemRoot) |
SINT32 | setMixDescription (DOMElement *elemRoot) |
SINT32 | setCertificateOptions (DOMElement *elemRoot) |
SINT32 | setNetworkOptions (DOMElement *elemRoot) |
SINT32 | setRessourceOptions (DOMElement *elemRoot) |
SINT32 | setTermsAndConditions (DOMElement *elemRoot) |
SINT32 | setMixType (DOMElement *elemGeneral) |
determines whether this mix is a first a middle or a last mix appears in <General></General> and must be set. More... | |
SINT32 | setMixName (DOMElement *elemGeneral) |
SINT32 | setMixID (DOMElement *elemGeneral) |
SINT32 | setDynamicMix (DOMElement *elemGeneral) |
determines whether this mix is a dynamic mix or not appears in <General></General> and is optional. More... | |
SINT32 | setMinCascadeLength (DOMElement *elemGeneral) |
SINT32 | setCascadeNameFromOptions (DOMElement *elemGeneral) |
SINT32 | setUserID (DOMElement *elemGeneral) |
SINT32 | setNrOfFileDescriptors (DOMElement *elemGeneral) |
SINT32 | setDaemonMode (DOMElement *elemGeneral) |
SINT32 | setLoggingOptions (DOMElement *elemGeneral) |
SINT32 | setSymChannelCipherAlgorithm (SYMCHANNELCIPHER_ALGORITHM cipherAlgorithm) |
SINT32 | setAccessControlCredential (DOMElement *elemGeneral) |
SINT32 | setPaymentReminder (DOMElement *elemGeneral) |
SINT32 | setMaxUsers (DOMElement *elemGeneral) |
SINT32 | setOwnCertificate (DOMElement *elemCertificates) |
SINT32 | setOwnOperatorCertificate (DOMElement *elemCertificates) |
SINT32 | setMixCertificateVerification (DOMElement *elemCertificates) |
SINT32 | setNextMixCertificate (DOMElement *elemCertificates) |
SINT32 | setPrevMixCertificate (DOMElement *elemCertificates) |
SINT32 | setTrustedRootCertificates (DOMElement *elemCertificates) |
SINT32 | setPriceCertificate (DOMElement *elemAccounting) |
SINT32 | setPaymentInstance (DOMElement *elemAccounting) |
SINT32 | setAccountingSoftLimit (DOMElement *elemAccounting) |
SINT32 | setAccountingHardLimit (DOMElement *elemAccounting) |
SINT32 | setPrepaidInterval (DOMElement *elemAccounting) |
SINT32 | setSettleInterval (DOMElement *elemAccounting) |
SINT32 | setAccountingDatabase (DOMElement *elemAccounting) |
void | initAccountingOptionSetters () |
SINT32 | setAccountingOptions (DOMElement *elemRoot) |
SINT32 | setInfoServices (DOMElement *elemNetwork) |
SINT32 | setListenerInterfaces (DOMElement *elemNetwork) |
SINT32 | setTargetInterfaces (DOMElement *elemNetwork) |
This method sets the proxy or next mix settings. More... | |
SINT32 | setServerMonitoring (DOMElement *elemNetwork) |
SINT32 | setKeepAliveTraffic (DOMElement *elemNetwork) |
SINT32 | setTermsAndConditionsTemplates (DOMElement *elemTnCs) |
SINT32 | setTermsAndConditionsList (DOMElement *elemTnCs) |
SINT32 | appendMixInfo_internal (DOMNode *a_node, bool with_subtree) |
SINT32 | addMixIdToMixInfo () |
Just add the id of the Mix to the MixInfo Document. More... | |
SINT32 | invokeOptionSetters (const optionSetter_pt *optionsSetters, DOMElement *target, SINT32 optionsSettersLength) |
framework-function for calling predefined option setter functions. More... | |
void | initMainOptionSetters () |
void | initGeneralOptionSetters () |
void | initMixDescriptionSetters () |
void | initCertificateOptionSetters () |
void | initNetworkOptionSetters () |
void | initTermsAndConditionsOptionSetters () |
Static Private Member Functions | |
static SINT32 | buildDefaultConfig (XERCES_CPP_NAMESPACE::DOMDocument *a_doc, bool bForLastMix) |
Creates a default mix configuration. More... | |
Friends | |
THREAD_RETURN | threadReConfigure (void *param) |
Thread that does the actual reconfigure work. More... | |
CACmdLnOptions::CACmdLnOptions | ( | ) |
References createDOMDocument(), DELAY_CHANNEL_LATENCY, DELAY_USERS_BUCKET_GROW, DELAY_USERS_BUCKET_GROW_INTERVALL, DELAY_USERS_TRAFFIC, initAccountingOptionSetters(), initCertificateOptionSetters(), initGeneralOptionSetters(), initMainOptionSetters(), initNetworkOptionSetters(), initTermsAndConditionsOptionSetters(), isFirstMix(), m_addrInfoServices, m_addrInfoServicesSize, m_arListenerInterfaces, m_arStrVisibleAddresses, m_arTargetInterfaces, m_bAcceptReconfiguration, m_bAutoReconnect, m_bCompressedLogs, m_bDaemon, m_bFirstMix, m_bIsEncryptedLogEnabled, m_bIsRunReConfigure, m_bLastMix, m_bLocalProxy, m_bLogConsole, m_bMiddleMix, m_bSkipProxyCheck, m_bSocksSupport, m_bSyslog, m_bVerifyMixCerts, m_bVPNSupport, m_cnListenerInterfaces, m_cnTargets, m_cnVisibleAddresses, m_dbCountryStatsHost, m_dbCountryStatsPasswd, m_dbCountryStatsUser, m_docMixInfo, m_docMixXml, m_docOpTnCs, m_iSOCKSPort, m_iSOCKSServerPort, m_iTargetPort, m_maxLogFileSize, m_maxNrOfUsers, m_nrOfOpenFiles, m_nrOfTermsAndConditionsTemplates, m_OpCert, m_PaymentReminderProbability, m_pBI, m_pCascadeXML, m_pcsReConfigure, m_pLogEncryptionCertificate, m_pMultiSignature, m_pNextMixCertificate, m_pPrevMixCertificate, m_pTrustedRootCertificates, m_strAccessControlCredential, m_strAiID, m_strCascadeName, m_strConfigFile, m_strCredential, m_strDatabaseHost, m_strDatabaseName, m_strDatabasePassword, m_strDatabaseUser, m_strEncryptedLogDir, m_strLogDir, m_strLogLevel, m_strMixID, m_strMixName, m_strPidFile, m_strSOCKSHost, m_strTargetHost, m_strUser, m_termsAndConditionsTemplates, m_u32DelayChannelBucketGrow, m_u32DelayChannelBucketGrowIntervall, m_u32DelayChannelUnlimitTraffic, and setZero64().
CACmdLnOptions::~CACmdLnOptions | ( | ) |
References cleanup().
bool CACmdLnOptions::acceptReconfiguration | ( | ) |
References m_bAcceptReconfiguration.
Referenced by CAMix::CAMix(), and CAMix::start().
|
private |
Just add the id of the Mix to the MixInfo Document.
References E_UNKNOWN, m_docMixInfo, m_strMixID, MIXINFO_ATTRIBUTE_MIX_ID, CAMsg::printMsg(), and setDOMElementAttribute().
Referenced by setMixID(), and setOwnCertificate().
|
private |
** Add all the visible addresses to the list of visible addresses found in the XML description of the <Proxy> element given.
References ASSERT_PARENT_NODE_NAME, E_SUCCESS, E_UNKNOWN, equals(), getDOMChildByName(), getDOMElementValue(), len, m_arStrVisibleAddresses, m_cnVisibleAddresses, OPTIONS_NODE_HOST, OPTIONS_NODE_PROXY, OPTIONS_NODE_VISIBLE_ADDRESS, OPTIONS_NODE_VISIBLE_ADDRESS_LIST, and TMP_BUFF_SIZE.
Referenced by setTargetInterfaces().
|
private |
Here we remove any given e-mail address to reduce the spam problem.
References E_SUCCESS, E_UNKNOWN, getElementsByTagName(), m_docMixInfo, and CAMsg::printMsg().
Referenced by setListenerInterfaces(), setMinCascadeLength(), setMixDescription(), setMixType(), setPriceCertificate(), and setServerMonitoring().
|
staticprivate |
Creates a default mix configuration.
E_SUCCESS |
MixID must be the SubjectKeyIdentifier of the mix' certificate
We add this for compatability reasons. ListenerInterfaces can be determined dynamically now
References createDOMElement(), DEFAULT_INFOSERVICE, E_SUCCESS, CACertificate::encode(), CASignature::generateSignKey(), CASignature::getSignKey(), CACertificate::getSubjectKeyIdentifier(), CASignature::getVerifyKey(), len, setDOMElementAttribute(), and setDOMElementValue().
Referenced by createMixOnCDConfiguration().
void CACmdLnOptions::clean | ( | ) |
Deletes all resssource allocated by objects of this class EXPECT the locks necessary to controll access to the properties of this class.
References accountingOptionSetters, certificateOptionSetters, clearListenerInterfaces(), clearTargetInterfaces(), clearVisibleAddresses(), generalOptionSetters, m_addrInfoServices, m_addrInfoServicesSize, m_arpTermsAndConditionsOptionSetters, m_dbCountryStatsHost, m_dbCountryStatsPasswd, m_dbCountryStatsUser, m_docMixInfo, m_docMixXml, m_docOpTnCs, m_OpCert, m_pLogEncryptionCertificate, m_pMultiSignature, m_pNextMixCertificate, m_pPrevMixCertificate, m_strAccessControlCredential, m_strCascadeName, m_strConfigFile, m_strCredential, m_strEncryptedLogDir, m_strLogDir, m_strLogLevel, m_strMixID, m_strMixName, m_strPidFile, m_strSOCKSHost, m_strTargetHost, m_strUser, mainOptionSetters, and networkOptionSetters.
Referenced by cleanup().
SINT32 CACmdLnOptions::cleanup | ( | ) |
References clean(), E_SUCCESS, and m_pcsReConfigure.
Referenced by ~CACmdLnOptions().
|
private |
References E_SUCCESS, m_arListenerInterfaces, and m_cnListenerInterfaces.
Referenced by clean().
|
private |
References CATargetInterface::cleanAddr(), E_SUCCESS, m_arTargetInterfaces, and m_cnTargets.
Referenced by clean(), and setNewValues().
|
private |
References E_SUCCESS, m_arStrVisibleAddresses, and m_cnVisibleAddresses.
Referenced by clean(), and setTargetInterfaces().
Writes a default configuration file into the file named by filename.
Builds a default Configuration.
strFileName | filename of the file in which the default configuration is stored, if NULL stdout is used |
References buildDefaultConfig(), createDOMDocument(), E_SUCCESS, and saveToFile().
Referenced by parse().
SINT32 CACmdLnOptions::createSockets | ( | bool | a_bPrintMessages, |
CASocket ** | a_sockets, | ||
UINT32 | a_socketsLen | ||
) |
References CASocket::create(), E_SPACE, E_SUCCESS, E_UNKNOWN, GET_NET_ERROR, GET_NET_ERROR_STR, CAListenerInterface::getAddr(), getListenerInterface(), getListenerInterfaceCount(), CASocketAddr::getType(), CAListenerInterface::isHidden(), CAListenerInterface::isVirtual(), CASocket::listen(), CAMsg::printMsg(), CASocket::setReuseAddr(), and CASocketAddr::toString().
Referenced by CAFirstMix::init(), and setListenerInterfaces().
SINT32 CACmdLnOptions::enableEncryptedLog | ( | bool | b | ) |
Set to true if the encrpyted log could/should be used.
References E_SUCCESS, and m_bIsEncryptedLogEnabled.
References E_SUCCESS, E_UNKNOWN, and m_strAccessControlCredential.
References E_SUCCESS, E_UNKNOWN, len, and m_strAiID.
Referenced by CAAccountingInstance::CAAccountingInstance().
XERCES_CPP_NAMESPACE::DOMDocument ** CACmdLnOptions::getAllTermsAndConditionsTemplates | ( | ) |
References m_termsAndConditionsTemplates.
bool CACmdLnOptions::getAutoReconnect | ( | ) |
References m_bAutoReconnect.
CAXMLBI * CACmdLnOptions::getBI | ( | ) |
Returns an CAXMLBI object, which describes the BI this AI uses.
This is not a copy of the CAXMLBI object. The caller should not delete it!
NULL | if BI was not set in the configuration file |
References m_pBI.
References E_SUCCESS, E_UNKNOWN, len, and m_strCascadeName.
Referenced by CAFirstMix::initCountryStats().
DOMElement* CACmdLnOptions::getCascadeXML | ( | ) |
References m_pCascadeXML.
bool CACmdLnOptions::getCompressLogs | ( | ) |
SINT32 CACmdLnOptions::getCountryStatsDBConnectionLoginData | ( | char ** | db_host, |
char ** | db_user, | ||
char ** | db_passwd | ||
) |
References E_SUCCESS, m_dbCountryStatsHost, m_dbCountryStatsPasswd, and m_dbCountryStatsUser.
Referenced by CAFirstMix::init().
References E_SPACE, E_SUCCESS, E_UNKNOWN, len, and m_strCredential.
Referenced by CALocalProxy::processKeyExchange().
bool CACmdLnOptions::getCryptoBenchmark | ( | ) |
References m_bCryptoBenchmark.
bool CACmdLnOptions::getDaemon | ( | ) |
References m_bDaemon.
Referenced by initLogging().
References E_SUCCESS, E_UNKNOWN, len, and m_strDatabaseHost.
References E_SUCCESS, E_UNKNOWN, len, and m_strDatabaseName.
References E_SUCCESS, E_UNKNOWN, len, and m_strDatabasePassword.
UINT16 CACmdLnOptions::getDatabasePort | ( | ) |
References m_iDatabasePort.
Referenced by CAAccountingDBInterface::initDBConnection().
References E_SUCCESS, E_UNKNOWN, len, and m_strDatabaseUser.
UINT32 CACmdLnOptions::getDelayChannelBucketGrow | ( | ) |
References m_u32DelayChannelBucketGrow.
Referenced by setNewValues().
UINT32 CACmdLnOptions::getDelayChannelBucketGrowIntervall | ( | ) |
References m_u32DelayChannelBucketGrowIntervall.
Referenced by setNewValues().
UINT32 CACmdLnOptions::getDelayChannelUnlimitTraffic | ( | ) |
References m_u32DelayChannelUnlimitTraffic.
Referenced by setNewValues().
References E_SUCCESS, E_UNKNOWN, len, and m_strEncryptedLogDir.
CAListenerInterface ** CACmdLnOptions::getInfoServices | ( | UINT32 & | r_size | ) |
References m_addrInfoServices, and m_addrInfoServicesSize.
Referenced by CAInfoService::getPaymentInstance(), isAllowedToPassRestrictions(), and CAInfoService::sendHelo().
UINT32 CACmdLnOptions::getKeepAliveRecvInterval | ( | ) |
References m_u32KeepAliveRecvInterval.
Referenced by CALastMix::processKeyExchange(), and CAMiddleMix::processKeyExchange().
UINT32 CACmdLnOptions::getKeepAliveSendInterval | ( | ) |
References m_u32KeepAliveSendInterval.
Referenced by CALastMix::processKeyExchange(), and CAMiddleMix::processKeyExchange().
CAListenerInterface* CACmdLnOptions::getListenerInterface | ( | UINT32 | nr | ) |
References m_arListenerInterfaces, and m_cnListenerInterfaces.
Referenced by createSockets(), CALastMix::init(), CALocalProxy::init(), CAMiddleMix::init(), CAMix::initMixCascadeInfo(), and CAFirstMix::initOnce().
UINT32 CACmdLnOptions::getListenerInterfaceCount | ( | ) |
References m_cnListenerInterfaces.
Referenced by createSockets(), CALastMix::init(), CAMiddleMix::init(), CAMix::initMixCascadeInfo(), CAFirstMix::initOnce(), and setListenerInterfaces().
References E_SPACE, E_SUCCESS, E_UNKNOWN, len, and m_strLogDir.
Referenced by initLogging().
CACertificate* CACmdLnOptions::getLogEncryptionKey | ( | ) |
Returns a certificate which contains a key which could be used for log encryption.
References CACertificate::clone(), and m_pLogEncryptionCertificate.
Referenced by CAMsg::openEncryptedLog().
UINT32 CACmdLnOptions::getMaxLogFiles | ( | ) |
References m_maxLogFiles.
Referenced by CAMsg::rotateLog().
SINT64 CACmdLnOptions::getMaxLogFileSize | ( | ) |
References m_maxLogFileSize.
UINT32 CACmdLnOptions::getMaxNrOfUsers | ( | ) |
References m_maxNrOfUsers.
Referenced by CAMix::initMixCascadeInfo(), and setNewValues().
SINT32 CACmdLnOptions::getMaxOpenFiles | ( | ) |
References m_nrOfOpenFiles.
References E_SUCCESS, E_UNKNOWN, len, and m_strTargetHost.
Referenced by CALocalProxy::init().
References E_SUCCESS, E_UNKNOWN, len, and m_strMixID.
Referenced by CAFirstMix::doUserLogin_internal(), CAInfoService::getStatusXMLAsString(), CAMix::initMixCascadeInfo(), CAFirstMix::initMixParameters(), and CAMiddleMix::processKeyExchange().
UINT16 CACmdLnOptions::getMixPort | ( | ) |
References m_iTargetPort.
SINT32 CACmdLnOptions::getMixXml | ( | XERCES_CPP_NAMESPACE::DOMDocument *& | docMixInfo | ) |
Returns the XML tree describing the Mix .
This is NOT a copy!
docMixInfo | destination for the XML tree |
E_SUCCESS | if it was successful |
E_UNKNOWN | in case of an error |
References createDOMElement(), E_SUCCESS, E_UNKNOWN, getcurrentTimeMillis(), getDOMChildByName(), m_docMixInfo, print64(), CAMsg::printMsg(), setDOMElementValue(), and UNIVERSAL_NODE_LAST_UPDATE.
CAMultiSignature* CACmdLnOptions::getMultiSigner | ( | ) |
References m_pMultiSignature.
Referenced by CAFirstMix::initOnce(), CALastMix::initOnce(), and CAMiddleMix::initOnce().
CACertificate* CACmdLnOptions::getNextMixTestCertificate | ( | ) |
References CACertificate::clone(), and m_pNextMixCertificate.
Referenced by CAMiddleMix::processKeyExchange().
UINT32 CACmdLnOptions::getNumberOfTermsAndConditionsTemplates | ( | ) |
Returns a COPY of the public test certifcate for that mix.
a | COPY of the mix test certifcate. Returns a COPY of the Operator Certificate of that mix. |
References E_UNKNOWN, CACertificate::getSubjectKeyIdentifier(), and m_OpCert.
Referenced by CAInfoService::getOperatorTnCsAsStrings(), and getTermsAndConditions().
UINT32 CACmdLnOptions::getPaymentHardLimit | ( | ) |
References m_iPaymentHardLimit.
Referenced by CAAccountingInstance::CAAccountingInstance().
UINT32 CACmdLnOptions::getPaymentSettleInterval | ( | ) |
References m_iPaymentSettleInterval.
Referenced by CAAccountingSettleThread::mainLoop().
UINT32 CACmdLnOptions::getPaymentSoftLimit | ( | ) |
References m_iPaymentSoftLimit.
Referenced by CAAccountingInstance::CAAccountingInstance().
References E_SPACE, E_SUCCESS, E_UNKNOWN, len, and m_strPidFile.
UINT32 CACmdLnOptions::getPrepaidInterval | ( | ) |
CACertificate* CACmdLnOptions::getPrevMixTestCertificate | ( | ) |
References CACertificate::clone(), and m_pPrevMixCertificate.
Referenced by CALastMix::processKeyExchange(), and CAMiddleMix::processKeyExchange().
CAXMLPriceCert* CACmdLnOptions::getPriceCertificate | ( | ) | const |
References m_pPriceCertificate.
References E_UNKNOWN, len, and m_strSOCKSHost.
UINT16 CACmdLnOptions::getSOCKSPort | ( | ) |
References m_iSOCKSPort.
UINT16 CACmdLnOptions::getSOCKSServerPort | ( | ) |
References m_iSOCKSServerPort.
Referenced by CALocalProxy::loop().
SYMCHANNELCIPHER_ALGORITHM CACmdLnOptions::getSymChannelCipherAlgorithm | ( | ) | const |
References m_algSymChannelCipher.
SINT32 CACmdLnOptions::getTargetInterface | ( | CATargetInterface & | oTargetInterface, |
UINT32 | nr | ||
) |
Fills a TargetInterface
struct with the values which belongs to the target interface nr
.
This is actual a copy of all values, so the caller is responsible for destroying them after use!
oTargetInterface | TargetInterface struct, which gets filles with the values of target interface nr |
nr | the index of the target interface, for whcih information is request (starting with 1 for the first interface) |
E_SUCCESS | if successful |
E_UNKNOWN | if nr is out of range |
References CATargetInterface::cloneInto(), E_UNKNOWN, m_arTargetInterfaces, and m_cnTargets.
Referenced by CAFirstMix::init(), CAMiddleMix::init(), CAMix::needAutoConfig(), setNewValues(), and CALastMix::setTargets().
UINT32 CACmdLnOptions::getTargetInterfaceCount | ( | ) |
References m_cnTargets.
Referenced by CAFirstMix::init(), CAMiddleMix::init(), CAMix::needAutoConfig(), setNewValues(), and CALastMix::setTargets().
DOMElement * CACmdLnOptions::getTermsAndConditions | ( | ) |
References getOperatorSubjectKeyIdentifier(), m_docOpTnCs, OPTIONS_ATTRIBUTE_TNC_ID, setDOMElementAttribute(), and TMP_BUFF_SIZE.
Referenced by CAInfoService::getOperatorTnCsAsStrings().
CACertStore* CACmdLnOptions::getTrustedCertificateStore | ( | ) |
References m_pTrustedRootCertificates.
Referenced by CALastMix::processKeyExchange(), and CAMiddleMix::processKeyExchange().
References E_SUCCESS, E_UNKNOWN, len, and m_strUser.
Referenced by setUserID().
Fills strAddressBuff
with a outside visible adress.
strAddressBuff | buffer for adress information (either hostname or IP string) |
len | size of strAddressBuff |
nr | the number of the adress we request information about (starting with 1 for the first address) |
E_SUCCESS | if successful |
E_SPACE | if buffer is to small for the requested address |
E_UNKNOWN | if nr is out of range |
References E_SPACE, E_SUCCESS, E_UNKNOWN, len, m_arStrVisibleAddresses, and m_cnVisibleAddresses.
Referenced by setTargetInterfaces().
UINT32 CACmdLnOptions::getVisibleAddressesCount | ( | ) |
References m_cnVisibleAddresses.
Referenced by setTargetInterfaces().
bool CACmdLnOptions::hasNextMixTestCertificate | ( | ) |
References m_pNextMixCertificate.
bool CACmdLnOptions::hasPrevMixTestCertificate | ( | ) |
References m_pPrevMixCertificate.
Referenced by processXmlConfiguration().
|
private |
|
private |
|
private |
References GENERAL_OPTIONS_NR, generalOptionSetters, setAccessControlCredential(), setCascadeNameFromOptions(), setDaemonMode(), setDynamicMix(), setLoggingOptions(), setMaxUsers(), setMinCascadeLength(), setMixID(), setMixName(), setMixType(), setNrOfFileDescriptors(), setPaymentReminder(), and setUserID().
Referenced by CACmdLnOptions().
SINT32 CACmdLnOptions::initLogging | ( | ) |
References E_SUCCESS, getCompressLogs(), getDaemon(), getLogDir(), CAMsg::init(), isEncryptedLogEnabled(), isSyslogEnabled(), m_bLogConsole, m_strLogLevel, MSG_COMPRESSED_FILE, MSG_FILE, MSG_LOG, MSG_NOLOG, MSG_STDOUT, CAMsg::openEncryptedLog(), CAMsg::printMsg(), CAMsg::setLogLevel(), and CAMsg::setLogOptions().
Referenced by setLoggingOptions().
|
private |
|
private |
|
private |
References NETWORK_OPTIONS_NR, networkOptionSetters, setInfoServices(), setKeepAliveTraffic(), setListenerInterfaces(), setServerMonitoring(), and setTargetInterfaces().
Referenced by CACmdLnOptions().
|
private |
References m_arpTermsAndConditionsOptionSetters, setTermsAndConditionsList(), setTermsAndConditionsTemplates(), and TERMS_AND_CONDITIONS_OPTIONS_NR.
Referenced by CACmdLnOptions().
|
private |
framework-function for calling predefined option setter functions.
Used by functions that handle a certain type of options, i.e. general settings, account setting, etc.
References E_SUCCESS, E_UNKNOWN, and CAMsg::printMsg().
Referenced by processXmlConfiguration(), setAccountingOptions(), setCertificateOptions(), setGeneralOptions(), setNetworkOptions(), and setTermsAndConditions().
bool CACmdLnOptions::isAccessControlEnabled | ( | ) |
References m_strAccessControlCredential.
bool CACmdLnOptions::isEncryptedLogEnabled | ( | ) |
Returns if the encrpyted Log could/should be used.
References m_bIsEncryptedLogEnabled.
Referenced by initLogging().
bool CACmdLnOptions::isFirstMix | ( | ) |
References m_bFirstMix.
Referenced by CACmdLnOptions().
bool CACmdLnOptions::isInfoServiceEnabled | ( | ) |
References m_addrInfoServicesSize.
bool CACmdLnOptions::isLastMix | ( | ) |
References m_bLastMix.
Referenced by processXmlConfiguration(), and setTargetInterfaces().
bool CACmdLnOptions::isLocalProxy | ( | ) |
References m_bLocalProxy.
bool CACmdLnOptions::isMiddleMix | ( | ) |
References m_bMiddleMix.
bool CACmdLnOptions::isSock5sSupported | ( | ) |
References m_bSocksSupport.
bool CACmdLnOptions::isSyslogEnabled | ( | ) |
References m_bSyslog.
Referenced by initLogging().
SINT32 CACmdLnOptions::parse | ( | int | argc, |
const char ** | arg | ||
) |
References CASocket::create(), createMixOnCDConfiguration(), DEFAULT_CONFIG_FILE, DEFAULT_TARGET_PORT, E_FILE_OPEN, E_FILE_READ, E_SUCCESS, E_XML_PARSE, CAListenerInterface::getInstance(), m_arListenerInterfaces, m_bAutoReconnect, m_bCompressedLogs, m_bCryptoBenchmark, m_bDaemon, m_bLocalProxy, m_bSkipProxyCheck, m_cnListenerInterfaces, m_docMixXml, m_iSOCKSPort, m_iTargetPort, m_strConfigFile, m_strCredential, m_strLogDir, m_strPidFile, m_strSOCKSHost, m_strTargetHost, MIX_VERSION_INFO, MIX_VERSION_TESTING_TEXT, POPT_ARG_INT, POPT_ARG_NONE, POPT_ARG_STRING, POPT_AUTOHELP, POPT_ERROR_BADOPT, poptFreeContext(), poptGetContext(), poptGetNextOpt(), CAMsg::printMsg(), RAW_UNIX, readXmlConfiguration(), and TMP_BUFF_SIZE.
|
private |
**
References E_SUCCESS, getDOMChildByName(), getDOMElementValue(), getElementsByTagName(), CAListenerInterface::getInstance(), m_addrInfoServices, m_addrInfoServicesSize, m_bAcceptReconfiguration, OPTIONS_NODE_ALLOW_AUTO_CONF, OPTIONS_NODE_INFOSERVICE, and CAListenerInterface::XML_ELEMENT_CONTAINER_NAME.
Referenced by setInfoServices().
|
private |
References createDOMElement(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementAttribute(), getDOMElementValue(), getElementsByTagName(), hasPrevMixTestCertificate(), invokeOptionSetters(), isLastMix(), len, m_dbCountryStatsHost, m_dbCountryStatsPasswd, m_dbCountryStatsUser, m_docMixInfo, m_PaymentReminderProbability, m_pCascadeXML, MAIN_OPTION_SETTERS_NR, mainOptionSetters, MIX_VERSION, MIXINFO_NODE_PARENT, MIXINFO_NODE_PAYMENTREMINDER, MIXINFO_NODE_SOFTWARE, MIXINFO_NODE_VERSION, CAMsg::printMsg(), setDOMElementValue(), and verifyMixCertificates().
Referenced by setNextMix(), and setPrevMix().
|
private |
Tries to read the XML configuration from byte array buf
.
The parsed XML document is parsed only, not processed. Returns the parsed document as a DOM_Document
.
docConfig | on return contains the parsed XMl document |
buf | a byte array containing the XML data |
len | the length of the byte array |
E_SUCCESS | if successful |
E_XML_PARSE | if the data could not be parsed |
References E_SUCCESS, E_UNKNOWN, len, parseDOMDocument(), and CAMsg::printMsg().
|
private |
Tries to read the XML configuration file configFile
and parses (but not process) it.
Returns the parsed document as DOM_Document
.
docConfig | on return contains the parsed XMl document |
configFile | file name of the XML config file |
E_SUCCESS | if successful |
E_FILE_OPEN | if error in opening the file |
E_FILE_READ | if not the whole file could be read |
E_XML_PARSE | if the file could not be parsed |
References E_FILE_OPEN, E_FILE_READ, filesize32(), len, and O_BINARY.
Referenced by parse().
Rereads the configuration file (if one was given on startup) and reconfigures the mix according to the new values.
This is done asyncronous. A new thread is started, which does the actual work. Note: We have to avoid an blocking on any mutex, as this function typically is called from a signal handler - and who knows which mutexes are blocked if this happend...
E_SUCCESS | if successful |
E_UNKNOWN | if an error occurs |
References E_SUCCESS, E_UNKNOWN, m_bIsRunReConfigure, m_threadReConfigure, t_CMNDLN_REREAD_PARAMS::pCmdLnOptions, t_CMNDLN_REREAD_PARAMS::pMix, pMix, CAThread::setMainLoop(), CAThread::start(), and threadReConfigure.
Referenced by signal_hup().
|
static |
Saves the given XML Document to a file.
p_doc | The XML Document to be saved |
p_strFileName | The name of the file to be saved to |
E_SUCCESS |
References DOM_Output::dumpToMem(), E_SUCCESS, and len.
Referenced by createMixOnCDConfiguration().
|
private |
|
private |
References ASSERT_ACCOUNTING_OPTIONS_PARENT, CAAccountingDBInterface::cleanup(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), CAAccountingDBInterface::init(), len, LOG_NODE_EMPTY_OR_INVALID, LOG_NODE_NOT_FOUND, m_bFirstMix, m_iDatabasePort, m_strDatabaseHost, m_strDatabaseName, m_strDatabasePassword, m_strDatabaseUser, OPTIONS_NODE_AI_DB, OPTIONS_NODE_AI_DB_HOST, OPTIONS_NODE_AI_DB_NAME, OPTIONS_NODE_AI_DB_PASSW, OPTIONS_NODE_AI_DB_PORT, OPTIONS_NODE_AI_DB_USER, CAMsg::printMsg(), strtrim(), and TMP_BUFF_SIZE.
Referenced by initAccountingOptionSetters().
|
private |
|
private |
References ACCOUNTING_OPTIONS_NR, accountingOptionSetters, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), invokeOptionSetters(), LOG_NODE_NOT_FOUND, and OPTIONS_NODE_ACCOUNTING.
Referenced by initMainOptionSetters().
|
private |
References E_SUCCESS, and m_strCascadeName.
Referenced by setCascadeNameFromOptions().
|
private |
References ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), m_strMixID, OPTIONS_NODE_CASCADE_NAME, setCascadeName(), and TMP_BUFF_SIZE.
Referenced by initGeneralOptionSetters().
|
private |
References certificateOptionSetters, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), invokeOptionSetters(), LOG_NODE_NOT_FOUND, m_nCertificateOptionsSetters, and OPTIONS_NODE_CERTIFICATE_LIST.
Referenced by initMainOptionSetters().
|
private |
References ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), m_bDaemon, OPTIONS_NODE_DAEMON, and TMP_BUFF_SIZE.
Referenced by initGeneralOptionSetters().
|
private |
determines whether this mix is a dynamic mix or not appears in <General></General> and is optional.
References ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), m_bDynamic, OPTIONS_NODE_DYNAMIC_MIX, CAMsg::printMsg(), and TMP_BUFF_SIZE.
Referenced by initGeneralOptionSetters().
|
private |
TODO: Mabe make the SymChannelCipher configurable at runtime....
end TODO
References CTR, E_SUCCESS, E_UNKNOWN, GENERAL_OPTIONS_NR, generalOptionSetters, getDOMChildByName(), invokeOptionSetters(), LOG_NODE_NOT_FOUND, NULL_CIPHER, OFB, OPTIONS_NODE_GENERAL, and setSymChannelCipherAlgorithm().
Referenced by initMainOptionSetters().
|
private |
References ASSERT_NETWORK_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), CAListenerInterface::getInstance(), LOG_NODE_EMPTY_OR_INVALID, LOG_NODE_NOT_FOUND, m_addrInfoServices, m_addrInfoServicesSize, m_bAcceptReconfiguration, OPTIONS_NODE_ALLOW_AUTO_CONF, OPTIONS_NODE_INFOSERVICE, OPTIONS_NODE_INFOSERVICE_LIST, parseInfoServices(), and TMP_BUFF_SIZE.
Referenced by initNetworkOptionSetters().
|
private |
References ASSERT_NETWORK_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), KEEP_ALIVE_TRAFFIC_RECV_WAIT_TIME, KEEP_ALIVE_TRAFFIC_SEND_WAIT_TIME, m_u32KeepAliveRecvInterval, m_u32KeepAliveSendInterval, OPTIONS_NODE_KEEP_ALIVE, OPTIONS_NODE_KEEP_ALIVE_RECV_IVAL, OPTIONS_NODE_KEEP_ALIVE_SEND_IVAL, and OPTIONS_NODE_SERVER_MONITORING.
Referenced by initNetworkOptionSetters().
|
private |
References appendMixInfo_internal(), ASSERT_NETWORK_OPTIONS_PARENT, CASocket::close(), createSockets(), E_SPACE, E_SUCCESS, E_UNKNOWN, E_UNSPECIFIED, getDOMChildByName(), CAListenerInterface::getInstance(), getListenerInterfaceCount(), m_arListenerInterfaces, m_cnListenerInterfaces, OPTIONS_NODE_LISTENER_INTERFACES, CAMsg::printMsg(), and WITH_SUBTREE.
Referenced by initNetworkOptionSetters().
References E_SUCCESS, len, and m_strLogDir.
|
private |
References ASSERT_GENERAL_OPTIONS_PARENT, CERT_X509CERTIFICATE, CACertificate::decode(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementAttribute(), getDOMElementValue(), initLogging(), LOGGING_MAXFILES_DEFAULT, m_bIsEncryptedLogEnabled, m_bLogConsole, m_bSyslog, m_maxLogFiles, m_maxLogFileSize, m_pLogEncryptionCertificate, m_strEncryptedLogDir, m_strLogDir, m_strLogLevel, MIX_VERSION_INFO, MIX_VERSION_TESTING_TEXT, OPTIONS_ATTRIBUTE_LOGGING_MAXFILES, OPTIONS_ATTRIBUTE_LOGGING_MAXFILESIZE, OPTIONS_NODE_ENCRYPTED_LOG, OPTIONS_NODE_LOGGING, OPTIONS_NODE_LOGGING_CONSOLE, OPTIONS_NODE_LOGGING_FILE, OPTIONS_NODE_LOGGING_KEYINFO, OPTIONS_NODE_SYSLOG, OPTIONS_NODE_X509DATA, CAMsg::printMsg(), strtrim(), TMP_BUFF_SIZE, and toLower().
Referenced by initGeneralOptionSetters().
|
private |
References ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), m_maxNrOfUsers, and OPTIONS_NODE_MAX_USERS.
Referenced by initGeneralOptionSetters().
|
private |
References appendMixInfo_internal(), ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), OPTIONS_NODE_MIN_CASCADE_LENGTH, and WITH_SUBTREE.
Referenced by initGeneralOptionSetters().
|
private |
|
private |
References appendMixInfo_internal(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), OPTIONS_NODE_DESCRIPTION, and WITH_SUBTREE.
Referenced by initMainOptionSetters().
|
private |
References addMixIdToMixInfo(), ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), m_strMixID, OPTIONS_NODE_MIX_ID, OPTIONS_NODE_MIX_NAME, strtrim(), and TMP_BUFF_SIZE.
Referenced by initGeneralOptionSetters().
|
private |
References ASSERT_GENERAL_OPTIONS_PARENT, createDOMElement(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementAttribute(), getDOMElementValue(), m_docMixInfo, m_strMixName, MIXINFO_NODE_MIX_NAME, OPTIONS_ATTRIBUTE_NAME_FOR_CASCADE, OPTIONS_NODE_MIX_NAME, OPTIONS_VALUE_MIX_NAME, OPTIONS_VALUE_OPERATOR_NAME, setDOMElementAttribute(), setDOMElementValue(), and TMP_BUFF_SIZE.
Referenced by initGeneralOptionSetters().
|
private |
determines whether this mix is a first a middle or a last mix appears in <General></General> and must be set.
References appendMixInfo_internal(), ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), LOG_NODE_EMPTY_OR_INVALID, LOG_NODE_NOT_FOUND, m_bFirstMix, m_bLastMix, m_bMiddleMix, OPTIONS_NODE_MIX_TYPE, TMP_BUFF_SIZE, and WITH_SUBTREE.
Referenced by initGeneralOptionSetters().
|
private |
References E_SUCCESS, E_UNKNOWN, getDOMChildByName(), invokeOptionSetters(), LOG_NODE_NOT_FOUND, NETWORK_OPTIONS_NR, networkOptionSetters, and OPTIONS_NODE_NETWORK.
Referenced by initMainOptionSetters().
|
private |
Copies options from newOptions
.
Only those options which are specified in newOptions
are copied. The others are left untouched!
newOptions | CACmdLnOptions object from which the new values are copied |
E_UNKNOWN | if an error occurs |
E_SUCCESS | otherwise |
References clearTargetInterfaces(), E_SUCCESS, getDelayChannelBucketGrow(), getDelayChannelBucketGrowIntervall(), getDelayChannelUnlimitTraffic(), getMaxNrOfUsers(), getTargetInterface(), getTargetInterfaceCount(), m_arTargetInterfaces, m_cnTargets, m_maxNrOfUsers, m_u32DelayChannelBucketGrow, m_u32DelayChannelBucketGrowIntervall, and m_u32DelayChannelUnlimitTraffic.
SINT32 CACmdLnOptions::setNextMix | ( | XERCES_CPP_NAMESPACE::DOMDocument * | doc | ) |
Modifies the next mix settings (target interface and certificate) according to the specified options object.
Target interfaces are only copied if they denote a next mix. HTTP and SOCKS proxy settings are ignored.
doc | a DOM document containing XML data with the new options |
References CERT_X509CERTIFICATE, createDOMElement(), CACertificate::decode(), E_SUCCESS, getDOMChildByName(), m_docMixXml, m_pNextMixCertificate, OPTIONS_NODE_CERTIFICATE_LIST, OPTIONS_NODE_LISTENER_INTERFACE, OPTIONS_NODE_NETWORK, OPTIONS_NODE_NEXT_MIX, OPTIONS_NODE_NEXT_MIX_CERTIFICATE, OPTIONS_NODE_SIGNATURE, OPTIONS_NODE_X509DATA, CAMsg::printMsg(), and processXmlConfiguration().
|
private |
SINT32 CACmdLnOptions::setNextMixTestCertificate | ( | CACertificate * | cert | ) |
References CACertificate::clone(), E_SUCCESS, E_UNKNOWN, and m_pNextMixCertificate.
Referenced by CAMiddleMix::processKeyExchange().
|
private |
References ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, GET_NET_ERROR, GET_NET_ERROR_STR, getDOMChildByName(), getDOMElementValue(), m_nrOfOpenFiles, OPTIONS_NODE_FD_NR, and CAMsg::printMsg().
Referenced by initGeneralOptionSetters().
|
private |
m_pSignKey = new CASignature();
m_pOwnCertificate =
if ( (m_pOwnCertificate->getSubjectKeyIdentifier(tmpBuff, &tmpLen) != E_SUCCESS) &&
References CACertStore::add(), addMixIdToMixInfo(), CAMultiSignature::addSignature(), ASSERT_CERTIFICATES_OPTIONS_PARENT, CERT_PKCS12, CERT_X509CERTIFICATE, CACertificate::decode(), E_SUCCESS, E_UNKNOWN, CAMultiSignature::findSKI(), CACertificate::getAuthorityKeyIdentifier(), getDOMChildByName(), getElementsByTagName(), CACertStore::getNumber(), CACertificate::getRawSubjectKeyIdentifier(), CAMultiSignature::getSignatureCount(), CACertificate::getSubjectKeyIdentifier(), CAMultiSignature::getXORofSKIs(), LOG_NODE_NOT_FOUND, m_opCertList, m_pMultiSignature, m_strAiID, m_strCascadeName, m_strMixID, OPTIONS_NODE_OWN_CERTIFICATE, OPTIONS_NODE_X509_PKCS12, CAMsg::printMsg(), readPasswd(), CASignature::setSignKey(), SIGKEY_PKCS12, TMP_BUFF_SIZE, and CACertificate::verify().
Referenced by initCertificateOptionSetters().
|
private |
References ASSERT_CERTIFICATES_OPTIONS_PARENT, CERT_X509CERTIFICATE, CACertificate::decode(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getElementsByTagName(), LOG_NODE_NOT_FOUND, m_OpCert, m_opCertList, OPTIONS_NODE_OWN_OPERATOR_CERTIFICATE, and OPTIONS_NODE_X509_CERTIFICATE.
Referenced by initCertificateOptionSetters().
|
private |
References ASSERT_ACCOUNTING_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, getDOMChildByName(), m_pBI, OPTIONS_NODE_PAYMENT_INSTANCE, and CAMsg::printMsg().
Referenced by initAccountingOptionSetters().
|
private |
|
private |
References ASSERT_ACCOUNTING_OPTIONS_PARENT, createDOMElement(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), LOG_NODE_NOT_FOUND, m_docMixInfo, m_iPrepaidInterval, OPTIONS_DEFAULT_PREPAID_IVAL, OPTIONS_NODE_PREPAID_IVAL, OPTIONS_NODE_PREPAID_IVAL_KB, CAMsg::printMsg(), and setDOMElementValue().
Referenced by initAccountingOptionSetters().
SINT32 CACmdLnOptions::setPrevMix | ( | XERCES_CPP_NAMESPACE::DOMDocument * | doc | ) |
Modifies the next mix settings (target interface and certificate) according to the specified options object.
Target interfaces are only copied if they denote a next mix. HTTP and SOCKS proxy settings are ignored.
doc | a DOM document containing XML data with the new options |
References createDOMElement(), DOM_Output::dumpToMem(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), len, m_docMixXml, OPTIONS_NODE_CERTIFICATE_LIST, OPTIONS_NODE_PREV_MIX_CERTIFICATE, OPTIONS_NODE_SIGNATURE, OPTIONS_NODE_X509_CERTIFICATE, OPTIONS_NODE_X509DATA, CAMsg::printMsg(), and processXmlConfiguration().
|
private |
SINT32 CACmdLnOptions::setPrevMixTestCertificate | ( | CACertificate * | cert | ) |
References CACertificate::clone(), E_SUCCESS, E_UNKNOWN, and m_pPrevMixCertificate.
Referenced by CALastMix::processKeyExchange(), and CAMiddleMix::processKeyExchange().
|
private |
References appendMixInfo_internal(), ASSERT_ACCOUNTING_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, CAMultiSignature::findSKI(), getDOMChildByName(), LOG_NODE_NOT_FOUND, m_pBI, m_pMultiSignature, m_pPriceCertificate, m_strAiID, OPTIONS_NODE_PRICE_CERTIFICATE, CAMsg::printMsg(), CAMultiSignature::verifyXML(), and WITH_SUBTREE.
Referenced by initAccountingOptionSetters().
|
private |
reads the parameters for the ressource limitation for last mix/first mix
References E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), m_u32DelayChannelBucketGrow, m_u32DelayChannelBucketGrowIntervall, m_u32DelayChannelUnlimitTraffic, OPTIONS_NODE_BYTES_PER_IVAL, OPTIONS_NODE_DELAY_IVAL, OPTIONS_NODE_LATENCY, OPTIONS_NODE_RESSOURCES, OPTIONS_NODE_UNLIMIT_TRAFFIC, and CAMsg::printMsg().
Referenced by initMainOptionSetters().
|
private |
|
private |
|
private |
References createDOMElement(), E_SUCCESS, CASymChannelCipher::getAlgorithmName(), getDOMChildByName(), m_algSymChannelCipher, m_docMixInfo, and setDOMElementValue().
Referenced by setGeneralOptions().
|
private |
This method sets the proxy or next mix settings.
References addVisibleAddresses(), ASSERT_NETWORK_OPTIONS_PARENT, CATargetInterface::cleanAddr(), clearVisibleAddresses(), CASocketAddr::clone(), CASocket::close(), CASocket::connect(), createDOMElement(), E_SUCCESS, E_UNKNOWN, GET_NET_ERROR, GET_NET_ERROR_STR, getDOMChildByName(), getDOMElementValue(), getElementsByTagName(), getVisibleAddress(), getVisibleAddressesCount(), isLastMix(), LAST_MIX_TO_PROXY_CONNECT_TIMEOUT, m_arTargetInterfaces, m_bSkipProxyCheck, m_bSocksSupport, m_bVPNSupport, m_cnTargets, m_docMixInfo, OPTIONS_NODE_FILE, OPTIONS_NODE_HOST, OPTIONS_NODE_IP, OPTIONS_NODE_NETWORK_PROTOCOL, OPTIONS_NODE_NEXT_MIX, OPTIONS_NODE_PORT, OPTIONS_NODE_PROXY, OPTIONS_NODE_PROXY_LIST, OPTIONS_NODE_PROXY_TYPE, CAMsg::printMsg(), RAW_TCP, RAW_UNIX, CATargetInterface::set(), setDOMElementAttribute(), setDOMElementValue(), CASocket::setRecvBuff(), CASocket::setSendBuff(), SSL_TCP, SSL_UNIX, strtrim(), TARGET_HTTP_PROXY, TARGET_MIX, TARGET_SOCKS_PROXY, TARGET_UNKNOWN, TARGET_VPN_PROXY, TMP_BUFF_SIZE, CASocketAddr::toString(), type, and UNKNOWN_NETWORKTYPE.
Referenced by initNetworkOptionSetters().
|
private |
|
private |
References createDOMDocument(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementAttribute(), getElementsByTagName(), integrateDOMNode(), m_docOpTnCs, OPTIONS_ATTRIBUTE_TNC_DATE, OPTIONS_ATTRIBUTE_TNC_DEFAULT_LANG_DEFINED, OPTIONS_ATTRIBUTE_TNC_LOCALE, OPTIONS_ATTRIBUTE_TNC_TEMPLATE_REFID, OPTIONS_NODE_TNCS, OPTIONS_NODE_TNCS_OPERATOR, OPTIONS_NODE_TNCS_TRANSLATION, OPTIONS_NODE_TNCS_TRANSLATION_IMPORTS, CAMsg::printMsg(), TMP_BUFF_SIZE, TMP_DATE_SIZE, TMP_LOCALE_SIZE, and WITH_SUBTREE.
Referenced by initTermsAndConditionsOptionSetters().
|
private |
References E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementValue(), getElementsByTagName(), getTermsAndConditionsTemplateRefId(), len, m_nrOfTermsAndConditionsTemplates, m_termsAndConditionsTemplates, OPTIONS_NODE_TNCS_TEMPLATE, OPTIONS_NODE_TNCS_TEMPLATES, parseDOMDocument(), CAMsg::printMsg(), TEMPLATE_REFID_MAXLEN, and TMP_BUFF_SIZE.
Referenced by initTermsAndConditionsOptionSetters().
|
private |
References CACertStore::add(), ASSERT_CERTIFICATES_OPTIONS_PARENT, CERT_X509CERTIFICATE, CACertificate::decode(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getElementsByTagName(), CACertStore::getNumber(), LOG_NODE_NOT_FOUND, m_bVerifyMixCerts, m_pTrustedRootCertificates, OPTIONS_NODE_TRUSTED_ROOT_CERTIFICATES, OPTIONS_NODE_X509_CERTIFICATE, and CAMsg::printMsg().
|
private |
References ASSERT_GENERAL_OPTIONS_PARENT, E_SUCCESS, E_UNKNOWN, GET_NET_ERROR, GET_NET_ERROR_STR, getDOMChildByName(), getDOMElementValue(), getUser(), m_strUser, OPTIONS_NODE_USER_ID, CAMsg::printMsg(), and TMP_BUFF_SIZE.
Referenced by initGeneralOptionSetters().
bool CACmdLnOptions::verifyMixCertificates | ( | ) |
References m_bVerifyMixCerts.
Referenced by processXmlConfiguration().
|
friend |
Thread that does the actual reconfigure work.
Only one is running at the same time.
param | pointer to a t_CMNDLN_REREAD_PARAMS stuct containing a CACmdLnOptions object pointer and a CMix object pointer. |
Referenced by reread().
|
private |
Referenced by clean(), initAccountingOptionSetters(), and setAccountingOptions().
|
private |
Referenced by clean(), initCertificateOptionSetters(), and setCertificateOptions().
|
private |
Referenced by clean(), initGeneralOptionSetters(), and setGeneralOptions().
|
private |
Referenced by CACmdLnOptions(), clean(), getInfoServices(), parseInfoServices(), and setInfoServices().
|
private |
Referenced by CACmdLnOptions(), clean(), getInfoServices(), isInfoServiceEnabled(), parseInfoServices(), and setInfoServices().
|
private |
Referenced by getSymChannelCipherAlgorithm(), and setSymChannelCipherAlgorithm().
|
private |
Referenced by CACmdLnOptions(), clearListenerInterfaces(), getListenerInterface(), parse(), and setListenerInterfaces().
|
private |
Referenced by clean(), initTermsAndConditionsOptionSetters(), and setTermsAndConditions().
|
private |
Referenced by addVisibleAddresses(), CACmdLnOptions(), clearVisibleAddresses(), and getVisibleAddress().
|
private |
Referenced by CACmdLnOptions(), clearTargetInterfaces(), getTargetInterface(), setNewValues(), and setTargetInterfaces().
|
private |
Referenced by acceptReconfiguration(), CACmdLnOptions(), parseInfoServices(), and setInfoServices().
|
private |
Referenced by CACmdLnOptions(), getAutoReconnect(), and parse().
|
private |
Referenced by CACmdLnOptions(), getCompressLogs(), and parse().
|
private |
Referenced by getCryptoBenchmark(), and parse().
|
private |
Referenced by CACmdLnOptions(), getDaemon(), parse(), and setDaemonMode().
|
private |
Referenced by setDynamicMix().
|
private |
Referenced by CACmdLnOptions(), isFirstMix(), setAccountingDatabase(), and setMixType().
|
private |
Referenced by CACmdLnOptions(), enableEncryptedLog(), isEncryptedLogEnabled(), and setLoggingOptions().
|
private |
Referenced by CACmdLnOptions(), and reread().
|
private |
Referenced by CACmdLnOptions(), isLastMix(), and setMixType().
|
private |
ONLY_LOCAL_PROXY or first.
Referenced by CACmdLnOptions(), isLocalProxy(), and parse().
|
private |
Referenced by CACmdLnOptions(), initLogging(), and setLoggingOptions().
|
private |
Referenced by CACmdLnOptions(), isMiddleMix(), and setMixType().
|
private |
Referenced by CACmdLnOptions(), parse(), and setTargetInterfaces().
|
private |
Referenced by CACmdLnOptions(), isSock5sSupported(), and setTargetInterfaces().
|
private |
Referenced by CACmdLnOptions(), isSyslogEnabled(), and setLoggingOptions().
|
private |
|
private |
Referenced by CACmdLnOptions(), and setTargetInterfaces().
|
private |
|
private |
|
private |
Referenced by addVisibleAddresses(), CACmdLnOptions(), clearVisibleAddresses(), getVisibleAddress(), and getVisibleAddressesCount().
|
private |
Referenced by CACmdLnOptions(), clean(), getCountryStatsDBConnectionLoginData(), and processXmlConfiguration().
|
private |
Referenced by CACmdLnOptions(), clean(), getCountryStatsDBConnectionLoginData(), and processXmlConfiguration().
|
private |
Referenced by CACmdLnOptions(), clean(), getCountryStatsDBConnectionLoginData(), and processXmlConfiguration().
|
private |
|
private |
Referenced by CACmdLnOptions(), clean(), parse(), setNextMix(), and setPrevMix().
|
private |
Referenced by CACmdLnOptions(), clean(), getTermsAndConditions(), and setTermsAndConditionsList().
|
private |
Referenced by getDatabasePort(), and setAccountingDatabase().
|
private |
Referenced by getPaymentHardLimit(), and setAccountingHardLimit().
|
private |
Referenced by getPaymentSettleInterval(), and setSettleInterval().
|
private |
Referenced by getPaymentSoftLimit(), and setAccountingSoftLimit().
|
private |
Referenced by getPrepaidInterval(), and setPrepaidInterval().
|
private |
Referenced by CACmdLnOptions(), getSOCKSPort(), and parse().
|
private |
Referenced by CACmdLnOptions(), and getSOCKSServerPort().
|
private |
Referenced by CACmdLnOptions(), getMixPort(), and parse().
|
private |
Referenced by getMaxLogFiles(), and setLoggingOptions().
|
private |
Referenced by CACmdLnOptions(), getMaxLogFileSize(), and setLoggingOptions().
|
private |
Referenced by CACmdLnOptions(), getMaxNrOfUsers(), setMaxUsers(), and setNewValues().
|
private |
Referenced by initCertificateOptionSetters(), and setCertificateOptions().
|
private |
Referenced by CACmdLnOptions(), getMaxOpenFiles(), and setNrOfFileDescriptors().
UINT32 CACmdLnOptions::m_nrOfTermsAndConditionsTemplates |
Referenced by CACmdLnOptions(), getNumberOfTermsAndConditionsTemplates(), and setTermsAndConditionsTemplates().
|
private |
Referenced by CACmdLnOptions(), clean(), getOperatorSubjectKeyIdentifier(), and setOwnOperatorCertificate().
|
private |
Referenced by setOwnCertificate(), and setOwnOperatorCertificate().
|
private |
Referenced by CACmdLnOptions(), processXmlConfiguration(), and setPaymentReminder().
|
private |
Referenced by CACmdLnOptions(), getBI(), setPaymentInstance(), and setPriceCertificate().
|
private |
Referenced by CACmdLnOptions(), getCascadeXML(), and processXmlConfiguration().
|
private |
Referenced by CACmdLnOptions(), and cleanup().
|
private |
|
private |
Referenced by CACmdLnOptions(), clean(), getLogEncryptionKey(), and setLoggingOptions().
|
private |
Referenced by CACmdLnOptions(), clean(), getMultiSigner(), setOwnCertificate(), and setPriceCertificate().
|
private |
|
private |
|
private |
Referenced by getPriceCertificate(), and setPriceCertificate().
|
private |
|
private |
Referenced by CACmdLnOptions(), clean(), getAccessControlCredential(), isAccessControlEnabled(), and setAccessControlCredential().
|
private |
Referenced by CACmdLnOptions(), getAiID(), setOwnCertificate(), and setPriceCertificate().
|
private |
Referenced by CACmdLnOptions(), clean(), getCascadeName(), setCascadeName(), and setOwnCertificate().
|
private |
Referenced by CACmdLnOptions(), clean(), and parse().
|
private |
Referenced by CACmdLnOptions(), clean(), getCredential(), and parse().
|
private |
Referenced by CACmdLnOptions(), getDatabaseHost(), and setAccountingDatabase().
|
private |
Referenced by CACmdLnOptions(), getDatabaseName(), and setAccountingDatabase().
|
private |
Referenced by CACmdLnOptions(), getDatabasePassword(), and setAccountingDatabase().
|
private |
Referenced by CACmdLnOptions(), getDatabaseUsername(), and setAccountingDatabase().
|
private |
Referenced by CACmdLnOptions(), clean(), getEncryptedLogDir(), and setLoggingOptions().
|
private |
Referenced by CACmdLnOptions(), clean(), getLogDir(), parse(), setLogDir(), and setLoggingOptions().
|
private |
Referenced by CACmdLnOptions(), clean(), initLogging(), and setLoggingOptions().
|
private |
Referenced by addMixIdToMixInfo(), CACmdLnOptions(), clean(), getMixId(), setCascadeNameFromOptions(), setMixID(), and setOwnCertificate().
|
private |
Referenced by CACmdLnOptions(), clean(), and setMixName().
|
private |
Referenced by CACmdLnOptions(), clean(), getPidFile(), and parse().
|
private |
Referenced by CACmdLnOptions(), clean(), getSOCKSHost(), and parse().
|
private |
Referenced by CACmdLnOptions(), clean(), getMixHost(), and parse().
|
private |
Referenced by CACmdLnOptions(), clean(), getUser(), and setUserID().
XERCES_CPP_NAMESPACE::DOMDocument** CACmdLnOptions::m_termsAndConditionsTemplates |
Referenced by CACmdLnOptions(), getAllTermsAndConditionsTemplates(), and setTermsAndConditionsTemplates().
|
private |
Referenced by CACmdLnOptions(), getDelayChannelBucketGrow(), setNewValues(), and setRessourceOptions().
|
private |
Referenced by CACmdLnOptions(), getDelayChannelBucketGrowIntervall(), setNewValues(), and setRessourceOptions().
|
private |
Referenced by CACmdLnOptions(), getDelayChannelUnlimitTraffic(), setNewValues(), and setRessourceOptions().
|
private |
Referenced by getKeepAliveRecvInterval(), and setKeepAliveTraffic().
|
private |
Referenced by getKeepAliveSendInterval(), and setKeepAliveTraffic().
|
private |
Referenced by clean(), initMainOptionSetters(), and processXmlConfiguration().
|
private |
Referenced by clean(), initNetworkOptionSetters(), and setNetworkOptions().