|
Mixes for Privacy and Anonymity in the Internet
|
References m_arMixParameters, m_arrSocketsIn, m_bIsShuttingDown, m_CountryStats, m_docMixCascadeInfo, m_mysqlCon, m_nMixedPackets, m_nrOfTermsAndConditionsDefs, m_nrOfTermsAndConditionsTemplates, m_nSocketsIn, m_nUser, m_PacketsPerCountryIN, m_PacketsPerCountryOUT, m_pChannelList, CAMix::m_pInfoService, m_pIPBlockList, m_pIPList, m_pmutexLogin, m_pmutexLoginThreads, m_pmutexMixedPackets, m_pmutexNewConnections, m_pmutexUser, m_pMuxOut, m_pQueueReadFromMix, m_pQueueSendToMix, m_pRSA, m_psocketgroupUsersRead, m_psocketgroupUsersWrite, m_pthreadAcceptUsers, m_pthreadReadFromMix, m_pthreadSendToMix, m_pthreadsLogin, m_tcTemplates, m_templatesOwner, m_threadLogLoop, m_tnCDefs, m_xmlKeyInfoBuff, TNC_CONFIRM, TNC_CONFIRM_REQ, TNC_INTERRUPT, TNC_REQUEST, TNC_SINTERRUPT, and TNC_SREQUEST.
| virtual CAFirstMix::~CAFirstMix | ( | ) | [virtual] |
References m_pmutexLogin, m_pmutexLoginThreads, m_pmutexMixedPackets, and m_pmutexUser.
| SINT32 CAFirstMix::clean | ( | ) | [protected, virtual] |
Implements CAMix.
References CAQueue::add(), cleanup(), CASocket::close(), CAMuxSocket::close(), deleteCountryStats(), E_SUCCESS, CAFirstMixChannelList::getFirst(), CAFirstMixChannelList::getFirstChannelForSocket(), getMemoryUsage(), CAFirstMixChannelList::getNext(), CAFirstMixChannelList::getNextChannel(), CAThread::join(), m_arMixParameters, m_arrSocketsIn, m_bRestart, m_bRunLog, m_docMixCascadeInfo, m_nMixedPackets, m_nrOfTermsAndConditionsDefs, m_nrOfTermsAndConditionsTemplates, m_nSocketsIn, m_nUser, m_pChannelList, m_pIPBlockList, m_pIPList, m_pMuxOut, CAMix::m_pMuxOutControlChannelDispatcher, m_pQueueReadFromMix, m_pQueueSendToMix, CAMixWithReplayDB::m_pReplayMsgProc, m_pRSA, m_psocketgroupUsersRead, m_psocketgroupUsersWrite, m_pthreadAcceptUsers, m_pthreadReadFromMix, m_pthreadSendToMix, m_pthreadsLogin, t_mix_parameters::m_strMixID, m_tcTemplates, m_templatesOwner, m_tnCDefs, m_u32MixCount, m_xmlKeyInfoBuff, t_firstmixchannellist::pCipher, t_fmhashtableentry::pMuxSocket, t_fmhashtableentry::pQueueSend, CAMsg::printMsg(), t_fmhashtableentry::pSymCipher, and CAFirstMixChannelList::remove().
| SINT32 CAFirstMix::connectToNextMix | ( | CASocketAddr * | a_pAddrNext | ) |
References CAMuxSocket::connect(), E_SUCCESS, E_UNKNOWN, ERR_INTERN_CONNREFUSED, ERR_INTERN_TIMEDOUT, GET_NET_ERROR, GET_NET_ERROR_STR, m_pMuxOut, CAMsg::printMsg(), sSleep(), and CASocketAddr::toString().
Referenced by init().
| void CAFirstMix::decNewConnections | ( | ) | [private] |
References CAMutex::lock(), m_newConnections, m_pmutexNewConnections, and CAMutex::unlock().
Referenced by fm_loopAcceptUsers(), and fm_loopDoUserLogin().
| SINT32 CAFirstMix::decUsers | ( | LP_fmHashTableEntry | pHashEntry | ) | [protected] |
References t_fmhashtableentry::countryID, E_SUCCESS, CAMutex::lock(), m_nUser, m_pmutexUser, CAMutex::unlock(), and updateCountryStats().
Referenced by CAFirstMixA::closeConnection(), and CAFirstMixB::loop().
| SINT32 CAFirstMix::deleteCountryStats | ( | ) | [protected] |
References E_SUCCESS, CAThread::join(), m_bRunLogCountries, m_CountryStats, m_mysqlCon, m_PacketsPerCountryIN, m_PacketsPerCountryOUT, and m_threadLogLoop.
Referenced by clean().
| SINT32 CAFirstMix::doUserLogin | ( | CAMuxSocket * | pNewUSer, |
| UINT8 | perrIP[4] | ||
| ) | [protected] |
References doUserLogin_internal(), FINISH_STACK, and INIT_STACK.
Referenced by fm_loopDoUserLogin().
| SINT32 CAFirstMix::doUserLogin_internal | ( | CAMuxSocket * | pNewUser, |
| UINT8 | peerIP[4] | ||
| ) | [private] |
Sends and receives all data neccessary for a User to "login".
This means sending the public key of the Mixes and receiving the sym keys of JAP. This is done in a thread on a per user basis
TODO: move to the if-statement above
References CASocketGroupEpoll::add(), CAFirstMixChannelList::add(), AI_LOGIN_SO_TIMEOUT, AUTH_LOGIN_FAILED, AUTH_LOGIN_NOT_FINISHED, AUTH_LOGIN_SKIP_SETTLEMENT, AUTH_WAITING_FOR_FIRST_SETTLED_CC, BEGIN_STACK, t_MixPacket::channel, cleanupTnCMixAnswer(), t_fmhashtableentry::countryID, createDOMDocument(), createDOMElement(), CABase64::decode(), decryptXMLElement(), DOM_Output::dumpToMem(), E_SOCKETCLOSED, E_SUCCESS, E_TIMEDOUT, E_UNKNOWN, CABase64::encode(), equals(), CAAccountingInstance::finishLoginProcess(), FIRST_MIX_RECEIVE_SYM_KEY_FROM_JAP_TIME_OUT, CAQueue::get(), CAFirstMixChannelList::get(), GET_NET_ERROR, GET_NET_ERROR_STR, CAMuxSocket::getCASocket(), getDOMChildByName(), getDOMElementValue(), getMixCount(), CACmdLnOptions::getMixId(), CALibProxytest::getOptions(), CAQueue::getSize(), handleTermsAndConditionsLogin(), t_fmhashtableentry::id, incUsers(), INIT_STACK, CATempIPBlockList::insertIP(), CASocket::isClosed(), CAAccountingInstance::loginProcessStatus(), m_arMixParameters, m_pChannelList, m_pIPBlockList, m_pIPList, CAMix::m_pMultiSignature, CAMixWithReplayDB::m_pReplayMsgProc, m_pRSA, m_psocketgroupUsersRead, m_psocketgroupUsersWrite, m_u64LastTimestampReceived, CAMixWithReplayDB::m_u64ReferenceTime, m_xmlKeyInfoBuff, m_xmlKeyInfoSize, MIXPACKET_SIZE, CAAccountingInstance::newSettlementTransaction(), parseDOMDocument(), t_fmhashtableentry::pControlChannelDispatcher, t_fmhashtableentry::pControlMessageQueue, T_UserLoginData::pNewUser, CAMuxSocket::prepareForSend(), CAMsg::printMsg(), CAControlChannelDispatcher::proccessMixPacket(), t_fmhashtableentry::pSymCipher, CAFirstMixChannelList::pushTimeoutEntry(), CAMuxSocket::receive(), CASocket::receiveFullyT(), CAControlChannelDispatcher::registerControlChannel(), CAFirstMixChannelList::remove(), CAIPList::removeIP(), REPLAY_BASE, termsAndConditionMixAnswer_t::result, SAVE_STACK, CASocket::sendFullyTimeOut(), SET_NET_ERROR, CAMuxSocket::setCrypt(), setDOMElementAttribute(), setDOMElementValue(), CASymCipher::setIVs(), CASocket::setKeepAlive(), CASymCipher::setKey(), CASocket::setNonBlocking(), CAMuxSocket::setReceiveKey(), CAMuxSocket::setSendKey(), CAMultiSignature::sign(), strerror(), TC_FAILED, TC_UNFINISHED, CAAccountingInstance::unlockLogin(), and termsAndConditionMixAnswer_t::xmlAnswer.
Referenced by doUserLogin().
| bool CAFirstMix::forceKickout | ( | fmHashTableEntry * | pHashTableEntry, |
| const XERCES_CPP_NAMESPACE::DOMDocument * | pErrDoc = NULL |
||
| ) |
References CAFirstMixChannelList::forceKickout(), and m_pChannelList.
Referenced by CAAccountingInstance::handleChallengeResponse_internal().
| SINT32 CAFirstMix::getLevel | ( | SINT32 * | puser, |
| SINT32 * | prisk, | ||
| SINT32 * | ptraffic | ||
| ) |
References E_SUCCESS, and getNrOfUsers().
References m_pmutexLogin.
Referenced by CAAccountingInstance::handleChallengeResponse_internal().
References m_u32MixCount.
Referenced by doUserLogin_internal().
| SINT32 CAFirstMix::getMixedPackets | ( | UINT64 & | ppackets | ) |
References E_SUCCESS, m_nMixedPackets, and set64().
Returns the ordered list of the mix parameters from the first mix to the last mix.
References m_arMixParameters.
References m_nUser.
Referenced by fm_loopAcceptUsers(), and getLevel().
| TermsAndConditions * CAFirstMix::getTermsAndConditions | ( | const UINT8 * | opSki | ) |
References m_nrOfTermsAndConditionsDefs, and m_tnCDefs.
Referenced by handleTermsAndConditionsLogin(), and processKeyExchange().
| DOMNode * CAFirstMix::getTermsAndConditionsTemplate | ( | UINT8 * | templateRefID | ) |
References getTermsAndConditionsTemplateRefId(), m_nrOfTermsAndConditionsTemplates, m_tcTemplates, and TEMPLATE_REFID_MAXLEN.
Referenced by handleTermsAndConditionsExtension().
| tMixType CAFirstMix::getType | ( | ) | const [virtual] |
Implements CAMix.
References CAMix::FIRST_MIX.
| SINT32 CAFirstMix::handleKeyInfoExtensions | ( | DOMElement * | root | ) |
References E_SUCCESS, E_UNKNOWN, getDOMChildByName(), handleTermsAndConditionsExtension(), and KEYINFO_NODE_EXTENSIONS.
Referenced by processKeyExchange().
| SINT32 CAFirstMix::handleTermsAndConditionsExtension | ( | DOMElement * | extensionRoot | ) |
References TermsAndConditions::addTranslation(), E_SUCCESS, E_UNKNOWN, getDOMChildByName(), getDOMElementAttribute(), getElementsByTagName(), getTermsAndConditionsTemplate(), KEYINFO_NODE_TNC_EXTENSION, m_nrOfTermsAndConditionsDefs, m_nrOfTermsAndConditionsTemplates, m_tcTemplates, m_templatesOwner, m_tnCDefs, OPTIONS_ATTRIBUTE_TNC_ID, OPTIONS_ATTRIBUTE_TNC_LOCALE, OPTIONS_ATTRIBUTE_TNC_TEMPLATE_REFID, OPTIONS_NODE_TNCS, OPTIONS_NODE_TNCS_TEMPLATES, OPTIONS_NODE_TNCS_TRANSLATION, CAMsg::printMsg(), TMP_BUFF_SIZE, TMP_LOCALE_SIZE, and TNC_TEMPLATE_ROOT_ELEMENT.
Referenced by handleKeyInfoExtensions().
| termsAndConditionMixAnswer_t * CAFirstMix::handleTermsAndConditionsLogin | ( | XERCES_CPP_NAMESPACE::DOMDocument * | request | ) | [private] |
References createDOMDocument(), createDOMElement(), E_SUCCESS, equals(), getDOMChildByName(), getDOMElementAttribute(), getElementsByTagName(), getTermsAndConditions(), TermsAndConditions::getTranslation(), OPTIONS_ATTRIBUTE_TNC_ID, OPTIONS_ATTRIBUTE_TNC_LOCALE, CAMsg::printMsg(), termsAndConditionMixAnswer_t::result, TC_CONFIRMED, TC_FAILED, TC_UNFINISHED, TMP_BUFF_SIZE, TMP_LOCALE_SIZE, TNC_CONFIRM, termsAndConditionsTranslation_t::tnc_customized, TNC_INTERRUPT, TNC_REQ_TRANSLATION, TNC_REQUEST, TNC_RESOURCE_CUSTOMIZED_SECT, TNC_RESOURCE_TEMPLATE, TNC_RESOURCES, TNC_RESPONSE, TNC_RESPONSE_INVALID_REQUEST, termsAndConditionsTranslation_t::tnc_template, and termsAndConditionMixAnswer_t::xmlAnswer.
Referenced by doUserLogin_internal().
| SINT32 CAFirstMix::incMixedPackets | ( | ) | [protected] |
References E_SUCCESS, inc64(), CAMutex::lock(), m_nMixedPackets, m_pmutexMixedPackets, and CAMutex::unlock().
Referenced by CAFirstMixB::loop(), and CAFirstMixA::loop().
| void CAFirstMix::incNewConnections | ( | ) | [private] |
References CAMutex::lock(), m_newConnections, m_pmutexNewConnections, and CAMutex::unlock().
Referenced by fm_loopAcceptUsers().
| SINT32 CAFirstMix::incUsers | ( | LP_fmHashTableEntry | pHashEntry | ) | [protected] |
References t_fmhashtableentry::countryID, E_SUCCESS, CAMutex::lock(), m_nUser, m_pmutexUser, t_fmhashtableentry::peerIP, CAMutex::unlock(), and updateCountryStats().
Referenced by doUserLogin_internal().
| SINT32 CAFirstMix::init | ( | ) | [protected, virtual] |
Connect to the next mix
Implements CAMix.
References CATargetInterface::cleanAddr(), connectToNextMix(), CASocket::create(), createDOMDocument(), CACmdLnOptions::createSockets(), E_SHUTDOWN, E_SUCCESS, E_UNKNOWN, ev_net_keyExchangeNextSuccessful, ev_net_nextConnected, ev_net_nextConnectionClosed, fm_loopAcceptUsers, fm_loopReadFromMix, fm_loopSendToMix, FM_PACKET_STATS_LOG_INTERVALL, GET_NET_ERROR_STR, CATargetInterface::getAddr(), CAMuxSocket::getCASocket(), CACmdLnOptions::getCountryStatsDBConnectionLoginData(), CALibProxytest::getOptions(), CASocket::getRecvBuff(), CASocket::getSendBuff(), CACmdLnOptions::getTargetInterface(), CACmdLnOptions::getTargetInterfaceCount(), CATargetInterface::getTargetType(), CASocketAddr::getType(), CAAccountingDBInterface::init(), initCountryStats(), isShuttingDown(), m_arrSocketsIn, m_bRestart, m_nMixedPackets, m_nSocketsIn, m_pChannelList, m_pIPBlockList, m_pIPList, m_pMuxOut, CAMix::m_pMuxOutControlChannelDispatcher, m_pQueueReadFromMix, m_pQueueSendToMix, CAMixWithReplayDB::m_pReplayDB, CAMixWithReplayDB::m_pReplayMsgProc, m_psocketgroupUsersRead, m_psocketgroupUsersWrite, m_pthreadAcceptUsers, m_pthreadReadFromMix, m_pthreadSendToMix, m_pthreadsLogin, m_templatesOwner, m_u64LastTimestampReceived, CAMixWithReplayDB::m_u64ReferenceTime, MAX_LOGIN_QUEUE, MIXPACKET_SIZE, MONITORING_FIRE_NET_EVENT, NUM_LOGIN_WORKER_TRHEADS, CAMsg::printMsg(), processKeyExchange(), CASocket::setKeepAlive(), CAThread::setMainLoop(), CASocket::setRecvBuff(), CASocket::setSendBuff(), CADatabase::start(), CAThread::start(), and TARGET_MIX.
| SINT32 CAFirstMix::initCountryStats | ( | char * | db_host, |
| char * | db_user, | ||
| char * | db_passwd | ||
| ) | [private] |
References COUNTRY_STATS_DB, E_SUCCESS, E_UNKNOWN, CACmdLnOptions::getCascadeName(), CALibProxytest::getOptions(), iplist_loopDoLogCountries, m_bRunLogCountries, m_CountryStats, m_mysqlCon, m_PacketsPerCountryIN, m_PacketsPerCountryOUT, m_threadLogLoop, mysqlEscapeTableName(), NR_OF_COUNTRIES, CAMsg::printMsg(), CAThread::setMainLoop(), and CAThread::start().
Referenced by init().
| SINT32 CAFirstMix::initMixParameters | ( | DOMElement * | elemMixes | ) | [protected] |
Initialises the MixParameters info for each mix form the <Mixes> element received from the second mix.
set u32MixCount and m_arMixParameters from the <Mixes> element received from the second mix.
References E_SUCCESS, getDOMElementAttribute(), getElementsByTagName(), CACmdLnOptions::getMixId(), CALibProxytest::getOptions(), len, m_arMixParameters, t_mix_parameters::m_strMixID, and m_u32MixCount.
Referenced by processKeyExchange().
| SINT32 CAFirstMix::initOnce | ( | ) | [protected, virtual] |
Reimplemented from CAMix.
References E_SUCCESS, E_UNKNOWN, CACmdLnOptions::getListenerInterface(), CACmdLnOptions::getListenerInterfaceCount(), CACmdLnOptions::getMultiSigner(), CALibProxytest::getOptions(), CAListenerInterface::isVirtual(), m_nSocketsIn, CAMix::m_pMultiSignature, and CAMsg::printMsg().
| SINT32 CAFirstMix::isAllowedToPassRestrictions | ( | CASocket * | pNewMuxSocket | ) | [private] |
| bool CAFirstMix::isShuttingDown | ( | ) | [protected] |
References m_bIsShuttingDown.
Referenced by init().
| virtual SINT32 CAFirstMix::loop | ( | ) | [protected, pure virtual] |
Implements CAMix.
Implemented in CAFirstMixA, and CAFirstMixB.
| SINT32 CAFirstMix::processKeyExchange | ( | ) | [protected, virtual] |
Getting the KeepAlive Traffic...
initialises MixParameters struct
Implements CAMix.
References CAMix::addMixInfo(), CAMix::appendCompatibilityInfo(), CAMix::appendTermsAndConditionsExtension(), CAMix::checkCompatibility(), createDOMDocument(), createDOMElement(), CABase64::decode(), DOM_Output::dumpToMem(), E_SUCCESS, E_UNKNOWN, CABase64::encode(), encodeXMLEncryptedKey(), equals(), CAASymCipher::generateKeyPair(), GET_NET_ERROR, GET_NET_ERROR_STR, CAMuxSocket::getCASocket(), getDOMChildByName(), getDOMElementAttribute(), getDOMElementValue(), CACmdLnOptions::getKeepAliveRecvInterval(), CACmdLnOptions::getKeepAliveSendInterval(), CACmdLnOptions::getNextMixTestCertificate(), CALibProxytest::getOptions(), CAASymCipher::getPublicKeyAsDOMElement(), getRandom(), getTermsAndConditions(), CACmdLnOptions::getTrustedCertificateStore(), handleKeyInfoExtensions(), CAMix::initMixCascadeInfo(), initMixParameters(), len, CAMix::m_pMultiSignature, m_pMuxOut, m_pRSA, CAMix::m_u32KeepAliveRecvInterval, CAMix::m_u32KeepAliveSendInterval, m_xmlKeyInfoBuff, m_xmlKeyInfoSize, MIX_CASCADE_PROTOCOL_VERSION, parseDOMDocument(), PAYMENT_VERSION, CAMsg::printMsg(), readFile(), CAMuxSocket::receiveFully(), saveFile(), CASocket::send(), CAMuxSocket::setCrypt(), setDOMElementAttribute(), setDOMElementValue(), CACmdLnOptions::setNextMixTestCertificate(), CAASymCipher::setPublicKeyAsDOMNode(), CAMuxSocket::setReceiveKey(), CAMuxSocket::setSendKey(), CAMultiSignature::signXML(), CAMix::signXML(), CAMix::termsAndConditionsInfoNode(), CAMix::TIMEOUT_MIX_CONNECTION_ESTABLISHEMENT, CACertStore::verifyMixCert(), CACmdLnOptions::verifyMixCertificates(), and CAMultiSignature::verifyXML().
Referenced by init().
| SINT32 CAFirstMix::reconfigure | ( | ) | [protected, virtual] |
Reimplemented from CAMix.
References E_SUCCESS, CALibProxytest::getOptions(), m_pChannelList, CAMsg::printMsg(), and CAFirstMixChannelList::setDelayParameters().
| SINT32 CAFirstMix::sendReplayTimestampRequestsToAllMixes | ( | ) | [private] |
| SINT32 CAFirstMix::setMixParameters | ( | const tMixParameters & | params | ) |
Sets the parameters for the mix specified in the params.m_strMixID field.
Only the values which are set are copied to the stored parameters of the mixes of this cascade.
References E_SUCCESS, m_arMixParameters, t_mix_parameters::m_strMixID, m_u32MixCount, t_mix_parameters::m_u32ReplayBase, t_mix_parameters::m_u32ReplayOffset, and m_u64LastTimestampReceived.
Referenced by CAReplayCtrlChannelMsgProc::proccessGotTimestamp().
| SINT32 CAFirstMix::updateCountryStats | ( | const UINT8 | ip[4], |
| UINT32 | a_countryID, | ||
| bool | bRemove | ||
| ) | [private] |
Update the statisitics of the countries users come from.
The dependency between the argumenst is as follow:
| bRemove | if true the number of users of a given country is decreased, if false it is increased |
| a_countryID | the country the user comes from. Must be set if bRemove==true. If bRemove==false and ip==NULL, than if also must be set to the country the user comes from. In case ip!=NULL if holdes the default country id, if no country for the ip could be found |
| ip | the ip the user comes from. this ip is looked up in the databse to find the corresponding country. it is only used if bRemove==false. If no country for that ip could be found a_countryID is used as default value |
References m_CountryStats, m_mysqlCon, NR_OF_COUNTRIES, and CAMsg::printMsg().
Referenced by decUsers(), and incUsers().
| THREAD_RETURN fm_loopAcceptUsers | ( | void * | ) | [friend] |
Referenced by init().
| THREAD_RETURN fm_loopDoUserLogin | ( | void * | param | ) | [friend] |
| THREAD_RETURN fm_loopLog | ( | void * | ) | [friend] |
Referenced by CAFirstMixA::loop().
| THREAD_RETURN fm_loopReadFromMix | ( | void * | ) | [friend] |
Referenced by init().
| THREAD_RETURN fm_loopReadFromUsers | ( | void * | ) | [friend] |
| THREAD_RETURN fm_loopSendToMix | ( | void * | ) | [friend] |
How to end this thread: 0.
set bRestart=true; 1. Close connection to next mix 2. put some bytes (len>MIX_PACKET_SIZE) in the Mix-Output-Queue
Referenced by init().
| THREAD_RETURN iplist_loopDoLogCountries | ( | void * | param | ) | [friend] |
Referenced by initCountryStats().
tMixParameters* CAFirstMix::m_arMixParameters [protected] |
CASocket** CAFirstMix::m_arrSocketsIn [protected] |
Referenced by CAFirstMix(), clean(), fm_loopAcceptUsers(), init(), and CAFirstMixB::loop().
bool CAFirstMix::m_bIsShuttingDown [protected] |
Referenced by CAFirstMix(), isShuttingDown(), and CAFirstMixA::shutDown().
volatile bool CAFirstMix::m_bRestart [protected] |
Referenced by clean(), fm_loopAcceptUsers(), fm_loopReadFromMix(), fm_loopSendToMix(), init(), CAFirstMixB::loop(), CAFirstMixA::loop(), and CAFirstMixA::shutDown().
volatile bool CAFirstMix::m_bRunLog [protected] |
Referenced by clean(), fm_loopLog(), and CAFirstMixA::loop().
volatile bool CAFirstMix::m_bRunLogCountries [private] |
Referenced by deleteCountryStats(), initCountryStats(), and iplist_loopDoLogCountries().
volatile UINT32* CAFirstMix::m_CountryStats [private] |
Referenced by CAFirstMix(), deleteCountryStats(), initCountryStats(), iplist_loopDoLogCountries(), and updateCountryStats().
XERCES_CPP_NAMESPACE::DOMDocument* CAFirstMix::m_docMixCascadeInfo [protected] |
Reimplemented from CAMix.
Referenced by CAFirstMix(), and clean().
MYSQL* CAFirstMix::m_mysqlCon [private] |
Referenced by CAFirstMix(), deleteCountryStats(), initCountryStats(), iplist_loopDoLogCountries(), and updateCountryStats().
volatile UINT32 CAFirstMix::m_newConnections [private] |
Referenced by decNewConnections(), fm_loopAcceptUsers(), and incNewConnections().
UINT64 CAFirstMix::m_nMixedPackets [protected] |
Referenced by CAFirstMix(), clean(), getMixedPackets(), incMixedPackets(), and init().
UINT32 CAFirstMix::m_nrOfTermsAndConditionsDefs [protected] |
Referenced by CAFirstMix(), clean(), getTermsAndConditions(), and handleTermsAndConditionsExtension().
UINT32 CAFirstMix::m_nrOfTermsAndConditionsTemplates [protected] |
Referenced by CAFirstMix(), clean(), getTermsAndConditionsTemplate(), and handleTermsAndConditionsExtension().
UINT32 CAFirstMix::m_nSocketsIn [protected] |
Referenced by CAFirstMix(), clean(), fm_loopAcceptUsers(), init(), initOnce(), and CAFirstMixB::loop().
volatile UINT32 CAFirstMix::m_nUser [protected] |
Referenced by CAFirstMix(), clean(), decUsers(), getNrOfUsers(), incUsers(), CAFirstMixB::loop(), and CAFirstMixA::loop().
tUINT32withLock* CAFirstMix::m_PacketsPerCountryIN [protected] |
Referenced by CAFirstMix(), deleteCountryStats(), initCountryStats(), iplist_loopDoLogCountries(), CAFirstMixB::loop(), and CAFirstMixA::loop().
tUINT32withLock* CAFirstMix::m_PacketsPerCountryOUT [protected] |
Referenced by CAFirstMix(), deleteCountryStats(), initCountryStats(), iplist_loopDoLogCountries(), CAFirstMixB::loop(), and CAFirstMixA::loop().
CAFirstMixChannelList* CAFirstMix::m_pChannelList [protected] |
Referenced by CAFirstMixA::accountTrafficDownstream(), CAFirstMixA::accountTrafficUpstream(), CAFirstMix(), CAFirstMixA::checkUserConnections(), clean(), CAFirstMixA::closeConnection(), doUserLogin_internal(), CAFirstMixA::finishPacket(), forceKickout(), init(), CAFirstMixB::loop(), CAFirstMixA::loop(), CAFirstMixA::notifyAllUserChannels(), reconfigure(), CAFirstMixA::sendToUsers(), and CAFirstMixA::shutDown().
CATempIPBlockList* CAFirstMix::m_pIPBlockList [protected] |
Referenced by CAFirstMix(), clean(), doUserLogin_internal(), fm_loopAcceptUsers(), and init().
CAIPList* CAFirstMix::m_pIPList [protected] |
Referenced by CAFirstMix(), clean(), CAFirstMixA::closeConnection(), doUserLogin_internal(), fm_loopAcceptUsers(), init(), and CAFirstMixB::loop().
CAMutex* CAFirstMix::m_pmutexLogin [protected] |
Referenced by CAFirstMix(), getLoginMutex(), CAFirstMixA::loop(), and ~CAFirstMix().
CAMutex* CAFirstMix::m_pmutexLoginThreads [protected] |
Referenced by CAFirstMix(), and ~CAFirstMix().
CAMutex* CAFirstMix::m_pmutexMixedPackets [protected] |
Referenced by CAFirstMix(), incMixedPackets(), and ~CAFirstMix().
CAMutex* CAFirstMix::m_pmutexNewConnections [private] |
Referenced by CAFirstMix(), decNewConnections(), and incNewConnections().
CAMutex* CAFirstMix::m_pmutexUser [protected] |
Referenced by CAFirstMix(), decUsers(), incUsers(), iplist_loopDoLogCountries(), and ~CAFirstMix().
CAMuxSocket* CAFirstMix::m_pMuxOut [protected] |
Referenced by CAFirstMix(), clean(), connectToNextMix(), fm_loopReadFromMix(), fm_loopSendToMix(), init(), CAFirstMixB::loop(), and processKeyExchange().
CAQueue* CAFirstMix::m_pQueueReadFromMix [protected] |
Referenced by CAFirstMix(), clean(), fm_loopReadFromMix(), init(), CAFirstMixB::loop(), and CAFirstMixA::loop().
CAQueue* CAFirstMix::m_pQueueSendToMix [protected] |
CAASymCipher* CAFirstMix::m_pRSA [protected] |
Referenced by CAFirstMix(), clean(), doUserLogin_internal(), and processKeyExchange().
CASocketGroupEpoll* CAFirstMix::m_psocketgroupUsersRead [protected] |
Referenced by CAFirstMix(), clean(), CAFirstMixA::closeConnection(), doUserLogin_internal(), init(), CAFirstMixB::loop(), and CAFirstMixA::loop().
CASocketGroupEpoll* CAFirstMix::m_psocketgroupUsersWrite [protected] |
CAThread* CAFirstMix::m_pthreadAcceptUsers [protected] |
Referenced by CAFirstMix(), clean(), init(), CAFirstMixB::loop(), and CAFirstMixA::shutDown().
CAThread* CAFirstMix::m_pthreadReadFromMix [protected] |
Referenced by CAFirstMix(), clean(), init(), and CAFirstMixB::loop().
CAThread* CAFirstMix::m_pthreadSendToMix [protected] |
Referenced by CAFirstMix(), clean(), init(), and CAFirstMixB::loop().
CAThreadPool* CAFirstMix::m_pthreadsLogin [protected] |
Referenced by CAFirstMix(), clean(), fm_loopAcceptUsers(), init(), and CAFirstMixB::loop().
DOMNode** CAFirstMix::m_tcTemplates [protected] |
Referenced by CAFirstMix(), clean(), getTermsAndConditionsTemplate(), and handleTermsAndConditionsExtension().
XERCES_CPP_NAMESPACE::DOMDocument* CAFirstMix::m_templatesOwner [protected] |
Referenced by CAFirstMix(), clean(), handleTermsAndConditionsExtension(), and init().
CAThread* CAFirstMix::m_threadLogLoop [private] |
Referenced by CAFirstMix(), deleteCountryStats(), and initCountryStats().
TermsAndConditions** CAFirstMix::m_tnCDefs [protected] |
Referenced by CAFirstMix(), clean(), getTermsAndConditions(), and handleTermsAndConditionsExtension().
UINT32 CAFirstMix::m_u32MixCount [protected] |
Referenced by clean(), getMixCount(), initMixParameters(), sendReplayTimestampRequestsToAllMixes(), and setMixParameters().
Referenced by doUserLogin_internal(), init(), CAReplayCtrlChannelMsgProc::proccessGotTimestamp(), and setMixParameters().
UINT8* CAFirstMix::m_xmlKeyInfoBuff [protected] |
Referenced by CAFirstMix(), clean(), doUserLogin_internal(), and processKeyExchange().
UINT16 CAFirstMix::m_xmlKeyInfoSize [protected] |
Referenced by doUserLogin_internal(), and processKeyExchange().
const UINT32 CAFirstMix::MAX_CONCURRENT_NEW_CONNECTIONS = NUM_LOGIN_WORKER_TRHEADS * 2 [static, private] |
Referenced by fm_loopAcceptUsers().
const XMLCh* CAFirstMix::TNC_CONFIRM [protected] |
Referenced by CAFirstMix(), and handleTermsAndConditionsLogin().
const XMLCh* CAFirstMix::TNC_INTERRUPT [protected] |
Referenced by CAFirstMix(), and handleTermsAndConditionsLogin().
const XMLCh* CAFirstMix::TNC_REQUEST [protected] |
Referenced by CAFirstMix(), and handleTermsAndConditionsLogin().
1.7.6.1