gloox 1.0.27
tlsopensslclient.h
1/*
2 Copyright (c) 2007-2023 by Jakob Schröter <js@camaya.net>
3 This file is part of the gloox library. http://camaya.net/gloox
4
5 This software is distributed under a license. The full license
6 agreement can be found in the file LICENSE in this distribution.
7 This software may not be copied, modified, sold or distributed
8 other than expressed in the named license agreement.
9
10 This software is distributed without any warranty.
11*/
12
13
14
15#ifndef TLSOPENSSLCLIENT_H__
16#define TLSOPENSSLCLIENT_H__
17
18#include "tlsopensslbase.h"
19
20#include "config.h"
21
22#ifdef HAVE_OPENSSL
23
24#include <openssl/ssl.h>
25
26namespace gloox
27{
28
36 {
37 public:
43 OpenSSLClient( TLSHandler* th, const std::string& server );
44
48 virtual ~OpenSSLClient();
49
50 // reimplemented from TLSBase
51 virtual bool hasChannelBinding() const;
52
53 // reimplemented from TLSBase
54 virtual const std::string channelBinding() const;
55
56 private:
57 // reimplemented from OpenSSLBase
58 virtual bool setType();
59
60 // reimplemented from OpenSSLBase
61 virtual int handshakeFunction();
62
63 };
64
65}
66
67#endif // HAVE_OPENSSL
68
69#endif // TLSOPENSSLCLIENT_H__
virtual const std::string channelBinding() const
virtual bool hasChannelBinding() const
An interface that allows for interacting with TLS implementations derived from TLSBase.
Definition tlshandler.h:35
The namespace for the gloox library.
Definition adhoc.cpp:28