zeroc-ice 3.7.6 → 3.7.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. checksums.yaml +4 -4
  2. data/ext/Config.h +5 -0
  3. data/ext/ice/cpp/include/Ice/Functional.h +3 -1
  4. data/ext/ice/cpp/include/Ice/Object.h +2 -0
  5. data/ext/ice/cpp/include/Ice/Proxy.h +25 -16
  6. data/ext/ice/cpp/include/IceSSL/Plugin.h +84 -0
  7. data/ext/ice/cpp/include/IceUtil/Config.h +2 -2
  8. data/ext/ice/cpp/include/IceUtil/Functional.h +3 -1
  9. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +2 -2
  10. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +2 -2
  11. data/ext/ice/cpp/include/generated/Ice/Communicator.h +2 -2
  12. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +2 -2
  13. data/ext/ice/cpp/include/generated/Ice/Connection.h +2 -2
  14. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +2 -2
  15. data/ext/ice/cpp/include/generated/Ice/Current.h +2 -2
  16. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +2 -2
  17. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +2 -2
  18. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +2 -2
  19. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +2 -2
  20. data/ext/ice/cpp/include/generated/Ice/Identity.h +2 -2
  21. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +2 -2
  22. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +2 -2
  23. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +2 -2
  24. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +2 -2
  25. data/ext/ice/cpp/include/generated/Ice/LocalException.h +2 -2
  26. data/ext/ice/cpp/include/generated/Ice/Locator.h +2 -2
  27. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +2 -2
  28. data/ext/ice/cpp/include/generated/Ice/Logger.h +2 -2
  29. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +2 -2
  30. data/ext/ice/cpp/include/generated/Ice/Metrics.h +2 -2
  31. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +2 -2
  32. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +2 -2
  33. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +2 -2
  34. data/ext/ice/cpp/include/generated/Ice/Plugin.h +2 -2
  35. data/ext/ice/cpp/include/generated/Ice/PluginF.h +2 -2
  36. data/ext/ice/cpp/include/generated/Ice/Process.h +2 -2
  37. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +2 -2
  38. data/ext/ice/cpp/include/generated/Ice/Properties.h +2 -2
  39. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +2 -2
  40. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +2 -2
  41. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +2 -2
  42. data/ext/ice/cpp/include/generated/Ice/Router.h +2 -2
  43. data/ext/ice/cpp/include/generated/Ice/RouterF.h +2 -2
  44. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +2 -2
  45. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +2 -2
  46. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +2 -2
  47. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +2 -2
  48. data/ext/ice/cpp/include/generated/Ice/Version.h +2 -2
  49. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +2 -2
  50. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +2 -2
  51. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +2 -2
  52. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +2 -2
  53. data/ext/ice/cpp/src/Ice/Communicator.cpp +2 -2
  54. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +2 -2
  55. data/ext/ice/cpp/src/Ice/Connection.cpp +2 -2
  56. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +2 -2
  57. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +3 -3
  58. data/ext/ice/cpp/src/Ice/Current.cpp +2 -2
  59. data/ext/ice/cpp/src/Ice/Endpoint.cpp +2 -2
  60. data/ext/ice/cpp/src/Ice/EndpointF.cpp +2 -2
  61. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +2 -2
  62. data/ext/ice/cpp/src/Ice/FacetMap.cpp +2 -2
  63. data/ext/ice/cpp/src/Ice/Identity.cpp +2 -2
  64. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +2 -2
  65. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +2 -2
  66. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +2 -2
  67. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +2 -2
  68. data/ext/ice/cpp/src/Ice/LocalException.cpp +2 -2
  69. data/ext/ice/cpp/src/Ice/Locator.cpp +2 -2
  70. data/ext/ice/cpp/src/Ice/LocatorF.cpp +2 -2
  71. data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +3 -3
  72. data/ext/ice/cpp/src/Ice/Logger.cpp +2 -2
  73. data/ext/ice/cpp/src/Ice/LoggerF.cpp +2 -2
  74. data/ext/ice/cpp/src/Ice/Metrics.cpp +2 -2
  75. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +2 -2
  76. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +2 -2
  77. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +4 -4
  78. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +8 -8
  79. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +2 -2
  80. data/ext/ice/cpp/src/Ice/Plugin.cpp +2 -2
  81. data/ext/ice/cpp/src/Ice/PluginF.cpp +2 -2
  82. data/ext/ice/cpp/src/Ice/Process.cpp +2 -2
  83. data/ext/ice/cpp/src/Ice/ProcessF.cpp +2 -2
  84. data/ext/ice/cpp/src/Ice/Properties.cpp +2 -2
  85. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +2 -2
  86. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +2 -2
  87. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +5 -2
  88. data/ext/ice/cpp/src/Ice/PropertyNames.h +1 -1
  89. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +2 -2
  90. data/ext/ice/cpp/src/Ice/Router.cpp +2 -2
  91. data/ext/ice/cpp/src/Ice/RouterF.cpp +2 -2
  92. data/ext/ice/cpp/src/Ice/RouterInfo.cpp +6 -2
  93. data/ext/ice/cpp/src/Ice/SHA1.cpp +2 -0
  94. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +2 -2
  95. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +2 -2
  96. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +2 -2
  97. data/ext/ice/cpp/src/Ice/Thread.cpp +2 -2
  98. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +5 -1
  99. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +2 -2
  100. data/ext/ice/cpp/src/Ice/Version.cpp +2 -2
  101. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +2 -2
  102. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +2 -2
  103. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +2 -2
  104. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +2 -2
  105. data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +23 -1
  106. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +2 -2
  107. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +2 -2
  108. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +2 -2
  109. data/ext/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +110 -5
  110. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +60 -1
  111. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +2 -0
  112. data/ext/ice/cpp/src/IceSSL/PluginI.h +11 -0
  113. data/ext/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +142 -1
  114. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +45 -30
  115. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +20 -1
  116. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +4 -0
  117. data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +133 -2
  118. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +38 -17
  119. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +6 -0
  120. data/ext/ice/cpp/src/Slice/Parser.cpp +4 -0
  121. data/ext/ice/cpp/src/Slice/Parser.h +2 -2
  122. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +8 -0
  123. data/ice.gemspec +1 -1
  124. data/lib/Glacier2/Metrics.rb +1 -1
  125. data/lib/Glacier2/PermissionsVerifier.rb +1 -1
  126. data/lib/Glacier2/PermissionsVerifierF.rb +1 -1
  127. data/lib/Glacier2/Router.rb +1 -1
  128. data/lib/Glacier2/RouterF.rb +1 -1
  129. data/lib/Glacier2/SSLInfo.rb +1 -1
  130. data/lib/Glacier2/Session.rb +1 -1
  131. data/lib/Ice/BuiltinSequences.rb +1 -1
  132. data/lib/Ice/Communicator.rb +1 -1
  133. data/lib/Ice/CommunicatorF.rb +1 -1
  134. data/lib/Ice/Connection.rb +1 -1
  135. data/lib/Ice/ConnectionF.rb +1 -1
  136. data/lib/Ice/Current.rb +1 -1
  137. data/lib/Ice/Endpoint.rb +1 -1
  138. data/lib/Ice/EndpointF.rb +1 -1
  139. data/lib/Ice/EndpointTypes.rb +1 -1
  140. data/lib/Ice/FacetMap.rb +1 -1
  141. data/lib/Ice/Identity.rb +1 -1
  142. data/lib/Ice/ImplicitContext.rb +1 -1
  143. data/lib/Ice/ImplicitContextF.rb +1 -1
  144. data/lib/Ice/Instrumentation.rb +1 -1
  145. data/lib/Ice/InstrumentationF.rb +1 -1
  146. data/lib/Ice/LocalException.rb +1 -1
  147. data/lib/Ice/Locator.rb +1 -1
  148. data/lib/Ice/LocatorF.rb +1 -1
  149. data/lib/Ice/Logger.rb +1 -1
  150. data/lib/Ice/LoggerF.rb +1 -1
  151. data/lib/Ice/Metrics.rb +1 -1
  152. data/lib/Ice/ObjectAdapter.rb +1 -1
  153. data/lib/Ice/ObjectAdapterF.rb +1 -1
  154. data/lib/Ice/ObjectFactory.rb +1 -1
  155. data/lib/Ice/Plugin.rb +1 -1
  156. data/lib/Ice/PluginF.rb +1 -1
  157. data/lib/Ice/Process.rb +1 -1
  158. data/lib/Ice/ProcessF.rb +1 -1
  159. data/lib/Ice/Properties.rb +1 -1
  160. data/lib/Ice/PropertiesAdmin.rb +1 -1
  161. data/lib/Ice/PropertiesF.rb +1 -1
  162. data/lib/Ice/RemoteLogger.rb +1 -1
  163. data/lib/Ice/Router.rb +1 -1
  164. data/lib/Ice/RouterF.rb +1 -1
  165. data/lib/Ice/ServantLocator.rb +1 -1
  166. data/lib/Ice/ServantLocatorF.rb +1 -1
  167. data/lib/Ice/SliceChecksumDict.rb +1 -1
  168. data/lib/Ice/ValueFactory.rb +1 -1
  169. data/lib/Ice/Version.rb +1 -1
  170. data/lib/IceBox/IceBox.rb +1 -1
  171. data/lib/IceGrid/Admin.rb +1 -1
  172. data/lib/IceGrid/Descriptor.rb +1 -1
  173. data/lib/IceGrid/Exception.rb +1 -1
  174. data/lib/IceGrid/FileParser.rb +1 -1
  175. data/lib/IceGrid/PluginFacade.rb +1 -1
  176. data/lib/IceGrid/Registry.rb +1 -1
  177. data/lib/IceGrid/Session.rb +1 -1
  178. data/lib/IceGrid/UserAccountMapper.rb +1 -1
  179. data/lib/IcePatch2/FileInfo.rb +1 -1
  180. data/lib/IcePatch2/FileServer.rb +1 -1
  181. data/lib/IceStorm/IceStorm.rb +1 -1
  182. data/lib/IceStorm/Metrics.rb +1 -1
  183. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fa35692a58f4742cd4f16f35d7a0e175d8fc745046865b88dcbb9d3842b22ed8
