Mixe for Privacy and Anonymity in the Internet
|
Go to the source code of this file.
Classes | |
struct | t_MixPacketPayload |
struct | t_MixPacket |
struct | t_queue_entry |
struct | t_replay_timestamp |
the Replaytimestamp type More... | |
struct | t_mix_parameters |
struct | t_accountinginfo |
Structure that holds all per-user payment information Included in CAFirstMixChannelList (struct fmHashTableEntry) More... | |
Macros | |
#define | MIX_PAYLOAD_HTTP 0 |
#define | MIX_PAYLOAD_SOCKS 1 |
#define | MIX_PAYLOAD_VPN 2 |
#define | MIXPACKET_SIZE 998 |
#define | CHANNEL_DATA 0x00 |
#define | CHANNEL_OPEN 0x08 |
#define | CHANNEL_TIMESTAMPS_UP 0x60 |
#define | CHANNEL_TIMESTAMPS_DOWN 0x90 |
#define | CHANNEL_CLOSE 0x01 |
#define | CHANNEL_DUMMY 0x10 |
#define | CHANNEL_DEBUG 0x20 |
#define | CHANNEL_SIG_CRIME 0x0 |
#define | CHANNEL_SIG_CRIME_ID_MASK 0x0 |
#define | CHANNEL_ALLOWED_FLAGS (CHANNEL_OPEN|CHANNEL_CLOSE|CHANNEL_TIMESTAMPS_UP|CHANNEL_TIMESTAMPS_DOWN) |
#define | NEW_FLOW_CONTROL_FLAG 0x8000 |
#define | INTEGRITY_ERROR_FLAG 0x4000 |
#define | CONNECTION_ERROR_FLAG 0x01 |
#define | DATA_SIZE 992 |
#define | PAYLOAD_SIZE 989 |
#define | PAYLOAD_HEADER_SIZE 3 |
#define | GCM_MAC_SIZE 16 |
#define | PAYLOAD_LEN_MASK 0x03FF; |
#define | DO_PACKED __attribute__ ((__packed__)) |
#define | AUTH_NEW 0x0 |
These flags are used to represent the state of the payment. More... | |
#define | AUTH_GOT_ACCOUNTCERT 0x1 |
user has sent an account certificate More... | |
#define | AUTH_ACCOUNT_OK 0x2 |
format and signature of all received certificates was OK More... | |
#define | AUTH_WAITING_FOR_FIRST_SETTLED_CC 0x4 |
First CC from client has not been settled yet. More... | |
#define | AUTH_SENT_CC_REQUEST 0x20 |
we have sent one or two CC requests More... | |
#define | AUTH_DATABASE 0x40 |
A database error occured (internal or in the BI) More... | |
#define | AUTH_BLOCKED 0x80 |
Account has been blocked temporarly. More... | |
#define | AUTH_SENT_ACCOUNT_REQUEST 0x100 |
we have sent one request for an accountcertificate More... | |
#define | AUTH_HARD_LIMIT_REACHED 0x200 |
#define | AUTH_FAKE 0x400 |
the user tried to fake something More... | |
#define | AUTH_CHALLENGE_SENT 0x800 |
we have sent a challenge and not yet received the response More... | |
#define | AUTH_ACCOUNT_EMPTY 0x1000 |
the account is empty More... | |
#define | AUTH_FATAL_ERROR 0x2000 |
a fatal error occured earlier More... | |
#define | AUTH_OUTDATED_CC 0x4000 |
#define | AUTH_INVALID_ACCOUNT 0x8000 |
Account does not exist. More... | |
#define | AUTH_TIMEOUT_STARTED 0x10000 |
#define | AUTH_MULTIPLE_LOGIN 0x20000 |
#define | AUTH_UNKNOWN 0x40000 |
#define | AUTH_SETTLED_ONCE 0x80000 |
#define | AUTH_DELETE_ENTRY 0x80000 |
#define | AUTH_LOGIN_NOT_FINISHED 0x100000 |
#define | AUTH_LOGIN_FAILED 0x200000 |
#define | AUTH_LOGIN_SKIP_SETTLEMENT 0x400000 |
Typedefs | |
typedef UINT32 | HCHANNEL |
typedef t_MixPacket | MIXPACKET |
typedef struct t_queue_entry | tQueueEntry |
typedef tQueueEntry | tPoolEntry |
typedef struct t_replay_timestamp | tReplayTimestamp |
typedef struct t_mix_parameters | tMixParameters |
typedef struct t_accountinginfo | tAiAccountingInfo |
Enumerations | |
enum | NetworkType { UNKNOWN_NETWORKTYPE , RAW_TCP , RAW_UNIX , RAW_UDP , SSL_TCP , SSL_UNIX , HTTP_TCP } |
enum | TargetType { TARGET_UNKNOWN , TARGET_MIX , TARGET_HTTP_PROXY , TARGET_SOCKS_PROXY , TARGET_VPN_PROXY } |
Functions | |
struct t_MixPacketPayload | __attribute__ ((__packed__)) |
Variables | |
UINT16 | len |
UINT8 | type |
UINT8 | data [PAYLOAD_SIZE] |
HCHANNEL | channel |
UINT16 | flags |
union { | |
UINT8 data [DATA_SIZE] | |
struct t_MixPacketPayload payload | |
}; | |
struct t_queue_entry | __attribute__ |
#define AUTH_ACCOUNT_EMPTY 0x1000 |
the account is empty
Definition at line 262 of file typedefs.hpp.
#define AUTH_ACCOUNT_OK 0x2 |
format and signature of all received certificates was OK
Definition at line 236 of file typedefs.hpp.
#define AUTH_BLOCKED 0x80 |
Account has been blocked temporarly.
Definition at line 248 of file typedefs.hpp.
#define AUTH_CHALLENGE_SENT 0x800 |
we have sent a challenge and not yet received the response
Definition at line 259 of file typedefs.hpp.
#define AUTH_DATABASE 0x40 |
A database error occured (internal or in the BI)
Definition at line 245 of file typedefs.hpp.
#define AUTH_DELETE_ENTRY 0x80000 |
Definition at line 286 of file typedefs.hpp.
#define AUTH_FAKE 0x400 |
the user tried to fake something
Definition at line 256 of file typedefs.hpp.
#define AUTH_FATAL_ERROR 0x2000 |
a fatal error occured earlier
Definition at line 265 of file typedefs.hpp.
#define AUTH_GOT_ACCOUNTCERT 0x1 |
user has sent an account certificate
Definition at line 233 of file typedefs.hpp.
#define AUTH_HARD_LIMIT_REACHED 0x200 |
Definition at line 253 of file typedefs.hpp.
#define AUTH_INVALID_ACCOUNT 0x8000 |
Account does not exist.
Definition at line 270 of file typedefs.hpp.
#define AUTH_LOGIN_FAILED 0x200000 |
Definition at line 289 of file typedefs.hpp.
#define AUTH_LOGIN_NOT_FINISHED 0x100000 |
Definition at line 288 of file typedefs.hpp.
#define AUTH_LOGIN_SKIP_SETTLEMENT 0x400000 |
Definition at line 290 of file typedefs.hpp.
#define AUTH_MULTIPLE_LOGIN 0x20000 |
Definition at line 275 of file typedefs.hpp.
#define AUTH_NEW 0x0 |
These flags are used to represent the state of the payment.
new user, not yet authenticated
Definition at line 230 of file typedefs.hpp.
#define AUTH_OUTDATED_CC 0x4000 |
Definition at line 267 of file typedefs.hpp.
#define AUTH_SENT_ACCOUNT_REQUEST 0x100 |
we have sent one request for an accountcertificate
Definition at line 251 of file typedefs.hpp.
#define AUTH_SENT_CC_REQUEST 0x20 |
we have sent one or two CC requests
Definition at line 242 of file typedefs.hpp.
#define AUTH_SETTLED_ONCE 0x80000 |
Definition at line 280 of file typedefs.hpp.
#define AUTH_TIMEOUT_STARTED 0x10000 |
Definition at line 273 of file typedefs.hpp.
#define AUTH_UNKNOWN 0x40000 |
Definition at line 277 of file typedefs.hpp.
#define AUTH_WAITING_FOR_FIRST_SETTLED_CC 0x4 |
First CC from client has not been settled yet.
Definition at line 239 of file typedefs.hpp.
#define CHANNEL_ALLOWED_FLAGS (CHANNEL_OPEN|CHANNEL_CLOSE|CHANNEL_TIMESTAMPS_UP|CHANNEL_TIMESTAMPS_DOWN) |
Definition at line 60 of file typedefs.hpp.
#define CHANNEL_CLOSE 0x01 |
Definition at line 47 of file typedefs.hpp.
#define CHANNEL_DATA 0x00 |
Definition at line 42 of file typedefs.hpp.
#define CHANNEL_DEBUG 0x20 |
Definition at line 51 of file typedefs.hpp.
#define CHANNEL_DUMMY 0x10 |
Definition at line 50 of file typedefs.hpp.
#define CHANNEL_OPEN 0x08 |
Definition at line 43 of file typedefs.hpp.
#define CHANNEL_SIG_CRIME 0x0 |
Definition at line 58 of file typedefs.hpp.
#define CHANNEL_SIG_CRIME_ID_MASK 0x0 |
Definition at line 59 of file typedefs.hpp.
#define CHANNEL_TIMESTAMPS_DOWN 0x90 |
Definition at line 46 of file typedefs.hpp.
#define CHANNEL_TIMESTAMPS_UP 0x60 |
Definition at line 45 of file typedefs.hpp.
#define CONNECTION_ERROR_FLAG 0x01 |
Definition at line 67 of file typedefs.hpp.
#define DATA_SIZE 992 |
Definition at line 69 of file typedefs.hpp.
#define DO_PACKED __attribute__ ((__packed__)) |
Definition at line 84 of file typedefs.hpp.
#define GCM_MAC_SIZE 16 |
Definition at line 78 of file typedefs.hpp.
#define INTEGRITY_ERROR_FLAG 0x4000 |
Definition at line 65 of file typedefs.hpp.
#define MIX_PAYLOAD_HTTP 0 |
Definition at line 35 of file typedefs.hpp.
#define MIX_PAYLOAD_SOCKS 1 |
Definition at line 36 of file typedefs.hpp.
#define MIX_PAYLOAD_VPN 2 |
Definition at line 37 of file typedefs.hpp.
#define MIXPACKET_SIZE 998 |
Definition at line 40 of file typedefs.hpp.
#define NEW_FLOW_CONTROL_FLAG 0x8000 |
Definition at line 63 of file typedefs.hpp.
#define PAYLOAD_HEADER_SIZE 3 |
Definition at line 76 of file typedefs.hpp.
#define PAYLOAD_LEN_MASK 0x03FF; |
Definition at line 79 of file typedefs.hpp.
#define PAYLOAD_SIZE 989 |
Definition at line 73 of file typedefs.hpp.
Definition at line 34 of file typedefs.hpp.
typedef t_MixPacket MIXPACKET |
Definition at line 127 of file typedefs.hpp.
typedef struct t_accountinginfo tAiAccountingInfo |
Definition at line 192 of file typedefs.hpp.
typedef struct t_mix_parameters tMixParameters |
Definition at line 192 of file typedefs.hpp.
typedef tQueueEntry tPoolEntry |
Definition at line 192 of file typedefs.hpp.
typedef struct t_queue_entry tQueueEntry |
Definition at line 127 of file typedefs.hpp.
typedef struct t_replay_timestamp tReplayTimestamp |
Definition at line 192 of file typedefs.hpp.
enum NetworkType |
Enumerator | |
---|---|
UNKNOWN_NETWORKTYPE | |
RAW_TCP | |
RAW_UNIX | |
RAW_UDP | |
SSL_TCP | |
SSL_UNIX | |
HTTP_TCP |
Definition at line 30 of file typedefs.hpp.
enum TargetType |
Enumerator | |
---|---|
TARGET_UNKNOWN | |
TARGET_MIX | |
TARGET_HTTP_PROXY | |
TARGET_SOCKS_PROXY | |
TARGET_VPN_PROXY |
Definition at line 32 of file typedefs.hpp.
struct t_MixPacketPayload __attribute__ | ( | (__packed__) | ) |
union { ... } |
struct t_downstream_chain_cell __attribute__ |
HCHANNEL channel |
Definition at line 0 of file typedefs.hpp.
Referenced by CAFirstMixChannelToQueueList::add(), CAFirstMixChannelToQueueList::get(), CAFirstMixChannelToQueueList::removeChannel(), and CALastMixChannelList::removeChannel().
UINT8 data |
Definition at line 2 of file typedefs.hpp.
Referenced by CASocketGroupEpoll::isSignaled(), and CAHttpClient::sendPostRequest().
UINT16 flags |
Definition at line 1 of file typedefs.hpp.
Referenced by CAMix::checkCompatibility(), CASocket::getNonBlocking(), CAFirstMixA::notifyAllUserChannels(), poptBadOption(), poptGetContext(), readPasswd(), and CASocket::setNonBlocking().
UINT16 len |
Definition at line 0 of file typedefs.hpp.
Referenced by CAAccountingDBInterface::__storeAccountStatus(), CAAccountingDBInterface::__storeCostConfirmation(), CAAccountingDBInterface::__storePrepaidAmount(), CACmdLnOptions::addVisibleAddresses(), CACmdLnOptions::buildDefaultConfig(), bytes2hex(), CAThread::CAThread(), CAMix::checkCompatibility(), CASocket::connect(), CASymCipherCTR::crypt1(), CASymCipherNull::crypt1(), CASymCipherOFB::crypt1(), CASymCipherCTR::crypt2(), CASymCipherNull::crypt2(), CASymCipherOFB::crypt2(), CABase64::decode(), CASymCipher::decryptCBCwithPKCS7(), CAASymCipher::decryptOAEP(), decryptXMLElement(), CABase64::encode(), CACertStore::encode(), encodeXMLEncryptedKey(), CASymCipher::encryptCBCwithPKCS7(), CAASymCipher::encryptOAEP(), CAASymCipher::encryptPKCS1(), CACmdLnOptions::getAiID(), CACmdLnOptions::getCascadeName(), CAHttpClient::getContent(), CACmdLnOptions::getCredential(), CACmdLnOptions::getDatabaseHost(), CACmdLnOptions::getDatabaseName(), CACmdLnOptions::getDatabasePassword(), CACmdLnOptions::getDatabaseUsername(), getDOMElementAttribute(), CACmdLnOptions::getEncryptedLogDir(), CASocketAddrINet::getHostName(), CASocketAddrINet::getIPAsStr(), CASocketAddrINet::getLocalHostName(), CACmdLnOptions::getLogDir(), CACmdLnOptions::getMixHost(), CACmdLnOptions::getMixId(), CASocketAddrUnix::getPath(), CACmdLnOptions::getPidFile(), CAASymCipher::getPublicKeyAsXML(), getRandom(), CASignature::getSignKey(), CAMultiSignature::getSKI(), CACmdLnOptions::getSOCKSHost(), CAInfoService::getStatusXMLAsString(), CACmdLnOptions::getUser(), CASignature::getVerifyKeyHash(), CACmdLnOptions::getVisibleAddress(), CAAccountingInstance::handleAccountCertificate_internal(), CAFirstMix::initMixParameters(), CALocalProxy::loop(), CALastMixA::loop(), CAFirstMixB::loop(), main(), parseDOMDocument(), parseS64(), CASignature::parseSignKeyXML(), parseU64(), CASocket::peek(), CAAccountingInstance::prepareCCRequest(), CAReplayCtrlChannelMsgProc::proccessGotTimestamp(), CALastMix::processKeyExchange(), CAMiddleMix::processKeyExchange(), CALocalProxy::processKeyExchange(), CACmdLnOptions::processXmlConfiguration(), readPasswd(), CACmdLnOptions::readXmlConfiguration(), CAMuxSocket::receive(), CASocket::receive(), CATLSClientSocket::receive(), CADatagramSocket::receive(), CAClientSocket::receiveFully(), CAMuxSocket::receiveFully(), CASocket::receiveFullyT(), CACmdLnOptions::saveToFile(), CASocket::send(), CATLSClientSocket::send(), CADatagramSocket::send(), CAInfoService::sendCascadeHelo(), CASocket::sendFully(), CATLSClientSocket::sendFully(), CASocket::sendFullyTimeOut(), CAHttpClient::sendGetRequest(), CAInfoService::sendMixHelo(), CAHttpClient::sendPostRequest(), CAInfoService::sendStatus(), CASocket::sendTimeOut(), CAFirstMixA::sendToUsers(), CACmdLnOptions::setAccountingDatabase(), CACmdLnOptions::setLogDir(), CACmdLnOptions::setPrevMix(), CAASymCipher::setPublicKeyAsXML(), CASignature::setSignKey(), CACertificate::setSubjectKeyIdentifier(), CACmdLnOptions::setTermsAndConditionsTemplates(), CAXMLErrorMessage::setValues(), CASignature::setVerifyKey(), and CAMultiSignature::signXML().
struct t_MixPacketPayload payload |
Definition at line 4 of file typedefs.hpp.
UINT8 type |
Definition at line 1 of file typedefs.hpp.
Referenced by CADatagramSocket::create(), CASocket::create(), CACertStore::decode(), CACertificate::decode(), CACertStore::encode(), CACertificate::encode(), CAListenerInterface::getInstance(), CASocket::listen(), CAMsg::openLog(), CALibProxytest::openssl_locking_callback(), CAMsg::printMsg(), CASignature::setSignKey(), and CACmdLnOptions::setTargetInterfaces().