zeroc-ice 3.7.0 → 3.7.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (684) hide show
  1. checksums.yaml +4 -4
  2. data/ICE_LICENSE +1 -1
  3. data/bin/slice2rb +1 -1
  4. data/ext/Communicator.cpp +72 -2
  5. data/ext/Communicator.h +1 -1
  6. data/ext/Config.h +11 -1
  7. data/ext/Connection.cpp +22 -2
  8. data/ext/Connection.h +4 -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/Operation.cpp +1 -1
  17. data/ext/Operation.h +1 -1
  18. data/ext/Properties.cpp +1 -1
  19. data/ext/Properties.h +1 -1
  20. data/ext/Proxy.cpp +70 -1
  21. data/ext/Proxy.h +1 -1
  22. data/ext/Slice.cpp +1 -1
  23. data/ext/Slice.h +1 -1
  24. data/ext/Types.cpp +21 -5
  25. data/ext/Types.h +1 -1
  26. data/ext/Util.cpp +1 -1
  27. data/ext/Util.h +1 -1
  28. data/ext/ValueFactoryManager.cpp +2 -2
  29. data/ext/ValueFactoryManager.h +2 -2
  30. data/ext/ice/cpp/include/Ice/Application.h +234 -76
  31. data/ext/ice/cpp/include/Ice/AsyncResult.h +77 -1
  32. data/ext/ice/cpp/include/Ice/AsyncResultF.h +1 -1
  33. data/ext/ice/cpp/include/Ice/BatchRequestInterceptor.h +35 -2
  34. data/ext/ice/cpp/include/Ice/BatchRequestQueueF.h +1 -1
  35. data/ext/ice/cpp/include/Ice/Buffer.h +1 -1
  36. data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +43 -1
  37. data/ext/ice/cpp/include/Ice/Comparable.h +81 -1
  38. data/ext/ice/cpp/include/Ice/Config.h +8 -1
  39. data/ext/ice/cpp/include/Ice/ConnectionAsync.h +97 -1
  40. data/ext/ice/cpp/include/Ice/ConnectionIF.h +3 -1
  41. data/ext/ice/cpp/include/Ice/ConsoleUtil.h +1 -1
  42. data/ext/ice/cpp/include/Ice/DefaultValueFactory.h +1 -1
  43. data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +17 -2
  44. data/ext/ice/cpp/include/Ice/Dispatcher.h +22 -2
  45. data/ext/ice/cpp/include/Ice/DynamicLibrary.h +1 -1
  46. data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +1 -1
  47. data/ext/ice/cpp/include/Ice/Exception.h +57 -15
  48. data/ext/ice/cpp/include/Ice/ExceptionHelpers.h +19 -1
  49. data/ext/ice/cpp/include/Ice/FactoryTable.h +12 -2
  50. data/ext/ice/cpp/include/Ice/FactoryTableInit.h +1 -1
  51. data/ext/ice/cpp/include/Ice/Format.h +13 -14
  52. data/ext/ice/cpp/include/Ice/Functional.h +6 -1
  53. data/ext/ice/cpp/include/Ice/GCObject.h +1 -1
  54. data/ext/ice/cpp/include/Ice/Handle.h +1 -1
  55. data/ext/ice/cpp/include/Ice/Ice.h +1 -1
  56. data/ext/ice/cpp/include/Ice/IconvStringConverter.h +38 -3
  57. data/ext/ice/cpp/include/Ice/Incoming.h +15 -2
  58. data/ext/ice/cpp/include/Ice/IncomingAsync.h +37 -4
  59. data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +1 -1
  60. data/ext/ice/cpp/include/Ice/Initialize.h +764 -98
  61. data/ext/ice/cpp/include/Ice/InputStream.h +637 -112
  62. data/ext/ice/cpp/include/Ice/InstanceF.h +1 -1
  63. data/ext/ice/cpp/include/Ice/InterfaceByValue.h +17 -1
  64. data/ext/ice/cpp/include/Ice/LocalObject.h +5 -1
  65. data/ext/ice/cpp/include/Ice/LocalObjectF.h +1 -1
  66. data/ext/ice/cpp/include/Ice/LoggerUtil.h +37 -6
  67. data/ext/ice/cpp/include/Ice/MetricsAdminI.h +3 -1
  68. data/ext/ice/cpp/include/Ice/MetricsFunctional.h +3 -1
  69. data/ext/ice/cpp/include/Ice/MetricsObserverI.h +3 -1
  70. data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +46 -23
  71. data/ext/ice/cpp/include/Ice/Object.h +338 -47
  72. data/ext/ice/cpp/include/Ice/ObjectF.h +5 -1
  73. data/ext/ice/cpp/include/Ice/ObserverHelper.h +1 -1
  74. data/ext/ice/cpp/include/Ice/Optional.h +22 -6
  75. data/ext/ice/cpp/include/Ice/OutgoingAsync.h +15 -1
  76. data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +1 -1
  77. data/ext/ice/cpp/include/Ice/OutputStream.h +436 -92
  78. data/ext/ice/cpp/include/Ice/Protocol.h +31 -1
  79. data/ext/ice/cpp/include/Ice/Proxy.h +2244 -190
  80. data/ext/ice/cpp/include/Ice/ProxyF.h +3 -1
  81. data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +1 -1
  82. data/ext/ice/cpp/include/Ice/ProxyHandle.h +10 -1
  83. data/ext/ice/cpp/include/Ice/ReferenceF.h +1 -1
  84. data/ext/ice/cpp/include/Ice/RegisterPlugins.h +67 -9
  85. data/ext/ice/cpp/include/Ice/RequestHandlerF.h +1 -1
  86. data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +1 -1
  87. data/ext/ice/cpp/include/Ice/SHA1.h +1 -1
  88. data/ext/ice/cpp/include/Ice/ServantManagerF.h +1 -1
  89. data/ext/ice/cpp/include/Ice/Service.h +267 -138
  90. data/ext/ice/cpp/include/Ice/SliceChecksums.h +5 -1
  91. data/ext/ice/cpp/include/Ice/SlicedData.h +80 -33
  92. data/ext/ice/cpp/include/Ice/SlicedDataF.h +4 -1
  93. data/ext/ice/cpp/include/Ice/StreamHelpers.h +324 -116
  94. data/ext/ice/cpp/include/Ice/StringConverter.h +32 -1
  95. data/ext/ice/cpp/include/Ice/ThreadPoolF.h +1 -1
  96. data/ext/ice/cpp/include/Ice/UUID.h +2 -1
  97. data/ext/ice/cpp/include/Ice/UniquePtr.h +2 -2
  98. data/ext/ice/cpp/include/Ice/UniqueRef.h +6 -2
  99. data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +6 -1
  100. data/ext/ice/cpp/include/Ice/Value.h +41 -1
  101. data/ext/ice/cpp/include/Ice/ValueF.h +3 -1
  102. data/ext/ice/cpp/include/IceSSL/Config.h +1 -1
  103. data/ext/ice/cpp/include/IceSSL/IceSSL.h +1 -1
  104. data/ext/ice/cpp/include/IceSSL/OpenSSL.h +75 -53
  105. data/ext/ice/cpp/include/IceSSL/Plugin.h +323 -218
  106. data/ext/ice/cpp/include/IceSSL/SChannel.h +34 -27
  107. data/ext/ice/cpp/include/IceSSL/SecureTransport.h +35 -28
  108. data/ext/ice/cpp/include/IceSSL/UWP.h +33 -24
  109. data/ext/ice/cpp/include/IceUtil/Atomic.h +1 -1
  110. data/ext/ice/cpp/include/IceUtil/Cond.h +1 -1
  111. data/ext/ice/cpp/include/IceUtil/Config.h +11 -3
  112. data/ext/ice/cpp/include/IceUtil/ConsoleUtil.h +1 -1
  113. data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +1 -1
  114. data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +59 -31
  115. data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +1 -1
  116. data/ext/ice/cpp/include/IceUtil/Exception.h +1 -1
  117. data/ext/ice/cpp/include/IceUtil/FileUtil.h +1 -1
  118. data/ext/ice/cpp/include/IceUtil/Functional.h +1 -1
  119. data/ext/ice/cpp/include/IceUtil/Handle.h +1 -1
  120. data/ext/ice/cpp/include/IceUtil/IceUtil.h +1 -1
  121. data/ext/ice/cpp/include/IceUtil/InputUtil.h +1 -1
  122. data/ext/ice/cpp/include/IceUtil/Iterator.h +1 -1
  123. data/ext/ice/cpp/include/IceUtil/Lock.h +1 -1
  124. data/ext/ice/cpp/include/IceUtil/Monitor.h +1 -1
  125. data/ext/ice/cpp/include/IceUtil/Mutex.h +2 -5
  126. data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +1 -1
  127. data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +1 -1
  128. data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +1 -1
  129. data/ext/ice/cpp/include/IceUtil/Optional.h +95 -1
  130. data/ext/ice/cpp/include/IceUtil/Options.h +1 -1
  131. data/ext/ice/cpp/include/IceUtil/OutputUtil.h +1 -1
  132. data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +1 -1
  133. data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +1 -1
  134. data/ext/ice/cpp/include/IceUtil/Random.h +1 -1
  135. data/ext/ice/cpp/include/IceUtil/RecMutex.h +1 -1
  136. data/ext/ice/cpp/include/IceUtil/ResourceConfig.h +4 -4
  137. data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +5 -3
  138. data/ext/ice/cpp/include/IceUtil/ScopedArray.h +1 -1
  139. data/ext/ice/cpp/include/IceUtil/Shared.h +1 -1
  140. data/ext/ice/cpp/include/IceUtil/StopWatch.h +1 -1
  141. data/ext/ice/cpp/include/IceUtil/StringConverter.h +106 -86
  142. data/ext/ice/cpp/include/IceUtil/StringUtil.h +1 -1
  143. data/ext/ice/cpp/include/IceUtil/Thread.h +1 -1
  144. data/ext/ice/cpp/include/IceUtil/ThreadException.h +1 -1
  145. data/ext/ice/cpp/include/IceUtil/Time.h +1 -1
  146. data/ext/ice/cpp/include/IceUtil/Timer.h +5 -1
  147. data/ext/ice/cpp/include/IceUtil/UUID.h +5 -1
  148. data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +1 -1
  149. data/ext/ice/cpp/include/generated/Ice/BuiltinSequences.h +80 -20
  150. data/ext/ice/cpp/include/generated/Ice/Communicator.h +927 -130
  151. data/ext/ice/cpp/include/generated/Ice/CommunicatorF.h +13 -5
  152. data/ext/ice/cpp/include/generated/Ice/Connection.h +990 -194
  153. data/ext/ice/cpp/include/generated/Ice/ConnectionF.h +21 -9
  154. data/ext/ice/cpp/include/generated/Ice/Current.h +180 -17
  155. data/ext/ice/cpp/include/generated/Ice/Endpoint.h +484 -118
  156. data/ext/ice/cpp/include/generated/Ice/EndpointF.h +41 -17
  157. data/ext/ice/cpp/include/generated/Ice/EndpointTypes.h +29 -3
  158. data/ext/ice/cpp/include/generated/Ice/FacetMap.h +11 -5
  159. data/ext/ice/cpp/include/generated/Ice/Identity.h +56 -7
  160. data/ext/ice/cpp/include/generated/Ice/ImplicitContext.h +150 -28
  161. data/ext/ice/cpp/include/generated/Ice/ImplicitContextF.h +13 -5
  162. data/ext/ice/cpp/include/generated/Ice/Instrumentation.h +629 -83
  163. data/ext/ice/cpp/include/generated/Ice/InstrumentationF.h +19 -7
  164. data/ext/ice/cpp/include/generated/Ice/LocalException.h +5104 -794
  165. data/ext/ice/cpp/include/generated/Ice/Locator.h +2222 -443
  166. data/ext/ice/cpp/include/generated/Ice/LocatorF.h +27 -9
  167. data/ext/ice/cpp/include/generated/Ice/Logger.h +104 -26
  168. data/ext/ice/cpp/include/generated/Ice/LoggerF.h +13 -5
  169. data/ext/ice/cpp/include/generated/Ice/Metrics.h +2534 -455
  170. data/ext/ice/cpp/include/generated/Ice/ObjectAdapter.h +1004 -126
  171. data/ext/ice/cpp/include/generated/Ice/ObjectAdapterF.h +13 -5
  172. data/ext/ice/cpp/include/generated/Ice/ObjectFactory.h +72 -12
  173. data/ext/ice/cpp/include/generated/Ice/Plugin.h +142 -28
  174. data/ext/ice/cpp/include/generated/Ice/PluginF.h +17 -7
  175. data/ext/ice/cpp/include/generated/Ice/Process.h +511 -71
  176. data/ext/ice/cpp/include/generated/Ice/ProcessF.h +18 -6
  177. data/ext/ice/cpp/include/generated/Ice/Properties.h +306 -58
  178. data/ext/ice/cpp/include/generated/Ice/PropertiesAdmin.h +737 -121
  179. data/ext/ice/cpp/include/generated/Ice/PropertiesF.h +22 -8
  180. data/ext/ice/cpp/include/generated/Ice/RemoteLogger.h +1526 -279
  181. data/ext/ice/cpp/include/generated/Ice/Router.h +1009 -198
  182. data/ext/ice/cpp/include/generated/Ice/RouterF.h +18 -6
  183. data/ext/ice/cpp/include/generated/Ice/ServantLocator.h +174 -18
  184. data/ext/ice/cpp/include/generated/Ice/ServantLocatorF.h +13 -5
  185. data/ext/ice/cpp/include/generated/Ice/SliceChecksumDict.h +13 -3
  186. data/ext/ice/cpp/include/generated/Ice/ValueFactory.h +177 -23
  187. data/ext/ice/cpp/include/generated/Ice/Version.h +43 -13
  188. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfo.h +71 -15
  189. data/ext/ice/cpp/include/generated/IceSSL/ConnectionInfoF.h +13 -5
  190. data/ext/ice/cpp/include/generated/IceSSL/EndpointInfo.h +39 -9
  191. data/ext/ice/cpp/src/Ice/ACM.cpp +12 -3
  192. data/ext/ice/cpp/src/Ice/ACM.h +1 -1
  193. data/ext/ice/cpp/src/Ice/ACMF.h +1 -1
  194. data/ext/ice/cpp/src/Ice/Acceptor.cpp +1 -1
  195. data/ext/ice/cpp/src/Ice/Acceptor.h +1 -1
  196. data/ext/ice/cpp/src/Ice/AcceptorF.h +1 -1
  197. data/ext/ice/cpp/src/Ice/ArgVector.cpp +1 -1
  198. data/ext/ice/cpp/src/Ice/ArgVector.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/BatchRequestQueue.cpp +1 -1
  203. data/ext/ice/cpp/src/Ice/BatchRequestQueue.h +1 -1
  204. data/ext/ice/cpp/src/Ice/Buffer.cpp +1 -1
  205. data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +3 -3
  206. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +1 -1
  207. data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +1 -1
  208. data/ext/ice/cpp/src/Ice/Communicator.cpp +6 -4
  209. data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +3 -3
  210. data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +34 -13
  211. data/ext/ice/cpp/src/Ice/CommunicatorI.h +10 -10
  212. data/ext/ice/cpp/src/Ice/Cond.cpp +1 -1
  213. data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +11 -6
  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 +27 -11
  217. data/ext/ice/cpp/src/Ice/ConnectionF.cpp +3 -3
  218. data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +24 -19
  219. data/ext/ice/cpp/src/Ice/ConnectionFactory.h +1 -1
  220. data/ext/ice/cpp/src/Ice/ConnectionFactoryF.h +1 -1
  221. data/ext/ice/cpp/src/Ice/ConnectionI.cpp +45 -37
  222. data/ext/ice/cpp/src/Ice/ConnectionI.h +10 -8
  223. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +1 -1
  224. data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +1 -1
  225. data/ext/ice/cpp/src/Ice/Connector.cpp +1 -1
  226. data/ext/ice/cpp/src/Ice/Connector.h +1 -1
  227. data/ext/ice/cpp/src/Ice/ConnectorF.h +1 -1
  228. data/ext/ice/cpp/src/Ice/CountDownLatch.cpp +1 -1
  229. data/ext/ice/cpp/src/Ice/Current.cpp +3 -3
  230. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +5 -7
  231. data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +1 -1
  232. data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +1 -1
  233. data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +1 -1
  234. data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +1 -1
  235. data/ext/ice/cpp/src/Ice/Endpoint.cpp +24 -10
  236. data/ext/ice/cpp/src/Ice/EndpointF.cpp +3 -3
  237. data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +1 -1
  238. data/ext/ice/cpp/src/Ice/EndpointFactory.h +1 -1
  239. data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +1 -1
  240. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +7 -13
  241. data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +1 -1
  242. data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +1 -1
  243. data/ext/ice/cpp/src/Ice/EndpointI.cpp +2 -2
  244. data/ext/ice/cpp/src/Ice/EndpointI.h +5 -5
  245. data/ext/ice/cpp/src/Ice/EndpointIF.h +1 -1
  246. data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +3 -3
  247. data/ext/ice/cpp/src/Ice/EventHandler.cpp +1 -1
  248. data/ext/ice/cpp/src/Ice/EventHandler.h +1 -1
  249. data/ext/ice/cpp/src/Ice/EventHandlerF.h +1 -1
  250. data/ext/ice/cpp/src/Ice/Exception.cpp +1 -1
  251. data/ext/ice/cpp/src/Ice/FacetMap.cpp +3 -3
  252. data/ext/ice/cpp/src/Ice/FactoryTable.cpp +1 -1
  253. data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +1 -1
  254. data/ext/ice/cpp/src/Ice/GCObject.cpp +1 -1
  255. data/ext/ice/cpp/src/Ice/HashUtil.h +1 -1
  256. data/ext/ice/cpp/src/Ice/HttpParser.cpp +1 -1
  257. data/ext/ice/cpp/src/Ice/HttpParser.h +1 -1
  258. data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +24 -29
  259. data/ext/ice/cpp/src/Ice/IPEndpointI.h +5 -5
  260. data/ext/ice/cpp/src/Ice/IPEndpointIF.h +1 -1
  261. data/ext/ice/cpp/src/Ice/IconvStringConverter.cpp +1 -1
  262. data/ext/ice/cpp/src/Ice/Identity.cpp +3 -3
  263. data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +6 -4
  264. data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +3 -3
  265. data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +2 -13
  266. data/ext/ice/cpp/src/Ice/ImplicitContextI.h +1 -1
  267. data/ext/ice/cpp/src/Ice/Incoming.cpp +1 -1
  268. data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +1 -1
  269. data/ext/ice/cpp/src/Ice/IncomingRequest.h +1 -1
  270. data/ext/ice/cpp/src/Ice/Initialize.cpp +10 -16
  271. data/ext/ice/cpp/src/Ice/InputStream.cpp +1 -1
  272. data/ext/ice/cpp/src/Ice/Instance.cpp +13 -34
  273. data/ext/ice/cpp/src/Ice/Instance.h +1 -1
  274. data/ext/ice/cpp/src/Ice/Instrumentation.cpp +33 -13
  275. data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +3 -3
  276. data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +1 -1
  277. data/ext/ice/cpp/src/Ice/InstrumentationI.h +1 -1
  278. data/ext/ice/cpp/src/Ice/LocalException.cpp +279 -279
  279. data/ext/ice/cpp/src/Ice/LocalObject.cpp +1 -1
  280. data/ext/ice/cpp/src/Ice/Locator.cpp +287 -174
  281. data/ext/ice/cpp/src/Ice/LocatorF.cpp +3 -3
  282. data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +4 -9
  283. data/ext/ice/cpp/src/Ice/LocatorInfo.h +1 -1
  284. data/ext/ice/cpp/src/Ice/LocatorInfoF.h +1 -1
  285. data/ext/ice/cpp/src/Ice/Logger.cpp +6 -4
  286. data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +1 -1
  287. data/ext/ice/cpp/src/Ice/LoggerAdminI.h +1 -1
  288. data/ext/ice/cpp/src/Ice/LoggerF.cpp +3 -3
  289. data/ext/ice/cpp/src/Ice/LoggerI.cpp +1 -1
  290. data/ext/ice/cpp/src/Ice/LoggerI.h +1 -1
  291. data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +1 -1
  292. data/ext/ice/cpp/src/Ice/Metrics.cpp +297 -109
  293. data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +2 -7
  294. data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +1 -1
  295. data/ext/ice/cpp/src/Ice/Network.cpp +188 -225
  296. data/ext/ice/cpp/src/Ice/Network.h +3 -12
  297. data/ext/ice/cpp/src/Ice/NetworkF.h +1 -1
  298. data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +1 -1
  299. data/ext/ice/cpp/src/Ice/NetworkProxy.h +1 -1
  300. data/ext/ice/cpp/src/Ice/NetworkProxyF.h +1 -1
  301. data/ext/ice/cpp/src/Ice/Object.cpp +7 -4
  302. data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +6 -4
  303. data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +3 -3
  304. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +53 -19
  305. data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +1 -1
  306. data/ext/ice/cpp/src/Ice/ObjectAdapterFactoryF.h +1 -1
  307. data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +116 -150
  308. data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +11 -11
  309. data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +6 -4
  310. data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +1 -1
  311. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +25 -42
  312. data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +2 -2
  313. data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +1 -1
  314. data/ext/ice/cpp/src/Ice/OutputStream.cpp +1 -1
  315. data/ext/ice/cpp/src/Ice/Plugin.cpp +9 -5
  316. data/ext/ice/cpp/src/Ice/PluginF.cpp +3 -3
  317. data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +15 -34
  318. data/ext/ice/cpp/src/Ice/PluginManagerI.h +3 -3
  319. data/ext/ice/cpp/src/Ice/Process.cpp +69 -40
  320. data/ext/ice/cpp/src/Ice/ProcessF.cpp +3 -3
  321. data/ext/ice/cpp/src/Ice/Properties.cpp +6 -4
  322. data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +89 -54
  323. data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +1 -1
  324. data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +1 -1
  325. data/ext/ice/cpp/src/Ice/PropertiesF.cpp +3 -3
  326. data/ext/ice/cpp/src/Ice/PropertiesI.cpp +15 -21
  327. data/ext/ice/cpp/src/Ice/PropertiesI.h +10 -10
  328. data/ext/ice/cpp/src/Ice/PropertyNames.cpp +4 -2
  329. data/ext/ice/cpp/src/Ice/PropertyNames.h +2 -2
  330. data/ext/ice/cpp/src/Ice/Protocol.cpp +5 -13
  331. data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +1 -1
  332. data/ext/ice/cpp/src/Ice/ProtocolInstance.h +1 -1
  333. data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +1 -1
  334. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +1 -1
  335. data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +1 -1
  336. data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +1 -1
  337. data/ext/ice/cpp/src/Ice/Proxy.cpp +46 -1
  338. data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +1 -1
  339. data/ext/ice/cpp/src/Ice/ProxyFactory.h +1 -1
  340. data/ext/ice/cpp/src/Ice/Reference.cpp +56 -6
  341. data/ext/ice/cpp/src/Ice/Reference.h +13 -2
  342. data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +51 -90
  343. data/ext/ice/cpp/src/Ice/ReferenceFactory.h +1 -1
  344. data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +1 -1
  345. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.cpp +1 -1
  346. data/ext/ice/cpp/src/Ice/RegisterPluginsInit.h +1 -1
  347. data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +203 -117
  348. data/ext/ice/cpp/src/Ice/ReplyStatus.h +1 -1
  349. data/ext/ice/cpp/src/Ice/RequestHandler.cpp +1 -1
  350. data/ext/ice/cpp/src/Ice/RequestHandler.h +1 -1
  351. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +1 -1
  352. data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +1 -1
  353. data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +1 -1
  354. data/ext/ice/cpp/src/Ice/ResponseHandler.h +1 -1
  355. data/ext/ice/cpp/src/Ice/RetryQueue.cpp +1 -1
  356. data/ext/ice/cpp/src/Ice/RetryQueue.h +1 -1
  357. data/ext/ice/cpp/src/Ice/RetryQueueF.h +1 -1
  358. data/ext/ice/cpp/src/Ice/Router.cpp +167 -89
  359. data/ext/ice/cpp/src/Ice/RouterF.cpp +3 -3
  360. data/ext/ice/cpp/src/Ice/RouterInfo.cpp +6 -28
  361. data/ext/ice/cpp/src/Ice/RouterInfo.h +1 -3
  362. data/ext/ice/cpp/src/Ice/RouterInfoF.h +1 -1
  363. data/ext/ice/cpp/src/Ice/SHA1.cpp +1 -1
  364. data/ext/ice/cpp/src/Ice/Selector.cpp +19 -26
  365. data/ext/ice/cpp/src/Ice/Selector.h +1 -1
  366. data/ext/ice/cpp/src/Ice/ServantLocator.cpp +6 -4
  367. data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +3 -3
  368. data/ext/ice/cpp/src/Ice/ServantManager.cpp +15 -31
  369. data/ext/ice/cpp/src/Ice/ServantManager.h +1 -1
  370. data/ext/ice/cpp/src/Ice/SharedContext.h +1 -1
  371. data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +3 -3
  372. data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +1 -1
  373. data/ext/ice/cpp/src/Ice/SlicedData.cpp +1 -1
  374. data/ext/ice/cpp/src/Ice/StreamSocket.cpp +32 -52
  375. data/ext/ice/cpp/src/Ice/StreamSocket.h +1 -1
  376. data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +10 -1
  377. data/ext/ice/cpp/src/Ice/StringUtil.h +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 +5 -13
  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 +8 -11
  385. data/ext/ice/cpp/src/Ice/TcpEndpointI.h +2 -2
  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/Thread.cpp +1 -1
  389. data/ext/ice/cpp/src/Ice/ThreadPool.cpp +13 -13
  390. data/ext/ice/cpp/src/Ice/ThreadPool.h +1 -1
  391. data/ext/ice/cpp/src/Ice/Timer.cpp +1 -1
  392. data/ext/ice/cpp/src/Ice/TraceLevels.cpp +1 -1
  393. data/ext/ice/cpp/src/Ice/TraceLevels.h +1 -1
  394. data/ext/ice/cpp/src/Ice/TraceLevelsF.h +1 -1
  395. data/ext/ice/cpp/src/Ice/TraceUtil.cpp +1 -1
  396. data/ext/ice/cpp/src/Ice/TraceUtil.h +1 -1
  397. data/ext/ice/cpp/src/Ice/Transceiver.cpp +1 -1
  398. data/ext/ice/cpp/src/Ice/Transceiver.h +1 -1
  399. data/ext/ice/cpp/src/Ice/TransceiverF.h +1 -1
  400. data/ext/ice/cpp/src/Ice/UdpConnector.cpp +1 -1
  401. data/ext/ice/cpp/src/Ice/UdpConnector.h +1 -1
  402. data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +19 -27
  403. data/ext/ice/cpp/src/Ice/UdpEndpointI.h +2 -2
  404. data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +17 -54
  405. data/ext/ice/cpp/src/Ice/UdpTransceiver.h +1 -1
  406. data/ext/ice/cpp/src/Ice/Value.cpp +1 -1
  407. data/ext/ice/cpp/src/Ice/ValueFactory.cpp +9 -5
  408. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.cpp +3 -6
  409. data/ext/ice/cpp/src/Ice/ValueFactoryManagerI.h +2 -2
  410. data/ext/ice/cpp/src/Ice/Version.cpp +3 -3
  411. data/ext/ice/cpp/src/Ice/VirtualShared.h +1 -1
  412. data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +1 -1
  413. data/ext/ice/cpp/src/Ice/WSAcceptor.h +1 -1
  414. data/ext/ice/cpp/src/Ice/WSConnector.cpp +1 -1
  415. data/ext/ice/cpp/src/Ice/WSConnector.h +1 -1
  416. data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +4 -5
  417. data/ext/ice/cpp/src/Ice/WSEndpoint.h +2 -2
  418. data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +8 -9
  419. data/ext/ice/cpp/src/Ice/WSTransceiver.h +1 -1
  420. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +85 -27
  421. data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +599 -113
  422. data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +1 -1
  423. data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +1 -1
  424. data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +1 -1
  425. data/ext/ice/cpp/src/IceDiscovery/LookupI.h +1 -1
  426. data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +1 -1
  427. data/ext/ice/cpp/src/IceDiscovery/PluginI.h +1 -1
  428. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +70 -24
  429. data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +635 -69
  430. data/ext/ice/cpp/src/IceLocatorDiscovery/Plugin.h +1 -1
  431. data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +71 -9
  432. data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +2 -4
  433. data/ext/ice/cpp/src/IceSSL/AcceptorI.h +1 -1
  434. data/ext/ice/cpp/src/IceSSL/CertificateI.cpp +1 -1
  435. data/ext/ice/cpp/src/IceSSL/CertificateI.h +1 -1
  436. data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +6 -4
  437. data/ext/ice/cpp/src/IceSSL/ConnectionInfoF.cpp +3 -3
  438. data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +2 -4
  439. data/ext/ice/cpp/src/IceSSL/ConnectorI.h +1 -1
  440. data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +2 -2
  441. data/ext/ice/cpp/src/IceSSL/EndpointI.h +2 -2
  442. data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +6 -4
  443. data/ext/ice/cpp/src/IceSSL/Instance.cpp +1 -1
  444. data/ext/ice/cpp/src/IceSSL/Instance.h +1 -1
  445. data/ext/ice/cpp/src/IceSSL/InstanceF.h +1 -1
  446. data/ext/ice/cpp/src/IceSSL/OpenSSLCertificateI.cpp +1 -1
  447. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +1 -1
  448. data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.h +1 -1
  449. data/ext/ice/cpp/src/IceSSL/OpenSSLEngineF.h +1 -1
  450. data/ext/ice/cpp/src/IceSSL/OpenSSLPluginI.cpp +1 -1
  451. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +25 -62
  452. data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +1 -1
  453. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.cpp +1 -1
  454. data/ext/ice/cpp/src/IceSSL/OpenSSLUtil.h +1 -1
  455. data/ext/ice/cpp/src/IceSSL/PluginI.cpp +1 -1
  456. data/ext/ice/cpp/src/IceSSL/PluginI.h +1 -1
  457. data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +1 -1
  458. data/ext/ice/cpp/src/IceSSL/RFC2253.h +1 -1
  459. data/ext/ice/cpp/src/IceSSL/SChannelCertificateI.cpp +1 -1
  460. data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +1 -1
  461. data/ext/ice/cpp/src/IceSSL/SChannelEngine.h +1 -1
  462. data/ext/ice/cpp/src/IceSSL/SChannelEngineF.h +1 -1
  463. data/ext/ice/cpp/src/IceSSL/SChannelPluginI.cpp +1 -1
  464. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +19 -27
  465. data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +1 -1
  466. data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +7 -16
  467. data/ext/ice/cpp/src/IceSSL/SSLEngine.h +1 -1
  468. data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +1 -1
  469. data/ext/ice/cpp/src/IceSSL/SecureTransportCertificateI.cpp +1 -1
  470. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +1 -1
  471. data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.h +1 -1
  472. data/ext/ice/cpp/src/IceSSL/SecureTransportEngineF.h +1 -1
  473. data/ext/ice/cpp/src/IceSSL/SecureTransportPluginI.cpp +1 -1
  474. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +1 -1
  475. data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +1 -1
  476. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.cpp +7 -10
  477. data/ext/ice/cpp/src/IceSSL/SecureTransportUtil.h +1 -1
  478. data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +4 -5
  479. data/ext/ice/cpp/src/IceSSL/TrustManager.h +1 -1
  480. data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +1 -1
  481. data/ext/ice/cpp/src/IceSSL/UWPCertificateI.cpp +1 -1
  482. data/ext/ice/cpp/src/IceSSL/UWPEngine.cpp +1 -1
  483. data/ext/ice/cpp/src/IceSSL/UWPEngine.h +1 -1
  484. data/ext/ice/cpp/src/IceSSL/UWPEngineF.h +1 -1
  485. data/ext/ice/cpp/src/IceSSL/UWPPluginI.cpp +1 -1
  486. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.cpp +1 -1
  487. data/ext/ice/cpp/src/IceSSL/UWPTransceiverI.h +1 -1
  488. data/ext/ice/cpp/src/IceSSL/Util.cpp +1 -1
  489. data/ext/ice/cpp/src/IceSSL/Util.h +1 -1
  490. data/ext/ice/cpp/src/IceUtil/ConsoleUtil.cpp +1 -1
  491. data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +1 -1
  492. data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +1 -1
  493. data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +1 -1
  494. data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +5 -5
  495. data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +1 -1
  496. data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +1 -1
  497. data/ext/ice/cpp/src/IceUtil/Options.cpp +1 -1
  498. data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +1 -1
  499. data/ext/ice/cpp/src/IceUtil/Random.cpp +1 -1
  500. data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +1 -5
  501. data/ext/ice/cpp/src/IceUtil/Shared.cpp +1 -1
  502. data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +1 -1
  503. data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +1 -1
  504. data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +1 -1
  505. data/ext/ice/cpp/src/IceUtil/Time.cpp +1 -1
  506. data/ext/ice/cpp/src/IceUtil/UUID.cpp +3 -3
  507. data/ext/ice/cpp/src/IceUtil/Unicode.cpp +1 -1
  508. data/ext/ice/cpp/src/IceUtil/Unicode.h +1 -1
  509. data/ext/ice/cpp/src/IceUtil/UtilException.cpp +1 -1
  510. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +160 -150
  511. data/ext/ice/cpp/src/Slice/CPlusPlusUtil.h +9 -8
  512. data/ext/ice/cpp/src/Slice/Checksum.cpp +1 -1
  513. data/ext/ice/cpp/src/Slice/Checksum.h +1 -1
  514. data/ext/ice/cpp/src/Slice/FileTracker.cpp +1 -1
  515. data/ext/ice/cpp/src/Slice/FileTracker.h +1 -1
  516. data/ext/ice/cpp/src/Slice/Grammar.cpp +567 -585
  517. data/ext/ice/cpp/src/Slice/Grammar.h +2 -2
  518. data/ext/ice/cpp/src/Slice/GrammarUtil.h +1 -1
  519. data/ext/ice/cpp/src/Slice/JavaUtil.cpp +131 -47
  520. data/ext/ice/cpp/src/Slice/JavaUtil.h +10 -5
  521. data/ext/ice/cpp/src/Slice/MD5.cpp +1 -1
  522. data/ext/ice/cpp/src/Slice/MD5.h +1 -1
  523. data/ext/ice/cpp/src/Slice/PHPUtil.cpp +1 -1
  524. data/ext/ice/cpp/src/Slice/PHPUtil.h +1 -1
  525. data/ext/ice/cpp/src/Slice/Parser.cpp +383 -101
  526. data/ext/ice/cpp/src/Slice/Parser.h +40 -3
  527. data/ext/ice/cpp/src/Slice/Preprocessor.cpp +2 -1
  528. data/ext/ice/cpp/src/Slice/Preprocessor.h +2 -2
  529. data/ext/ice/cpp/src/Slice/Python.cpp +7 -15
  530. data/ext/ice/cpp/src/Slice/PythonUtil.cpp +66 -9
  531. data/ext/ice/cpp/src/Slice/PythonUtil.h +2 -2
  532. data/ext/ice/cpp/src/Slice/Ruby.cpp +1 -1
  533. data/ext/ice/cpp/src/Slice/RubyUtil.cpp +2 -2
  534. data/ext/ice/cpp/src/Slice/RubyUtil.h +1 -1
  535. data/ext/ice/cpp/src/Slice/Scanner.cpp +214 -135
  536. data/ext/ice/cpp/src/Slice/SliceUtil.cpp +1 -1
  537. data/ext/ice/cpp/src/Slice/StringLiteralUtil.cpp +99 -17
  538. data/ext/ice/cpp/src/Slice/Util.h +5 -4
  539. data/ice.gemspec +2 -2
  540. data/lib/Glacier2.rb +1 -1
  541. data/lib/Glacier2/Metrics.rb +2 -2
  542. data/lib/Glacier2/PermissionsVerifier.rb +2 -2
  543. data/lib/Glacier2/PermissionsVerifierF.rb +2 -2
  544. data/lib/Glacier2/Router.rb +2 -2
  545. data/lib/Glacier2/RouterF.rb +2 -2
  546. data/lib/Glacier2/SSLInfo.rb +2 -2
  547. data/lib/Glacier2/Session.rb +2 -2
  548. data/lib/Ice.rb +2 -2
  549. data/lib/Ice/BuiltinSequences.rb +2 -2
  550. data/lib/Ice/Communicator.rb +2 -2
  551. data/lib/Ice/CommunicatorF.rb +2 -2
  552. data/lib/Ice/Connection.rb +2 -2
  553. data/lib/Ice/ConnectionF.rb +2 -2
  554. data/lib/Ice/Current.rb +2 -2
  555. data/lib/Ice/Endpoint.rb +2 -2
  556. data/lib/Ice/EndpointF.rb +2 -2
  557. data/lib/Ice/EndpointTypes.rb +2 -2
  558. data/lib/Ice/FacetMap.rb +2 -2
  559. data/lib/Ice/Identity.rb +2 -2
  560. data/lib/Ice/ImplicitContext.rb +2 -2
  561. data/lib/Ice/ImplicitContextF.rb +2 -2
  562. data/lib/Ice/Instrumentation.rb +2 -2
  563. data/lib/Ice/InstrumentationF.rb +2 -2
  564. data/lib/Ice/LocalException.rb +2 -2
  565. data/lib/Ice/Locator.rb +2 -2
  566. data/lib/Ice/LocatorF.rb +2 -2
  567. data/lib/Ice/Logger.rb +2 -2
  568. data/lib/Ice/LoggerF.rb +2 -2
  569. data/lib/Ice/Metrics.rb +2 -2
  570. data/lib/Ice/ObjectAdapter.rb +2 -2
  571. data/lib/Ice/ObjectAdapterF.rb +2 -2
  572. data/lib/Ice/ObjectFactory.rb +2 -2
  573. data/lib/Ice/Plugin.rb +2 -2
  574. data/lib/Ice/PluginF.rb +2 -2
  575. data/lib/Ice/Process.rb +2 -2
  576. data/lib/Ice/ProcessF.rb +2 -2
  577. data/lib/Ice/Properties.rb +2 -2
  578. data/lib/Ice/PropertiesAdmin.rb +2 -2
  579. data/lib/Ice/PropertiesF.rb +2 -2
  580. data/lib/Ice/RemoteLogger.rb +2 -2
  581. data/lib/Ice/Router.rb +2 -2
  582. data/lib/Ice/RouterF.rb +2 -2
  583. data/lib/Ice/ServantLocator.rb +2 -2
  584. data/lib/Ice/ServantLocatorF.rb +2 -2
  585. data/lib/Ice/SliceChecksumDict.rb +2 -2
  586. data/lib/Ice/ValueFactory.rb +2 -2
  587. data/lib/Ice/Version.rb +2 -2
  588. data/lib/IceBox.rb +1 -1
  589. data/lib/IceBox/IceBox.rb +2 -2
  590. data/lib/IceGrid.rb +1 -1
  591. data/lib/IceGrid/Admin.rb +2 -2
  592. data/lib/IceGrid/Descriptor.rb +2 -2
  593. data/lib/IceGrid/Exception.rb +2 -2
  594. data/lib/IceGrid/FileParser.rb +2 -2
  595. data/lib/IceGrid/PluginFacade.rb +2 -2
  596. data/lib/IceGrid/Registry.rb +2 -2
  597. data/lib/IceGrid/Session.rb +2 -2
  598. data/lib/IceGrid/UserAccountMapper.rb +2 -2
  599. data/lib/IcePatch2.rb +1 -1
  600. data/lib/IcePatch2/FileInfo.rb +2 -2
  601. data/lib/IcePatch2/FileServer.rb +2 -2
  602. data/lib/IceStorm.rb +1 -1
  603. data/lib/IceStorm/IceStorm.rb +2 -2
  604. data/lib/IceStorm/Metrics.rb +2 -2
  605. data/slice/Glacier2/Metrics.ice +2 -2
  606. data/slice/Glacier2/PermissionsVerifier.ice +2 -2
  607. data/slice/Glacier2/PermissionsVerifierF.ice +2 -2
  608. data/slice/Glacier2/Router.ice +2 -2
  609. data/slice/Glacier2/RouterF.ice +2 -2
  610. data/slice/Glacier2/SSLInfo.ice +2 -2
  611. data/slice/Glacier2/Session.ice +2 -2
  612. data/slice/Ice/BuiltinSequences.ice +2 -2
  613. data/slice/Ice/Communicator.ice +66 -73
  614. data/slice/Ice/CommunicatorF.ice +2 -2
  615. data/slice/Ice/Connection.ice +47 -17
  616. data/slice/Ice/ConnectionF.ice +2 -2
  617. data/slice/Ice/Current.ice +4 -5
  618. data/slice/Ice/Endpoint.ice +16 -16
  619. data/slice/Ice/EndpointF.ice +2 -2
  620. data/slice/Ice/EndpointTypes.ice +2 -2
  621. data/slice/Ice/FacetMap.ice +2 -2
  622. data/slice/Ice/Identity.ice +2 -2
  623. data/slice/Ice/ImplicitContext.ice +6 -6
  624. data/slice/Ice/ImplicitContextF.ice +2 -2
  625. data/slice/Ice/Instrumentation.ice +2 -2
  626. data/slice/Ice/InstrumentationF.ice +2 -2
  627. data/slice/Ice/LocalException.ice +2 -2
  628. data/slice/Ice/Locator.ice +3 -3
  629. data/slice/Ice/LocatorF.ice +2 -2
  630. data/slice/Ice/Logger.ice +2 -2
  631. data/slice/Ice/LoggerF.ice +2 -2
  632. data/slice/Ice/Metrics.ice +2 -2
  633. data/slice/Ice/ObjectAdapter.ice +10 -10
  634. data/slice/Ice/ObjectAdapterF.ice +2 -2
  635. data/slice/Ice/ObjectFactory.ice +3 -3
  636. data/slice/Ice/Plugin.ice +4 -4
  637. data/slice/Ice/PluginF.ice +2 -2
  638. data/slice/Ice/Process.ice +2 -2
  639. data/slice/Ice/ProcessF.ice +2 -2
  640. data/slice/Ice/Properties.ice +11 -11
  641. data/slice/Ice/PropertiesAdmin.ice +2 -2
  642. data/slice/Ice/PropertiesF.ice +2 -2
  643. data/slice/Ice/RemoteLogger.ice +12 -23
  644. data/slice/Ice/Router.ice +2 -2
  645. data/slice/Ice/RouterF.ice +2 -2
  646. data/slice/Ice/ServantLocator.ice +2 -2
  647. data/slice/Ice/ServantLocatorF.ice +2 -2
  648. data/slice/Ice/SliceChecksumDict.ice +2 -2
  649. data/slice/Ice/ValueFactory.ice +14 -16
  650. data/slice/Ice/Version.ice +2 -2
  651. data/slice/IceBT/ConnectionInfo.ice +2 -2
  652. data/slice/IceBT/EndpointInfo.ice +2 -2
  653. data/slice/IceBT/Types.ice +2 -2
  654. data/slice/IceBox/IceBox.ice +3 -4
  655. data/slice/IceDiscovery/IceDiscovery.ice +2 -2
  656. data/slice/IceGrid/Admin.ice +2 -2
  657. data/slice/IceGrid/Descriptor.ice +2 -2
  658. data/slice/IceGrid/Exception.ice +2 -2
  659. data/slice/IceGrid/FileParser.ice +2 -2
  660. data/slice/IceGrid/PluginFacade.ice +6 -6
  661. data/slice/IceGrid/Registry.ice +2 -2
  662. data/slice/IceGrid/Session.ice +2 -2
  663. data/slice/IceGrid/UserAccountMapper.ice +2 -2
  664. data/slice/IceIAP/ConnectionInfo.ice +2 -2
  665. data/slice/IceIAP/EndpointInfo.ice +2 -2
  666. data/slice/IceLocatorDiscovery/IceLocatorDiscovery.ice +2 -2
  667. data/slice/IcePatch2/FileInfo.ice +2 -2
  668. data/slice/IcePatch2/FileServer.ice +2 -2
  669. data/slice/IceSSL/ConnectionInfo.ice +2 -2
  670. data/slice/IceSSL/ConnectionInfoF.ice +2 -2
  671. data/slice/IceSSL/EndpointInfo.ice +2 -2
  672. data/slice/IceStorm/IceStorm.ice +5 -6
  673. data/slice/IceStorm/Metrics.ice +2 -2
  674. metadata +3 -13
  675. data/BZIP2_LICENSE +0 -42
  676. data/ext/ice/bzip2/blocksort.c +0 -1094
  677. data/ext/ice/bzip2/bzlib.c +0 -1572
  678. data/ext/ice/bzip2/bzlib.h +0 -282
  679. data/ext/ice/bzip2/bzlib_private.h +0 -509
  680. data/ext/ice/bzip2/compress.c +0 -672
  681. data/ext/ice/bzip2/crctable.c +0 -104
  682. data/ext/ice/bzip2/decompress.c +0 -646
  683. data/ext/ice/bzip2/huffman.c +0 -205
  684. data/ext/ice/bzip2/randtable.c +0 -84
