2006-03-10 19:39:22 +01:00
|
|
|
/***********************************************************************
|
|
|
|
*
|
|
|
|
* 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.
|
|
|
|
*
|
|
|
|
***********************************************************************/
|
|
|
|
|
2006-02-28 12:17:08 +01:00
|
|
|
// 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
|
|
|
|
|