4
- data.tar.gz: 66846667ff962b9d23d52b60324361ef700ff12c2f2fd1bdcabec87adbf7b4d5
3
+ metadata.gz: cff48e9f22f45608f28bf0b3ba75a93c4dda74bff3b4de7fee4bf135a40cc46c
4
+ data.tar.gz: 8554d36b0529c6be6828682a00874c85de26145421b62eb6d487df33814a737f
5
5
  SHA512:
6
- metadata.gz: '02886f40e166b81c5eada9a6be663d74001016b445fa8a007262a34585a0910f7175beec1f7554fa9442bcec80a553098130a9d894e983d59d41bc2378f275aa'
7
- data.tar.gz: 5220a758ad1295b4c9fe3e6bc6b28521104bfe7e8c39cdbac165e703fc6b92684f3852ca8287f0ac40ee40bf58a009200171dee495c66ec09e53fb39a23a5f0e
6
+ metadata.gz: 82c9091136257ab107583fa77daed2acab9c2ca00d2b94511437169ace8efbb8bc212df48efbd88728dd53568e3f52cec8ec851397b1182e24d0b8e913bac289
7
+ data.tar.gz: dd022772296e7269f6c58d726b3fcc941d6980f54d818bf648b62246101ca669de2bffd2faa258e62a0498baf0504c72a91922c4894080811a8f74012d73f699
data/ext/Config.h CHANGED
@@ -51,6 +51,11 @@
51
51
  // BUGFIX: Workaround unused parameter in ruby.h header file
