zeroc-ice 3.7.2 → 3.7.3

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 (283) hide show
  1. checksums.yaml +5 -5
  2. data/ext/Config.h +4 -0
  3. data/ext/Operation.cpp +5 -5
  4. data/ext/Properties.cpp +1 -1
  5. data/ext/Proxy.cpp +16 -2
  6. data/ext/Types.cpp +45 -40
  7. data/ext/Util.cpp +1 -1
  8. data/ext/Util.h +10 -8
  9. data/ext/ice/cpp/include/Ice/Config.h +4 -0
  10. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +1 -1
  11. data/ext/ice/cpp/include/Ice/IconvStringConverter.h +4 -3
  12. data/ext/ice/cpp/include/Ice/InputStream.h +4 -4
  13. data/ext/ice/cpp/include/Ice/Optional.h +11 -0
  14. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +1 -1
  15. data/ext/ice/cpp/include/Ice/OutputStream.h +5 -5
  16. data/ext/ice/cpp/include/Ice/Proxy.h +17 -5
  17. data/ext/ice/cpp/include/Ice/StreamHelpers.h +1 -1
  18. data/ext/ice/cpp/include/Ice/Value.h +1 -1
  19. data/ext/ice/cpp/include/IceUtil/Atomic.h +1 -1
  20. data/ext/ice/cpp/include/IceUtil/Config.h +16 -6
  21. data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +4 -4
  22. data/ext/ice/cpp/include/IceUtil/Optional.h +8 -0
  23. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +17 -14
  24. data/ext/ice/cpp/include/IceUtil/Random.h +1 -1
  25. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +2 -2
  26. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +6 -0
  27. data/ext/ice/cpp/include/IceUtil/StringConverter.h +1 -1
  28. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +3 -3
  29. data/ext/ice/cpp/include/generated/Ice/Communicator.h +3 -3
  30. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +3 -3
  31. data/ext/ice/cpp/include/generated/Ice/Connection.h +33 -36
  32. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +3 -3
  33. data/ext/ice/cpp/include/generated/Ice/Current.h +20 -21
  34. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +24 -24
  35. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +3 -3
  36. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +3 -3
  37. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +3 -3
  38. data/ext/ice/cpp/include/generated/Ice/Identity.h +4 -5
  39. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +3 -3
  40. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +3 -3
  41. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +15 -15
  42. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +3 -3
  43. data/ext/ice/cpp/include/generated/Ice/LocalException.h +27 -93
  44. data/ext/ice/cpp/include/generated/Ice/Locator.h +27 -32
  45. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +3 -3
  46. data/ext/ice/cpp/include/generated/Ice/Logger.h +3 -3
  47. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +3 -3
  48. data/ext/ice/cpp/include/generated/Ice/Metrics.h +75 -79
  49. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +3 -3
  50. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +3 -3
  51. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +3 -3
  52. data/ext/ice/cpp/include/generated/Ice/Plugin.h +3 -3
  53. data/ext/ice/cpp/include/generated/Ice/PluginF.h +3 -3
  54. data/ext/ice/cpp/include/generated/Ice/Process.h +3 -3
  55. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +3 -3
  56. data/ext/ice/cpp/include/generated/Ice/Properties.h +3 -3
  57. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +9 -9
  58. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +3 -3
  59. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +9 -11
  60. data/ext/ice/cpp/include/generated/Ice/Router.h +22 -22
  61. data/ext/ice/cpp/include/generated/Ice/RouterF.h +3 -3
  62. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +3 -3
  63. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +3 -3
  64. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +3 -3
  65. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +3 -3
  66. data/ext/ice/cpp/include/generated/Ice/Version.h +15 -17
  67. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +3 -3
  68. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +3 -3
  69. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +3 -3
  70. data/ext/ice/cpp/src/Ice/ArgVector.cpp +3 -3
  71. data/ext/ice/cpp/src/Ice/Base64.cpp +11 -12
  72. data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +1 -1
  73. data/ext/ice/cpp/src/Ice/Buffer.cpp +2 -2
  74. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +3 -3
  75. data/ext/ice/cpp/src/Ice/Communicator.cpp +3 -3
  76. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +3 -3
  77. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +19 -0
  78. data/ext/ice/cpp/src/Ice/CommunicatorI.h +5 -0
  79. data/ext/ice/cpp/src/Ice/Connection.cpp +3 -3
  80. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +3 -3
  81. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +31 -16
  82. data/ext/ice/cpp/src/Ice/Current.cpp +3 -3
  83. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +13 -0
  84. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +6 -5
  85. data/ext/ice/cpp/src/Ice/Endpoint.cpp +3 -3
  86. data/ext/ice/cpp/src/Ice/EndpointF.cpp +3 -3
  87. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +3 -3
  88. data/ext/ice/cpp/src/Ice/Exception.cpp +5 -5
  89. data/ext/ice/cpp/src/Ice/FacetMap.cpp +3 -3
  90. data/ext/ice/cpp/src/Ice/HashUtil.h +1 -1
  91. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +12 -1
  92. data/ext/ice/cpp/src/Ice/Identity.cpp +3 -3
  93. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +3 -3
  94. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +3 -3
  95. data/ext/ice/cpp/src/Ice/Incoming.cpp +2 -0
  96. data/ext/ice/cpp/src/Ice/Initialize.cpp +4 -3
  97. data/ext/ice/cpp/src/Ice/InputStream.cpp +19 -19
  98. data/ext/ice/cpp/src/Ice/Instance.cpp +28 -8
  99. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +3 -3
  100. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +3 -3
  101. data/ext/ice/cpp/src/Ice/LocalException.cpp +3 -3
  102. data/ext/ice/cpp/src/Ice/Locator.cpp +7 -7
  103. data/ext/ice/cpp/src/Ice/LocatorF.cpp +3 -3
  104. data/ext/ice/cpp/src/Ice/Logger.cpp +3 -3
  105. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +1 -7
  106. data/ext/ice/cpp/src/Ice/LoggerF.cpp +3 -3
  107. data/ext/ice/cpp/src/Ice/LoggerI.cpp +6 -0
  108. data/ext/ice/cpp/src/Ice/Metrics.cpp +5 -5
  109. data/ext/ice/cpp/src/Ice/Network.cpp +23 -22
  110. data/ext/ice/cpp/src/Ice/Network.h +1 -1
  111. data/ext/ice/cpp/src/Ice/OSLogLoggerI.cpp +57 -0
  112. data/ext/ice/cpp/src/Ice/OSLogLoggerI.h +40 -0
  113. data/ext/ice/cpp/src/Ice/Object.cpp +9 -7
  114. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +3 -3
  115. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +3 -3
  116. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +13 -1
  117. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +4 -0
  118. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +3 -3
  119. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +1 -1
  120. data/ext/ice/cpp/src/Ice/OutputStream.cpp +24 -24
  121. data/ext/ice/cpp/src/Ice/Plugin.cpp +3 -3
  122. data/ext/ice/cpp/src/Ice/PluginF.cpp +3 -3
  123. data/ext/ice/cpp/src/Ice/Process.cpp +3 -3
  124. data/ext/ice/cpp/src/Ice/ProcessF.cpp +3 -3
  125. data/ext/ice/cpp/src/Ice/Properties.cpp +3 -3
  126. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +4 -4
  127. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +3 -3
  128. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +2 -1
  129. data/ext/ice/cpp/src/Ice/PropertyNames.h +1 -1
  130. data/ext/ice/cpp/src/Ice/Proxy.cpp +6 -0
  131. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +1 -1
  132. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +1 -1
  133. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +3 -2
  134. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +3 -3
  135. data/ext/ice/cpp/src/Ice/Router.cpp +6 -6
  136. data/ext/ice/cpp/src/Ice/RouterF.cpp +3 -3
  137. data/ext/ice/cpp/src/Ice/SHA1.cpp +2 -2
  138. data/ext/ice/cpp/src/Ice/Selector.cpp +18 -13
  139. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +3 -3
  140. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +3 -3
  141. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +3 -3
  142. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +6 -6
  143. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +6 -0
  144. data/ext/ice/cpp/src/Ice/TcpConnector.cpp +5 -0
  145. data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +5 -0
  146. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +5 -0
  147. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +63 -0
  148. data/ext/ice/cpp/src/Ice/ThreadPool.h +10 -2
  149. data/ext/ice/cpp/src/Ice/Timer.cpp +10 -0
  150. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +11 -1
  151. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +10 -2
  152. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +3 -3
  153. data/ext/ice/cpp/src/Ice/Version.cpp +3 -3
  154. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +16 -15
  155. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +3 -3
  156. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +3 -3
  157. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +3 -3
  158. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +3 -3
  159. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +37 -8
  160. data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +3 -3
  161. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +3 -3
  162. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +3 -3
  163. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +3 -3
  164. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +4 -16
  165. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.h +0 -1
  166. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +40 -3
  167. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +0 -7
  168. data/ext/ice/cpp/src/IceSSL/SChannelEngine.h +0 -2
  169. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +18 -6
  170. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +19 -7
  171. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +2 -0
  172. data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +32 -21
  173. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +21 -6
  174. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +19 -16
  175. data/ext/ice/cpp/src/IceSSL/Util.cpp +11 -5
  176. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +1 -1
  177. data/ext/ice/cpp/src/IceUtil/Options.cpp +3 -3
  178. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +40 -10
  179. data/ext/ice/cpp/src/IceUtil/Random.cpp +2 -2
  180. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +5 -5
  181. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +3 -3
  182. data/ext/ice/cpp/src/IceUtil/Time.cpp +3 -3
  183. data/ext/ice/cpp/src/IceUtil/UUID.cpp +5 -5
  184. data/ext/ice/cpp/src/IceUtil/UtilException.cpp +4 -4
  185. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +13 -9
  186. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.h +1 -1
  187. data/ext/ice/cpp/src/Slice/Grammar.cpp +8 -0
  188. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +1 -2
  189. data/ext/ice/cpp/src/Slice/MD5I.cpp +8 -0
  190. data/ext/ice/cpp/src/Slice/Parser.cpp +60 -112
  191. data/ext/ice/cpp/src/Slice/Parser.h +27 -1
  192. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +2 -1
  193. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +10 -10
  194. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +1 -1
  195. data/ext/ice/cpp/src/Slice/Scanner.cpp +8 -0
  196. data/ext/ice/cpp/src/Slice/StringLiteralUtil.cpp +11 -6
  197. data/ext/ice/mcpp/Makefile +2 -5
  198. data/ice.gemspec +1 -1
  199. data/lib/Glacier2/Metrics.rb +1 -1
  200. data/lib/Glacier2/PermissionsVerifier.rb +1 -1
  201. data/lib/Glacier2/PermissionsVerifierF.rb +1 -1
  202. data/lib/Glacier2/Router.rb +1 -1
  203. data/lib/Glacier2/RouterF.rb +1 -1
  204. data/lib/Glacier2/SSLInfo.rb +1 -1
  205. data/lib/Glacier2/Session.rb +1 -1
  206. data/lib/Ice/BuiltinSequences.rb +1 -1
  207. data/lib/Ice/Communicator.rb +1 -1
  208. data/lib/Ice/CommunicatorF.rb +1 -1
  209. data/lib/Ice/Connection.rb +1 -1
  210. data/lib/Ice/ConnectionF.rb +1 -1
  211. data/lib/Ice/Current.rb +1 -1
  212. data/lib/Ice/Endpoint.rb +1 -1
  213. data/lib/Ice/EndpointF.rb +1 -1
  214. data/lib/Ice/EndpointTypes.rb +1 -1
  215. data/lib/Ice/FacetMap.rb +1 -1
  216. data/lib/Ice/Identity.rb +1 -1
  217. data/lib/Ice/ImplicitContext.rb +1 -1
  218. data/lib/Ice/ImplicitContextF.rb +1 -1
  219. data/lib/Ice/Instrumentation.rb +1 -1
  220. data/lib/Ice/InstrumentationF.rb +1 -1
  221. data/lib/Ice/LocalException.rb +1 -1
  222. data/lib/Ice/Locator.rb +1 -1
  223. data/lib/Ice/LocatorF.rb +1 -1
  224. data/lib/Ice/Logger.rb +1 -1
  225. data/lib/Ice/LoggerF.rb +1 -1
  226. data/lib/Ice/Metrics.rb +1 -1
  227. data/lib/Ice/ObjectAdapter.rb +1 -1
  228. data/lib/Ice/ObjectAdapterF.rb +1 -1
  229. data/lib/Ice/ObjectFactory.rb +1 -1
  230. data/lib/Ice/Plugin.rb +1 -1
  231. data/lib/Ice/PluginF.rb +1 -1
  232. data/lib/Ice/Process.rb +1 -1
  233. data/lib/Ice/ProcessF.rb +1 -1
  234. data/lib/Ice/Properties.rb +1 -1
  235. data/lib/Ice/PropertiesAdmin.rb +1 -1
  236. data/lib/Ice/PropertiesF.rb +1 -1
  237. data/lib/Ice/RemoteLogger.rb +1 -1
  238. data/lib/Ice/Router.rb +1 -1
  239. data/lib/Ice/RouterF.rb +1 -1
  240. data/lib/Ice/ServantLocator.rb +1 -1
  241. data/lib/Ice/ServantLocatorF.rb +1 -1
  242. data/lib/Ice/SliceChecksumDict.rb +1 -1
  243. data/lib/Ice/ValueFactory.rb +1 -1
  244. data/lib/Ice/Version.rb +1 -1
  245. data/lib/IceBox/IceBox.rb +1 -1
  246. data/lib/IceGrid/Admin.rb +1 -1
  247. data/lib/IceGrid/Descriptor.rb +1 -1
  248. data/lib/IceGrid/Exception.rb +1 -1
  249. data/lib/IceGrid/FileParser.rb +1 -1
  250. data/lib/IceGrid/PluginFacade.rb +1 -1
  251. data/lib/IceGrid/Registry.rb +1 -1
  252. data/lib/IceGrid/Session.rb +1 -1
  253. data/lib/IceGrid/UserAccountMapper.rb +1 -1
  254. data/lib/IcePatch2/FileInfo.rb +1 -1
  255. data/lib/IcePatch2/FileServer.rb +1 -1
  256. data/lib/IceStorm/IceStorm.rb +1 -1
  257. data/lib/IceStorm/Metrics.rb +1 -1
  258. data/slice/Glacier2/Metrics.ice +1 -1
  259. data/slice/Ice/Communicator.ice +57 -25
  260. data/slice/Ice/Connection.ice +14 -14
  261. data/slice/Ice/Current.ice +1 -1
  262. data/slice/Ice/Endpoint.ice +6 -6
  263. data/slice/Ice/EndpointF.ice +1 -1
  264. data/slice/Ice/FacetMap.ice +1 -1
  265. data/slice/Ice/ImplicitContext.ice +6 -6
  266. data/slice/Ice/Instrumentation.ice +6 -6
  267. data/slice/Ice/Logger.ice +6 -6
  268. data/slice/Ice/Metrics.ice +12 -9
  269. data/slice/Ice/ObjectAdapter.ice +43 -31
  270. data/slice/Ice/ObjectFactory.ice +1 -1
  271. data/slice/Ice/Plugin.ice +2 -2
  272. data/slice/Ice/Properties.ice +10 -10
  273. data/slice/Ice/ServantLocator.ice +4 -2
  274. data/slice/Ice/ValueFactory.ice +3 -3
  275. data/slice/IceBT/EndpointInfo.ice +1 -1
  276. data/slice/IceGrid/PluginFacade.ice +4 -4
  277. data/slice/IceIAP/ConnectionInfo.ice +1 -1
  278. data/slice/IceIAP/EndpointInfo.ice +1 -1
  279. data/slice/IceSSL/ConnectionInfo.ice +3 -2
  280. data/slice/IceSSL/ConnectionInfoF.ice +1 -1
  281. data/slice/IceSSL/EndpointInfo.ice +1 -1
  282. data/slice/IceStorm/Metrics.ice +1 -1
  283. metadata +5 -3
