/*********************************************************************** * * Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; version 2.1 * of the License. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, Novell, Inc. * * To contact Novell about this file by physical or electronic mail, * you may find current contact information at www.novell.com. * ***********************************************************************/ // SignonManager.h: interface for the SignonManager class. // ////////////////////////////////////////////////////////////////////// #ifndef __FPM_SIGNON_MANAGER_H__ #define __FPM_SIGNON_MANAGER_H__ #include "FirefoxPasswordManager.h" #include "Common.h" #include "DataManager.h" #include "CryptManager.h" class SignonManager { DataManager dataManager; CryptManager cryptManager; FILE *signonFile; public: SignonManager(); virtual ~SignonManager(); int OpenSignonFile(char *firefoxProfileDir, char *fileName, char *accessType ); int CloseSignonFile(); int ReadLine(char *buffer, int size); char ReadChar(); Unichar ReadCharUTF8(); int WriteCharUTF8(Unichar c); int WriteLine(char *line); int LoadSignonData(char *firefoxProfileDir); int WriteSignonData(char *firefoxProfileDir); int RemoveSignonData(); int AddUser(char *host, char *userName, char *password); int RemoveHost(char *hostName); int ModifyHost(struct Host *host); int AddHost(struct Host *host); struct Host* GetHostInfo(); void SetupFunctions(void *funList[]); int CheckSignonPref(); }; #endif