52
52
  //
53
53
  #if defined(__clang__)
54
+ // BUFIX: Workaround clang 13 warnings during ruby macro expansion, it is important to put this before the push/pop
55
+ // directives to keep the warnings ignored in the source files where macros are expanded.
56
+ # if __clang_major__ >= 13
57
+ # pragma clang diagnostic ignored "-Wcompound-token-split-by-macro"
58
+ # endif
54
59
  # pragma clang diagnostic push
55
60
  # pragma clang diagnostic ignored "-Wunused-parameter"
56
61
  //
@@ -5,7 +5,9 @@
5
5
  #ifndef ICE_FUNCTIONAL_H
6
6
  #define ICE_FUNCTIONAL_H
7
7
 
8
- #ifndef ICE_CPP11_MAPPING
8
+ #include <IceUtil/Config.h>
9
+
10
+ #if !defined(ICE_CPP11_MAPPING) && (ICE_CPLUSPLUS < 201703L)
9
11
 
10
12
  #include <IceUtil/Functional.h>
11
13
  #include <Ice/Handle.h>
@@ -332,7 +332,9 @@ protected:
332
332
  #if defined(__clang__)
333
333
  # pragma clang diagnostic push
334
334
  # pragma clang diagnostic ignored "-Wdeprecated-copy-dtor"
