void NetworkAccount::setPasswd(const QString &passwd, bool storeInConfig) { if(mPasswd != encryptStr(passwd)) { mPasswd = encryptStr(passwd); mPasswdDirty = true; } setStorePasswd(storeInConfig); }
int main(void) { setvbuf(stdin, NULL, _IONBF, 0); setvbuf(stdout, NULL, _IONBF, 0); setvbuf(stderr, NULL, _IONBF, 0); //init uart f3d_uart_init(); //reset button printf("Reset\n"); char* xPhrase = "cow"; char* xKey = "PIG"; char xNcrypt[strlen(xPhrase)+1]; char xDecrypt[strlen(xPhrase)+1]; encryptStr(xPhrase, xKey, xNcrypt); //encrypt the phrase printf(xNcrypt); printf("\n"); encryptStr(xNcrypt, xKey, xDecrypt); //decrypt the phrase printf(xDecrypt); printf("\n"); return 0; }
void NetworkAccount::writeConfig(KConfig/*Base*/ & config) /*const*/ { KMAccount::writeConfig(config); config.writeEntry("login", login()); config.writeEntry("store-passwd", storePasswd()); if(storePasswd()) { // write password to the wallet if possbile and necessary bool passwdStored = false; if(mPasswdDirty) { Wallet *wallet = kmkernel->wallet(); if(wallet && wallet->writePassword("account-" + QString::number(mId), passwd()) == 0) { passwdStored = true; mPasswdDirty = false; mStorePasswdInConfig = false; } } else { passwdStored = !mStorePasswdInConfig; // already in the wallet } // if wallet is not available, write to config file, since the account // manager deletes this group, we need to write it always if(!passwdStored && (mStorePasswdInConfig || KMessageBox::warningYesNo(0, i18n("KWallet is not available. It is strongly recommended to use " "KWallet for managing your passwords.\n" "However, KMail can store the password in its configuration " "file instead. The password is stored in an obfuscated format, " "but should not be considered secure from decryption efforts " "if access to the configuration file is obtained.\n" "Do you want to store the password for account '%1' in the " "configuration file?").arg(name()), i18n("KWallet Not Available"), KGuiItem(i18n("Store Password")), KGuiItem(i18n("Do Not Store Password"))) == KMessageBox::Yes)) { config.writeEntry("pass", encryptStr(passwd())); mStorePasswdInConfig = true; } } // delete password from the wallet if password storage is disabled if(!storePasswd() && !Wallet::keyDoesNotExist( Wallet::NetworkWallet(), "kmail", "account-" + QString::number(mId))) { Wallet *wallet = kmkernel->wallet(); if(wallet) wallet->removeEntry("account-" + QString::number(mId)); } config.writeEntry("host", host()); config.writeEntry("port", static_cast<unsigned int>(port())); config.writeEntry("auth", auth()); config.writeEntry("use-ssl", useSSL()); config.writeEntry("use-tls", useTLS()); mSieveConfig.writeConfig(config); }
const QString KNHelper::decryptStr(const QString& aStr) { return encryptStr(aStr); }
//----------------------------------------------------------------------------- void KMAcctPop::setPasswd(const QString& aPasswd, bool aStoreInConfig) { mPasswd = encryptStr(aPasswd); mStorePasswd = aStoreInConfig; }
//----------------------------------------------------------------------------- const QString KMAcctPop::decryptStr(const QString aStr) const { return encryptStr(aStr); }
void GlobalData::read() { KConfig *config=KGlobal::config(); // general... config->setGroup("General"); defineClipboard = config->readBoolEntry("Lookup_Clipboard",false); headLayout = config->readNumEntry("Heading_Layout",0); if ((headLayout > 2)||(headLayout < 0)) headLayout = 0; saveHistory = config->readBoolEntry("Save_History",true); maxHistEntrys = config->readNumEntry("Max_History_Entrys",500); if ((maxHistEntrys < 10)||(maxHistEntrys >5000)) maxHistEntrys = 200; maxBrowseListEntrys = config->readNumEntry("Max_Browse_Entrys",15); if ((maxBrowseListEntrys < 1)||(maxBrowseListEntrys > 50)) maxBrowseListEntrys = 15; maxDefinitions = config->readNumEntry("Max_Definitions",2000); if ((maxDefinitions < 100)||(maxDefinitions > 10000)) maxDefinitions = 2000; //colors config->setGroup("Colors"); useCustomColors=config->readBoolEntry("customColors", false); QColor defCol=KGlobalSettings::textColor(); c_olors[Ctext]=config->readColorEntry("textColor",&defCol); c_olorNames[Ctext]=i18n("Text"); defCol=KGlobalSettings::baseColor(); c_olors[Cbackground]=config->readColorEntry("backgroundColor",&defCol); c_olorNames[Cbackground]=i18n("Background"); defCol=KGlobalSettings::highlightedTextColor(); c_olors[CheadingsText]=config->readColorEntry("headingsTextColor",&defCol); c_olorNames[CheadingsText]=i18n("Heading Text"); defCol=KGlobalSettings::highlightColor(); c_olors[CheadingsBackground]=config->readColorEntry("headingsBackgroundColor",&defCol); c_olorNames[CheadingsBackground]=i18n("Heading Background"); defCol=KGlobalSettings::linkColor(); c_olors[Clinks]=config->readColorEntry("linksColor",&defCol); c_olorNames[Clinks]=i18n("Link"); defCol=KGlobalSettings::visitedLinkColor(); c_olors[CvisitedLinks]=config->readColorEntry("linksColor",&defCol); c_olorNames[CvisitedLinks]=i18n("Followed Link"); //fonts config->setGroup("Fonts"); useCustomFonts=config->readBoolEntry("customFonts", false); QFont defFont=KGlobalSettings::generalFont(); f_onts[Ftext]=config->readFontEntry("textFont",&defFont); f_ontNames[Ftext]=i18n("Text"); defFont.setBold( true ); defFont.setPointSize(defFont.pointSize()+2); f_onts[Fheadings]=config->readFontEntry("headingsFont",&defFont); f_ontNames[Fheadings]=i18n("Headings"); // geometry... config->setGroup("Geometry"); QSize invalid(-1,-1); optSize = config->readSizeEntry("Opt_Size",&invalid); setsSize = config->readSizeEntry("Sets_Size",&invalid); matchSize = config->readSizeEntry("Match_Size",&invalid); showMatchList = config->readBoolEntry("Show_MatchList",false); splitterSizes = config->readIntListEntry("Splitter_Sizes"); config->setGroup("Query Combo"); queryComboCompletionMode = (KGlobalSettings::Completion)config->readNumEntry("Completion_mode", KGlobalSettings::completionMode()); config->setGroup("Query_History"); queryHistory = config->readListEntry("History"); config->setGroup("DictServer"); server = config->readEntry("Server", "dict.org"); port = config->readNumEntry("Port", 2628); if (port < 0) port = 2628; timeout = config->readNumEntry("Timeout",60); if (timeout < 0) timeout = 60; pipeSize = config->readNumEntry("Pipe_Size",256); if (pipeSize < 0) pipeSize = 256; idleHold = config->readNumEntry("Idle_Hold",30); if (idleHold < 0) idleHold = 30; encoding=config->readEntry("encoding", "utf8"); authEnabled = config->readBoolEntry("Auth_Enabled",false); user = config->readEntry("User"); secret = encryptStr(config->readEntry("Secret")); serverDatabases = config->readListEntry("Server_Databases"); currentDatabase = config->readNumEntry("Current_Database",0); strategies = config->readListEntry("Strategies"); if (strategies.isEmpty()) { strategies.append(i18n("Spell Check")); strategies.append(i18n("Exact")); strategies.append(i18n("Prefix")); } else { strategies.remove(strategies.begin()); strategies.prepend(i18n("Spell Check")); } currentStrategy = config->readNumEntry("Current_Strategy",0); if (currentStrategy >= strategies.count()) currentStrategy = 0; config->setGroup("Database_Sets"); databaseSets.setAutoDelete(true); int num = config->readNumEntry("Num_Sets",0); QStringList* temp; QString strNum; while (num > 0) { temp = new QStringList(); strNum.setNum(num); *temp = config->readListEntry(strNum); if (!temp->isEmpty()) { databaseSets.prepend(temp); num--; } else { delete temp; num = 0; // stop reading... } } databases = serverDatabases; for (int i = databaseSets.count()-1;i>=0;i--) databases.prepend(databaseSets.at(i)->first()); databases.prepend(i18n("All Databases")); if (currentDatabase >= databases.count()) currentDatabase = 0; }
void GlobalData::write() { KConfig *config=KGlobal::config(); config->setGroup("General"); config->writeEntry("Lookup_Clipboard",defineClipboard); config->writeEntry("Heading_Layout",headLayout); config->writeEntry("Save_History",saveHistory); config->writeEntry("Max_History_Entrys",maxHistEntrys); config->writeEntry("Max_Browse_Entrys",maxBrowseListEntrys); config->writeEntry("Max_Definitions",maxDefinitions); config->setGroup("Colors"); config->writeEntry("customColors",useCustomColors); config->writeEntry("textColor", c_olors[Ctext]); config->writeEntry("backgroundColor", c_olors[Cbackground]); config->writeEntry("headingsTextColor", c_olors[CheadingsText]); config->writeEntry("headingsBackgroundColor", c_olors[CheadingsBackground]); config->writeEntry("linksColor", c_olors[Clinks]); config->writeEntry("visitedLinksColor", c_olors[CvisitedLinks]); config->setGroup("Fonts"); config->writeEntry("customFonts", useCustomFonts); config->writeEntry("textFont", f_onts[Ftext]); config->writeEntry("headingsFont", f_onts[Fheadings]); config->setGroup("Geometry"); config->writeEntry("Opt_Size",optSize); config->writeEntry("Sets_Size",setsSize); config->writeEntry("Match_Size",matchSize); config->writeEntry("Show_MatchList",showMatchList); config->writeEntry("Splitter_Sizes",splitterSizes); config->setGroup("Query Combo"); config->writeEntry("Completion_mode", (int)queryComboCompletionMode); config->setGroup("Query_History"); QStringList copy; if (saveHistory) copy = queryHistory; config->writeEntry("History",copy); config->setGroup("DictServer"); config->writeEntry("Server", server); config->writeEntry("Port", port); config->writeEntry("Timeout",timeout); config->writeEntry("Pipe_Size",pipeSize); config->writeEntry("Idle_Hold",idleHold); config->writeEntry("encoding", encoding); config->writeEntry("Auth_Enabled",authEnabled); config->writeEntry("User", user); config->writeEntry("Secret", encryptStr(secret)); config->writeEntry("Server_Databases",serverDatabases); config->writeEntry("Current_Database",currentDatabase); config->writeEntry("Strategies",strategies); config->writeEntry("Current_Strategy",currentStrategy); config->setGroup("Database_Sets"); config->writeEntry("Num_Sets",databaseSets.count()); QString strNum; for (unsigned int i = 0;i<databaseSets.count();i++) config->writeEntry(strNum.setNum(i+1),*databaseSets.at(i)); }