kssl.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _KSSL_H
00022 #define _KSSL_H
00023
00024 #include <ksslsettings.h>
00025 #include <ksslpeerinfo.h>
00026 #include <ksslconnectioninfo.h>
00027
00028 class KSSLPrivate;
00029 class KSSLCertificate;
00030 class KSSLPKCS12;
00031 class KSSLSession;
00032
00042 class KIO_EXPORT KSSL {
00043 public:
00050 KSSL(bool init = true);
00051
00057 ~KSSL();
00058
00064 static bool doesSSLWork();
00065
00074 bool initialize();
00075
00082 bool TLSInit();
00083
00094 bool setSession(const KSSLSession *session);
00095
00099 void close();
00100
00110 bool reInitialize();
00111
00121 bool reconfig();
00122
00132 void setAutoReconfig(bool ar);
00133
00141 int seedWithEGD();
00142
00151 bool setSettings(KSSLSettings *settings);
00152
00159 KSSLSettings * settings() { return m_cfg; }
00160
00170 bool setClientCertificate(KSSLPKCS12 *pkcs);
00171
00180 void setProxyUse(bool active, QString realIP = QString::null, int realPort = 0, QString proxy = QString::null) KDE_DEPRECATED;
00181
00188 void setPeerHost(QString realHost = QString::null);
00189
00199 int connect(int sock);
00200
00210 int accept(int sock);
00211
00219 int read(void *buf, int len);
00220
00228 int peek(void *buf, int len);
00229
00238 int write(const void *buf, int len);
00239
00245 int pending();
00246
00254 KSSLConnectionInfo& connectionInfo();
00255
00263 KSSLPeerInfo& peerInfo();
00264
00274 const KSSLSession* session() const;
00275
00281 bool reusingSession() const;
00282
00283 private:
00284 static bool m_bSSLWorks;
00285 bool m_bInit;
00286 bool m_bAutoReconfig;
00287 KSSLSettings *m_cfg;
00288 KSSLConnectionInfo m_ci;
00289 KSSLPeerInfo m_pi;
00290
00291 KSSLPrivate *d;
00292
00293 void setConnectionInfo();
00294 void setPeerInfo();
00295 bool setVerificationLogic();
00296 };
00297
00298
00299 #endif
00300
This file is part of the documentation for kio Library Version 3.4.0.