@@ -1,104 +0,0 @@
1
-
2
- /*-------------------------------------------------------------*/
3
- /*--- Table for doing CRCs ---*/
4
- /*--- crctable.c ---*/
5
- /*-------------------------------------------------------------*/
6
-
7
- /* ------------------------------------------------------------------
8
- This file is part of bzip2/libbzip2, a program and library for
9
- lossless, block-sorting data compression.
10
-
11
- bzip2/libbzip2 version 1.0.6 of 6 September 2010
12
- Copyright (C) 1996-2010 Julian Seward <jseward@bzip.org>
13
-
14
- Please read the WARNING, DISCLAIMER and PATENTS sections in the
15
- README file.
16
-
17
- This program is released under the terms of the license contained
18
- in the file LICENSE.
19
- ------------------------------------------------------------------ */
20
-
21
-
22
- #include "bzlib_private.h"
23
-
24
- /*--
25
- I think this is an implementation of the AUTODIN-II,
26
- Ethernet & FDDI 32-bit CRC standard. Vaguely derived
27
- from code by Rob Warnock, in Section 51 of the
28
- comp.compression FAQ.
29
- --*/
30
-
31
- UInt32 BZ2_crc32Table[256] = {
32
-
33
- /*-- Ugly, innit? --*/
34
-
35
- 0x00000000L, 0x04c11db7L, 0x09823b6eL, 0x0d4326d9L,
36
- 0x130476dcL, 0x17c56b6bL, 0x1a864db2L, 0x1e475005L,
37
- 0x2608edb8L, 0x22c9f00fL, 0x2f8ad6d6L, 0x2b4bcb61L,
38
- 0x350c9b64L, 0x31cd86d3L, 0x3c8ea00aL, 0x384fbdbdL,
39
- 0x4c11db70L, 0x48d0c6c7L, 0x4593e01eL, 0x4152fda9L,
40
- 0x5f15adacL, 0x5bd4b01bL, 0x569796c2L, 0x52568b75L,
41
- 0x6a1936c8L, 0x6ed82b7fL, 0x639b0da6L, 0x675a1011L,
42
- 0x791d4014L, 0x7ddc5da3L, 0x709f7b7aL, 0x745e66cdL,
43
- 0x9823b6e0L, 0x9ce2ab57L, 0x91a18d8eL, 0x95609039L,
44
- 0x8b27c03cL, 0x8fe6dd8bL, 0x82a5fb52L, 0x8664e6e5L,
45
- 0xbe2b5b58L, 0xbaea46efL, 0xb7a96036L, 0xb3687d81L,
46
- 0xad2f2d84L, 0xa9ee3033L, 0xa4ad16eaL, 0xa06c0b5dL,
47
- 0xd4326d90L, 0xd0f37027L, 0xddb056feL, 0xd9714b49L,
48
- 0xc7361b4cL, 0xc3f706fbL, 0xceb42022L, 0xca753d95L,
49
- 0xf23a8028L, 0xf6fb9d9fL, 0xfbb8bb46L, 0xff79a6f1L,
50
- 0xe13ef6f4L, 0xe5ffeb43L, 0xe8bccd9aL, 0xec7dd02dL,
51
- 0x34867077L, 0x30476dc0L, 0x3d044b19L, 0x39c556aeL,
52
- 0x278206abL, 0x23431b1cL, 0x2e003dc5L, 0x2ac12072L,
53
- 0x128e9dcfL, 0x164f8078L, 0x1b0ca6a1L, 0x1fcdbb16L,
54
- 0x018aeb13L, 0x054bf6a4L, 0x0808d07dL, 0x0cc9cdcaL,
55
- 0x7897ab07L, 0x7c56b6b0L, 0x71159069L, 0x75d48ddeL,
56
- 0x6b93dddbL, 0x6f52c06cL, 0x6211e6b5L, 0x66d0fb02L,
57
- 0x5e9f46bfL, 0x5a5e5b08L, 0x571d7dd1L, 0x53dc6066L,
58
- 0x4d9b3063L, 0x495a2dd4L, 0x44190b0dL, 0x40d816baL,
59
- 0xaca5c697L, 0xa864db20L, 0xa527fdf9L, 0xa1e6e04eL,
60
- 0xbfa1b04bL, 0xbb60adfcL, 0xb6238b25L, 0xb2e29692L,
61
- 0x8aad2b2fL, 0x8e6c3698L, 0x832f1041L, 0x87ee0df6L,
62
- 0x99a95df3L, 0x9d684044L, 0x902b669dL, 0x94ea7b2aL,
63
- 0xe0b41de7L, 0xe4750050L, 0xe9362689L, 0xedf73b3eL,
64
- 0xf3b06b3bL, 0xf771768cL, 0xfa325055L, 0xfef34de2L,
65
- 0xc6bcf05fL, 0xc27dede8L, 0xcf3ecb31L, 0xcbffd686L,
66
- 0xd5b88683L, 0xd1799b34L, 0xdc3abdedL, 0xd8fba05aL,
67
- 0x690ce0eeL, 0x6dcdfd59L, 0x608edb80L, 0x644fc637L,
68
- 0x7a089632L, 0x7ec98b85L, 0x738aad5cL, 0x774bb0ebL,
69
- 0x4f040d56L, 0x4bc510e1L, 0x46863638L, 0x42472b8fL,
70
- 0x5c007b8aL, 0x58c1663dL, 0x558240e4L, 0x51435d53L,
71
- 0x251d3b9eL, 0x21dc2629L, 0x2c9f00f0L, 0x285e1d47L,
72
- 0x36194d42L, 0x32d850f5L, 0x3f9b762cL, 0x3b5a6b9bL,
73
- 0x0315d626L, 0x07d4cb91L, 0x0a97ed48L, 0x0e56f0ffL,
74
- 0x1011a0faL, 0x14d0bd4dL, 0x19939b94L, 0x1d528623L,
75
- 0xf12f560eL, 0xf5ee4bb9L, 0xf8ad6d60L, 0xfc6c70d7L,
76
- 0xe22b20d2L, 0xe6ea3d65L, 0xeba91bbcL, 0xef68060bL,
77
- 0xd727bbb6L, 0xd3e6a601L, 0xdea580d8L, 0xda649d6fL,
78
- 0xc423cd6aL, 0xc0e2d0ddL, 0xcda1f604L, 0xc960ebb3L,
79
- 0xbd3e8d7eL, 0xb9ff90c9L, 0xb4bcb610L, 0xb07daba7L,
80
- 0xae3afba2L, 0xaafbe615L, 0xa7b8c0ccL, 0xa379dd7bL,
81
- 0x9b3660c6L, 0x9ff77d71L, 0x92b45ba8L, 0x9675461fL,
82
- 0x8832161aL, 0x8cf30badL, 0x81b02d74L, 0x857130c3L,
83
- 0x5d8a9099L, 0x594b8d2eL, 0x5408abf7L, 0x50c9b640L,
84
- 0x4e8ee645L, 0x4a4ffbf2L, 0x470cdd2bL, 0x43cdc09cL,
85
- 0x7b827d21L, 0x7f436096L, 0x7200464fL, 0x76c15bf8L,
86
- 0x68860bfdL, 0x6c47164aL, 0x61043093L, 0x65c52d24L,
87
- 0x119b4be9L, 0x155a565eL, 0x18197087L, 0x1cd86d30L,
88
- 0x029f3d35L, 0x065e2082L, 0x0b1d065bL, 0x0fdc1becL,
89
- 0x3793a651L, 0x3352bbe6L, 0x3e119d3fL, 0x3ad08088L,
90
- 0x2497d08dL, 0x2056cd3aL, 0x2d15ebe3L, 0x29d4f654L,
91
- 0xc5a92679L, 0xc1683bceL, 0xcc2b1d17L, 0xc8ea00a0L,
92
- 0xd6ad50a5L, 0xd26c4d12L, 0xdf2f6bcbL, 0xdbee767cL,
93
- 0xe3a1cbc1L, 0xe760d676L, 0xea23f0afL, 0xeee2ed18L,
94
- 0xf0a5bd1dL, 0xf464a0aaL, 0xf9278673L, 0xfde69bc4L,
95
- 0x89b8fd09L, 0x8d79e0beL, 0x803ac667L, 0x84fbdbd0L,
96
- 0x9abc8bd5L, 0x9e7d9662L, 0x933eb0bbL, 0x97ffad0cL,
97
- 0xafb010b1L, 0xab710d06L, 0xa6322bdfL, 0xa2f33668L,
98
- 0xbcb4666dL, 0xb8757bdaL, 0xb5365d03L, 0xb1f740b4L
99
- };
100
-
101
-
102
- /*-------------------------------------------------------------*/
103
- /*--- end crctable.c ---*/
104
- /*-------------------------------------------------------------*/
@@ -1,646 +0,0 @@
1
-
2
- /*-------------------------------------------------------------*/
3
- /*--- Decompression machinery ---*/
4
- /*--- decompress.c ---*/
5
- /*-------------------------------------------------------------*/
6
-
7
- /* ------------------------------------------------------------------
8
- This file is part of bzip2/libbzip2, a program and library for
9
- lossless, block-sorting data compression.
10
-
11
- bzip2/libbzip2 version 1.0.6 of 6 September 2010
12
- Copyright (C) 1996-2010 Julian Seward <jseward@bzip.org>
13
-
14
- Please read the WARNING, DISCLAIMER and PATENTS sections in the
15
- README file.
16
-
17
- This program is released under the terms of the license contained
18
- in the file LICENSE.
19
- ------------------------------------------------------------------ */
20
-
21
-
22
- #include "bzlib_private.h"
23
-
24
-
25
- /*---------------------------------------------------*/
26
- static
27
- void makeMaps_d ( DState* s )
28
- {
29
- Int32 i;
30
- s->nInUse = 0;
31
- for (i = 0; i < 256; i++)
32
- if (s->inUse[i]) {
33
- s->seqToUnseq[s->nInUse] = i;
34
- s->nInUse++;
35
- }
36
- }
37
-
38
-
39
- /*---------------------------------------------------*/
40
- #define RETURN(rrr) \
41
- { retVal = rrr; goto save_state_and_return; };
42
-
43
- #define GET_BITS(lll,vvv,nnn) \
44
- case lll: s->state = lll; \
45
- while (True) { \
46
- if (s->bsLive >= nnn) { \
47
- UInt32 v; \
48
- v = (s->bsBuff >> \
49
- (s->bsLive-nnn)) & ((1 << nnn)-1); \
50
- s->bsLive -= nnn; \
51
- vvv = v; \
52
- break; \
53
- } \
54
- if (s->strm->avail_in == 0) RETURN(BZ_OK); \
55
- s->bsBuff \
56
- = (s->bsBuff << 8) | \
57
- ((UInt32) \
58
- (*((UChar*)(s->strm->next_in)))); \
59
- s->bsLive += 8; \
60
- s->strm->next_in++; \
61
- s->strm->avail_in--; \
62
- s->strm->total_in_lo32++; \
63
- if (s->strm->total_in_lo32 == 0) \
64
- s->strm->total_in_hi32++; \
65
- }
66
-
67
- #define GET_UCHAR(lll,uuu) \
68
- GET_BITS(lll,uuu,8)
69
-
70
- #define GET_BIT(lll,uuu) \
71
- GET_BITS(lll,uuu,1)
72
-
73
- /*---------------------------------------------------*/
74
- #define GET_MTF_VAL(label1,label2,lval) \
75
- { \
76
- if (groupPos == 0) { \
77
- groupNo++; \
78
- if (groupNo >= nSelectors) \
79
- RETURN(BZ_DATA_ERROR); \
80
- groupPos = BZ_G_SIZE; \
81
- gSel = s->selector[groupNo]; \
82
- gMinlen = s->minLens[gSel]; \
83
- gLimit = &(s->limit[gSel][0]); \
84
- gPerm = &(s->perm[gSel][0]); \
85
- gBase = &(s->base[gSel][0]); \
86
- } \
87
- groupPos--; \
88
- zn = gMinlen; \
89
- GET_BITS(label1, zvec, zn); \
90
- while (1) { \
91
- if (zn > 20 /* the longest code */) \
92
- RETURN(BZ_DATA_ERROR); \
93
- if (zvec <= gLimit[zn]) break; \
94
- zn++; \
95
- GET_BIT(label2, zj); \
96
- zvec = (zvec << 1) | zj; \
97
- }; \
98
- if (zvec - gBase[zn] < 0 \
99
- || zvec - gBase[zn] >= BZ_MAX_ALPHA_SIZE) \
100
- RETURN(BZ_DATA_ERROR); \
101
- lval = gPerm[zvec - gBase[zn]]; \
102
- }
103
-
104
-
105
- /*---------------------------------------------------*/
106
- Int32 BZ2_decompress ( DState* s )
107
- {
108
- UChar uc;
109
- Int32 retVal;
110
- Int32 minLen, maxLen;
111
- bz_stream* strm = s->strm;
112
-
113
- /* stuff that needs to be saved/restored */
114
- Int32 i;
115
- Int32 j;
116
- Int32 t;
117
- Int32 alphaSize;
118
- Int32 nGroups;
119
- Int32 nSelectors;
120
- Int32 EOB;
121
- Int32 groupNo;
122
- Int32 groupPos;
123
- Int32 nextSym;
124
- Int32 nblockMAX;
125
- Int32 nblock;
126
- Int32 es;
127
- Int32 N;
128
- Int32 curr;
129
- Int32 zt;
130
- Int32 zn;
131
- Int32 zvec;
132
- Int32 zj;
133
- Int32 gSel;
134
- Int32 gMinlen;
135
- Int32* gLimit;
136
- Int32* gBase;
137
- Int32* gPerm;
138
-
139
- if (s->state == BZ_X_MAGIC_1) {
140
- /*initialise the save area*/
141
- s->save_i = 0;
142
- s->save_j = 0;
143
- s->save_t = 0;
144
- s->save_alphaSize = 0;
145
- s->save_nGroups = 0;
146
- s->save_nSelectors = 0;
147
- s->save_EOB = 0;
148
- s->save_groupNo = 0;
149
- s->save_groupPos = 0;
150
- s->save_nextSym = 0;
151
- s->save_nblockMAX = 0;
152
- s->save_nblock = 0;
153
- s->save_es = 0;
154
- s->save_N = 0;
155
- s->save_curr = 0;
156
- s->save_zt = 0;
157
- s->save_zn = 0;
158
- s->save_zvec = 0;
159
- s->save_zj = 0;
160
- s->save_gSel = 0;
161
- s->save_gMinlen = 0;
162
- s->save_gLimit = NULL;
163
- s->save_gBase = NULL;
164
- s->save_gPerm = NULL;
165
- }
166
-
167
- /*restore from the save area*/
168
- i = s->save_i;
169
- j = s->save_j;
170
- t = s->save_t;
171
- alphaSize = s->save_alphaSize;
172
- nGroups = s->save_nGroups;
173
- nSelectors = s->save_nSelectors;
174
- EOB = s->save_EOB;
175
- groupNo = s->save_groupNo;
176
- groupPos = s->save_groupPos;
177
- nextSym = s->save_nextSym;
178
- nblockMAX = s->save_nblockMAX;
179
- nblock = s->save_nblock;
180
- es = s->save_es;
181
- N = s->save_N;
182
- curr = s->save_curr;
183
- zt = s->save_zt;
184
- zn = s->save_zn;
185
- zvec = s->save_zvec;
186
- zj = s->save_zj;
187
- gSel = s->save_gSel;
188
- gMinlen = s->save_gMinlen;
189
- gLimit = s->save_gLimit;
190
- gBase = s->save_gBase;
191
- gPerm = s->save_gPerm;
192
-
193
- retVal = BZ_OK;
194
-
195
- switch (s->state) {
196
-
197
- GET_UCHAR(BZ_X_MAGIC_1, uc);
198
- if (uc != BZ_HDR_B) RETURN(BZ_DATA_ERROR_MAGIC);
199
-
200
- GET_UCHAR(BZ_X_MAGIC_2, uc);
201
- if (uc != BZ_HDR_Z) RETURN(BZ_DATA_ERROR_MAGIC);
202
-
203
- GET_UCHAR(BZ_X_MAGIC_3, uc)
204
- if (uc != BZ_HDR_h) RETURN(BZ_DATA_ERROR_MAGIC);
205
-
206
- GET_BITS(BZ_X_MAGIC_4, s->blockSize100k, 8)
207
- if (s->blockSize100k < (BZ_HDR_0 + 1) ||
208
- s->blockSize100k > (BZ_HDR_0 + 9)) RETURN(BZ_DATA_ERROR_MAGIC);
209
- s->blockSize100k -= BZ_HDR_0;
210
-
211
- if (s->smallDecompress) {
212
- s->ll16 = BZALLOC( s->blockSize100k * 100000 * sizeof(UInt16) );
213
- s->ll4 = BZALLOC(
214
- ((1 + s->blockSize100k * 100000) >> 1) * sizeof(UChar)
215
- );
216
- if (s->ll16 == NULL || s->ll4 == NULL) RETURN(BZ_MEM_ERROR);
217
- } else {
218
- s->tt = BZALLOC( s->blockSize100k * 100000 * sizeof(Int32) );
219
- if (s->tt == NULL) RETURN(BZ_MEM_ERROR);
220
- }
221
-
222
- GET_UCHAR(BZ_X_BLKHDR_1, uc);
223
-
224
- if (uc == 0x17) goto endhdr_2;
225
- if (uc != 0x31) RETURN(BZ_DATA_ERROR);
226
- GET_UCHAR(BZ_X_BLKHDR_2, uc);
227
- if (uc != 0x41) RETURN(BZ_DATA_ERROR);
228
- GET_UCHAR(BZ_X_BLKHDR_3, uc);
229
- if (uc != 0x59) RETURN(BZ_DATA_ERROR);
230
- GET_UCHAR(BZ_X_BLKHDR_4, uc);
231
- if (uc != 0x26) RETURN(BZ_DATA_ERROR);
232
- GET_UCHAR(BZ_X_BLKHDR_5, uc);
233
- if (uc != 0x53) RETURN(BZ_DATA_ERROR);
234
- GET_UCHAR(BZ_X_BLKHDR_6, uc);
235
- if (uc != 0x59) RETURN(BZ_DATA_ERROR);
236
-
237
- s->currBlockNo++;
238
- if (s->verbosity >= 2)
239
- VPrintf1 ( "\n [%d: huff+mtf ", s->currBlockNo );
240
-
241
- s->storedBlockCRC = 0;
242
- GET_UCHAR(BZ_X_BCRC_1, uc);
243
- s->storedBlockCRC = (s->storedBlockCRC << 8) | ((UInt32)uc);
244
- GET_UCHAR(BZ_X_BCRC_2, uc);
245
- s->storedBlockCRC = (s->storedBlockCRC << 8) | ((UInt32)uc);
246
- GET_UCHAR(BZ_X_BCRC_3, uc);
247
- s->storedBlockCRC = (s->storedBlockCRC << 8) | ((UInt32)uc);
248
- GET_UCHAR(BZ_X_BCRC_4, uc);
249
- s->storedBlockCRC = (s->storedBlockCRC << 8) | ((UInt32)uc);
250
-
251
- GET_BITS(BZ_X_RANDBIT, s->blockRandomised, 1);
252
-
253
- s->origPtr = 0;
254
- GET_UCHAR(BZ_X_ORIGPTR_1, uc);
255
- s->origPtr = (s->origPtr << 8) | ((Int32)uc);
256
- GET_UCHAR(BZ_X_ORIGPTR_2, uc);
257
- s->origPtr = (s->origPtr << 8) | ((Int32)uc);
258
- GET_UCHAR(BZ_X_ORIGPTR_3, uc);
259
- s->origPtr = (s->origPtr << 8) | ((Int32)uc);
260
-
261
- if (s->origPtr < 0)
262
- RETURN(BZ_DATA_ERROR);
263
- if (s->origPtr > 10 + 100000*s->blockSize100k)
264
- RETURN(BZ_DATA_ERROR);
265
-
266
- /*--- Receive the mapping table ---*/
267
- for (i = 0; i < 16; i++) {
268
- GET_BIT(BZ_X_MAPPING_1, uc);
269
- if (uc == 1)
270
- s->inUse16[i] = True; else
271
- s->inUse16[i] = False;
272
- }
273
-
274
- for (i = 0; i < 256; i++) s->inUse[i] = False;
275
-
276
- for (i = 0; i < 16; i++)
277
- if (s->inUse16[i])
278
- for (j = 0; j < 16; j++) {
279
- GET_BIT(BZ_X_MAPPING_2, uc);
280
- if (uc == 1) s->inUse[i * 16 + j] = True;
281
- }
282
- makeMaps_d ( s );
283
- if (s->nInUse == 0) RETURN(BZ_DATA_ERROR);
284
- alphaSize = s->nInUse+2;
285
-
286
- /*--- Now the selectors ---*/
287
- GET_BITS(BZ_X_SELECTOR_1, nGroups, 3);
288
- if (nGroups < 2 || nGroups > 6) RETURN(BZ_DATA_ERROR);
289
- GET_BITS(BZ_X_SELECTOR_2, nSelectors, 15);
290
- if (nSelectors < 1) RETURN(BZ_DATA_ERROR);
291
- for (i = 0; i < nSelectors; i++) {
292
- j = 0;
293
- while (True) {
294
- GET_BIT(BZ_X_SELECTOR_3, uc);
295
- if (uc == 0) break;
296
- j++;
297
- if (j >= nGroups) RETURN(BZ_DATA_ERROR);
298
- }
299
- s->selectorMtf[i] = j;
300
- }
301
-
302
- /*--- Undo the MTF values for the selectors. ---*/
303
- {
304
- UChar pos[BZ_N_GROUPS], tmp, v;
305
- for (v = 0; v < nGroups; v++) pos[v] = v;
306
-
307
- for (i = 0; i < nSelectors; i++) {
308
- v = s->selectorMtf[i];
309
- tmp = pos[v];
310
- while (v > 0) { pos[v] = pos[v-1]; v--; }
311
- pos[0] = tmp;
312
- s->selector[i] = tmp;
313
- }
314
- }
315
-
316
- /*--- Now the coding tables ---*/
317
- for (t = 0; t < nGroups; t++) {
318
- GET_BITS(BZ_X_CODING_1, curr, 5);
319
- for (i = 0; i < alphaSize; i++) {
320
- while (True) {
321
- if (curr < 1 || curr > 20) RETURN(BZ_DATA_ERROR);
322
- GET_BIT(BZ_X_CODING_2, uc);
323
- if (uc == 0) break;
324
- GET_BIT(BZ_X_CODING_3, uc);
325
- if (uc == 0) curr++; else curr--;
326
- }
327
- s->len[t][i] = curr;
328
- }
329
- }
330
-
331
- /*--- Create the Huffman decoding tables ---*/
332
- for (t = 0; t < nGroups; t++) {
333
- minLen = 32;
334
- maxLen = 0;
335
- for (i = 0; i < alphaSize; i++) {
336
- if (s->len[t][i] > maxLen) maxLen = s->len[t][i];
337
- if (s->len[t][i] < minLen) minLen = s->len[t][i];
338
- }
339
- BZ2_hbCreateDecodeTables (
340
- &(s->limit[t][0]),
341
- &(s->base[t][0]),
342
- &(s->perm[t][0]),
343
- &(s->len[t][0]),
344
- minLen, maxLen, alphaSize
345
- );
346
- s->minLens[t] = minLen;
347
- }
348
-
349
- /*--- Now the MTF values ---*/
350
-
351
- EOB = s->nInUse+1;
352
- nblockMAX = 100000 * s->blockSize100k;
353
- groupNo = -1;
354
- groupPos = 0;
355
-
356
- for (i = 0; i <= 255; i++) s->unzftab[i] = 0;
357
-
358
- /*-- MTF init --*/
359
- {
360
- Int32 ii, jj, kk;
361
- kk = MTFA_SIZE-1;
362
- for (ii = 256 / MTFL_SIZE - 1; ii >= 0; ii--) {
363
- for (jj = MTFL_SIZE-1; jj >= 0; jj--) {
364
- s->mtfa[kk] = (UChar)(ii * MTFL_SIZE + jj);
365
- kk--;
366
- }
367
- s->mtfbase[ii] = kk + 1;
368
- }
369
- }
370
- /*-- end MTF init --*/
371
-
372
- nblock = 0;
373
- GET_MTF_VAL(BZ_X_MTF_1, BZ_X_MTF_2, nextSym);
374
-
375
- while (True) {
376
-
377
- if (nextSym == EOB) break;
378
-
379
- if (nextSym == BZ_RUNA || nextSym == BZ_RUNB) {
380
-
381
- es = -1;
382
- N = 1;
383
- do {
384
- /* Check that N doesn't get too big, so that es doesn't
385
- go negative. The maximum value that can be
386
- RUNA/RUNB encoded is equal to the block size (post
387
- the initial RLE), viz, 900k, so bounding N at 2
388
- million should guard against overflow without
389
- rejecting any legitimate inputs. */
390
- if (N >= 2*1024*1024) RETURN(BZ_DATA_ERROR);
391
- if (nextSym == BZ_RUNA) es = es + (0+1) * N; else
392
- if (nextSym == BZ_RUNB) es = es + (1+1) * N;
393
- N = N * 2;
394
- GET_MTF_VAL(BZ_X_MTF_3, BZ_X_MTF_4, nextSym);
395
- }
396
- while (nextSym == BZ_RUNA || nextSym == BZ_RUNB);
397
-
398
- es++;
399
- uc = s->seqToUnseq[ s->mtfa[s->mtfbase[0]] ];
400
- s->unzftab[uc] += es;
401
-
402
- if (s->smallDecompress)
403
- while (es > 0) {
404
- if (nblock >= nblockMAX) RETURN(BZ_DATA_ERROR);
405
- s->ll16[nblock] = (UInt16)uc;
406
- nblock++;
407
- es--;
408
- }
409
- else
410
- while (es > 0) {
411
- if (nblock >= nblockMAX) RETURN(BZ_DATA_ERROR);
412
- s->tt[nblock] = (UInt32)uc;
413
- nblock++;
414
- es--;
415
- };
416
-
417
- continue;
418
-
419
- } else {
420
-
421
- if (nblock >= nblockMAX) RETURN(BZ_DATA_ERROR);
422
-
423
- /*-- uc = MTF ( nextSym-1 ) --*/
424
- {
425
- Int32 ii, jj, kk, pp, lno, off;
426
- UInt32 nn;
427
- nn = (UInt32)(nextSym - 1);
428
-
429
- if (nn < MTFL_SIZE) {
430
- /* avoid general-case expense */
431
- pp = s->mtfbase[0];
432
- uc = s->mtfa[pp+nn];
433
- while (nn > 3) {
434
- Int32 z = pp+nn;
435
- s->mtfa[(z) ] = s->mtfa[(z)-1];
436
- s->mtfa[(z)-1] = s->mtfa[(z)-2];
437
- s->mtfa[(z)-2] = s->mtfa[(z)-3];
438
- s->mtfa[(z)-3] = s->mtfa[(z)-4];
439
- nn -= 4;
440
- }
441
- while (nn > 0) {
442
- s->mtfa[(pp+nn)] = s->mtfa[(pp+nn)-1]; nn--;
443
- };
444
- s->mtfa[pp] = uc;
445
- } else {
446
- /* general case */
447
- lno = nn / MTFL_SIZE;
448
- off = nn % MTFL_SIZE;
449
- pp = s->mtfbase[lno] + off;
450
- uc = s->mtfa[pp];
451
- while (pp > s->mtfbase[lno]) {
452
- s->mtfa[pp] = s->mtfa[pp-1]; pp--;
453
- };
454
- s->mtfbase[lno]++;
455
- while (lno > 0) {
456
- s->mtfbase[lno]--;
457
- s->mtfa[s->mtfbase[lno]]
458
- = s->mtfa[s->mtfbase[lno-1] + MTFL_SIZE - 1];
459
- lno--;
460
- }
461
- s->mtfbase[0]--;
462
- s->mtfa[s->mtfbase[0]] = uc;
463
- if (s->mtfbase[0] == 0) {
464
- kk = MTFA_SIZE-1;
465
- for (ii = 256 / MTFL_SIZE-1; ii >= 0; ii--) {
466
- for (jj = MTFL_SIZE-1; jj >= 0; jj--) {
467
- s->mtfa[kk] = s->mtfa[s->mtfbase[ii] + jj];
468
- kk--;
469
- }
470
- s->mtfbase[ii] = kk + 1;
471
- }
472
- }
473
- }
474
- }
475
- /*-- end uc = MTF ( nextSym-1 ) --*/
476
-
477
- s->unzftab[s->seqToUnseq[uc]]++;
478
- if (s->smallDecompress)
479
- s->ll16[nblock] = (UInt16)(s->seqToUnseq[uc]); else
480
- s->tt[nblock] = (UInt32)(s->seqToUnseq[uc]);
481
- nblock++;
482
-
483
- GET_MTF_VAL(BZ_X_MTF_5, BZ_X_MTF_6, nextSym);
484
- continue;
485
- }
486
- }
487
-
488
- /* Now we know what nblock is, we can do a better sanity
489
- check on s->origPtr.
490
- */
491
- if (s->origPtr < 0 || s->origPtr >= nblock)
492
- RETURN(BZ_DATA_ERROR);
493
-
494
- /*-- Set up cftab to facilitate generation of T^(-1) --*/
495
- /* Check: unzftab entries in range. */
496
- for (i = 0; i <= 255; i++) {
497
- if (s->unzftab[i] < 0 || s->unzftab[i] > nblock)
498
- RETURN(BZ_DATA_ERROR);
499
- }
500
- /* Actually generate cftab. */
501
- s->cftab[0] = 0;
502
- for (i = 1; i <= 256; i++) s->cftab[i] = s->unzftab[i-1];
503
- for (i = 1; i <= 256; i++) s->cftab[i] += s->cftab[i-1];
504
- /* Check: cftab entries in range. */
505
- for (i = 0; i <= 256; i++) {
506
- if (s->cftab[i] < 0 || s->cftab[i] > nblock) {
507
- /* s->cftab[i] can legitimately be == nblock */
508
- RETURN(BZ_DATA_ERROR);
509
- }
510
- }
511
- /* Check: cftab entries non-descending. */
512
- for (i = 1; i <= 256; i++) {
513
- if (s->cftab[i-1] > s->cftab[i]) {
514
- RETURN(BZ_DATA_ERROR);
515
- }
516
- }
517
-
518
- s->state_out_len = 0;
519
- s->state_out_ch = 0;
520
- BZ_INITIALISE_CRC ( s->calculatedBlockCRC );
521
- s->state = BZ_X_OUTPUT;
522
- if (s->verbosity >= 2) VPrintf0 ( "rt+rld" );
523
-
524
- if (s->smallDecompress) {
525
-
526
- /*-- Make a copy of cftab, used in generation of T --*/
527
- for (i = 0; i <= 256; i++) s->cftabCopy[i] = s->cftab[i];
528
-
529
- /*-- compute the T vector --*/
530
- for (i = 0; i < nblock; i++) {
531
- uc = (UChar)(s->ll16[i]);
532
- SET_LL(i, s->cftabCopy[uc]);
533
- s->cftabCopy[uc]++;
534
- }
535
-
536
- /*-- Compute T^(-1) by pointer reversal on T --*/
537
- i = s->origPtr;
538
- j = GET_LL(i);
539
- do {
540
- Int32 tmp = GET_LL(j);
541
- SET_LL(j, i);
542
- i = j;
543
- j = tmp;
544
- }
545
- while (i != s->origPtr);
546
-
547
- s->tPos = s->origPtr;
548
- s->nblock_used = 0;
549
- if (s->blockRandomised) {
550
- BZ_RAND_INIT_MASK;
551
- BZ_GET_SMALL(s->k0); s->nblock_used++;
552
- BZ_RAND_UPD_MASK; s->k0 ^= BZ_RAND_MASK;
553
- } else {
554
- BZ_GET_SMALL(s->k0); s->nblock_used++;
555
- }
556
-
557
- } else {
558
-
559
- /*-- compute the T^(-1) vector --*/
560
- for (i = 0; i < nblock; i++) {
561
- uc = (UChar)(s->tt[i] & 0xff);
562
- s->tt[s->cftab[uc]] |= (i << 8);
563
- s->cftab[uc]++;
564
- }
565
-
566
- s->tPos = s->tt[s->origPtr] >> 8;
567
- s->nblock_used = 0;
568
- if (s->blockRandomised) {
569
- BZ_RAND_INIT_MASK;
570
- BZ_GET_FAST(s->k0); s->nblock_used++;
571
- BZ_RAND_UPD_MASK; s->k0 ^= BZ_RAND_MASK;
572
- } else {
573
- BZ_GET_FAST(s->k0); s->nblock_used++;
574
- }
575
-
576
- }
577
-
578
- RETURN(BZ_OK);
579
-
580
-
581
-
582
- endhdr_2:
583
-
584
- GET_UCHAR(BZ_X_ENDHDR_2, uc);
585
- if (uc != 0x72) RETURN(BZ_DATA_ERROR);
586
- GET_UCHAR(BZ_X_ENDHDR_3, uc);
587
- if (uc != 0x45) RETURN(BZ_DATA_ERROR);
588
- GET_UCHAR(BZ_X_ENDHDR_4, uc);
589
- if (uc != 0x38) RETURN(BZ_DATA_ERROR);
590
- GET_UCHAR(BZ_X_ENDHDR_5, uc);
591
- if (uc != 0x50) RETURN(BZ_DATA_ERROR);
592
- GET_UCHAR(BZ_X_ENDHDR_6, uc);
593
- if (uc != 0x90) RETURN(BZ_DATA_ERROR);
594
-
595
- s->storedCombinedCRC = 0;
596
- GET_UCHAR(BZ_X_CCRC_1, uc);
597
- s->storedCombinedCRC = (s->storedCombinedCRC << 8) | ((UInt32)uc);
598
- GET_UCHAR(BZ_X_CCRC_2, uc);
599
- s->storedCombinedCRC = (s->storedCombinedCRC << 8) | ((UInt32)uc);
600
- GET_UCHAR(BZ_X_CCRC_3, uc);
601
- s->storedCombinedCRC = (s->storedCombinedCRC << 8) | ((UInt32)uc);
602
- GET_UCHAR(BZ_X_CCRC_4, uc);
603
- s->storedCombinedCRC = (s->storedCombinedCRC << 8) | ((UInt32)uc);
604
-
605
- s->state = BZ_X_IDLE;
606
- RETURN(BZ_STREAM_END);
607
-
608
- default: AssertH ( False, 4001 );
609
- }
610
-
611
- AssertH ( False, 4002 );
612
-
613
- save_state_and_return:
614
-
615
- s->save_i = i;
616
- s->save_j = j;
617
- s->save_t = t;
618
- s->save_alphaSize = alphaSize;
619
- s->save_nGroups = nGroups;
620
- s->save_nSelectors = nSelectors;
621
- s->save_EOB = EOB;
622
- s->save_groupNo = groupNo;
623
- s->save_groupPos = groupPos;
624
- s->save_nextSym = nextSym;
625
- s->save_nblockMAX = nblockMAX;
626
- s->save_nblock = nblock;
627
- s->save_es = es;
628
- s->save_N = N;
629
- s->save_curr = curr;
630
- s->save_zt = zt;
631
- s->save_zn = zn;
632
- s->save_zvec = zvec;
633
- s->save_zj = zj;
634
- s->save_gSel = gSel;
635
- s->save_gMinlen = gMinlen;
636
- s->save_gLimit = gLimit;
637
- s->save_gBase = gBase;
638
- s->save_gPerm = gPerm;
639
-
640
- return retVal;
641
- }
642
-
643
-
644
- /*-------------------------------------------------------------*/
645
- /*--- end decompress.c ---*/
646
- /*-------------------------------------------------------------*/