@@ -597,7 +597,7 @@ IceInternal::ReferenceFactory::create(const Identity& ident, InputStream* s)
597
597
 
598
598
  if(sz > 0)
599
599
  {
600
- endpoints.reserve(sz);
600
+ endpoints.reserve(static_cast<size_t>(sz));
601
601
  while(sz--)
602
602
  {
603
603
  EndpointIPtr endpoint = _instance->endpointFactoryManager()->read(s);
@@ -21,9 +21,10 @@ IceInternal::RegisterPluginsInit::RegisterPluginsInit()
21
21
  Ice::registerPluginFactory("IceTCP", createIceTCP, true);
22
22
 
23
23
  //
24
- // Only include the UDP and WS transport plugins with non-static builds or Gem/PyPI builds.
24
+ // Only include the UDP and WS transport plugins with non-static builds or Gem/PyPI/Swift
25
+ // builds.
25
26
  //
26
- #if !defined(ICE_STATIC_LIBS) || defined(ICE_GEM) || defined(ICE_PYPI)
27
+ #if !defined(ICE_STATIC_LIBS) || defined(ICE_GEM) || defined(ICE_PYPI) || defined(ICE_SWIFT)
27
28
  Ice::registerPluginFactory("IceUDP", createIceUDP, true);
28
29
  Ice::registerPluginFactory("IceWS", createIceWS, true);
29
30
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -38,10 +38,10 @@
38
38
  # if ICE_INT_VERSION / 100 != 307
39
39
  # error Ice version mismatch!
40
40
  # endif
41
- # if ICE_INT_VERSION % 100 > 50
41
+ # if ICE_INT_VERSION % 100 >= 50
42
42
  # error Beta header file detected
43
43
  # endif
44
- # if ICE_INT_VERSION % 100 < 2
44
+ # if ICE_INT_VERSION % 100 < 3
45
45
  # error Ice patch level mismatch!
46
46
  # endif
47
47
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -37,10 +37,10 @@
37
37
  # if ICE_INT_VERSION / 100 != 307
38
38
  # error Ice version mismatch!
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 > 50
40
+ # if ICE_INT_VERSION % 100 >= 50
41
41
  # error Beta header file detected
42
42
  # endif
43
- # if ICE_INT_VERSION % 100 < 2
43
+ # if ICE_INT_VERSION % 100 < 3
44
44
  # error Ice patch level mismatch!
45
45
  # endif
46
46
  #endif
@@ -307,7 +307,7 @@ Ice::RouterPrx::_iceI_getClientProxy(const ::std::shared_ptr<::IceInternal::Outg
307
307
 
308
308
  /// \cond INTERNAL
309
309
  void
310
- Ice::RouterPrx::_iceI_getServerProxy(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<ObjectPrx>>>& outAsync, const Context& context)
310
+ Ice::RouterPrx::_iceI_getServerProxy(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::ObjectPrx>>>& outAsync, const Context& context)
311
311
  {
312
312
  _checkTwowayOnly(iceC_Ice_Router_getServerProxy_name);
313
313
  outAsync->invoke(iceC_Ice_Router_getServerProxy_name, ::Ice::OperationMode::Nonmutating, ::Ice::FormatType::DefaultFormat, context,
@@ -318,7 +318,7 @@ Ice::RouterPrx::_iceI_getServerProxy(const ::std::shared_ptr<::IceInternal::Outg
318
318
 
319
319
  /// \cond INTERNAL
320
320
  void
321
- Ice::RouterPrx::_iceI_addProxies(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<ObjectProxySeq>>& outAsync, const ObjectProxySeq& iceP_proxies, const Context& context)
321
+ Ice::RouterPrx::_iceI_addProxies(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::Ice::ObjectProxySeq>>& outAsync, const ObjectProxySeq& iceP_proxies, const Context& context)
322
322
  {
323
323
  _checkTwowayOnly(iceC_Ice_Router_addProxies_name);
324
324
  outAsync->invoke(iceC_Ice_Router_addProxies_name, ::Ice::OperationMode::Idempotent, ::Ice::FormatType::DefaultFormat, context,
@@ -346,7 +346,7 @@ Ice::RouterPrx::ice_staticId()
346
346
 
347
347
  /// \cond INTERNAL
348
348
  void
349
- Ice::RouterFinderPrx::_iceI_getRouter(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<RouterPrx>>>& outAsync, const Context& context)
349
+ Ice::RouterFinderPrx::_iceI_getRouter(const ::std::shared_ptr<::IceInternal::OutgoingAsyncT<::std::shared_ptr<::Ice::RouterPrx>>>& outAsync, const Context& context)
350
350
  {
351
351
  _checkTwowayOnly(iceC_Ice_RouterFinder_getRouter_name);
352
352
  outAsync->invoke(iceC_Ice_RouterFinder_getRouter_name, ::Ice::OperationMode::Normal, ::Ice::FormatType::DefaultFormat, context,
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -34,10 +34,10 @@
34
34
  # if ICE_INT_VERSION / 100 != 307
35
35
  # error Ice version mismatch!
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 > 50
37
+ # if ICE_INT_VERSION % 100 >= 50
38
38
  # error Beta header file detected
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 < 2
40
+ # if ICE_INT_VERSION % 100 < 3
41
41
  # error Ice patch level mismatch!
42
42
  # endif
43
43
  #endif
@@ -108,7 +108,7 @@ IceInternal::SHA1::Hasher::update(const unsigned char* data, size_t length)
108
108
  throw IceUtil::SyscallException(__FILE__, __LINE__, GetLastError());
109
109
  }
110
110
  # elif defined(__APPLE__)
111
- CC_SHA1_Update(&_ctx, reinterpret_cast<const void*>(data), length);
111
+ CC_SHA1_Update(&_ctx, reinterpret_cast<const void*>(data), static_cast<CC_LONG>(length));
112
112
  # else
113
113
  SHA1_Update(&_ctx, reinterpret_cast<const void*>(data), length);
114
114
  # endif
@@ -175,7 +175,7 @@ IceInternal::sha1(const unsigned char* data, size_t length, vector<unsigned char
175
175
  hasher.finalize(md);
176
176
  #elif defined(__APPLE__)
177
177
  md.resize(CC_SHA1_DIGEST_LENGTH);
178
- CC_SHA1(&data[0], length, &md[0]);
178
+ CC_SHA1(&data[0], static_cast<CC_LONG>(length), &md[0]);
179
179
  #else
180
180
  md.resize(SHA_DIGEST_LENGTH);
181
181
  ::SHA1(&data[0], length, &md[0]);
@@ -70,12 +70,12 @@ Selector::initialize(EventHandler* handler)
70
70
 
71
71
  #ifdef ICE_USE_IOCP
72
72
  SOCKET socket = handler->getNativeInfo()->fd();
73
- if (socket != INVALID_SOCKET)
73
+ if(socket != INVALID_SOCKET)
74
74
  {
75
- if (CreateIoCompletionPort(reinterpret_cast<HANDLE>(socket),
76
- _handle,
77
- reinterpret_cast<ULONG_PTR>(handler),
78
- 0) == ICE_NULLPTR)
75
+ if(CreateIoCompletionPort(reinterpret_cast<HANDLE>(socket),
76
+ _handle,
77
+ reinterpret_cast<ULONG_PTR>(handler),
78
+ 0) == ICE_NULLPTR)
79
79
  {
80
80
  throw Ice::SocketException(__FILE__, __LINE__, GetLastError());
81
81
  }
@@ -612,11 +612,11 @@ Selector::finishSelect(vector<pair<EventHandler*, SocketOperation> >& handlers)
612
612
  ((ev.events & (EPOLLOUT | EPOLLERR)) ?
613
613
  SocketOperationWrite : SocketOperationNone));
614
614
  #elif defined(ICE_USE_KQUEUE)
615
- struct kevent& ev = _events[i];
615
+ struct kevent& ev = _events[static_cast<size_t>(i)];
616
616
  if(ev.flags & EV_ERROR)
617
617
  {
618
618
  Ice::Error out(_instance->initializationData().logger);
619
- out << "selector returned error:\n" << IceUtilInternal::errorToString(ev.data);
619
+ out << "selector returned error:\n" << IceUtilInternal::errorToString(static_cast<int>(ev.data));
620
620
  continue;
621
621
  }
622
622
  p.first = reinterpret_cast<EventHandler*>(ev.udata);
@@ -729,11 +729,11 @@ Selector::select(int timeout)
729
729
  struct timespec ts;
730
730
  ts.tv_sec = timeout;
731
731
  ts.tv_nsec = 0;
732
- _count = kevent(_queueFd, 0, 0, &_events[0], _events.size(), &ts);
732
+ _count = kevent(_queueFd, 0, 0, &_events[0], static_cast<int>(_events.size()), &ts);
733
733
  }
734
734
  else
735
735
  {
736
- _count = kevent(_queueFd, 0, 0, &_events[0], _events.size(), 0);
736
+ _count = kevent(_queueFd, 0, 0, &_events[0], static_cast<int>(_events.size()), 0);
737
737
  }
738
738
  #elif defined(ICE_USE_SELECT)
739
739
  fd_set* rFdSet = fdSetCopy(_selectedReadFdSet, _readFdSet);
@@ -807,7 +807,8 @@ void
807
807
  Selector::updateSelector()
808
808
  {
809
809
  #if defined(ICE_USE_KQUEUE)
810
- int rs = kevent(_queueFd, &_changes[0], _changes.size(), &_changes[0], _changes.size(), &zeroTimeout);
810
+ int rs = kevent(_queueFd, &_changes[0], static_cast<int>(_changes.size()),
811
+ &_changes[0], static_cast<int>(_changes.size()), &zeroTimeout);
811
812
  if(rs < 0)
812
813
  {
813
814
  Ice::Error out(_instance->initializationData().logger);
@@ -821,10 +822,12 @@ Selector::updateSelector()
821
822
  // Check for errors, we ignore EINPROGRESS that started showing up with macOS Sierra
822
823
  // and which occurs when another thread removes the FD from the kqueue (see ICE-7419).
823
824
  //
824
- if(_changes[i].flags & EV_ERROR && _changes[i].data != EINPROGRESS)
825
+ if(_changes[static_cast<size_t>(i)].flags & EV_ERROR &&
826
+ _changes[static_cast<size_t>(i)].data != EINPROGRESS)
825
827
  {
826
828
  Ice::Error out(_instance->initializationData().logger);
827
- out << "error while updating selector:\n" << IceUtilInternal::errorToString(_changes[i].data);
829
+ out << "error while updating selector:\n"
830
+ << IceUtilInternal::errorToString(static_cast<int>(_changes[static_cast<size_t>(i)].data));
828
831
  }
829
832
  }
830
833
  }
@@ -925,7 +928,9 @@ Selector::updateSelector()
925
928
  }
926
929
 
927
930
  void
928
- Selector::updateSelectorForEventHandler(EventHandler* handler, SocketOperation remove, SocketOperation add)
931
+ Selector::updateSelectorForEventHandler(EventHandler* handler,
932
+ ICE_MAYBE_UNUSED SocketOperation remove,
933
+ ICE_MAYBE_UNUSED SocketOperation add)
929
934
  {
930
935
  #if defined(ICE_USE_EPOLL)
931
936
  SocketOperation previous = handler->_registered;
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -34,10 +34,10 @@
34
34
  # if ICE_INT_VERSION / 100 != 307
35
35
  # error Ice version mismatch!
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 > 50
37
+ # if ICE_INT_VERSION % 100 >= 50
38
38
  # error Beta header file detected
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 < 2
40
+ # if ICE_INT_VERSION % 100 < 3
41
41
  # error Ice patch level mismatch!
42
42
  # endif
43
43
  #endif
@@ -2,7 +2,7 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
  //
5
- // Ice version 3.7.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -32,10 +32,10 @@
32
32
  # if ICE_INT_VERSION / 100 != 307
33
33
  # error Ice version mismatch!
34
34
  # endif
35
- # if ICE_INT_VERSION % 100 > 50
35
+ # if ICE_INT_VERSION % 100 >= 50
36
36
  # error Beta header file detected
37
37
  # endif
38
- # if ICE_INT_VERSION % 100 < 2
38
+ # if ICE_INT_VERSION % 100 < 3
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.2
5
+ // Ice version 3.7.3
6
6
  //
7
7
  // <auto-generated>
8
8
  //
@@ -34,10 +34,10 @@
34
34
  # if ICE_INT_VERSION / 100 != 307
35
35
  # error Ice version mismatch!
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 > 50
37
+ # if ICE_INT_VERSION % 100 >= 50
38
38
  # error Beta header file detected
39
39
  # endif
40
- # if ICE_INT_VERSION % 100 < 2
40
+ # if ICE_INT_VERSION % 100 < 3
41
41
  # error Ice patch level mismatch!
42
42
  # endif
43
43
  #endif
@@ -178,7 +178,7 @@ StreamSocket::read(Buffer& buf)
178
178
  {
179
179
  while(true)
180
180
  {
181
- ssize_t ret = read(reinterpret_cast<char*>(&*buf.i), buf.b.end() - buf.i);
181
+ ssize_t ret = read(reinterpret_cast<char*>(&*buf.i), static_cast<size_t>(buf.b.end() - buf.i));
182
182
  if(ret == 0)
183
183
  {
184
184
  return SocketOperationRead;
@@ -191,7 +191,7 @@ StreamSocket::read(Buffer& buf)
191
191
  }
192
192
  }
193
193
  }
194
- buf.i += read(reinterpret_cast<char*>(&*buf.i), buf.b.end() - buf.i);
194
+ buf.i += read(reinterpret_cast<char*>(&*buf.i), static_cast<size_t>(buf.b.end() - buf.i));
195
195
  #endif
196
196
  return buf.i != buf.b.end() ? SocketOperationRead : SocketOperationNone;
197
197
  }
@@ -204,7 +204,7 @@ StreamSocket::write(Buffer& buf)
204
204
  {
205
205
  while(true)
206
206
  {
207
- ssize_t ret = write(reinterpret_cast<const char*>(&*buf.i), buf.b.end() - buf.i);
207
+ ssize_t ret = write(reinterpret_cast<const char*>(&*buf.i), static_cast<size_t>(buf.b.end() - buf.i));
208
208
  if(ret == 0)
209
209
  {
210
210
  return SocketOperationWrite;
@@ -217,7 +217,7 @@ StreamSocket::write(Buffer& buf)
217
217
  }
218
218
  }
219
219
  }
220
- buf.i += write(reinterpret_cast<const char*>(&*buf.i), buf.b.end() - buf.i);
220
+ buf.i += write(reinterpret_cast<const char*>(&*buf.i), static_cast<size_t>(buf.b.end() - buf.i));
221
221
  #endif
222
222
  return buf.i != buf.b.end() ? SocketOperationWrite : SocketOperationNone;
223
223
  }
@@ -272,7 +272,7 @@ StreamSocket::read(char* buf, size_t length)
272
272
 
273
273
  buf += ret;
274
274
  read += ret;
275
- length -= ret;
275
+ length -= static_cast<size_t>(ret);
276
276
 
277
277
  if(packetSize > length)
278
278
  {
@@ -339,7 +339,7 @@ StreamSocket::write(const char* buf, size_t length)
339
339
 
340
340
  buf += ret;
341
341
  sent += ret;
342
- length -= ret;
342
+ length -= static_cast<size_t>(ret);
343
343
 
344
344
  if(packetSize > length)
345
345
  {
@@ -2,6 +2,10 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
 
5
+ #include <Ice/Config.h>
6
+
7
+ #if !defined(__APPLE__) || TARGET_OS_IPHONE == 0
8
+
5
9
  #include <Ice/TcpAcceptor.h>
6
10
  #include <Ice/TcpTransceiver.h>
7
11
  #include <Ice/TcpEndpointI.h>
@@ -347,3 +351,5 @@ IceInternal::TcpAcceptor::~TcpAcceptor()
347
351
  assert(_acceptFd == INVALID_SOCKET);
348
352
  #endif
349
353
  }
354
+
355
+ #endif
@@ -2,6 +2,10 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
 
5
+ #include <Ice/Config.h>
6
+
7
+ #if !defined(__APPLE__) || TARGET_OS_IPHONE == 0
8
+
5
9
  #include <Ice/TcpConnector.h>
6
10
  #include <Ice/TcpTransceiver.h>
7
11
  #include <Ice/TcpEndpointI.h>
@@ -120,3 +124,4 @@ IceInternal::TcpConnector::TcpConnector(const ProtocolInstancePtr& instance, con
120
124
  IceInternal::TcpConnector::~TcpConnector()
121
125
  {
122
126
  }
127
+ #endif
@@ -2,6 +2,10 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
 
5
+ #include <Ice/Config.h>
6
+
7
+ #if !defined(__APPLE__) || TARGET_OS_IPHONE == 0
8
+
5
9
  #include <Ice/TcpEndpointI.h>
6
10
  #include <Ice/Network.h>
7
11
  #include <Ice/TcpAcceptor.h>
@@ -378,3 +382,4 @@ IceInternal::TcpEndpointFactory::clone(const ProtocolInstancePtr& instance) cons
378
382
  {
379
383
  return new TcpEndpointFactory(instance);
380
384
  }
385
+ #endif
@@ -2,6 +2,10 @@
2
2
  // Copyright (c) ZeroC, Inc. All rights reserved.
3
3
  //
4
4
 
5
+ #include <Ice/Config.h>
6
+
7
+ #if !defined(__APPLE__) || TARGET_OS_IPHONE == 0
8
+
5
9
  #include <Ice/TcpTransceiver.h>
6
10
  #include <Ice/Connection.h>
7
11
  #include <Ice/ProtocolInstance.h>
@@ -128,3 +132,4 @@ IceInternal::TcpTransceiver::TcpTransceiver(const ProtocolInstancePtr& instance,
128
132
  IceInternal::TcpTransceiver::~TcpTransceiver()
129
133
  {
130
134
  }
135
+ #endif
@@ -110,6 +110,29 @@ class ThreadPoolDestroyedException
110
110
  {
111
111
  };
112
112
 
113
+ #ifdef ICE_SWIFT
114
+ string
115
+ prefixToDispatchQueueLabel(const std::string& prefix)
116
+ {
117
+ if(prefix == "Ice.ThreadPool.Client")
118
+ {
119
+ return "com.zeroc.ice.client";
120
+ }
121
+
122
+ if(prefix == "Ice.ThreadPool.Server")
123
+ {
124
+ return "com.zeroc.ice.server";
125
+ }
126
+
127
+ string::size_type end = prefix.find_last_of(".ThreadPool");
128
+ if(end == string::npos)
129
+ {
130
+ end = prefix.size();
131
+ }
132
+
133
+ return "com.zeroc.ice.oa." + prefix.substr(0, end);
134
+ }
135
+ #endif
113
136
  }
114
137
 
115
138
  Ice::DispatcherCall::~DispatcherCall()
@@ -245,7 +268,12 @@ IceInternal::ThreadPoolWorkQueue::getNativeInfo()
245
268
 
246
269
  IceInternal::ThreadPool::ThreadPool(const InstancePtr& instance, const string& prefix, int timeout) :
247
270
  _instance(instance),
271
+ #ifdef ICE_SWIFT
272
+ _dispatchQueue(dispatch_queue_create(prefixToDispatchQueueLabel(prefix).c_str(),
273
+ DISPATCH_QUEUE_CONCURRENT_WITH_AUTORELEASE_POOL)),
274
+ #else
248
275
  _dispatcher(_instance->initializationData().dispatcher),
276
+ #endif
249
277
  _destroyed(false),
250
278
  _prefix(prefix),
251
279
  _selector(instance),
@@ -273,8 +301,20 @@ IceInternal::ThreadPool::ThreadPool(const InstancePtr& instance, const string& p
273
301
  SYSTEM_INFO sysInfo;
274
302
  GetSystemInfo(&sysInfo);
275
303
  int nProcessors = sysInfo.dwNumberOfProcessors;
304
+ # elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
305
+ static int ncpu[2] = { CTL_HW, HW_NCPU };
306
+ size_t sz = sizeof(nProcessors);
307
+ int nProcessors;
308
+ if(sysctl(ncpu, 2, &nProcessors, &sz, 0, 0) == -1)
309
+ {
310
+ nProcessors = 1;
311
+ }
276
312
  # else
277
313
  int nProcessors = static_cast<int>(sysconf(_SC_NPROCESSORS_ONLN));
314
+ if(nProcessors == -1)
315
+ {
316
+ nProcessors = 1;
317
+ }
278
318
  # endif
279
319
  #endif
280
320
 
@@ -417,6 +457,9 @@ IceInternal::ThreadPool::ThreadPool(const InstancePtr& instance, const string& p
417
457
  IceInternal::ThreadPool::~ThreadPool()
418
458
  {
419
459
  assert(_destroyed);
460
+ #ifdef ICE_SWIFT
461
+ dispatch_release(_dispatchQueue);
462
+ #endif
420
463
  }
421
464
 
422
465
  void
@@ -531,6 +574,12 @@ IceInternal::ThreadPool::ready(const EventHandlerPtr& handler, SocketOperation o
531
574
  void
532
575
  IceInternal::ThreadPool::dispatchFromThisThread(const DispatchWorkItemPtr& workItem)
533
576
  {
577
+ #ifdef ICE_SWIFT
578
+ dispatch_sync(_dispatchQueue, ^
579
+ {
580
+ workItem->run();
581
+ });
582
+ #else
534
583
  if(_dispatcher)
535
584
  {
536
585
  try
@@ -566,6 +615,7 @@ IceInternal::ThreadPool::dispatchFromThisThread(const DispatchWorkItemPtr& workI
566
615
  {
567
616
  workItem->run();
568
617
  }
618
+ #endif
569
619
  }
570
620
 
571
621
  void
@@ -603,6 +653,16 @@ IceInternal::ThreadPool::prefix() const
603
653
  return _prefix;
604
654
  }
605
655
 
656
+ #ifdef ICE_SWIFT
657
+
658
+ dispatch_queue_t
659
+ IceInternal::ThreadPool::getDispatchQueue() const ICE_NOEXCEPT
660
+ {
661
+ return _dispatchQueue;
662
+ }
663
+
664
+ #endif
665
+
606
666
  void
607
667
  IceInternal::ThreadPool::run(const EventHandlerThreadPtr& thread)
608
668
  {
@@ -619,6 +679,9 @@ IceInternal::ThreadPool::run(const EventHandlerThreadPtr& thread)
619
679
  }
620
680
  catch(const ThreadPoolDestroyedException&)
621
681
  {
682
+ Lock sync(*this);
683
+ --_inUse;
684
+ thread->setState(ICE_ENUM(ThreadState, ThreadStateIdle));
622
685
  return;
623
686
  }
624
687
  catch(const exception& ex)