Ice 3.7 C++11 API Reference
SSLInfo.h
Go to the documentation of this file.
1 //
2 // Copyright (c) ZeroC, Inc. All rights reserved.
3 //
4 //
5 // Ice version 3.7.10
6 //
7 // <auto-generated>
8 //
9 // Generated from file `SSLInfo.ice'
10 //
11 // Warning: do not edit this file.
12 //
13 // </auto-generated>
14 //
15 
16 #ifndef __Glacier2_SSLInfo_h__
17 #define __Glacier2_SSLInfo_h__
18 
20 #include <Ice/ProxyF.h>
21 #include <Ice/ObjectF.h>
22 #include <Ice/ValueF.h>
23 #include <Ice/Exception.h>
24 #include <Ice/LocalObject.h>
25 #include <Ice/StreamHelpers.h>
26 #include <Ice/Comparable.h>
27 #include <IceUtil/ScopedArray.h>
28 #include <Ice/Optional.h>
29 #include <Ice/BuiltinSequences.h>
30 #include <IceUtil/UndefSysMacros.h>
31 #include <Glacier2/Config.h>
32 
33 #ifndef ICE_IGNORE_VERSION
34 # if ICE_INT_VERSION / 100 != 307
35 # error Ice version mismatch!
36 # endif
37 # if ICE_INT_VERSION % 100 >= 50
38 # error Beta header file detected
39 # endif
40 # if ICE_INT_VERSION % 100 < 10
41 # error Ice patch level mismatch!
42 # endif
43 #endif
44 
45 #ifndef GLACIER2_API
46 # if defined(ICE_STATIC_LIBS)
47 # define GLACIER2_API
48 # elif defined(GLACIER2_API_EXPORTS)
49 # define GLACIER2_API ICE_DECLSPEC_EXPORT
50 # else
51 # define GLACIER2_API ICE_DECLSPEC_IMPORT
52 # endif
53 #endif
54 
55 #ifdef ICE_CPP11_MAPPING // C++11 mapping
56 
57 namespace Glacier2
58 {
59 
66 struct SSLInfo
67 {
71  ::std::string remoteHost;
79  ::std::string localHost;
83  int localPort;
87  ::std::string cipher;
92 
97  std::tuple<const ::std::string&, const int&, const ::std::string&, const int&, const ::std::string&, const ::Ice::StringSeq&> ice_tuple() const
98  {
99  return std::tie(remoteHost, remotePort, localHost, localPort, cipher, certs);
100  }
101 };
102 
103 using Ice::operator<;
104 using Ice::operator<=;
105 using Ice::operator>;
106 using Ice::operator>=;
107 using Ice::operator==;
108 using Ice::operator!=;
109 
110 }
111 
113 namespace Ice
114 {
115 
116 template<>
117 struct StreamableTraits<::Glacier2::SSLInfo>
118 {
119  static const StreamHelperCategory helper = StreamHelperCategoryStruct;
120  static const int minWireSize = 12;
121  static const bool fixedLength = false;
122 };
123 
124 template<typename S>
125 struct StreamReader<::Glacier2::SSLInfo, S>
126 {
127  static void read(S* istr, ::Glacier2::SSLInfo& v)
128  {
129  istr->readAll(v.remoteHost, v.remotePort, v.localHost, v.localPort, v.cipher, v.certs);
130  }
131 };
132 
133 }
135 
136 #else // C++98 mapping
137 
138 namespace Glacier2
139 {
140 
147 struct SSLInfo
148 {
152  ::std::string remoteHost;
160  ::std::string localHost;
168  ::std::string cipher;
173 };
174 
175 }
176 
178 namespace Ice
179 {
180 
181 template<>
182 struct StreamableTraits< ::Glacier2::SSLInfo>
183 {
184  static const StreamHelperCategory helper = StreamHelperCategoryStruct;
185  static const int minWireSize = 12;
186  static const bool fixedLength = false;
187 };
188 
189 template<typename S>
190 struct StreamWriter< ::Glacier2::SSLInfo, S>
191 {
192  static void write(S* ostr, const ::Glacier2::SSLInfo& v)
193  {
194  ostr->write(v.remoteHost);
195  ostr->write(v.remotePort);
196  ostr->write(v.localHost);
197  ostr->write(v.localPort);
198  ostr->write(v.cipher);
199  ostr->write(v.certs);
200  }
201 };
202 
203 template<typename S>
204 struct StreamReader< ::Glacier2::SSLInfo, S>
205 {
206  static void read(S* istr, ::Glacier2::SSLInfo& v)
207  {
208  istr->read(v.remoteHost);
209  istr->read(v.remotePort);
210  istr->read(v.localHost);
211  istr->read(v.localPort);
212  istr->read(v.cipher);
213  istr->read(v.certs);
214  }
215 };
216 
217 }
219 
220 #endif
221 
223 #endif
Optional.h
Glacier2::SSLInfo::ice_tuple
std::tuple< const ::std::string &, const int &, const ::std::string &, const int &, const ::std::string &, const ::Ice::StringSeq & > ice_tuple() const
Obtains a tuple containing all of the struct's data members.
Definition: SSLInfo.h:97
StreamHelpers.h
Glacier2::SSLInfo::localPort
int localPort
The router's port.
Definition: SSLInfo.h:83
Glacier2::SSLInfo
Information taken from an SSL connection used for permissions verification.
Definition: SSLInfo.h:67
Glacier2::SSLInfo::remotePort
int remotePort
The remote port.
Definition: SSLInfo.h:75
Glacier2
Definition: PermissionsVerifier.h:66
LocalObject.h
PushDisableWarnings.h
ProxyF.h
Glacier2::SSLInfo::remoteHost
::std::string remoteHost
The remote host.
Definition: SSLInfo.h:71
UndefSysMacros.h
Config.h
ObjectF.h
Ice::StringSeq
::std::vector<::std::string > StringSeq
A sequence of strings.
Definition: BuiltinSequences.h:96
Ice
Definition: BuiltinSequences.h:56
Glacier2::SSLInfo::certs
::Ice::StringSeq certs
The certificate chain.
Definition: SSLInfo.h:91
Glacier2::SSLInfo::cipher
::std::string cipher
The negotiated cipher suite.
Definition: SSLInfo.h:87
Comparable.h
BuiltinSequences.h
ScopedArray.h
Exception.h
ValueF.h
Glacier2::SSLInfo::localHost
::std::string localHost
The router's host.
Definition: SSLInfo.h:79
Ice::Int
int Int
The mapping for the Slice int type.
Definition: Config.h:54
PopDisableWarnings.h