zeroc-ice 3.6.3 → 3.6.4

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 (661) hide show
  1. checksums.yaml +4 -4
  2. data/ICE_LICENSE +1 -1
  3. data/bin/slice2rb +1 -1
  4. data/ext/Communicator.cpp +1 -1
  5. data/ext/Communicator.h +1 -1
  6. data/ext/Config.h +1 -1
  7. data/ext/Connection.cpp +1 -1
  8. data/ext/Connection.h +1 -1
  9. data/ext/Endpoint.cpp +1 -1
  10. data/ext/Endpoint.h +1 -1
  11. data/ext/ImplicitContext.cpp +1 -1
  12. data/ext/ImplicitContext.h +1 -1
  13. data/ext/Init.cpp +1 -1
  14. data/ext/Logger.cpp +1 -1
  15. data/ext/Logger.h +1 -1
  16. data/ext/ObjectFactory.cpp +1 -1
  17. data/ext/ObjectFactory.h +1 -1
  18. data/ext/Operation.cpp +1 -1
  19. data/ext/Operation.h +1 -1
  20. data/ext/Properties.cpp +1 -1
  21. data/ext/Properties.h +1 -1
  22. data/ext/Proxy.cpp +1 -1
  23. data/ext/Proxy.h +1 -1
  24. data/ext/Slice.cpp +1 -1
  25. data/ext/Slice.h +1 -1
  26. data/ext/Types.cpp +1 -1
  27. data/ext/Types.h +1 -1
  28. data/ext/Util.cpp +1 -1
  29. data/ext/Util.h +1 -1
  30. data/ext/extconf.rb +10 -29
  31. data/ext/ice/cpp/include/Ice/ACMF.h +1 -1
  32. data/ext/ice/cpp/include/Ice/Application.h +1 -1
  33. data/ext/ice/cpp/include/Ice/AsyncResult.h +1 -1
  34. data/ext/ice/cpp/include/Ice/AsyncResultF.h +1 -1
  35. data/ext/ice/cpp/include/Ice/BasicStream.h +16 -7
  36. data/ext/ice/cpp/include/Ice/BatchRequestInterceptor.h +1 -1
  37. data/ext/ice/cpp/include/Ice/BatchRequestQueueF.h +1 -1
  38. data/ext/ice/cpp/include/Ice/Buffer.h +1 -1
  39. data/ext/ice/cpp/include/Ice/BuiltinSequences.h +3 -3
  40. data/ext/ice/cpp/include/Ice/Communicator.h +3 -3
  41. data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +1 -1
  42. data/ext/ice/cpp/include/Ice/CommunicatorF.h +3 -3
  43. data/ext/ice/cpp/include/Ice/Config.h +1 -2
  44. data/ext/ice/cpp/include/Ice/Connection.h +3 -3
  45. data/ext/ice/cpp/include/Ice/ConnectionAsync.h +1 -1
  46. data/ext/ice/cpp/include/Ice/ConnectionF.h +3 -3
  47. data/ext/ice/cpp/include/Ice/ConnectionFactoryF.h +1 -1
  48. data/ext/ice/cpp/include/Ice/ConnectionIF.h +1 -1
  49. data/ext/ice/cpp/include/Ice/Current.h +3 -3
  50. data/ext/ice/cpp/include/Ice/DefaultObjectFactory.h +1 -1
  51. data/ext/ice/cpp/include/Ice/DeprecatedStringConverter.h +1 -1
  52. data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +1 -1
  53. data/ext/ice/cpp/include/Ice/Dispatcher.h +1 -1
  54. data/ext/ice/cpp/include/Ice/DynamicLibrary.h +1 -1
  55. data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +1 -1
  56. data/ext/ice/cpp/include/Ice/Endpoint.h +3 -3
  57. data/ext/ice/cpp/include/Ice/EndpointF.h +3 -3
  58. data/ext/ice/cpp/include/Ice/EndpointTypes.h +3 -3
  59. data/ext/ice/cpp/include/Ice/Exception.h +1 -1
  60. data/ext/ice/cpp/include/Ice/FacetMap.h +3 -3
  61. data/ext/ice/cpp/include/Ice/FactoryTable.h +1 -1
  62. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +1 -1
  63. data/ext/ice/cpp/include/Ice/Format.h +1 -1
  64. data/ext/ice/cpp/include/Ice/Functional.h +1 -1
  65. data/ext/ice/cpp/include/Ice/GCObject.h +1 -1
  66. data/ext/ice/cpp/include/Ice/Handle.h +1 -1
  67. data/ext/ice/cpp/include/Ice/Ice.h +1 -1
  68. data/ext/ice/cpp/include/Ice/Identity.h +3 -3
  69. data/ext/ice/cpp/include/Ice/ImplicitContext.h +3 -3
  70. data/ext/ice/cpp/include/Ice/ImplicitContextF.h +3 -3
  71. data/ext/ice/cpp/include/Ice/Incoming.h +1 -1
  72. data/ext/ice/cpp/include/Ice/IncomingAsync.h +1 -1
  73. data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +1 -1
  74. data/ext/ice/cpp/include/Ice/Initialize.h +1 -1
  75. data/ext/ice/cpp/include/Ice/InstanceF.h +1 -1
  76. data/ext/ice/cpp/include/Ice/Instrumentation.h +3 -3
  77. data/ext/ice/cpp/include/Ice/InstrumentationF.h +3 -3
  78. data/ext/ice/cpp/include/Ice/LocalException.h +3 -3
  79. data/ext/ice/cpp/include/Ice/LocalObject.h +1 -1
  80. data/ext/ice/cpp/include/Ice/LocalObjectF.h +1 -1
  81. data/ext/ice/cpp/include/Ice/Locator.h +3 -3
  82. data/ext/ice/cpp/include/Ice/LocatorF.h +3 -3
  83. data/ext/ice/cpp/include/Ice/Logger.h +3 -3
  84. data/ext/ice/cpp/include/Ice/LoggerF.h +3 -3
  85. data/ext/ice/cpp/include/Ice/LoggerUtil.h +1 -1
  86. data/ext/ice/cpp/include/Ice/Metrics.h +3 -3
  87. data/ext/ice/cpp/include/Ice/MetricsAdminI.h +1 -1
  88. data/ext/ice/cpp/include/Ice/MetricsFunctional.h +1 -1
  89. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +1 -1
  90. data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +1 -1
  91. data/ext/ice/cpp/include/Ice/Object.h +1 -1
  92. data/ext/ice/cpp/include/Ice/ObjectAdapter.h +3 -3
  93. data/ext/ice/cpp/include/Ice/ObjectAdapterF.h +3 -3
  94. data/ext/ice/cpp/include/Ice/ObjectAdapterFactoryF.h +1 -1
  95. data/ext/ice/cpp/include/Ice/ObjectF.h +1 -1
  96. data/ext/ice/cpp/include/Ice/ObjectFactory.h +3 -3
  97. data/ext/ice/cpp/include/Ice/ObjectFactoryF.h +3 -3
  98. data/ext/ice/cpp/include/Ice/ObjectFactoryManagerF.h +1 -1
  99. data/ext/ice/cpp/include/Ice/ObserverHelper.h +1 -1
  100. data/ext/ice/cpp/include/Ice/Outgoing.h +1 -1
  101. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +1 -1
  102. data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +1 -1
  103. data/ext/ice/cpp/include/Ice/Plugin.h +3 -3
  104. data/ext/ice/cpp/include/Ice/PluginF.h +3 -3
  105. data/ext/ice/cpp/include/Ice/Process.h +3 -3
  106. data/ext/ice/cpp/include/Ice/ProcessF.h +3 -3
  107. data/ext/ice/cpp/include/Ice/Properties.h +3 -3
  108. data/ext/ice/cpp/include/Ice/PropertiesAdmin.h +3 -3
  109. data/ext/ice/cpp/include/Ice/PropertiesF.h +3 -3
  110. data/ext/ice/cpp/include/Ice/Protocol.h +1 -1
  111. data/ext/ice/cpp/include/Ice/Proxy.h +1 -1
  112. data/ext/ice/cpp/include/Ice/ProxyF.h +1 -1
  113. data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +1 -1
  114. data/ext/ice/cpp/include/Ice/ProxyHandle.h +1 -1
  115. data/ext/ice/cpp/include/Ice/ReferenceF.h +1 -1
  116. data/ext/ice/cpp/include/Ice/RegisterPlugins.h +1 -1
  117. data/ext/ice/cpp/include/Ice/RemoteLogger.h +3 -3
  118. data/ext/ice/cpp/include/Ice/RequestHandlerF.h +1 -1
  119. data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +1 -1
  120. data/ext/ice/cpp/include/Ice/Router.h +3 -3
  121. data/ext/ice/cpp/include/Ice/RouterF.h +3 -3
  122. data/ext/ice/cpp/include/Ice/ServantLocator.h +3 -3
  123. data/ext/ice/cpp/include/Ice/ServantLocatorF.h +3 -3
  124. data/ext/ice/cpp/include/Ice/ServantManagerF.h +1 -1
  125. data/ext/ice/cpp/include/Ice/Service.h +1 -1
  126. data/ext/ice/cpp/include/Ice/SliceChecksumDict.h +3 -3
  127. data/ext/ice/cpp/include/Ice/SliceChecksums.h +1 -1
  128. data/ext/ice/cpp/include/Ice/SlicedData.h +1 -1
  129. data/ext/ice/cpp/include/Ice/SlicedDataF.h +1 -1
  130. data/ext/ice/cpp/include/Ice/Stream.h +1 -1
  131. data/ext/ice/cpp/include/Ice/StreamF.h +1 -1
  132. data/ext/ice/cpp/include/Ice/StreamHelpers.h +1 -1
  133. data/ext/ice/cpp/include/Ice/ThreadPoolF.h +1 -1
  134. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +1 -1
  135. data/ext/ice/cpp/include/Ice/Version.h +3 -3
  136. data/ext/ice/cpp/include/IceSSL/Config.h +1 -1
  137. data/ext/ice/cpp/include/IceSSL/ConnectionInfo.h +3 -3
  138. data/ext/ice/cpp/include/IceSSL/EndpointInfo.h +3 -3
  139. data/ext/ice/cpp/include/IceSSL/IceSSL.h +1 -1
  140. data/ext/ice/cpp/include/IceSSL/Plugin.h +1 -8
  141. data/ext/ice/cpp/include/IceUtil/AbstractMutex.h +1 -1
  142. data/ext/ice/cpp/include/IceUtil/Atomic.h +1 -1
  143. data/ext/ice/cpp/include/IceUtil/Cache.h +1 -1
  144. data/ext/ice/cpp/include/IceUtil/Cond.h +1 -1
  145. data/ext/ice/cpp/include/IceUtil/Config.h +4 -6
  146. data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +1 -1
  147. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +1 -1
  148. data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +1 -1
  149. data/ext/ice/cpp/include/IceUtil/Exception.h +1 -1
  150. data/ext/ice/cpp/include/IceUtil/Functional.h +1 -1
  151. data/ext/ice/cpp/include/IceUtil/Handle.h +1 -1
  152. data/ext/ice/cpp/include/IceUtil/IceUtil.h +1 -1
  153. data/ext/ice/cpp/include/IceUtil/IconvStringConverter.h +1 -1
  154. data/ext/ice/cpp/include/IceUtil/InputUtil.h +1 -1
  155. data/ext/ice/cpp/include/IceUtil/Iterator.h +1 -1
  156. data/ext/ice/cpp/include/IceUtil/Lock.h +1 -1
  157. data/ext/ice/cpp/include/IceUtil/Monitor.h +1 -1
  158. data/ext/ice/cpp/include/IceUtil/Mutex.h +1 -1
  159. data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +1 -1
  160. data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +1 -1
  161. data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +1 -1
  162. data/ext/ice/cpp/include/IceUtil/Optional.h +1 -1
  163. data/ext/ice/cpp/include/IceUtil/Options.h +1 -1
  164. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +1 -1
  165. data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +1 -1
  166. data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +1 -1
  167. data/ext/ice/cpp/include/IceUtil/Random.h +1 -1
  168. data/ext/ice/cpp/include/IceUtil/RecMutex.h +1 -1
  169. data/ext/ice/cpp/include/IceUtil/SHA1.h +1 -1
  170. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +1 -1
  171. data/ext/ice/cpp/include/IceUtil/ScopedArray.h +1 -1
  172. data/ext/ice/cpp/include/IceUtil/Shared.h +1 -1
  173. data/ext/ice/cpp/include/IceUtil/StringUtil.h +1 -1
  174. data/ext/ice/cpp/include/IceUtil/Thread.h +1 -1
  175. data/ext/ice/cpp/include/IceUtil/ThreadException.h +1 -1
  176. data/ext/ice/cpp/include/IceUtil/Time.h +1 -1
  177. data/ext/ice/cpp/include/IceUtil/Timer.h +1 -1
  178. data/ext/ice/cpp/include/IceUtil/UUID.h +1 -1
  179. data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +1 -1
  180. data/ext/ice/cpp/include/IceUtil/UniquePtr.h +1 -1
  181. data/ext/ice/cpp/include/Slice/CPlusPlusUtil.h +1 -1
  182. data/ext/ice/cpp/include/Slice/Checksum.h +1 -1
  183. data/ext/ice/cpp/include/Slice/CsUtil.h +1 -1
  184. data/ext/ice/cpp/include/Slice/DotNetNames.h +1 -1
  185. data/ext/ice/cpp/include/Slice/FileTracker.h +1 -1
  186. data/ext/ice/cpp/include/Slice/JavaUtil.h +1 -1
  187. data/ext/ice/cpp/include/Slice/ObjCUtil.h +1 -1
  188. data/ext/ice/cpp/include/Slice/PHPUtil.h +1 -1
  189. data/ext/ice/cpp/include/Slice/Parser.h +1 -1
  190. data/ext/ice/cpp/include/Slice/Preprocessor.h +1 -1
  191. data/ext/ice/cpp/include/Slice/PythonUtil.h +1 -1
  192. data/ext/ice/cpp/include/Slice/RubyUtil.h +1 -1
  193. data/ext/ice/cpp/include/Slice/Util.h +1 -1
  194. data/ext/ice/cpp/src/Ice/ACM.cpp +46 -20
  195. data/ext/ice/cpp/src/Ice/ACM.h +8 -8
  196. data/ext/ice/cpp/src/Ice/Acceptor.cpp +1 -1
  197. data/ext/ice/cpp/src/Ice/Acceptor.h +1 -1
  198. data/ext/ice/cpp/src/Ice/AcceptorF.h +1 -1
  199. data/ext/ice/cpp/src/Ice/AsyncResult.cpp +1 -1
  200. data/ext/ice/cpp/src/Ice/Base64.cpp +1 -1
  201. data/ext/ice/cpp/src/Ice/Base64.h +1 -1
  202. data/ext/ice/cpp/src/Ice/BasicStream.cpp +38 -5
  203. data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +1 -1
  204. data/ext/ice/cpp/src/Ice/BatchRequestQueue.h +1 -1
  205. data/ext/ice/cpp/src/Ice/Buffer.cpp +1 -1
  206. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +3 -3
  207. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +1 -1
  208. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +1 -1
  209. data/ext/ice/cpp/src/Ice/Communicator.cpp +3 -3
  210. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +3 -3
  211. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +1 -1
  212. data/ext/ice/cpp/src/Ice/CommunicatorI.h +1 -1
  213. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +30 -18
  214. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.h +1 -1
  215. data/ext/ice/cpp/src/Ice/ConnectRequestHandlerF.h +1 -1
  216. data/ext/ice/cpp/src/Ice/Connection.cpp +3 -3
  217. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +3 -3
  218. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +13 -3
  219. data/ext/ice/cpp/src/Ice/ConnectionFactory.h +1 -1
  220. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +1 -1
  221. data/ext/ice/cpp/src/Ice/ConnectionI.h +1 -1
  222. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +1 -1
  223. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +1 -1
  224. data/ext/ice/cpp/src/Ice/Connector.cpp +1 -1
  225. data/ext/ice/cpp/src/Ice/Connector.h +1 -1
  226. data/ext/ice/cpp/src/Ice/ConnectorF.h +1 -1
  227. data/ext/ice/cpp/src/Ice/Current.cpp +3 -3
  228. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +1 -1
  229. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +1 -1
  230. data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +1 -1
  231. data/ext/ice/cpp/src/Ice/DeprecatedStringConverter.cpp +1 -1
  232. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +1 -1
  233. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +3 -3
  234. data/ext/ice/cpp/src/Ice/Endpoint.cpp +3 -3
  235. data/ext/ice/cpp/src/Ice/EndpointF.cpp +3 -3
  236. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +1 -1
  237. data/ext/ice/cpp/src/Ice/EndpointFactory.h +1 -1
  238. data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +1 -1
  239. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +1 -1
  240. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +1 -1
  241. data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +1 -1
  242. data/ext/ice/cpp/src/Ice/EndpointI.cpp +1 -1
  243. data/ext/ice/cpp/src/Ice/EndpointI.h +1 -1
  244. data/ext/ice/cpp/src/Ice/EndpointIF.h +1 -1
  245. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +3 -3
  246. data/ext/ice/cpp/src/Ice/EventHandler.cpp +1 -1
  247. data/ext/ice/cpp/src/Ice/EventHandler.h +1 -1
  248. data/ext/ice/cpp/src/Ice/EventHandlerF.h +1 -1
  249. data/ext/ice/cpp/src/Ice/Exception.cpp +1 -1
  250. data/ext/ice/cpp/src/Ice/FacetMap.cpp +3 -3
  251. data/ext/ice/cpp/src/Ice/FactoryTable.cpp +1 -1
  252. data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +1 -1
  253. data/ext/ice/cpp/src/Ice/GCObject.cpp +1 -1
  254. data/ext/ice/cpp/src/Ice/HashUtil.h +1 -1
  255. data/ext/ice/cpp/src/Ice/HttpParser.cpp +1 -1
  256. data/ext/ice/cpp/src/Ice/HttpParser.h +1 -1
  257. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +1 -1
  258. data/ext/ice/cpp/src/Ice/IPEndpointI.h +1 -1
  259. data/ext/ice/cpp/src/Ice/IPEndpointIF.h +1 -1
  260. data/ext/ice/cpp/src/Ice/Identity.cpp +3 -3
  261. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +3 -3
  262. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +3 -3
  263. data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +68 -35
  264. data/ext/ice/cpp/src/Ice/ImplicitContextI.h +1 -1
  265. data/ext/ice/cpp/src/Ice/Incoming.cpp +1 -1
  266. data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +1 -1
  267. data/ext/ice/cpp/src/Ice/IncomingRequest.h +1 -1
  268. data/ext/ice/cpp/src/Ice/Initialize.cpp +1 -1
  269. data/ext/ice/cpp/src/Ice/Instance.cpp +34 -19
  270. data/ext/ice/cpp/src/Ice/Instance.h +3 -1
  271. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +3 -3
  272. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +3 -3
  273. data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +1 -1
  274. data/ext/ice/cpp/src/Ice/InstrumentationI.h +1 -1
  275. data/ext/ice/cpp/src/Ice/LocalException.cpp +3 -3
  276. data/ext/ice/cpp/src/Ice/LocalObject.cpp +1 -1
  277. data/ext/ice/cpp/src/Ice/Locator.cpp +3 -3
  278. data/ext/ice/cpp/src/Ice/LocatorF.cpp +3 -3
  279. data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +1 -1
  280. data/ext/ice/cpp/src/Ice/LocatorInfo.h +1 -1
  281. data/ext/ice/cpp/src/Ice/LocatorInfoF.h +1 -1
  282. data/ext/ice/cpp/src/Ice/Logger.cpp +3 -3
  283. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +1 -1
  284. data/ext/ice/cpp/src/Ice/LoggerAdminI.h +1 -1
  285. data/ext/ice/cpp/src/Ice/LoggerF.cpp +3 -3
  286. data/ext/ice/cpp/src/Ice/LoggerI.cpp +1 -1
  287. data/ext/ice/cpp/src/Ice/LoggerI.h +1 -1
  288. data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +1 -1
  289. data/ext/ice/cpp/src/Ice/Metrics.cpp +3 -3
  290. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +1 -1
  291. data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +1 -1
  292. data/ext/ice/cpp/src/Ice/Network.cpp +4 -28
  293. data/ext/ice/cpp/src/Ice/Network.h +1 -1
  294. data/ext/ice/cpp/src/Ice/NetworkF.h +1 -1
  295. data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +1 -1
  296. data/ext/ice/cpp/src/Ice/NetworkProxy.h +1 -1
  297. data/ext/ice/cpp/src/Ice/NetworkProxyF.h +1 -1
  298. data/ext/ice/cpp/src/Ice/Object.cpp +1 -1
  299. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +3 -3
  300. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +3 -3
  301. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +1 -1
  302. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +1 -1
  303. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +1 -1
  304. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +1 -1
  305. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +3 -3
  306. data/ext/ice/cpp/src/Ice/ObjectFactoryF.cpp +3 -3
  307. data/ext/ice/cpp/src/Ice/ObjectFactoryManager.cpp +1 -1
  308. data/ext/ice/cpp/src/Ice/ObjectFactoryManager.h +1 -1
  309. data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +1 -1
  310. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +1 -1
  311. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +1 -1
  312. data/ext/ice/cpp/src/Ice/Outgoing.cpp +8 -5
  313. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +1 -1
  314. data/ext/ice/cpp/src/Ice/Plugin.cpp +3 -3
  315. data/ext/ice/cpp/src/Ice/PluginF.cpp +3 -3
  316. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +1 -1
  317. data/ext/ice/cpp/src/Ice/PluginManagerI.h +1 -1
  318. data/ext/ice/cpp/src/Ice/Process.cpp +3 -3
  319. data/ext/ice/cpp/src/Ice/ProcessF.cpp +3 -3
  320. data/ext/ice/cpp/src/Ice/Properties.cpp +3 -3
  321. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +3 -3
  322. data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +1 -1
  323. data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +1 -1
  324. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +3 -3
  325. data/ext/ice/cpp/src/Ice/PropertiesI.cpp +1 -1
  326. data/ext/ice/cpp/src/Ice/PropertiesI.h +1 -1
  327. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +104 -106
  328. data/ext/ice/cpp/src/Ice/PropertyNames.h +3 -3
  329. data/ext/ice/cpp/src/Ice/Protocol.cpp +1 -1
  330. data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +1 -1
  331. data/ext/ice/cpp/src/Ice/ProtocolInstance.h +1 -1
  332. data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +1 -1
  333. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +1 -1
  334. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +1 -1
  335. data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +1 -1
  336. data/ext/ice/cpp/src/Ice/Proxy.cpp +1 -1
  337. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +1 -1
  338. data/ext/ice/cpp/src/Ice/ProxyFactory.h +1 -1
  339. data/ext/ice/cpp/src/Ice/Reference.cpp +1 -1
  340. data/ext/ice/cpp/src/Ice/Reference.h +1 -1
  341. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +1 -1
  342. data/ext/ice/cpp/src/Ice/ReferenceFactory.h +1 -1
  343. data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +1 -1
  344. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +1 -1
  345. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.h +1 -1
  346. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +3 -3
  347. data/ext/ice/cpp/src/Ice/ReplyStatus.h +1 -1
  348. data/ext/ice/cpp/src/Ice/RequestHandler.cpp +1 -1
  349. data/ext/ice/cpp/src/Ice/RequestHandler.h +1 -1
  350. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +1 -1
  351. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +1 -1
  352. data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +1 -1
  353. data/ext/ice/cpp/src/Ice/ResponseHandler.h +1 -1
  354. data/ext/ice/cpp/src/Ice/RetryQueue.cpp +1 -1
  355. data/ext/ice/cpp/src/Ice/RetryQueue.h +1 -1
  356. data/ext/ice/cpp/src/Ice/RetryQueueF.h +1 -1
  357. data/ext/ice/cpp/src/Ice/Router.cpp +3 -3
  358. data/ext/ice/cpp/src/Ice/RouterF.cpp +3 -3
  359. data/ext/ice/cpp/src/Ice/RouterInfo.cpp +1 -1
  360. data/ext/ice/cpp/src/Ice/RouterInfo.h +1 -1
  361. data/ext/ice/cpp/src/Ice/RouterInfoF.h +1 -1
  362. data/ext/ice/cpp/src/Ice/Selector.cpp +35 -2
  363. data/ext/ice/cpp/src/Ice/Selector.h +1 -1
  364. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +3 -3
  365. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +3 -3
  366. data/ext/ice/cpp/src/Ice/ServantManager.cpp +1 -1
  367. data/ext/ice/cpp/src/Ice/ServantManager.h +1 -1
  368. data/ext/ice/cpp/src/Ice/SharedContext.h +1 -1
  369. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +3 -3
  370. data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +1 -1
  371. data/ext/ice/cpp/src/Ice/SlicedData.cpp +1 -1
  372. data/ext/ice/cpp/src/Ice/Stream.cpp +1 -1
  373. data/ext/ice/cpp/src/Ice/StreamI.cpp +1 -1
  374. data/ext/ice/cpp/src/Ice/StreamI.h +1 -1
  375. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +1 -1
  376. data/ext/ice/cpp/src/Ice/StreamSocket.h +1 -1
  377. data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +1 -1
  378. data/ext/ice/cpp/src/Ice/SysLoggerI.cpp +1 -1
  379. data/ext/ice/cpp/src/Ice/SysLoggerI.h +1 -1
  380. data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +1 -1
  381. data/ext/ice/cpp/src/Ice/TcpAcceptor.h +1 -1
  382. data/ext/ice/cpp/src/Ice/TcpConnector.cpp +1 -1
  383. data/ext/ice/cpp/src/Ice/TcpConnector.h +1 -1
  384. data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +1 -1
  385. data/ext/ice/cpp/src/Ice/TcpEndpointI.h +1 -1
  386. data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +1 -1
  387. data/ext/ice/cpp/src/Ice/TcpTransceiver.h +1 -1
  388. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +1 -1
  389. data/ext/ice/cpp/src/Ice/ThreadPool.h +1 -1
  390. data/ext/ice/cpp/src/Ice/TraceLevels.cpp +1 -1
  391. data/ext/ice/cpp/src/Ice/TraceLevels.h +1 -1
  392. data/ext/ice/cpp/src/Ice/TraceLevelsF.h +1 -1
  393. data/ext/ice/cpp/src/Ice/TraceUtil.cpp +1 -1
  394. data/ext/ice/cpp/src/Ice/TraceUtil.h +1 -1
  395. data/ext/ice/cpp/src/Ice/Transceiver.cpp +1 -1
  396. data/ext/ice/cpp/src/Ice/Transceiver.h +1 -1
  397. data/ext/ice/cpp/src/Ice/TransceiverF.h +1 -1
  398. data/ext/ice/cpp/src/Ice/UdpConnector.cpp +1 -1
  399. data/ext/ice/cpp/src/Ice/UdpConnector.h +1 -1
  400. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +1 -1
  401. data/ext/ice/cpp/src/Ice/UdpEndpointI.h +1 -1
  402. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +2 -2
  403. data/ext/ice/cpp/src/Ice/UdpTransceiver.h +1 -1
  404. data/ext/ice/cpp/src/Ice/Version.cpp +3 -3
  405. data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +1 -1
  406. data/ext/ice/cpp/src/Ice/WSAcceptor.h +1 -1
  407. data/ext/ice/cpp/src/Ice/WSConnector.cpp +1 -1
  408. data/ext/ice/cpp/src/Ice/WSConnector.h +1 -1
  409. data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +1 -1
  410. data/ext/ice/cpp/src/Ice/WSEndpoint.h +1 -1
  411. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +1 -1
  412. data/ext/ice/cpp/src/Ice/WSTransceiver.h +1 -1
  413. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +3 -3
  414. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +3 -3
  415. data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +1 -1
  416. data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +1 -1
  417. data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +37 -26
  418. data/ext/ice/cpp/src/IceDiscovery/LookupI.h +11 -8
  419. data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +16 -5
  420. data/ext/ice/cpp/src/IceDiscovery/PluginI.h +4 -2
  421. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +3 -3
  422. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +3 -3
  423. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +65 -40
  424. data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +1 -1
  425. data/ext/ice/cpp/src/IceSSL/AcceptorI.h +1 -1
  426. data/ext/ice/cpp/src/IceSSL/Certificate.cpp +1 -1
  427. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +3 -3
  428. data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +1 -1
  429. data/ext/ice/cpp/src/IceSSL/ConnectorI.h +1 -1
  430. data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +1 -1
  431. data/ext/ice/cpp/src/IceSSL/EndpointI.h +1 -1
  432. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +3 -3
  433. data/ext/ice/cpp/src/IceSSL/Instance.cpp +1 -1
  434. data/ext/ice/cpp/src/IceSSL/Instance.h +1 -1
  435. data/ext/ice/cpp/src/IceSSL/InstanceF.h +1 -1
  436. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +11 -11
  437. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +66 -88
  438. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +1 -1
  439. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +1 -1
  440. data/ext/ice/cpp/src/IceSSL/PluginI.h +1 -1
  441. data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +1 -1
  442. data/ext/ice/cpp/src/IceSSL/RFC2253.h +1 -1
  443. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +1 -1
  444. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +2 -4
  445. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +1 -1
  446. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +1 -1
  447. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +1 -1
  448. data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +1 -1
  449. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +1 -1
  450. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +2 -2
  451. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +1 -1
  452. data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +1 -1
  453. data/ext/ice/cpp/src/IceSSL/TrustManager.h +1 -1
  454. data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +1 -1
  455. data/ext/ice/cpp/src/IceSSL/Util.cpp +5 -5
  456. data/ext/ice/cpp/src/IceSSL/Util.h +1 -1
  457. data/ext/ice/cpp/src/IceUtil/ArgVector.cpp +1 -1
  458. data/ext/ice/cpp/src/IceUtil/ArgVector.h +1 -1
  459. data/ext/ice/cpp/src/IceUtil/Cond.cpp +2 -2
  460. data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +1 -1
  461. data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +1 -1
  462. data/ext/ice/cpp/src/IceUtil/CountDownLatch.cpp +11 -11
  463. data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +1 -1
  464. data/ext/ice/cpp/src/IceUtil/Exception.cpp +1 -1
  465. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +1 -1
  466. data/ext/ice/cpp/src/IceUtil/FileUtil.h +1 -1
  467. data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +1 -1
  468. data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +1 -1
  469. data/ext/ice/cpp/src/IceUtil/Options.cpp +1 -1
  470. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +1 -1
  471. data/ext/ice/cpp/src/IceUtil/Random.cpp +1 -1
  472. data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +1 -1
  473. data/ext/ice/cpp/src/IceUtil/SHA1.cpp +1 -1
  474. data/ext/ice/cpp/src/IceUtil/Shared.cpp +1 -1
  475. data/ext/ice/cpp/src/IceUtil/StopWatch.h +1 -1
  476. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +1 -1
  477. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +1 -1
  478. data/ext/ice/cpp/src/IceUtil/Thread.cpp +1 -1
  479. data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +1 -1
  480. data/ext/ice/cpp/src/IceUtil/Time.cpp +1 -1
  481. data/ext/ice/cpp/src/IceUtil/Timer.cpp +1 -1
  482. data/ext/ice/cpp/src/IceUtil/UUID.cpp +1 -1
  483. data/ext/ice/cpp/src/IceUtil/Unicode.cpp +1 -1
  484. data/ext/ice/cpp/src/IceUtil/Unicode.h +1 -1
  485. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +2 -2
  486. data/ext/ice/cpp/src/Slice/Checksum.cpp +1 -1
  487. data/ext/ice/cpp/src/Slice/CsUtil.cpp +131 -100
  488. data/ext/ice/cpp/src/Slice/DotNetNames.cpp +1 -1
  489. data/ext/ice/cpp/src/Slice/FileTracker.cpp +1 -1
  490. data/ext/ice/cpp/src/Slice/Grammar.cpp +1 -1
  491. data/ext/ice/cpp/src/Slice/GrammarUtil.h +1 -1
  492. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +2 -2
  493. data/ext/ice/cpp/src/Slice/MD5.cpp +1 -1
  494. data/ext/ice/cpp/src/Slice/MD5.h +1 -1
  495. data/ext/ice/cpp/src/Slice/ObjCUtil.cpp +1 -1
  496. data/ext/ice/cpp/src/Slice/PHPUtil.cpp +1 -1
  497. data/ext/ice/cpp/src/Slice/Parser.cpp +1 -1
  498. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +87 -58
  499. data/ext/ice/cpp/src/Slice/Python.cpp +1 -1
  500. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +2 -2
  501. data/ext/ice/cpp/src/Slice/Ruby.cpp +1 -1
  502. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +4 -7
  503. data/ext/ice/cpp/src/Slice/Scanner.cpp +2 -1
  504. data/ext/ice/cpp/src/Slice/Util.cpp +1 -1
  505. data/ext/ice/mcpp/Makefile +31 -42
  506. data/ext/ice/mcpp/README.md +7 -11
  507. data/ext/ice/mcpp/mcpp.gyp +21 -1
  508. data/ice.gemspec +6 -4
  509. data/lib/Glacier2.rb +1 -1
  510. data/lib/Glacier2/Metrics.rb +2 -2
  511. data/lib/Glacier2/PermissionsVerifier.rb +2 -2
  512. data/lib/Glacier2/PermissionsVerifierF.rb +2 -2
  513. data/lib/Glacier2/Router.rb +2 -2
  514. data/lib/Glacier2/RouterF.rb +2 -2
  515. data/lib/Glacier2/SSLInfo.rb +3 -3
  516. data/lib/Glacier2/Session.rb +2 -2
  517. data/lib/Ice.rb +18 -31
  518. data/lib/Ice/BuiltinSequences.rb +2 -2
  519. data/lib/Ice/Communicator.rb +2 -2
  520. data/lib/Ice/CommunicatorF.rb +2 -2
  521. data/lib/Ice/Connection.rb +3 -3
  522. data/lib/Ice/ConnectionF.rb +2 -2
  523. data/lib/Ice/Current.rb +3 -3
  524. data/lib/Ice/Endpoint.rb +2 -2
  525. data/lib/Ice/EndpointF.rb +2 -2
  526. data/lib/Ice/EndpointTypes.rb +2 -2
  527. data/lib/Ice/FacetMap.rb +2 -2
  528. data/lib/Ice/Identity.rb +3 -3
  529. data/lib/Ice/ImplicitContext.rb +2 -2
  530. data/lib/Ice/ImplicitContextF.rb +2 -2
  531. data/lib/Ice/Instrumentation.rb +2 -2
  532. data/lib/Ice/InstrumentationF.rb +2 -2
  533. data/lib/Ice/LocalException.rb +2 -2
  534. data/lib/Ice/Locator.rb +2 -2
  535. data/lib/Ice/LocatorF.rb +2 -2
  536. data/lib/Ice/Logger.rb +2 -2
  537. data/lib/Ice/LoggerF.rb +2 -2
  538. data/lib/Ice/Metrics.rb +3 -3
  539. data/lib/Ice/ObjectAdapterF.rb +2 -2
  540. data/lib/Ice/ObjectFactory.rb +2 -2
  541. data/lib/Ice/ObjectFactoryF.rb +2 -2
  542. data/lib/Ice/Plugin.rb +2 -2
  543. data/lib/Ice/PluginF.rb +2 -2
  544. data/lib/Ice/Process.rb +2 -2
  545. data/lib/Ice/ProcessF.rb +2 -2
  546. data/lib/Ice/Properties.rb +2 -2
  547. data/lib/Ice/PropertiesAdmin.rb +2 -2
  548. data/lib/Ice/PropertiesF.rb +2 -2
  549. data/lib/Ice/RemoteLogger.rb +3 -3
  550. data/lib/Ice/Router.rb +2 -2
  551. data/lib/Ice/RouterF.rb +2 -2
  552. data/lib/Ice/SliceChecksumDict.rb +2 -2
  553. data/lib/Ice/Version.rb +4 -4
  554. data/lib/IceBox.rb +1 -1
  555. data/lib/IceBox/IceBox.rb +2 -2
  556. data/lib/IceGrid.rb +1 -1
  557. data/lib/IceGrid/Admin.rb +10 -10
  558. data/lib/IceGrid/Descriptor.rb +16 -16
  559. data/lib/IceGrid/Exception.rb +2 -2
  560. data/lib/IceGrid/FileParser.rb +2 -2
  561. data/lib/IceGrid/Locator.rb +2 -2
  562. data/lib/IceGrid/Observer.rb +5 -5
  563. data/lib/IceGrid/Query.rb +2 -2
  564. data/lib/IceGrid/Registry.rb +2 -2
  565. data/lib/IceGrid/Session.rb +2 -2
  566. data/lib/IceGrid/UserAccountMapper.rb +2 -2
  567. data/lib/IcePatch2.rb +1 -1
  568. data/lib/IcePatch2/FileInfo.rb +4 -4
  569. data/lib/IcePatch2/FileServer.rb +2 -2
  570. data/lib/IceStorm.rb +1 -1
  571. data/lib/IceStorm/IceStorm.rb +3 -3
  572. data/lib/IceStorm/Metrics.rb +2 -2
  573. data/slice/Freeze/BackgroundSaveEvictor.ice +1 -1
  574. data/slice/Freeze/CatalogData.ice +1 -1
  575. data/slice/Freeze/Connection.ice +1 -1
  576. data/slice/Freeze/ConnectionF.ice +1 -1
  577. data/slice/Freeze/DB.ice +1 -1
  578. data/slice/Freeze/Evictor.ice +1 -1
  579. data/slice/Freeze/EvictorF.ice +1 -1
  580. data/slice/Freeze/EvictorStorage.ice +1 -1
  581. data/slice/Freeze/Exception.ice +1 -1
  582. data/slice/Freeze/Transaction.ice +1 -1
  583. data/slice/Freeze/TransactionalEvictor.ice +1 -1
  584. data/slice/Glacier2/Metrics.ice +1 -1
  585. data/slice/Glacier2/PermissionsVerifier.ice +1 -1
  586. data/slice/Glacier2/PermissionsVerifierF.ice +1 -1
  587. data/slice/Glacier2/Router.ice +1 -1
  588. data/slice/Glacier2/RouterF.ice +1 -1
  589. data/slice/Glacier2/SSLInfo.ice +1 -1
  590. data/slice/Glacier2/Session.ice +1 -1
  591. data/slice/Ice/BuiltinSequences.ice +1 -1
  592. data/slice/Ice/Communicator.ice +1 -1
  593. data/slice/Ice/CommunicatorF.ice +1 -1
  594. data/slice/Ice/Connection.ice +1 -1
  595. data/slice/Ice/ConnectionF.ice +1 -1
  596. data/slice/Ice/Current.ice +1 -1
  597. data/slice/Ice/Endpoint.ice +1 -1
  598. data/slice/Ice/EndpointF.ice +1 -1
  599. data/slice/Ice/EndpointTypes.ice +1 -1
  600. data/slice/Ice/FacetMap.ice +1 -1
  601. data/slice/Ice/Identity.ice +1 -1
  602. data/slice/Ice/ImplicitContext.ice +1 -1
  603. data/slice/Ice/ImplicitContextF.ice +1 -1
  604. data/slice/Ice/Instrumentation.ice +1 -1
  605. data/slice/Ice/InstrumentationF.ice +1 -1
  606. data/slice/Ice/LocalException.ice +1 -1
  607. data/slice/Ice/Locator.ice +1 -1
  608. data/slice/Ice/LocatorF.ice +1 -1
  609. data/slice/Ice/Logger.ice +1 -1
  610. data/slice/Ice/LoggerF.ice +1 -1
  611. data/slice/Ice/Metrics.ice +1 -1
  612. data/slice/Ice/ObjectAdapter.ice +1 -1
  613. data/slice/Ice/ObjectAdapterF.ice +1 -1
  614. data/slice/Ice/ObjectFactory.ice +1 -1
  615. data/slice/Ice/ObjectFactoryF.ice +1 -1
  616. data/slice/Ice/Plugin.ice +1 -1
  617. data/slice/Ice/PluginF.ice +1 -1
  618. data/slice/Ice/Process.ice +1 -1
  619. data/slice/Ice/ProcessF.ice +1 -1
  620. data/slice/Ice/Properties.ice +1 -1
  621. data/slice/Ice/PropertiesAdmin.ice +1 -1
  622. data/slice/Ice/PropertiesF.ice +1 -1
  623. data/slice/Ice/RemoteLogger.ice +1 -1
  624. data/slice/Ice/Router.ice +1 -1
  625. data/slice/Ice/RouterF.ice +1 -1
  626. data/slice/Ice/ServantLocator.ice +1 -1
  627. data/slice/Ice/ServantLocatorF.ice +1 -1
  628. data/slice/Ice/SliceChecksumDict.ice +1 -1
  629. data/slice/Ice/Version.ice +1 -1
  630. data/slice/IceBox/IceBox.ice +1 -1
  631. data/slice/IceDiscovery/IceDiscovery.ice +1 -1
  632. data/slice/IceGrid/Admin.ice +1 -1
  633. data/slice/IceGrid/Descriptor.ice +1 -1
  634. data/slice/IceGrid/Exception.ice +1 -1
  635. data/slice/IceGrid/FileParser.ice +1 -1
  636. data/slice/IceGrid/Locator.ice +1 -1
  637. data/slice/IceGrid/Observer.ice +1 -1
  638. data/slice/IceGrid/PluginFacade.ice +1 -1
  639. data/slice/IceGrid/Query.ice +1 -1
  640. data/slice/IceGrid/Registry.ice +1 -1
  641. data/slice/IceGrid/Session.ice +1 -1
  642. data/slice/IceGrid/UserAccountMapper.ice +1 -1
  643. data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +1 -1
  644. data/slice/IcePatch2/FileInfo.ice +1 -1
  645. data/slice/IcePatch2/FileServer.ice +1 -1
  646. data/slice/IceSSL/ConnectionInfo.ice +1 -1
  647. data/slice/IceSSL/EndpointInfo.ice +1 -1
  648. data/slice/IceStorm/IceStorm.ice +1 -1
  649. data/slice/IceStorm/Metrics.ice +1 -1
  650. metadata +498 -507
  651. data/BZIP2_LICENSE +0 -42
  652. data/ext/ice/bzip2/blocksort.c +0 -1094
  653. data/ext/ice/bzip2/bzlib.c +0 -1572
  654. data/ext/ice/bzip2/bzlib.h +0 -282
  655. data/ext/ice/bzip2/bzlib_private.h +0 -509
  656. data/ext/ice/bzip2/compress.c +0 -672
  657. data/ext/ice/bzip2/crctable.c +0 -104
  658. data/ext/ice/bzip2/decompress.c +0 -646
  659. data/ext/ice/bzip2/huffman.c +0 -205
  660. data/ext/ice/bzip2/randtable.c +0 -84
  661. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.h +0 -36
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -10,7 +10,6 @@
10
10
  #include <IceUtil/IceUtil.h>
