ldapsdk  0.0.1
TlsOptions.h
Go to the documentation of this file.
1 // $OpenLDAP$
2 /*
3  * Copyright 2010-2013 The OpenLDAP Foundation, All Rights Reserved.
4  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
5  */
6 #ifndef TLS_OPTIONS_H
7 #define TLS_OPTIONS_H
8 #include <string>
9 #include <ldap.h>
10 
21 class TlsOptions {
22  public:
23 
27  enum tls_option {
39  LASTOPT /* dummy */
41  };
42 
46  enum verifyMode {
47  NEVER=0,
51  TRY
52  };
53 
57  enum crlMode {
60  CRL_ALL
61  };
62 
63 
67  TlsOptions();
68 
99  void setOption(tls_option opt, const std::string& value) const;
100 
121  void setOption(tls_option opt, int value) const;
122 
127  void setOption(tls_option opt, void *value) const;
128 
135  int getIntOption(tls_option opt) const;
136 
143  std::string getStringOption(tls_option opt) const;
144 
152  void getOption(tls_option opt, void *value ) const;
153 
154  private:
155  TlsOptions( LDAP* ld );
156  void newCtx() const;
157  LDAP *m_ld;
158 
159  friend class LDAPAsynConnection;
160 };
161 
162 #endif /* TLS_OPTIONS_H */
This class represents an asynchronous connection to an LDAP-Server.
Definition: LDAPAsynConnection.h:45
Class to access the global (and connection specific) TLS Settings To access the global TLS Settings j...
Definition: TlsOptions.h:21
void setOption(tls_option opt, const std::string &value) const
Set string valued options.
Definition: TlsOptions.cpp:62
int getIntOption(tls_option opt) const
Read integer valued options.
Definition: TlsOptions.cpp:132
std::string getStringOption(tls_option opt) const
Read string valued options.
Definition: TlsOptions.cpp:139
tls_option
Available TLS Options.
Definition: TlsOptions.h:27
@ DHFILE
Definition: TlsOptions.h:37
@ CACERTFILE
Definition: TlsOptions.h:28
@ CACERTDIR
Definition: TlsOptions.h:29
@ CRLCHECK
Definition: TlsOptions.h:36
@ RANDOM_FILE
Definition: TlsOptions.h:35
@ KEYFILE
Definition: TlsOptions.h:31
@ REQUIRE_CERT
Definition: TlsOptions.h:32
@ CIPHER_SUITE
Definition: TlsOptions.h:34
@ CERTFILE
Definition: TlsOptions.h:30
@ PROTOCOL_MIN
Definition: TlsOptions.h:33
TlsOptions()
Default constructor.
Definition: TlsOptions.cpp:58
void getOption(tls_option opt, void *value) const
Read options value.
Definition: TlsOptions.cpp:120
verifyMode
Possible Values for the REQUIRE_CERT option.
Definition: TlsOptions.h:46
@ TRY
Definition: TlsOptions.h:51
@ NEVER
Definition: TlsOptions.h:47
@ HARD
Definition: TlsOptions.h:48
@ DEMAND
Definition: TlsOptions.h:49
@ ALLOW
Definition: TlsOptions.h:50
crlMode
Possible Values for the CRLCHECK option.
Definition: TlsOptions.h:57
@ CRL_NONE
Definition: TlsOptions.h:58
@ CRL_PEER
Definition: TlsOptions.h:59
@ CRL_ALL
Definition: TlsOptions.h:60