zeroc-ice 3.7.2 → 3.7.3

Sign up to get free protection for your applications and to get access to all the features.
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)