11
11
  #include <Ice/Ice.h>
12
12
 
13
- #include <IceLocatorDiscovery/PluginI.h>
14
13
  #include <IceLocatorDiscovery/IceLocatorDiscovery.h>
15
14
 
16
15
  using namespace std;
@@ -24,31 +23,6 @@ using namespace IceLocatorDiscovery;
24
23
  # endif
25
24
  #endif
26
25
 
27
- //
28
- // Plugin factory function.
29
- //
30
- extern "C"
31
- {
32
-
33
- ICE_LOCATOR_DISCOVERY_API Ice::Plugin*
34
- createIceLocatorDiscovery(const Ice::CommunicatorPtr& communicator, const string&, const Ice::StringSeq&)
35
- {
36
- return new PluginI(communicator);
37
- }
38
-
39
- }
40
-
41
- namespace Ice
42
- {
43
-
44
- ICE_LOCATOR_DISCOVERY_API void
45
- registerIceLocatorDiscovery(bool loadOnInitialize)
46
- {
47
- Ice::registerPluginFactory("IceLocatorDiscovery", createIceLocatorDiscovery, loadOnInitialize);
48
- }
49
-
50
- }
51
-
52
26
  namespace
53
27
  {
54
28
 
@@ -141,13 +115,6 @@ private:
141
115
  const LocatorIPtr _locator;
142
116
  };
143
117
 
144
- const ::std::string IceGrid_Locator_ids[3] =
145
- {
146
- "::Ice::Locator",
147
- "::Ice::Object",
148
- "::IceGrid::Locator"
149
- };
150
-
151
118
  //
152
119
  // The void locator implementation below is used when no locator is found.
153
120
  //
@@ -178,8 +145,52 @@ public:
178
145
  }
179
146
  };
180
147
 
148
+ class PluginI : public Ice::Plugin
149
+ {
150
+ public:
151
+
152
+ PluginI(const Ice::CommunicatorPtr&);
153
+
154
+ virtual void initialize();
155
+ virtual void destroy();
156
+
157
+ private:
158
+
159
+ const Ice::CommunicatorPtr _communicator;
160
+ Ice::ObjectAdapterPtr _locatorAdapter;
161
+ Ice::ObjectAdapterPtr _replyAdapter;
162
+ Ice::LocatorPrx _locatorPrx;
163
+ Ice::LocatorPrx _defaultLocator;
164
+ };
165
+
166
+ }
167
+
168
+ //
169
+ // Plugin factory function.
170
+ //
171
+ extern "C"
172
+ {
173
+
174
+ ICE_LOCATOR_DISCOVERY_API Ice::Plugin*
175
+ createIceLocatorDiscovery(const Ice::CommunicatorPtr& communicator, const string&, const Ice::StringSeq&)
176
+ {
177
+ return new PluginI(communicator);
178
+ }
179
+
181
180
  }
