Mix majordomo
![]() | Majordomo::CreateSimpleReqForHeaders (GMessage *pubKey) Creates REQ_FOR_HEADERS |
![]() | Majordomo::CreateSimpleReqForStor (File *fileToStore) Creates simple req for storage |
![]() | Majordomo::DRCAnswerFile (const MsgField *dataFld) Serves CE_REPLY_FILE message |
![]() | Majordomo::DRCAnswerFile (const MsgField *dataField) Serves CMD_ANSWER_FILE command |
![]() | Majordomo::DRCRequestForHeaders (const MsgField *dataField, const ACID acid) Serves CMD_REQ_FOR_HEADERS message |
![]() | Majordomo::DRCRequestForStorage (const MsgField *dataFld) Serves CE_REQ_FOR_STOR command |
![]() | Majordomo::DRCRequestFromEso (MsgField *dataFld) Serves Eso's request for money |
![]() | Majordomo::DRCTimeForPayment (MsgField *dataInMsgFld) DRCTimeForPayment (cmd to_payment) Dlouhy_komentar |
![]() | Majordomo::DRCTimeForPayment (MsgField *dataInMsgFld) DRCTimeForPayment (cmd to_payment) |
![]() | Majordomo::DRCTimeOutPayment (MsgField *dataInMsgFld) DRCTimeOutPayment (cmd to_curr_pay) Dlouhy_komentar |
![]() | Majordomo::DRCTimeOutPayment (MsgField *dataInMsgFld) DRCTimeOutPayment (cmd to_curr_pay) |
![]() | Majordomo::DecryptByACPriv (const ACID acid, const MsgField *data) Decrypts data by asymetric key |
![]() | Majordomo::GenerateThisSixAC (MsgField *onion, GMessage **generatedAC) Generates access certificate for this Eso |
![]() | Majordomo::GenerateThisSixAC (MsgField *onion, GMessage **generatedAC) Generates access certificate for this Bank |
![]() | Majordomo::GetACs (Char *type, const int count = 1, Queue *notIn = NULL) Gets ACs |
![]() | Majordomo::GetAsymetricKey (GMessage **acPubKey) Gets Asymetric key from file |
![]() | Majordomo::Majordomo (Mix * parent, LogFile * majordomoLogFile) Majordomo constructor |
![]() | Majordomo::Majordomo (Bank * parent, LogFile * majordomoLogFile) Bank Majordomo constructor |
![]() | Majordomo::ParseCipheredData () Parses ciphered data |
![]() | Majordomo::PublishCertificates (GMessage * request) Publishes certificates to Acs servers |
![]() | Majordomo::UploadFile () Uploads file |
![]() | Majordomo::WaitForAnswersToFileToStor (int requestsSent) Waits for answers to CE_FILE_TO_STOR |
![]() | Majordomo::WaitForAnswersToReqForFile () Waits for answers to REQ_FOR_FILE |
![]() | Majordomo::WaitForAnswersToReqForHeaders () Waits for answers to REQ_FOR_HEADERS |
![]() | methods |
![]() | methods |
attributes
Mix majordomo. Processes various requests comming from network and from SIX also distributes messages to apropriate objects.Commands that it handles are: generate_onion get_certificates publish_certificates.
methods
GMessage* Majordomo::CreateSimpleReqForHeaders(GMessage *pubKey)
GMessage* Majordomo::CreateSimpleReqForStor(File *fileToStore)
Err Majordomo::DRCAnswerFile(const MsgField *dataFld)
Err Majordomo::DRCAnswerFile(const MsgField *dataField)
acid - ID of this Eso access certificate which was used to address thid message
Err Majordomo::DRCRequestForHeaders(const MsgField *dataField, const ACID acid)
processes the incoming request for headers
- continues the search in the search tree
- looks for the file on this server
- sends the headers found on this server
back to the client
- KO in the case of bad structure of dataField
or if fatal error comes (ex. NULL ptr to Finder)
- OK otherwise
(that means even in case of mistake in any step
of the algorithm [ex. cannot send the message
back to client] - these situations are only
written to the logFile)
acid - ID of this Eso access certificate which was used to address thid message
Err Majordomo::DRCRequestForStorage(const MsgField *dataFld)
Reply-To-ID: ID of a message assigned by sender (Client)
Reply-To-AC: AC to reply to
File-Size: Size of file Client whishes to store
Storage-Time: RelTime for which the file should be stored
Err Majordomo::DRCRequestFromEso(MsgField *dataFld)
Err Majordomo::DRCTimeForPayment(MsgField *dataInMsgFld)
Err Majordomo::DRCTimeForPayment(MsgField *dataInMsgFld)
Err Majordomo::DRCTimeOutPayment(MsgField *dataInMsgFld)
Err Majordomo::DRCTimeOutPayment(MsgField *dataInMsgFld)
MsgField* Majordomo::DecryptByACPriv(const ACID acid, const MsgField *data)
data - Data to decrypt.
Err Majordomo::GenerateThisSixAC(MsgField *onion, GMessage **generatedAC)
generatedAC - out parameter returning
Err Majordomo::GenerateThisSixAC(MsgField *onion, GMessage **generatedAC)
generatedAC - AC generated in this method.
Queue* Majordomo::GetACs(Char *type, const int count = 1, Queue *notIn = NULL)
count - Count of ACs to get.
notIn - Queue of ACs not wanted.
Err Majordomo::GetAsymetricKey(GMessage **acPubKey)
Majordomo::Majordomo(Mix * parent, LogFile * majordomoLogFile)
majordomoLogFile - Log file.
Majordomo::Majordomo(Bank * parent, LogFile * majordomoLogFile)
MsgField* Majordomo::ParseCipheredData()
The incoming ciphered data looks like this:
GM_PUBLIC_KEY:
GM_DATA: (encrypted with Private Key)
GM_RANDOM: (random string)
GM_FILE: (decrypted file)
void Majordomo::PublishCertificates(GMessage * request)
GM_PARAMETERS
GM_CERTIFICATE_1
GM_CERTIFICATE_2
...
GM_CERTIFICATE_"n"
void Majordomo::UploadFile()
void Majordomo::WaitForAnswersToFileToStor(int requestsSent)
void Majordomo::WaitForAnswersToReqForFile()
void Majordomo::WaitForAnswersToReqForHeaders()
alphabetic index hierarchy of classes
generated by doc++