diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | ce4a32fe52ef09d8f5ff1dd22c001110902b60a2 (patch) | |
tree | 5ac38a06f3dde268dc7927dc155896926aaf7012 /kio/kssl/ksslcertificatehome.h | |
download | tdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.tar.gz tdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kio/kssl/ksslcertificatehome.h')
-rw-r--r-- | kio/kssl/ksslcertificatehome.h | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/kio/kssl/ksslcertificatehome.h b/kio/kssl/ksslcertificatehome.h new file mode 100644 index 000000000..9dd26331c --- /dev/null +++ b/kio/kssl/ksslcertificatehome.h @@ -0,0 +1,90 @@ +/* This file is part of the KDE project + * + * Copyright (C) 2000-2003 George Staikos <staikos@kde.org> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * 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 General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef _KSSLCERTIFICATEHOME_H +#define _KSSLCERTIFICATEHOME_H + +class KSSLCertificate; +class KSSLPKCS12; +#include <qstring.h> +#include <qstringlist.h> + +#include <kdelibs_export.h> + +class KIO_EXPORT KSSLCertificateHome { + +public: + + // AuthNone means there is no policy. AuthDont means _don't_ _send_!! + enum KSSLAuthAction {AuthNone, AuthSend, AuthPrompt, AuthDont}; + /* + * These methods might dynamically allocate an object for you. Be sure + * to delete them when you are done. + */ + static KSSLPKCS12* getCertificateByHost(QString host, QString password, KSSLAuthAction* aa); + static KSSLPKCS12* getCertificateByName(QString name, QString password); + static KSSLPKCS12* getCertificateByName(QString name); + static QString getDefaultCertificateName(QString host, KSSLAuthAction *aa = NULL); + static QString getDefaultCertificateName(KSSLAuthAction *aa = NULL); + static KSSLPKCS12* getDefaultCertificate(QString password, KSSLAuthAction *aa = NULL); + static KSSLPKCS12* getDefaultCertificate(KSSLAuthAction *aa = NULL); + static bool hasCertificateByName(QString name); + + + /* + * These set the default certificate for hosts without a policy. + */ + static void setDefaultCertificate(QString name, bool send = true, bool prompt = false); + static void setDefaultCertificate(KSSLPKCS12 *cert, bool send = true, bool prompt = false); + + + /* + * These set the default certificate for a host. + */ + static void setDefaultCertificate(QString name, QString host, bool send = true, bool prompt = false); + static void setDefaultCertificate(KSSLPKCS12 *cert, QString host, bool send = true, bool prompt = false); + + /* + * These add a certificate to the repository. + * Returns: true on success, false error + */ + static bool addCertificate(QString filename, QString password, bool storePass = false); + static bool addCertificate(KSSLPKCS12 *cert, QString passToStore = QString::null); + + /* + * These deletes a certificate from the repository. + * Returns: true on success, false error + */ + static bool deleteCertificate(const QString &filename, const QString &password); + static bool deleteCertificate(KSSLPKCS12 *cert); + static bool deleteCertificateByName(const QString &name); + + /* + * Returns the list of certificates available + */ + static QStringList getCertificateList(); + +private: + class KSSLCertificateHomePrivate; + KSSLCertificateHomePrivate *d; +}; + +#endif + |