182
181
 
182
+ namespace Ice
183
+ {
184
+
185
+ ICE_LOCATOR_DISCOVERY_API void
186
+ registerIceLocatorDiscovery(bool loadOnInitialize)
187
+ {
188
+ Ice::registerPluginFactory("IceLocatorDiscovery", createIceLocatorDiscovery, loadOnInitialize);
189
+ }
190
+
191
+ }
192
+
193
+
183
194
  PluginI::PluginI(const Ice::CommunicatorPtr& communicator) : _communicator(communicator)
184
195
  {
185
196
  }
@@ -238,7 +249,8 @@ PluginI::initialize()
238
249
  }
239
250
 
240
251
  Ice::ObjectPrx lookupPrx = _communicator->stringToProxy("IceLocatorDiscovery/Lookup -d:" + lookupEndpoints);
241
- lookupPrx = lookupPrx->ice_collocationOptimized(false); // No collocation optimization for the multicast proxy!
252
+ // No collocation optimization for the multicast proxy!
253
+ lookupPrx = lookupPrx->ice_collocationOptimized(false)->ice_router(0);
242
254
  try
243
255
  {
244
256
  // Ensure we can establish a connection to the multicast proxy
@@ -265,7 +277,9 @@ PluginI::initialize()
265
277
  id.name = "Locator";
266
278
  id.category = !instanceName.empty() ? instanceName : IceUtil::generateUUID();
267
279
  LocatorIPtr locator = new LocatorI(LookupPrx::uncheckedCast(lookupPrx), properties, instanceName, voidLocator);
268
- _communicator->setDefaultLocator(Ice::LocatorPrx::uncheckedCast(_locatorAdapter->add(locator, id)));
280
+ _defaultLocator = _communicator->getDefaultLocator();
281
+ _locatorPrx = Ice::LocatorPrx::uncheckedCast(_locatorAdapter->add(locator, id));
282
+ _communicator->setDefaultLocator(_locatorPrx);
269
283
 
270
284
  Ice::ObjectPrx lookupReply = _replyAdapter->addWithUUID(new LookupReplyI(locator))->ice_datagram();
271
285
  locator->setLookupReply(LookupReplyPrx::uncheckedCast(lookupReply));
@@ -277,8 +291,19 @@ PluginI::initialize()
277
291
  void
278
292
  PluginI::destroy()
279
293
  {
280
- _replyAdapter->destroy();
281
- _locatorAdapter->destroy();
294
+ if(_replyAdapter)
295
+ {
296
+ _replyAdapter->destroy();
297
+ }
298
+ if(_locatorAdapter)
299
+ {
300
+ _locatorAdapter->destroy();
301
+ }
302
+ if(_communicator->getDefaultLocator() == _locatorPrx)
303
+ {
304
+ // Restore original default locator proxy, if the user didn't change it in the meantime
305
+ _communicator->setDefaultLocator(_defaultLocator);
306
+ }
282
307
  }
283
308
 
284
309
  void
@@ -463,11 +488,11 @@ void
463
488
  LocatorI::invoke(const Ice::LocatorPrx& locator, const RequestPtr& request)
464
489
  {
465
490
  Lock sync(*this);
466
- if(_locator && _locator != locator)
491
+ if(request && _locator && _locator != locator)
467
492
  {
468
493
  request->invoke(_locator);
469
494
  }
470
- else if(IceUtil::Time::now() < _nextRetry)
495
+ else if(request && IceUtil::Time::now() < _nextRetry)
471
496
  {
472
497
  request->invoke(_voidLocator); // Don't retry to find a locator before the retry delay expires
473
498
  }
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,13 +1,13 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
7
7
  //
8
8
  // **********************************************************************
9
9
  //
10
- // Ice version 3.6.3
10
+ // Ice version 3.6.4
11
11
  //
12
12
  // <auto-generated>
13
13
  //
@@ -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 < 3
38
+ # if ICE_INT_VERSION % 100 < 4
39
39
  # error Ice patch level mismatch!
40
40
  # endif
41
41
  #endif
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,13 +1,13 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
7
7
  //
8
8
  // **********************************************************************
9
9
  //
10
- // Ice version 3.6.3
10
+ // Ice version 3.6.4
11
11
  //
12
12
  // <auto-generated>
13
13
  //
@@ -34,7 +34,7 @@
34
34
  # if ICE_INT_VERSION % 100 > 50
35
35
  # error Beta header file detected
36
36
  # endif
37
- # if ICE_INT_VERSION % 100 < 3
37
+ # if ICE_INT_VERSION % 100 < 4
38
38
  # error Ice patch level mismatch!
39
39
  # endif
40
40
  #endif
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -43,7 +43,7 @@ IceUtil::Mutex* staticMutex = 0;
43
43
  int instanceCount = 0;
44
44
  bool initOpenSSL = false;
45
45
 
46
- #if OPENSSL_VERSION_NUMBER < 0x10100000L
46
+ #if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
47
47
  IceUtil::Mutex* locks = 0;
48
48
  #endif
49
49
 
@@ -59,10 +59,10 @@ public:
59
59
  ~Init()
60
60
  {
61
61
  //
62
- // OpenSSL 1.1.0 introduces a new thread API and removes
62
+ // OpenSSL 1.1.0 introduces a new thread API and removes
63
63
  // the need to use a custom thread callback.
64
64
  //
65
- #if OPENSSL_VERSION_NUMBER < 0x10100000L
65
+ #if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
66
66
  CRYPTO_set_locking_callback(0);
67
67
  CRYPTO_set_id_callback(0);
68
68
 
@@ -84,10 +84,10 @@ extern "C"
84
84
  {
85
85
 
86
86
  //
87
- // OpenSSL 1.1.0 introduces a new thread API and removes
87
+ // OpenSSL 1.1.0 introduces a new thread API and removes
88
88
  // the need to use a custom thread callback.
89
89
  //
90
- #if OPENSSL_VERSION_NUMBER < 0x10100000L
90
+ #if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
91
91
  //
92
92
  // OpenSSL mutex callback.
93
93
  //
@@ -158,7 +158,7 @@ IceSSL_opensslPasswordCallback(char* buf, int size, int flag, void* userData)
158
158
  DH*
159
159
  IceSSL_opensslDHCallback(SSL* ssl, int /*isExport*/, int keyLength)
160
160
  {
161
- # if OPENSSL_VERSION_NUMBER >= 0x10100000L
161
+ # if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
162
162
  SSL_CTX* ctx = SSL_get_SSL_CTX(ssl);
163
163
  # else
164
164
  SSL_CTX* ctx = ssl->ctx;
@@ -219,7 +219,7 @@ OpenSSLEngine::OpenSSLEngine(const CommunicatorPtr& communicator) :
219
219
  //
220
220
  // OpenSSL 1.1.0 remove the need for library initialization and cleanup.
221
221
  //
222
- #if OPENSSL_VERSION_NUMBER < 0x10100000L
222
+ #if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
223
223
  //
224
224
  // Create the mutexes and set the callbacks.
225
225
  //
@@ -326,7 +326,7 @@ OpenSSLEngine::~OpenSSLEngine()
326
326
  //
327
327
  // OpenSSL 1.1.0 remove the need for library initialization and cleanup.
328
328
  //
329
- #if OPENSSL_VERSION_NUMBER < 0x10100000L
329
+ #if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER)
330
330
  //
331
331
  // Clean up OpenSSL resources.
332
332
  //
@@ -399,7 +399,7 @@ OpenSSLEngine::initialize()
399
399
  "IceSSL: unable to create SSL context:\n" + sslErrors());
400
400
  }
401
401
 
402
- #if OPENSSL_VERSION_NUMBER >= 0x10100000L
402
+ #if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
403
403
  int securityLevel = properties->getPropertyAsIntWithDefault(propPrefix + "SecurityLevel", -1);
404
404
  if(securityLevel != -1)
405
405
  {
@@ -954,7 +954,7 @@ OpenSSLEngine::parseProtocols(const StringSeq& protocols) const
954
954
  SSL_METHOD*
955
955
  OpenSSLEngine::getMethod(int /*protocols*/)
956
956
  {
957
- #if OPENSSL_VERSION_NUMBER >= 0x10100000L
957
+ #if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
958
958
  SSL_METHOD* meth = const_cast<SSL_METHOD*>(TLS_method());
959
959
  #else
960
960
  //
@@ -1,6 +1,6 @@
1
1
  // **********************************************************************
2
2
  //
3
- // Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved.
3
+ // Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
4
4
  //
5
5
  // This copy of Ice is licensed to you under the terms described in the
6
6
  // ICE_LICENSE file included in this distribution.
@@ -36,7 +36,7 @@ using namespace IceSSL;
36
36
  //
37
37
  // See: http://cvs.openssl.org/chngview?cn=22569
38
38
  //
39
- #if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x100000bfL
39
+ #if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x100000bfL && !defined(LIBRESSL_VERSION_NUMBER)
40
40
  namespace
41
41
  {
42
42
 
@@ -156,13 +156,13 @@ IceSSL::TransceiverI::initialize(IceInternal::Buffer& readBuffer, IceInternal::B
156
156
  //
157
157
  // See: http://cvs.openssl.org/chngview?cn=22569
158
158
  //
159
- #if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x100000bfL
159
+ #if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x100000bfL && !defined(LIBRESSL_VERSION_NUMBER)
160
160
  IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(sslMutex);
161
161
  #endif
162
162
 
163
163
  int ret = _incoming ? SSL_accept(_ssl) : SSL_connect(_ssl);
164
164
 
165
- #if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x100000bfL
165
+ #if defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x100000bfL && !defined(LIBRESSL_VERSION_NUMBER)
166
166
  sync.release();
167
167
  #endif
168
168
  if(ret <= 0)
@@ -190,44 +190,37 @@ IceSSL::TransceiverI::initialize(IceInternal::Buffer& readBuffer, IceInternal::B
190
190
  }
191
191
  case SSL_ERROR_SYSCALL:
192
192
  {
193
- if(ret == 0)
193
+ if(IceInternal::interrupted())
194
194
  {
195
- ConnectionLostException ex(__FILE__, __LINE__);
196
- ex.error = 0;
197
- throw ex;
195
+ break;
198
196
  }
199
197
 
200
- if(ret == -1)
198
+ if(IceInternal::wouldBlock())
201
199
  {
202
- if(IceInternal::interrupted())
200
+ if(SSL_want_read(_ssl))
203
201
  {
204
- break;
202
+ return IceInternal::SocketOperationRead;
205
203
  }
206
-
207
- if(IceInternal::wouldBlock())
204
+ else if(SSL_want_write(_ssl))
208
205
  {
209
- if(SSL_want_read(_ssl))
210
- {
211
- return IceInternal::SocketOperationRead;
212
- }
213
- else if(SSL_want_write(_ssl))
214
- {
215
- return IceInternal::SocketOperationWrite;
216
- }
217
-
218
- break;
206
+ return IceInternal::SocketOperationWrite;
219
207
  }
220
208
 
221
- if(IceInternal::connectionLost())
222
- {
223
- ConnectionLostException ex(__FILE__, __LINE__);
224
- ex.error = IceInternal::getSocketErrno();
225
- throw ex;
226
- }
209
+ break;
210
+ }
211
+
212
+ if(IceInternal::connectionLost() || IceInternal::getSocketErrno() == 0)
213
+ {
214
+ ConnectionLostException ex(__FILE__, __LINE__);
215
+ ex.error = IceInternal::getSocketErrno();
216
+ throw ex;
217
+ }
218
+ else
219
+ {
220
+ SocketException ex(__FILE__, __LINE__);
221
+ ex.error = IceInternal::getSocketErrno();
222
+ throw ex;
227
223
  }
228
- SocketException ex(__FILE__, __LINE__);
229
- ex.error = IceInternal::getSocketErrno();
230
- throw ex;
231
224
  }
232
225
  case SSL_ERROR_SSL:
233
226
  {
@@ -382,42 +375,35 @@ IceSSL::TransceiverI::write(IceInternal::Buffer& buf)
382
375
  }
383
376
  case SSL_ERROR_SYSCALL:
384
377
  {
385
- if(ret == -1)
378
+ if(IceInternal::interrupted())
386
379
  {
387
- if(IceInternal::interrupted())
388
- {
389
- continue;
390
- }
391
-
392
- if(IceInternal::noBuffers() && packetSize > 1024)
393
- {
394
- packetSize /= 2;
395
- continue;
396
- }
380
+ continue;
381
+ }
397
382
 
398
- if(IceInternal::wouldBlock())
399
- {
400
- assert(SSL_want_write(_ssl));
401
- return IceInternal::SocketOperationWrite;
402
- }
383
+ if(IceInternal::noBuffers() && packetSize > 1024)
384
+ {
385
+ packetSize /= 2;
386
+ continue;
387
+ }
403
388
 
404
- if(IceInternal::connectionLost())
405
- {
406
- ConnectionLostException ex(__FILE__, __LINE__);
407
- ex.error = IceInternal::getSocketErrno();
408
- throw ex;
409
- }
389
+ if(IceInternal::wouldBlock())
390
+ {
391
+ assert(SSL_want_write(_ssl));
392
+ return IceInternal::SocketOperationWrite;
410
393
  }
411
- if(ret == 0)
394
+
395
+ if(IceInternal::connectionLost() || IceInternal::getSocketErrno() == 0)
412
396
  {
413
397
  ConnectionLostException ex(__FILE__, __LINE__);
414
- ex.error = 0;
398
+ ex.error = IceInternal::getSocketErrno();
399
+ throw ex;
400
+ }
401
+ else
402
+ {
403
+ SocketException ex(__FILE__, __LINE__);
404
+ ex.error = IceInternal::getSocketErrno();
415
405
  throw ex;
416
406
  }
417
-
418
- SocketException ex(__FILE__, __LINE__);
419
- ex.error = IceInternal::getSocketErrno();
420
- throw ex;
421
407
  }
422
408
  case SSL_ERROR_SSL:
423
409
  {
@@ -493,43 +479,35 @@ IceSSL::TransceiverI::read(IceInternal::Buffer& buf, bool& hasMoreData)
493
479
  }
494
480
  case SSL_ERROR_SYSCALL:
495
481
  {
496
- if(ret == -1)
482
+ if(IceInternal::interrupted())
497
483
  {
498
- if(IceInternal::interrupted())
499
- {
500
- continue;
501
- }
502
-
503
- if(IceInternal::noBuffers() && packetSize > 1024)
504
- {
505
- packetSize /= 2;
506
- continue;
507
- }
484
+ continue;
485
+ }
508
486
 
509
- if(IceInternal::wouldBlock())
510
- {
511
- assert(SSL_want_read(_ssl));
512
- return IceInternal::SocketOperationRead;
513
- }
487
+ if(IceInternal::noBuffers() && packetSize > 1024)
488
+ {
489
+ packetSize /= 2;
490
+ continue;
491
+ }
514
492
 
515
- if(IceInternal::connectionLost())
516
- {
517
- ConnectionLostException ex(__FILE__, __LINE__);
518
- ex.error = IceInternal::getSocketErrno();
519
- throw ex;
520
- }
493
+ if(IceInternal::wouldBlock())
494
+ {
495
+ assert(SSL_want_read(_ssl));
496
+ return IceInternal::SocketOperationRead;
521
497
  }
522
498
 
523
- if(ret == 0)
499
+ if(IceInternal::connectionLost() || IceInternal::getSocketErrno() == 0)
524
500
  {
525
501
  ConnectionLostException ex(__FILE__, __LINE__);
526
- ex.error = 0;
502
+ ex.error = IceInternal::getSocketErrno();
503
+ throw ex;
504
+ }
505
+ else
506
+ {
507
+ SocketException ex(__FILE__, __LINE__);
508
+ ex.error = IceInternal::getSocketErrno();
527
509
  throw ex;
528
510
  }
529
-
530
- SocketException ex(__FILE__, __LINE__);
531
- ex.error = IceInternal::getSocketErrno();
532
- throw ex;
533
511
  }
534
512
  case SSL_ERROR_SSL:
535
513
  {