335
+ #endif
335
336
  virtual ~Object() {}
337
+ #if defined(__clang__)
336
338
  # pragma clang diagnostic pop
337
339
  #endif
338
340
 
@@ -1477,10 +1477,10 @@ ICE_API bool proxyIdentityAndFacetEqual(const ::std::shared_ptr<ObjectPrx>& lhs,
1477
1477
  * compares less than the identity in rhs, false otherwise.
1478
1478
  * \headerfile Ice/Ice.h
1479
1479
  */
1480
- #if (ICE_CPLUSPLUS >= 201703L)
1480
+
1481
1481
  struct ProxyIdentityLess
1482
- #else
1483
- struct ProxyIdentityLess : std::binary_function<bool, ::std::shared_ptr<ObjectPrx>&, ::std::shared_ptr<ObjectPrx>&>
1482
+ #if (ICE_CPLUSPLUS < 201703L)
1483
+ : std::binary_function<bool, ::std::shared_ptr<ObjectPrx>&, ::std::shared_ptr<ObjectPrx>&>
1484
1484
  #endif
1485
1485
  {
1486
1486
  bool operator()(const ::std::shared_ptr<ObjectPrx>& lhs, const ::std::shared_ptr<ObjectPrx>& rhs) const
@@ -1494,10 +1494,9 @@ struct ProxyIdentityLess : std::binary_function<bool, ::std::shared_ptr<ObjectPr
1494
1494
  * compares equal to the identity in rhs, false otherwise.
1495
1495
  * \headerfile Ice/Ice.h
1496
1496
  */
1497
- #if (ICE_CPLUSPLUS >= 201703L)
1498
1497
  struct ProxyIdentityEqual
1499
- #else
1500
- struct ProxyIdentityEqual : std::binary_function<bool, ::std::shared_ptr<ObjectPrx>&, ::std::shared_ptr<ObjectPrx>&>
1498
+ #if (ICE_CPLUSPLUS < 201703L)
1499
+ : std::binary_function<bool, ::std::shared_ptr<ObjectPrx>&, ::std::shared_ptr<ObjectPrx>&>
1501
1500
  #endif
1502
1501
  {
1503
1502
  bool operator()(const ::std::shared_ptr<ObjectPrx>& lhs, const ::std::shared_ptr<ObjectPrx>& rhs) const
@@ -1511,10 +1510,9 @@ struct ProxyIdentityEqual : std::binary_function<bool, ::std::shared_ptr<ObjectP
1511
1510
  * and facet in lhs compare less than the identity and facet in rhs, false otherwise.
1512
1511
  * \headerfile Ice/Ice.h
1513
1512
  */
1514
- #if (ICE_CPLUSPLUS >= 201703L)
1515
1513
  struct ProxyIdentityAndFacetLess
1516
- #else
1517
- struct ProxyIdentityAndFacetLess : std::binary_function<bool, ::std::shared_ptr<ObjectPrx>&, ::std::shared_ptr<ObjectPrx>&>
1514
+ #if (ICE_CPLUSPLUS < 201703L)
1515
+ : std::binary_function<bool, ::std::shared_ptr<ObjectPrx>&, ::std::shared_ptr<ObjectPrx>&>
1518
1516
  #endif
1519
1517
  {
1520
1518
  bool operator()(const ::std::shared_ptr<ObjectPrx>& lhs, const ::std::shared_ptr<ObjectPrx>& rhs) const
@@ -1528,10 +1526,9 @@ struct ProxyIdentityAndFacetLess : std::binary_function<bool, ::std::shared_ptr<
1528
1526
  * and facet in lhs compare equal to the identity and facet in rhs, false otherwise.
1529
1527
  * \headerfile Ice/Ice.h
1530
1528
  */
1531
- #if (ICE_CPLUSPLUS >= 201703L)
1532
1529
  struct ProxyIdentityAndFacetEqual
1533
- #else
1534
- struct ProxyIdentityAndFacetEqual : std::binary_function<bool, ::std::shared_ptr<ObjectPrx>&, ::std::shared_ptr<ObjectPrx>&>
1530
+ #if (ICE_CPLUSPLUS < 201703L)
1531
+ : std::binary_function<bool, ::std::shared_ptr<ObjectPrx>&, ::std::shared_ptr<ObjectPrx>&>
1535
1532
  #endif
1536
1533
  {
1537
1534
  bool operator()(const ::std::shared_ptr<ObjectPrx>& lhs, const ::std::shared_ptr<ObjectPrx>& rhs) const
@@ -3168,7 +3165,10 @@ ICE_API bool proxyIdentityAndFacetEqual(const ObjectPrx& lhs, const ObjectPrx& r
3168
3165
  * compares less than the identity in rhs, false otherwise.
3169
3166
  * \headerfile Ice/Ice.h
3170
3167
  */
3171
- struct ProxyIdentityLess : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3168
+ struct ProxyIdentityLess
3169
+ #if (ICE_CPLUSPLUS < 201703L)
3170
+ : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3171
+ #endif
3172
3172
  {
3173
3173
  bool operator()(const ObjectPrx& lhs, const ObjectPrx& rhs) const
3174
3174
  {
@@ -3181,7 +3181,10 @@ struct ProxyIdentityLess : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3181
3181
  * compares equal to the identity in rhs, false otherwise.
3182
3182
  * \headerfile Ice/Ice.h
3183
3183
  */
3184
- struct ProxyIdentityEqual : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3184
+ struct ProxyIdentityEqual
3185
+ #if (ICE_CPLUSPLUS < 201703L)
3186
+ : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3187
+ #endif
3185
3188
  {
3186
3189
  bool operator()(const ObjectPrx& lhs, const ObjectPrx& rhs) const
3187
3190
  {
@@ -3194,7 +3197,10 @@ struct ProxyIdentityEqual : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3194
3197
  * and facet in lhs compare less than the identity and facet in rhs, false otherwise.
3195
3198
  * \headerfile Ice/Ice.h
3196
3199
  */
3197
- struct ProxyIdentityAndFacetLess : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3200
+ struct ProxyIdentityAndFacetLess
3201
+ #if (ICE_CPLUSPLUS < 201703L)
3202
+ : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3203
+ #endif
3198
3204
  {
3199
3205
  bool operator()(const ObjectPrx& lhs, const ObjectPrx& rhs) const
3200
3206
  {
@@ -3207,7 +3213,10 @@ struct ProxyIdentityAndFacetLess : std::binary_function<bool, ObjectPrx&, Object
3207
3213
  * and facet in lhs compare equal to the identity and facet in rhs, false otherwise.
3208
3214
  * \headerfile Ice/Ice.h
3209
3215
  */
3210
- struct ProxyIdentityAndFacetEqual : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3216
+ struct ProxyIdentityAndFacetEqual
3217
+ #if (ICE_CPLUSPLUS < 201703L)
3218
+ : std::binary_function<bool, ObjectPrx&, ObjectPrx&>
3219
+ #endif
3211
3220
  {
3212
3221
  bool operator()(const ObjectPrx& lhs, const ObjectPrx& rhs) const
3213
3222
  {
@@ -89,6 +89,72 @@ ICESSL_API TrustError getTrustError(const IceSSL::ConnectionInfoPtr&);
89
89
  ICESSL_API std::string getTrustErrorDescription(TrustError);
90
90
  ICESSL_API std::string getHost(const IceSSL::ConnectionInfoPtr&);
91
91
 
92
+ /**
93
+ * The key usage "digitalSignature" bit is set
94
+ */
95
+ const unsigned int KEY_USAGE_DIGITAL_SIGNATURE = 1u << 0;
96
+ /**
97
+ * The key usage "nonRepudiation" bit is set
98
+ */
99
+ const unsigned int KEY_USAGE_NON_REPUDIATION = 1u << 1;
100
+ /**
101
+ * The key usage "keyEncipherment" bit is set
102
+ */
103
+ const unsigned int KEY_USAGE_KEY_ENCIPHERMENT = 1u << 2;
104
+ /**
105
+ * The key usage "dataEncipherment" bit is set
106
+ */
107
+ const unsigned int KEY_USAGE_DATA_ENCIPHERMENT = 1u << 3;
108
+ /**
109
+ * The key usage "keyAgreement" bit is set
110
+ */
111
+ const unsigned int KEY_USAGE_KEY_AGREEMENT = 1u << 4;
112
+ /**
113
+ * The key usage "keyCertSign" bit is set
114
+ */
115
+ const unsigned int KEY_USAGE_KEY_CERT_SIGN = 1u << 5;
116
+ /**
117
+ * The key usage "cRLSign" bit is set
118
+ */
119
+ const unsigned int KEY_USAGE_CRL_SIGN = 1u << 6;
120
+ /**
121
+ * The key usage "encipherOnly" bit is set
122
+ */
123
+ const unsigned int KEY_USAGE_ENCIPHER_ONLY = 1u << 7;
124
+ /**
125
+ * The key usage "decipherOnly" bit is set
126
+ */
127
+ const unsigned int KEY_USAGE_DECIPHER_ONLY = 1u << 8;
128
+
129
+ /**
130
+ * The extended key usage "anyKeyUsage" bit is set
131
+ */
132
+ const unsigned int EXTENDED_KEY_USAGE_ANY_KEY_USAGE = 1u << 0;
133
+ /**
134
+ * The extended key usage "serverAuth" bit is set
135
+ */
136
+ const unsigned int EXTENDED_KEY_USAGE_SERVER_AUTH = 1u << 1;
137
+ /**
138
+ * The extended key usage "clientAuth" bit is set
139
+ */
140
+ const unsigned int EXTENDED_KEY_USAGE_CLIENT_AUTH = 1u << 2;
141
+ /**
142
+ * The extended key usage "codeSigning" bit is set
143
+ */
144
+ const unsigned int EXTENDED_KEY_USAGE_CODE_SIGNING = 1u << 3;
145
+ /**
146
+ * The extended key usage "emailProtection" bit is set
147
+ */
148
+ const unsigned int EXTENDED_KEY_USAGE_EMAIL_PROTECTION = 1u << 4;
149
+ /**
150
+ * The extended key usage "timeStamping" bit is set
151
+ */
152
+ const unsigned int EXTENDED_KEY_USAGE_TIME_STAMPING = 1u << 5;
153
+ /**
154
+ * The extended key usage "OCSPSigning" bit is set
155
+ */
156
+ const unsigned int EXTENDED_KEY_USAGE_OCSP_SIGNING = 1u << 6;
157
+
92
158
  /**
93
159
  * Thrown if the certificate cannot be read.
94
160
  * \headerfile IceSSL/IceSSL.h
@@ -401,6 +467,24 @@ public:
401
467
  virtual bool checkValidity(const IceUtil::Time& t) const = 0;
402
468
  #endif
403
469
 
470
+ /**
471
+ * Returns the value of the key usage extension. The flags <b>KEY_USAGE_DIGITAL_SIGNATURE</b>,
472
+ * <b>KEY_USAGE_NON_REPUDIATION</b>, <b>KEY_USAGE_KEY_ENCIPHERMENT</b>, <b>KEY_USAGE_DATA_ENCIPHERMENT</b>
473
+ * <b>KEY_USAGE_KEY_AGREEMENT</b>, <b>KEY_USAGE_KEY_CERT_SIGN</b>, <b>KEY_USAGE_CRL_SIGN</b>,
474
+ * <b>KEY_USAGE_ENCIPHER_ONLY</b> and <b>KEY_USAGE_DECIPHER_ONLY</b> can be used to check what
475
+ * key usage bits are set.
476
+ */
477
+ unsigned int getKeyUsage() const;
478
+
479
+ /**
480
+ * Returns the value of the extended key usage extension. The flags <b>EXTENDED_KEY_USAGE_ANY_KEY_USAGE</b>,
481
+ * <b>EXTENDED_KEY_USAGE_SERVER_AUTH</b>, <b>EXTENDED_KEY_USAGE_CLIENT_AUTH</b>,
482
+ * <b>EXTENDED_KEY_USAGE_CODE_SIGNING</b>, <b>EXTENDED_KEY_USAGE_EMAIL_PROTECTION</b>,
483
+ * <b>EXTENDED_KEY_USAGE_TIME_STAMPING</b> and <b>EXTENDED_KEY_USAGE_OCSP_SIGNING</b> can be used to check what
484
+ * extended key usage bits are set.
485
+ */
486
+ unsigned int getExtendedKeyUsage() const;
487
+
404
488
  /**
405
489
  * Obtains the not-after validity time.
406
490
  * @return The time after which this certificate is invalid.
@@ -284,8 +284,8 @@
284
284
  //
285
285
  // The Ice version.
286
286
  //
287
- #define ICE_STRING_VERSION "3.7.6" // "A.B.C", with A=major, B=minor, C=patch
288
- #define ICE_INT_VERSION 30706 // AABBCC, with AA=major, BB=minor, CC=patch
287
+ #define ICE_STRING_VERSION "3.7.7" // "A.B.C", with A=major, B=minor, C=patch
288
+ #define ICE_INT_VERSION 30707 // AABBCC, with AA=major, BB=minor, CC=patch
289
289
  #define ICE_SO_VERSION "37" // "ABC", with A=major, B=minor, C=patch
290
290
 
291
291
  #if !defined(ICE_BUILDING_ICE) && defined(ICE_API_EXPORTS)
@@ -5,7 +5,9 @@
5
5
  #ifndef ICE_UTIL_FUNCTIONAL_H
6
6
  #define ICE_UTIL_FUNCTIONAL_H
7
7
 
8
- #ifndef ICE_CPP11_MAPPING
8
+ #include <IceUtil/Config.h>
9
+
10
+ #if !defined(ICE_CPP11_MAPPING) && (ICE_CPLUSPLUS < 201703L)
9
11
 
10
12
  #include <IceUtil/Handle.h>
11
13
  #include <functional>
@@ -7,8 +7,8 @@
7
7
 
8
8
  #include "winver.h"
9
9
 
10
- #define ICE_VERSION 3,7,6,0
11
- #define ICE_STRING_VERSION "3.7.6\0"
10
+ #define ICE_VERSION 3,7,7,0
11
+ #define ICE_STRING_VERSION "3.7.7\0"
12
12
  #define ICE_SO_VERSION "37\0"
13
13
  #define ICE_COMPANY_NAME "ZeroC, Inc.\0"
14
14
  #define ICE_COPYRIGHT "\251 ZeroC, Inc.\0"
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -56,7 +56,7 @@
56
56
  # if ICE_INT_VERSION % 100 >= 50
57
57
  # error Beta header file detected
58
58
  # endif
59
- # if ICE_INT_VERSION % 100 < 6
59
+ # if ICE_INT_VERSION % 100 < 7
60
60
  # error Ice patch level mismatch!
61
61
  # endif
62
62
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -39,7 +39,7 @@
39
39
  # if ICE_INT_VERSION % 100 >= 50
40
40
  # error Beta header file detected
41
41
  # endif
42
- # if ICE_INT_VERSION % 100 < 6
42
+ # if ICE_INT_VERSION % 100 < 7
43
43
  # error Ice patch level mismatch!
44
44
  # endif
45
45
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -39,7 +39,7 @@
39
39
  # if ICE_INT_VERSION % 100 >= 50
40
40
  # error Beta header file detected
41
41
  # endif
42
- # if ICE_INT_VERSION % 100 < 6
42
+ # if ICE_INT_VERSION % 100 < 7
43
43
  # error Ice patch level mismatch!
44
44
  # endif
45
45
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -38,7 +38,7 @@
38
38
  # if ICE_INT_VERSION % 100 >= 50
39
39
  # error Beta header file detected
40
40
  # endif
41
- # if ICE_INT_VERSION % 100 < 6
41
+ # if ICE_INT_VERSION % 100 < 7
42
42
  # error Ice patch level mismatch!
43
43
  # endif
44
44
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -38,7 +38,7 @@
38
38
  # if ICE_INT_VERSION % 100 >= 50
39
39
  # error Beta header file detected
40
40
  # endif
41
- # if ICE_INT_VERSION % 100 < 6
41
+ # if ICE_INT_VERSION % 100 < 7
42
42
  # error Ice patch level mismatch!
43
43
  # endif
44
44
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -38,7 +38,7 @@
38
38
  # if ICE_INT_VERSION % 100 >= 50
39
39
  # error Beta header file detected
40
40
  # endif
41
- # if ICE_INT_VERSION % 100 < 6
41
+ # if ICE_INT_VERSION % 100 < 7
42
42
  # error Ice patch level mismatch!
43
43
  # endif
44
44
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -39,7 +39,7 @@
39
39
  # if ICE_INT_VERSION % 100 >= 50
40
40
  # error Beta header file detected
41
41
  # endif
42
- # if ICE_INT_VERSION % 100 < 6
42
+ # if ICE_INT_VERSION % 100 < 7
43
43
  # error Ice patch level mismatch!
44
44
  # endif
45
45
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -45,7 +45,7 @@
45
45
  # if ICE_INT_VERSION % 100 >= 50
46
46
  # error Beta header file detected
47
47
  # endif
48
- # if ICE_INT_VERSION % 100 < 6
48
+ # if ICE_INT_VERSION % 100 < 7
49
49
  # error Ice patch level mismatch!
50
50
  # endif
51
51
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -36,7 +36,7 @@
36
36
  # if ICE_INT_VERSION % 100 >= 50
37
37
  # error Beta header file detected
38
38
  # endif
39
- # if ICE_INT_VERSION % 100 < 6
39
+ # if ICE_INT_VERSION % 100 < 7
40
40
  # error Ice patch level mismatch!
41
41
  # endif
42
42
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.6
5
+ // Ice version 3.7.7
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -35,7 +35,7 @@
35
35
  # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 6
38
+ # if ICE_INT_VERSION % 100 < 7
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif