int main(int argc, char* argv[]) { string file_path; switch (argc) { case 2: if (argv[1] == "-h") { About(); return 0; } else { cout << "you need specify object language" << endl; return 0; } break; case 3: try { TestParam(string(argv[2])); file_path = argv[1]; } catch(const string& e) { cout << "Error: " << e << endl; About(); return 0; } break; default: About(); return 0; break; } CreateGlobalObj(); CFileHandler filehandler(file_path); filehandler.AnalysisFile(); if (!filehandler.IsOccurError()) { CBaseTranslator* p_Translate = GenerateTranslator(string(argv[2])); p_Translate->TranslateProtocol(); delete p_Translate; cout << "complete!" << endl; } DestoryGlobalObj(); system("pause"); return 0; }
int unixcrypt_file(int fd, const char *key) { ccrypt_stream_t ccs; ccrypt_stream_t *b = &ccs; int r; r = unixcrypt_init(b, key); if (r) { return r; } return filehandler(b, unixcrypt, unixcrypt_end, fd); }
int cckeychange_file(int fd, const char *key1, const char *key2) { ccrypt_stream_t ccs; ccrypt_stream_t *b = &ccs; int r; r = keychange_init(b, key1, key2); if (r) { return r; } return filehandler(b, keychange, keychange_end, fd); }
int ccdecrypt_file(int fd, const char *key) { ccrypt_stream_t ccs; ccrypt_stream_t *b = &ccs; int r; r = ccdecrypt_init_r(b, key, 0); if (r) { return r; } return filehandler(b, ccdecrypt, ccdecrypt_end, fd); }