Files
@ c1e05d1d925c
Branch filter:
Location: libtransport.git/include/Swiften/StreamStack/TLSServerLayer.h - annotation
c1e05d1d925c
1.1 KiB
text/plain
Communi: strip IRC formatting, Libtransport: add tests for utf8::replace_invalid and move utf8.h to includes/transport
828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 ab2424659344 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 ab2424659344 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 828ae9d2cb88 | /*
* Copyright (c) 2010 Remko Tronçon
* Licensed under the GNU General Public License v3.
* See Documentation/Licenses/GPLv3.txt for more information.
*/
#include "Swiften/Base/boost_bsignals.h"
#include "Swiften/Base/SafeByteArray.h"
#include "Swiften/StreamStack/StreamLayer.h"
#include "Swiften/TLS/Certificate.h"
#include <Swiften/TLS/CertificateWithKey.h>
#include "Swiften/TLS/CertificateVerificationError.h"
namespace Swift {
class TLSServerContext;
class TLSServerContextFactory;
class PKCS12Certificate;
class TLSServerLayer : public StreamLayer {
public:
TLSServerLayer(TLSServerContextFactory*);
~TLSServerLayer();
void connect();
bool setServerCertificate(CertificateWithKey::ref cert);
Certificate::ref getPeerCertificate() const;
boost::shared_ptr<CertificateVerificationError> getPeerCertificateVerificationError() const;
void writeData(const SafeByteArray& data);
void handleDataRead(const SafeByteArray& data);
TLSServerContext* getContext() const {
return context;
}
public:
boost::signal<void ()> onError;
boost::signal<void ()> onConnected;
private:
TLSServerContext* context;
};
}
|